📄 texinfo.tex
字号:
\setfont\texttt\ttshape{12}{1000}\else\setfont\textrm\rmshape{10}{\mainmagstep}\setfont\texttt\ttshape{10}{\mainmagstep}\fi% Instead of cmb10, you many want to use cmbx10.% cmbx10 is a prettier font on its own, but cmb10% looks better when embedded in a line with cmr10.\setfont\textbf\bfshape{10}{\mainmagstep}\setfont\textit\itshape{10}{\mainmagstep}\setfont\textsl\slshape{10}{\mainmagstep}\setfont\textsf\sfshape{10}{\mainmagstep}\setfont\textsc\scshape{10}{\mainmagstep}\setfont\textttsl\ttslshape{10}{\mainmagstep}\font\texti=cmmi10 scaled \mainmagstep\font\textsy=cmsy10 scaled \mainmagstep% A few fonts for @defun, etc.\setfont\defbf\bxshape{10}{\magstep1} %was 1314\setfont\deftt\ttshape{10}{\magstep1}\def\df{\let\tentt=\deftt \let\tenbf = \defbf \bf}% Fonts for indices and small examples (9pt).% We actually use the slanted font rather than the italic,% because texinfo normally uses the slanted fonts for that.% Do not make many font distinctions in general in the index, since they% aren't very useful.\setfont\ninett\ttshape{9}{1000}\setfont\ninettsl\ttslshape{10}{900}\setfont\indrm\rmshape{9}{1000}\setfont\indit\itshape{9}{1000}\setfont\indsl\slshape{9}{1000}\let\indtt=\ninett\let\indttsl=\ninettsl\let\indsf=\indrm\let\indbf=\indrm\setfont\indsc\scshape{10}{900}\font\indi=cmmi9\font\indsy=cmsy9% Fonts for title page:\setfont\titlerm\rmbshape{12}{\magstep3}\setfont\titleit\itbshape{10}{\magstep4}\setfont\titlesl\slbshape{10}{\magstep4}\setfont\titlett\ttbshape{12}{\magstep3}\setfont\titlettsl\ttslshape{10}{\magstep4}\setfont\titlesf\sfbshape{17}{\magstep1}\let\titlebf=\titlerm\setfont\titlesc\scbshape{10}{\magstep4}\font\titlei=cmmi12 scaled \magstep3\font\titlesy=cmsy10 scaled \magstep4\def\authorrm{\secrm}% Chapter (and unnumbered) fonts (17.28pt).\setfont\chaprm\rmbshape{12}{\magstep2}\setfont\chapit\itbshape{10}{\magstep3}\setfont\chapsl\slbshape{10}{\magstep3}\setfont\chaptt\ttbshape{12}{\magstep2}\setfont\chapttsl\ttslshape{10}{\magstep3}\setfont\chapsf\sfbshape{17}{1000}\let\chapbf=\chaprm\setfont\chapsc\scbshape{10}{\magstep3}\font\chapi=cmmi12 scaled \magstep2\font\chapsy=cmsy10 scaled \magstep3% Section fonts (14.4pt).\setfont\secrm\rmbshape{12}{\magstep1}\setfont\secit\itbshape{10}{\magstep2}\setfont\secsl\slbshape{10}{\magstep2}\setfont\sectt\ttbshape{12}{\magstep1}\setfont\secttsl\ttslshape{10}{\magstep2}\setfont\secsf\sfbshape{12}{\magstep1}\let\secbf\secrm\setfont\secsc\scbshape{10}{\magstep2}\font\seci=cmmi12 scaled \magstep1\font\secsy=cmsy10 scaled \magstep2% \setfont\ssecrm\bxshape{10}{\magstep1} % This size an font looked bad.% \setfont\ssecit\itshape{10}{\magstep1} % The letters were too crowded.% \setfont\ssecsl\slshape{10}{\magstep1}% \setfont\ssectt\ttshape{10}{\magstep1}% \setfont\ssecsf\sfshape{10}{\magstep1}%\setfont\ssecrm\bfshape{10}{1315} % Note the use of cmb rather than cmbx.%\setfont\ssecit\itshape{10}{1315} % Also, the size is a little larger than%\setfont\ssecsl\slshape{10}{1315} % being scaled magstep1.%\setfont\ssectt\ttshape{10}{1315}%\setfont\ssecsf\sfshape{10}{1315}%\let\ssecbf=\ssecrm% Subsection fonts (13.15pt).\setfont\ssecrm\rmbshape{12}{\magstephalf}\setfont\ssecit\itbshape{10}{1315}\setfont\ssecsl\slbshape{10}{1315}\setfont\ssectt\ttbshape{12}{\magstephalf}\setfont\ssecttsl\ttslshape{10}{1315}\setfont\ssecsf\sfbshape{12}{\magstephalf}\let\ssecbf\ssecrm\setfont\ssecsc\scbshape{10}{\magstep1}\font\sseci=cmmi12 scaled \magstephalf\font\ssecsy=cmsy10 scaled 1315% The smallcaps and symbol fonts should actually be scaled \magstep1.5,% but that is not a standard magnification.% In order for the font changes to affect most math symbols and letters,% we have to define the \textfont of the standard families. Since% texinfo doesn't allow for producing subscripts and superscripts, we% don't bother to reset \scriptfont and \scriptscriptfont (which would% also require loading a lot more fonts).%\def\resetmathfonts{% \textfont0 = \tenrm \textfont1 = \teni \textfont2 = \tensy \textfont\itfam = \tenit \textfont\slfam = \tensl \textfont\bffam = \tenbf \textfont\ttfam = \tentt \textfont\sffam = \tensf}% The font-changing commands redefine the meanings of \tenSTYLE, instead% of just \STYLE. We do this so that font changes will continue to work% in math mode, where it is the current \fam that is relevant in most% cases, not the current font. Plain TeX does \def\bf{\fam=\bffam% \tenbf}, for example. By redefining \tenbf, we obviate the need to% redefine \bf itself.\def\textfonts{% \let\tenrm=\textrm \let\tenit=\textit \let\tensl=\textsl \let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy \let\tenttsl=\textttsl \resetmathfonts}\def\titlefonts{% \let\tenrm=\titlerm \let\tenit=\titleit \let\tensl=\titlesl \let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy \let\tenttsl=\titlettsl \resetmathfonts \setleading{25pt}}\def\titlefont#1{{\titlefonts\rm #1}}\def\chapfonts{% \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy \let\tenttsl=\chapttsl \resetmathfonts \setleading{19pt}}\def\secfonts{% \let\tenrm=\secrm \let\tenit=\secit \let\tensl=\secsl \let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy \let\tenttsl=\secttsl \resetmathfonts \setleading{16pt}}\def\subsecfonts{% \let\tenrm=\ssecrm \let\tenit=\ssecit \let\tensl=\ssecsl \let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy \let\tenttsl=\ssecttsl \resetmathfonts \setleading{15pt}}\let\subsubsecfonts = \subsecfonts % Maybe make sssec fonts scaled magstephalf?\def\indexfonts{% \let\tenrm=\indrm \let\tenit=\indit \let\tensl=\indsl \let\tenbf=\indbf \let\tentt=\indtt \let\smallcaps=\indsc \let\tensf=\indsf \let\teni=\indi \let\tensy=\indsy \let\tenttsl=\indttsl \resetmathfonts \setleading{12pt}}% Set up the default fonts, so we can use them for creating boxes.%\textfonts% Define these so they can be easily changed for other fonts.\def\angleleft{$\langle$}\def\angleright{$\rangle$}% Count depth in font-changes, for error checks\newcount\fontdepth \fontdepth=0% Fonts for short table of contents.\setfont\shortcontrm\rmshape{12}{1000}\setfont\shortcontbf\bxshape{12}{1000}\setfont\shortcontsl\slshape{12}{1000}%% Add scribe-like font environments, plus @l for inline lisp (usually sans%% serif) and @ii for TeX italic% \smartitalic{ARG} outputs arg in italics, followed by an italic correction% unless the following character is such as not to need one.\def\smartitalicx{\ifx\next,\else\ifx\next-\else\ifx\next.\else\/\fi\fi\fi}\def\smartslanted#1{{\sl #1}\futurelet\next\smartitalicx}\def\smartitalic#1{{\it #1}\futurelet\next\smartitalicx}\let\i=\smartitalic\let\var=\smartslanted\let\dfn=\smartslanted\let\emph=\smartitalic\let\cite=\smartslanted\def\b#1{{\bf #1}}\let\strong=\b% We can't just use \exhyphenpenalty, because that only has effect at% the end of a paragraph. Restore normal hyphenation at the end of the% group within which \nohyphenation is presumably called.%\def\nohyphenation{\hyphenchar\font = -1 \aftergroup\restorehyphenation}\def\restorehyphenation{\hyphenchar\font = `- }\def\t#1{% {\tt \rawbackslash \frenchspacing #1}% \null}\let\ttfont=\t\def\samp#1{`\tclose{#1}'\null}\setfont\smallrm\rmshape{8}{1000}\font\smallsy=cmsy9\def\key#1{{\smallrm\textfont2=\smallsy \leavevmode\hbox{% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{% \vbox{\hrule\kern-0.4pt \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}% \kern-0.4pt\hrule}% \kern-.06em\raise0.4pt\hbox{\angleright}}}}% The old definition, with no lozenge:%\def\key #1{{\ttsl \nohyphenation \uppercase{#1}}\null}\def\ctrl #1{{\tt \rawbackslash \hat}#1}% @file, @option are the same as @samp.\let\file=\samp\let\option=\samp% @code is a modification of @t,% which makes spaces the same size as normal in the surrounding text.\def\tclose#1{% {% % Change normal interword space to be same as for the current font. \spaceskip = \fontdimen2\font % % Switch to typewriter. \tt % % But `\ ' produces the large typewriter interword space. \def\ {{\spaceskip = 0pt{} }}% % % Turn off hyphenation. \nohyphenation % \rawbackslash \frenchspacing #1% }% \null}% We *must* turn on hyphenation at `-' and `_' in \code.% Otherwise, it is too hard to avoid overfull hboxes% in the Emacs manual, the Library manual, etc.% Unfortunately, TeX uses one parameter (\hyphenchar) to control% both hyphenation at - and hyphenation within words.% We must therefore turn them both off (\tclose does that)% and arrange explicitly to hyphenate at a dash.% -- rms.{ \catcode`\-=\active \catcode`\_=\active % \global\def\code{\begingroup \catcode`\-=\active \let-\codedash \catcode`\_=\active \let_\codeunder \codex } % % If we end up with any active - characters when handling the index, % just treat them as a normal -. \global\def\indexbreaks{\catcode`\-=\active \let-\realdash}}\def\realdash{-}\def\codedash{-\discretionary{}{}{}}\def\codeunder{\ifusingtt{\normalunderscore\discretionary{}{}{}}{\_}}\def\codex #1{\tclose{#1}\endgroup}%\let\exp=\tclose %Was temporary% @kbd is like @code, except that if the argument is just one @key command,% then @kbd has no effect.% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always),% `example' (@kbd uses ttsl only inside of @example and friends),% or `code' (@kbd uses normal tty font always).\def\kbdinputstyle{\parsearg\kbdinputstylexxx}\def\kbdinputstylexxx#1{% \def\arg{#1}% \ifx\arg\worddistinct \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}% \else\ifx\arg\wordexample \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}% \else\ifx\arg\wordcode \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}% \fi\fi\fi}\def\worddistinct{distinct}\def\wordexample{example}\def\wordcode{code}% Default is kbdinputdistinct. (Too much of a hassle to call the macro,% the catcodes are wrong for parsearg to work.)\gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}\def\xkey{\key}\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}%\ifx\one\xkey\ifx\threex\three \key{#2}%\else{\tclose{\kbdfont\look}}\fi\else{\tclose{\kbdfont\look}}\fi}% For @url, @env, @command quotes seem unnecessary, so use \code.\let\url=\code\let\env=\code\let\command=\code% @uref (abbreviation for `urlref') takes an optional second argument% specifying the text to display. First (mandatory) arg is the url.% Perhaps eventually put in a hypertex \special here.% \def\uref#1{\urefxxx #1,,\finish}\def\urefxxx#1,#2,#3\finish{% \setbox0 = \hbox{\ignorespaces #2}% \ifdim\wd0 > 0pt \unhbox0\ (\code{#1})% \else \code{#1}% \fi}% rms does not like the angle brackets --karl, 17may97.% So now @email is just like @uref.%\def\email#1{\angleleft{\tt #1}\angleright}\let\email=\uref% Check if we are currently using a typewriter font. Since all the% Computer Modern typewriter fonts have zero interword stretch (and% shrink), and it is reasonable to expect all typewriter fonts to have% this property, we can check that font parameter.%\def\ifmonospace{\ifdim\fontdimen3\font=0pt }% Typeset a dimension, e.g., `in' or `pt'. The only reason for the% argument is to make the input look right: @dmn{pt} instead of @dmn{}pt.%\def\dmn#1{\thinspace #1}\def\kbd#1{\def\look{#1}\expandafter\kbdfoo\look??\par}% @l was never documented to mean ``switch to the Lisp font'',% and it is not used as such in any manual I can find. We need it for% Polish suppressed-l. --karl, 22sep96.%\def\l#1{{\li #1}\null}% Explicit font changes: @r, @sc, undocumented @ii.\def\r#1{{\rm #1}} % roman font\def\sc#1{{\smallcaps#1}} % smallcaps font\def\ii#1{{\it #1}} % italic font% @acronym downcases the argument and prints in smallcaps.\def\acronym#1{{\smallcaps \lowercase{#1}}}% @pounds{} is a sterling sign.\def\pounds{{\it\$}}\message{page headings,}\newskip\titlepagetopglue \titlepagetopglue = 1.5in\newskip\titlepagebottomglue \titlepagebottomglue = 2pc% First the title page. Must do @settitle before @titlepage.\newif\ifseenauthor\newif\iffinishedtitlepage% Do an implicit @contents or @shortcontents after @end titlepage if the% user says @setcontentsaftertitlepage or @setshortcontentsaftertitlepage.% \newif\ifsetcontentsaftertitlepage \let\setcontentsaftertitlepage = \setcontentsaftertitlepagetrue\newif\ifsetshortcontentsaftertitlepage \let\setshortcontentsaftertitlepage = \setshortcontentsaftertitlepagetrue\def\shorttitlepage{\parsearg\shorttitlepagezzz}\def\shorttitlepagezzz #1{\begingroup\hbox{}\vskip 1.5in \chaprm \centerline{#1}% \endgroup\page\hbox{}\page}\def\titlepage{\begingroup \parindent=0pt \textfonts \let\subtitlerm=\tenrm \def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines}% % \def\authorfont{\authorrm \normalbaselineskip = 16pt \normalbaselines}% % % Leave some space at the very top of the page. \vglue\titlepagetopglue
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -