📄 meintro.me
字号:
.sp.ceFigure 1. Example of a Floating Keep..hl.)zThe.b .hlrequest is usedto draw a horizontal lineso that the figurestands out from the text..sh 2 "Fancier Displays".ppKeeps and lists are normally collected in.i nofillmode,so that they are good for tables and such.If you want a displayin fill mode(for text),type.b ".(l\ F"(Throughout this section,comments applied to.b .(lalso apply to.b .(band.b .(z ).This kind of displaywill be indented from both margins.For example,the input:.(b\&.(l FAnd now boys and girls,a newer, bigger, better toy than ever before!Be the first on your block to have your own computer!Yes kids, you too can have one of these moderndata processing devices.You too can produce beautifully formatted paperswithout even batting an eye!\&.)l.)bwill be output as:.(b FAnd now boys and girls,a newer, bigger, better toy than ever before!Be the first on your block to have your own computer!Yes kids, you too can have one of these moderndata processing devices.You too can produce beautifully formatted paperswithout even batting an eye!.)b.ppLists and blocks are also normally indented(floating keeps are normally left justified).To get a left-justified list,type.b ".(l\ L" .To get a list centeredline-for-line,type.b ".(l C" .For example,to get a filled,left justified list, enter:.(b\&.(l L Ftext of block\&.)l.)bThe input:.(b\&.(lfirst line of unfilled displaymore lines\&.)l.)bproduces the indented text:.(bfirst line of unfilled displaymore lines.)bTyping the character.b Lafter the.b .(lrequest produces the left justified result:.(b Lfirst line of unfilled displaymore lines.)bUsing.b Cinstead of.b Lproduces the line-at-a-time centered output:.(b Cfirst line of unfilled displaymore lines.)b.ppSometimes it may bethat you want to center several linesas a group,rather than centering themone line at a time.To do thisuse centered blocks,which are surrounded by the requests.b .(cand.b .)c .All the lines are centered as a unit,such that the longest line is centeredand the rest arelined up around that line.Notice that linesdo not moverelative to each otherusing centered blocks,whereas they dousing the.b Cargument to keeps..ppCentered blocks are.i notkeeps,and may be usedin conjunctionwith keeps.For example,to center a group of linesas a unitand keep themon one page,use:.(b\&.(b L\&.(cfirst line of unfilled displaymore lines\&.)c\&.)b.)bto produce:.(b L.(cfirst line of unfilled displaymore lines.)c.)bIf the block requests(\c.b .(band.b .)b )had been omittedthe result would have been the same,but with no guaranteethat the lines of the centered blockwould have all been on one page.Note the use of the.b Largument to.b .(b ;this causes the centered blockto center within the entire linerather than within the lineminus the indent.Also,the center requestsmustbe nested.i insidethe keep requests..sh 1 "Annotations".ppThere are a number of requeststo save textfor later printing..i Footnotesare printed at the bottom of the current page..i "Delayed text"is intended to be a variant formof footnote;the text is printed only when explicitly called for,such as at the end of each chapter..i Indexesare a type of delayed texthaving a tag(usually the page number)attached to each entryafter a row of dots.Indexes are also saveduntil called for explicitly..sh 2 "Footnotes".ppFootnotes begin with the request.b .(fand end with the request.b .)f .The current footnote number is maintainedautomatically,and can be used by typing \e**,to produce a footnote number\**..(f\**Like this..)fThe number is automatically incrementedafter every footnote.For example,the input:.(b\&.(qA man who is not uprightand at the same time is presumptuous;one who is not diligent and at the same time is ignorant;one who is untruthful and at the same time is incompetent;such men I do not count among acquaintances.\e**\&.(f\e**James R. Ware,\&.ulThe Best of Confucius,Halcyon House, 1950.Page 77.\&.)f\&.)q.)bgenerates the result:.(qA man who is not uprightand at the same time is presumptuous;one who is not diligent and at the same time is ignorant;one who is untruthful and at the same time is incompetent;such men I do not count among acquaintances.\**.(f\**James R. Ware,.ulThe Best of Confucius,Halcyon House, 1950.Page 77..)f.)qIt is importantthat the footnoteappears.i insidethe quote,so that you can be surethat the footnotewill appearon the same pageas the quote..sh 2 "Delayed Text".ppDelayed textis very similar to a footnoteexcept that it is printedwhen called for explicitly.This allows a list ofreferences toappear(for example)at the end of each chapter,as is the convention in some disciplines.Use.b \e*#on delayed textinstead of.b \e**as on footnotes..ppIf you are using delayed textas your standard reference mechanism,you can still use footnotes,except that you may want to reference themwith special characters*.(f*Such as an asterisk..)frather than numbers..sh 2 "Indexes".ppAn.q index(actually more like a table of contents,since the entries are not sorted alphabetically)resembles delayed text,in that it is saved until called for.However,each entry has the page number(or some other tag)appended to the last lineof the index entryafter a row of dots..ppIndex entries begin with the request.b .(xand end with.b .)x .The.b .)xrequest may have a argument,which is the value to printas the.q "page number" .It defaults to the current page number.If the page number given is an underscore(\c.q _ )no page numberor line of dotsis printed at all.To get the line of dotswithout a page number,type.b ".)x """"" ,which specifies an explicitly null page number..ppThe.b .xprequest prints the index..ppFor example,the input:.(b\&.(xSealing wax\&.)x\&.(xCabbages and kings\&.)x _\&.(xWhy the sea is boiling hot\&.)x 2.5a\&.(xWhether pigs have wings\&.)x ""\&.(xThis is a terribly long index entry, such as might be usedfor a list of illustrations, tables, or figures; I expect it totake at least two lines.\&.)x\&.xp.)bgenerates:.(xSealing wax.)x.(xCabbages and kings.)x _.(xWhy the sea is boiling hot.)x 2.5a.(xWhether pigs have wings.)x "".(xThis is a terribly long index entry, such as might be usedfor a list of illustrations, tables, or figures; I expect it totake at least two lines..)x.xp.ppThe.b .(xrequest may have a single characterargument,specifying the.q nameof the index;the normal index is.b x .Thus,several.q indicesmay be maintained simultaneously(such as a list of tables, table of contents, etc.)..ppNotice that the index must be printedat the.i endof the paper,rather than at the beginningwhere it will probably appear(as a table of contents);the pages may have to be physically rearrangedafter printing..sh 1 "Fancier Features".ppA large number of fancier requestsexist,notably requests to provide other sorts of paragraphs,numbered sections of the form.b 1.2.3(such as used in this document),and multicolumn output..sh 2 "More Paragraphs".ppParagraphs generally start witha blank lineand with the first lineindented.It is possible to getleft-justified block-style paragraphsby using.b .lpinstead of.b .pp ,as demonstrated by the next paragraph..lpSometimes you want to use paragraphsthat have the.i bodyindented,and the first lineexdented(opposite of indented)with a label.This can be done with the.b .iprequest.A word specified on the same line as.b .ipis printed in the margin,and the body is lined upat a prespecified position(normally five spaces).For example,the input:.(b\&.ip oneThis is the first paragraph.Notice how the first lineof the resulting paragraph lines upwith the other lines in the paragraph.\&.ip twoAnd here we are at the second paragraph already.You may notice that the argument to \c.b .ipappearsin the margin.\&.lpWe can continue text....)bproduces as output:.ip oneThis is the first paragraph.Notice how the first line of the resulting paragraph lines upwith the other lines in the paragraph..ip twoAnd here we are at the second paragraph already.You may notice that the argument to.b .ipappearsin the margin..lpWe can continue text without starting a new indentedparagraphby using the.b .lprequest..ppIf you have spaces in the label of a.b .iprequest,you must use an.q "unpaddable space"instead of a regular space.This is typed as a backslash character(\c.q \e )followed by a space.For example,to print the label.q "Part 1" ,enter:.(b\&.ip "Part\e 1".)b.ppIf a label of an indented paragraph(that is, the argument to.b .ip )is longer than the space allocated for the label,.b .ipwill begin a new line after the label.For example,the input:.(b\&.ip longlabelThis paragraph had a long label.The first character of text on the first linewill not line up with the text on second and subsequent lines,although they will line up with each other..)bwill produce:.ip longlabelThis paragraph had a long label.The first character of text on the first linewill not line up with the text on second and subsequent lines,although they will line up with each other..ppIt is possible to change the size of the labelby using a second argumentwhich is the size of the label.For example,the above example could be done correctlyby saying:.(b\&.ip longlabel 10.)bwhich will make the paragraph indent10 spaces for this paragraph only.If you have many paragraphs to indentall the same amount,use the.i "number register".b ii .For example, to leave one inch of spacefor the label,type:.(b\&.nr ii 1i.)bsomewhere before the first call to.b .ip .Refer to the reference manualfor more information..ppIf.b .ipis usedwith no argument at allno hanging tag will be printed.For example,the input:.(b\&.ip [a]This is the first paragraph of the example.We have seen this sort of example before.\&.ipThis paragraph is lined up with the previous paragraph,but it has no tag in the margin..)bproduces as output:.ip [a]This is the first paragraph of the example.We have seen this sort of example before..ipThis paragraph is lined up with the previous paragraph,but it has no tag in the margin..ppA special case of.b .ipis.b .np ,which automaticallynumbers paragraphs sequentially from 1.The numbering is reset at the next.b .pp ,.b .lp ,or.b .sh(to be described in the next section)request.For example,the input:.(b\&.npThis is the first point.\&.npThis is the second point.Points are just regular paragraphswhich are given sequence numbers automaticallyby the .np request.\&.ppThis paragraph will reset numbering by .np.\&.npFor example,we have reverted to numbering from one now..)bgenerates:.npThis is the first point..npThis is the second point.Points are just regular paragraphswhich are given sequence numbers automaticallyby the .np request..ppThis paragraph will reset numbering by .np..npFor example,we have reverted to numbering from one now..ppThe.b .burequest gives lists of this sort that are identified withbullets rather than numbers.The paragraphs are also crunched together.For example,the input:.(b\&.bu\&One egg yolk\&.bu\&One tablespoon cream or top milk\&.bu\&Salt, cayenne, and lemon juice to taste\&.bu\&A generous two tablespoonfuls of butter.)bproduces\**:.(f\**By the way,if you put the first three ingredients in a a heavy, deep panand whisk the ingredients madly over a medium flame(never taking your hand off the handle of the pot)until the mixture reaches the consistency of custard(just a minute or two),then mix in the butter off-heat,you will have a wonderful Hollandaise sauce..)f.buOne egg yolk.buOne tablespoon cream or top milk.buSalt, cayenne, and lemon juice to taste.buA generous two tablespoonfuls of butter.sh 2 "Section Headings".ppSection numbers(such as the ones used in this document)can be automatically generatedusing the.b .shrequest.You must tell.b .shthe.i depthof the section numberand a section title.The depthspecifies how many numbersare to appear(separated by decimal points)in the section number.For example,the section number.b 4.2.5has a depth of three..ppSection numbersare incrementedin a fairly intuitive fashion.If you add a number(increase the depth),the new number starts outat one.If you subtract section numbers(or keep the same number)the final number is incremented.For example,the input:.(b\&.sh 1 "The Preprocessor"\&.sh 2 "Basic Concepts"\&.sh 2 "Control Inputs"\&.sh 3\&.sh 3\&.sh 1 "Code Generation"\&.sh 3.)bproduces as output the result:.(b.b1. The Preprocessor1.1. Basic Concepts1.2. Control Inputs1.2.1.1.2.2.2. Code Generation2.1.1..)b.ppYou can specify the section number to beginby placing the section number after the section title,using spaces instead of dots.For example,the request:.(b\&.sh 3 "Another section" 7 3 4.)bwill begin the section numbered.b 7.3.4 ;all subsequent.b .shrequests will number relative to this number..ppThere are more complex featureswhich will cause each section to be indentedproportionally to the depth of the section.For example, if you enter:.(b\&.nr si \c.i N.)beach section will be indented by an amount.i N ..i Nmust have a scaling factor attached,that is, it must be of the form.i Nx ,where.i xis a character telling what units.i Nis in.Common values for.i xare.b ifor inches,.b cfor centimeters,and.b nfor.i ens(the width of a single character).For example,to indent each sectionone-half inch,type:.(b\&.nr si 0.5i.)bAfter this,sections will be indented byone-half inch
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -