print.txt ForVim version 9.2. Last change: 2026 Feb 14VIM REFERENCE MANUAL by Bram MoolenaarPrintingprinting1. Introductionprint-intro2. Printoptionsprint-options3. PostScript Printingpostscript-printing4. PostScript Printing Encodingpostscript-print-encoding5. PostScript CJK Printingpostscript-cjk-printing6. PostScript Printing Troubleshootingpostscript-print-trouble7. PostScript Utilitiespostscript-print-util8. Formfeed Charactersprinting-formfeed{only available when compiled with the |+printer| feature}==============================================================================1. Introductionprint-introOnMS-Windows Vim can print your text on any installed printer. On othersystemsa PostScript fileis produced. This can be directly sent toaPostScript printer. For other printersa program like ghostscript needs to beused.Note: If you have problemsprinting with:hardcopy, an alternativeis to use:TOhtml and print the resulting html file froma browser.:ha:hardcopyE237E238E324:[range]ha[rdcopy][!][arguments]Send[range] lines (default whole file) to theprinter.OnMS-Windowsadialogis displayed to allow selectionof printer, paper size etc. To skip the dialog, usethe [!]. In thiscase the printer defined by'printdevice'is used, or, if'printdevice'is empty,the system default printer.For systems other than MS-Windows, PostScriptiswritten ina temp file and'printexpr'is used toactually print it. Then[arguments] can be used by'printexpr' throughv:cmdarg. Otherwise[arguments]is ignored.'printoptions' can be used to specifypaper size, duplex, etc.Note: If you want PDF, there are tools suchas"ps2pdf" that can convert the PostScript to PDF.:[range]ha[rdcopy][!] >{filename}As above, but write the resulting PostScript in file{filename}.Things like "%" are expandedcmdline-specialCareful: An existing fileis silently overwritten.{only available when compiled with the+postscriptfeature}OnMS-Windows use the "print to file" feature of theprinter driver.Progressis displayed duringprintingasa page number anda percentage. Toabortprinting use the interrupt key (CTRL-C or, on MS-systems,CTRL-Break).Printer outputis controlled by the'printfont' and'printoptions' options.'printheader'specifies the format ofa page header.The printed fileis always limited to the selected margins, irrespective ofthe current window's'wrap' or'linebreak' settings. The "wrap" item in'printoptions' can be used to switch wrapping off.The current highlighting colors are used in the printout, with the followingconsiderations:1) The normal backgroundis always renderedas white (i.e. blank paper).2) White text or the default foregroundis renderedas black, so thatit shows up!3) If'background'is "dark", then the colours are darkened to compensate for the fact that otherwise they would be too bright to show up clearly on white paper.==============================================================================2. Printoptionsprint-optionsHere are the details for theoptions that change the wayprintingis done.For generic info about settingoptions seeoptions.txt.pdev-option'printdevice''pdev'string(default empty)globalThis defines the name of the printer to be used when the:hardcopy commandis issued witha bang (!) to skip the printer selection dialog. On Win32,itshould be the printer name exactlyasit appears in the standard printerdialog.If the optionis empty, then vim will use the system default printer for":hardcopy!"penc-optionE620'printencoding''penc'String(default empty, except for:MS-Windows: cp1252,Macintosh: mac-roman,VMS: dec-mcs,HPUX: hp-roman8,EBCDIC: ebcdic-uk)globalSets the character encoding used when printing. This option tells Vim whichprint character encoding file from the "print" directory in'runtimepath' touse.This option will accept any value fromencoding-names. Any recognized namesare converted to Vim standard names- see'encoding' for more details. Namesnot recognized by Vim will just be converted to lowercase and underscoresreplaced with '-' signs.If'printencoding'is empty or Vim cannot find the file thenit will use'encoding' (ifitis set an 8-bit encoding) to find the print characterencoding file. If Vimis unable to finda character encoding file thenitwill use the "latin1" print character encoding file.When'encoding'is set toamultibyte encoding, Vim will try to convertcharacters to theprinting encoding forprinting (if'printencoding'is emptythen the conversion will be to latin1). Conversion toaprinting encodingother than latin1 will require Vim to be compiled with the+iconv feature.If no conversionis possible thenprinting will fail. Any characters thatcannot be converted will be replaced with upside down question marks.Four print character encoding files are provided to support default Mac, VMS,HPUX, and EBCDIC character encodings and are used by default on theseplatforms. Code page 1252 print character encodingis used by default onMS-Windows platform.pexpr-option'printexpr''pexpr'String(default: see below)globalExpression thatis evaluated to print the PostScript produced with:hardcopy.The file name to be printedis inv:fname_in.The arguments to the ":hardcopy" command are inv:cmdarg.Theexpressionmust take care ofdeleting the file afterprinting it.When thereis an error, theexpressionmust returna non-zero number.If thereis no error, return zero or an empty string.The default for nonMS-Windows orVMS systemsis to simply use "lpr" to printthe file: system('lpr' .. (&printdevice == '' ? '' : ' -P' .. &printdevice).. ' ' .. v:fname_in) .. delete(v:fname_in) + v:shell_errorOnMS-Windows machines the defaultis to copy the file to the currentlyspecified printdevice: system('copy' .. ' ' .. v:fname_in .. (&printdevice == ''? ' LPT1:' : (' \"' .. &printdevice .. '\"'))).. delete(v:fname_in)OnVMS machines the defaultis to send the file to either the default orcurrently specified printdevice: system('print' .. (&printdevice == '' ? '' : ' /queue=' ..&printdevice) .. ' ' .. v:fname_in) .. delete(v:fname_in)If you change this option, usinga functionis aneasy way to avoid having toescape all the spaces. Example::set printexpr=PrintFile():function PrintFile(): call system("ghostview " .. v:fname_in): call delete(v:fname_in): return v:shell_error:endfuncItis more efficient if the optionis set to justa function call,seeexpr-option-function.Be aware that some print programs returncontrol before they have read thefile. If you delete the file too soonit will not be printed. These programsusually offer an option to have them remove the file whenprintingis done.E365If evaluating theexpression fails orit results ina non-zero number, you getan error message. In thatcase Vim will delete the file. In the defaultvalue for non-MS-Windowsa trickis used: Adding "v:shell_error" will resultina non-zero number when thesystem() call fails.If theexpression starts with s: or<SID>, thenitis replaced with thescript ID(local-function). Example:set printexpr=s:MyPrintFile()set printexpr=<SID>SomePrintFile()Otherwise, theexpressionis evaluated in the context of thescript where theoption was set, thusscript-local items are available.This option cannot be set fromamodeline or in thesandbox, for securityreasons.pfn-optionE613'printfont''pfn'string(default "courier")globalThisis the name of the font that will be used for the:hardcopy command'soutput. It has the same formatas the'guifont' option, except that only onefont may be named, and the special "guifont=*"syntaxis not available.In theWin32GUI version thisspecifiesa font name with its extra attributes,as with the'guifont' option.For other systems, only ":h11"is recognized, where "11"is the point size ofthe font. When omitted, the point sizeis 10.pheader-option'printheader''pheader'string (default "%<%f%h%m%=Page %N") globalThis defines the format of the header produced in:hardcopy output. Theoptionis defined in the same wayas the'statusline' option. If Vim has notbeen compiled with the+statusline feature, this option has no effect andasimple default headeris used, which shows the page number. The same simpleheaderis used when this optionis empty.pmbcs-option'printmbcharset''pmbcs'string (default "") globalSets the CJK character set to be used when generating CJK output from:hardcopy. The following predefined values are currently recognised by Vim:ValueDescriptionChineseGB_2312-80 (Simplified)GBT_12345-90MACAppleMac SimplifiedChineseGBT-90_MACGB/T 12345-90 AppleMac SimplifiedChineseGBKGBK (GB 13000.1-93)ISO10646ISO 10646-1:1993ChineseCNS_1993CNS 11643-1993, Planes 1& 2 (Traditional)BIG5ETENBig5 with ETen extensionsISO10646ISO 10646-1:1993JapaneseJIS_C_1978JIS_X_1983JIS_X_1990MSWINDOWSWin3.1/95J (JISX 1997+ NEC+ IBM extensions)KANJITALK6AppleMac KanjiTalk V6.xKANJITALK7AppleMac KanjiTalk V7.xKoreanKS_X_1992MACAppleMacintoshKoreanMSWINDOWSKSX 1992 with MS extensionsISO10646ISO 10646-1:1993Only certain combinations of the above values and'printencoding' arepossible. The following tables show the valid combinations:euc-cn gbkucs-2utf-8ChineseGB_2312-80x (Simplified)GBT_12345-90xMACxGBT-90_MACxGBKxISO10646xxeuc-tw big5ucs-2utf-8ChineseCNS_1993x (Traditional)BIG5xETENxISO10646xxeuc-jp sjisucs-2utf-8JapaneseJIS_C_1978xxJIS_X_1983xxJIS_X_1990xxxMSWINDOWSxKANJITALK6xKANJITALK7xeuc-kr cp949ucs-2utf-8KoreanKS_X_1992xMACxMSWINDOWSxISO10646xxTo set up the correct encoding and character set forprinting someJapanese text you woulddo the following;:set printencoding=euc-jp:set printmbcharset=JIS_X_1983If'printmbcharset'is not one of the above values thenitis assumed tospecifya custommultibyte character set and no check will be made thatitiscompatible with the value for'printencoding'. Vim will look fora filedefining the character set in the "print" directory in'runtimepath'.pmbfn-option'printmbfont''pmbfn'string (default "")globalThisisa comma-separatedlist of fields for font names to be used whengenerating CJK output from:hardcopy. Each font name has to be precededwithaletter indicating the style the fontis to be used foras follows: r:{font-name}font to use for normal characters b:{font-name}font to use forbold characters i:{font-name}font to use foritalic characters o:{font-name}font to use for bold-italic charactersA field with the r: prefixmust be specified when doing CJK printing. Theother fontname specifiers are optional. Ifa specifieris missing thenanother font will be usedas follows: ifb:is missing, then use r: if i:is missing, then use r: if o:is missing, then useb:Some CJK fontsdo not contain characters for codes in the ASCII code range.Also, some characters in the CJK ASCII code ranges differ ina few codepointsfrom traditional ASCII characters. There are two additional fields tocontrolprinting of characters in the ASCII code range. c:yesUse Courier font for characters in the ASCII c:no (default)code range. a:yesUse ASCII character set for codes in the ASCII a:no (default)code range.The followingis an example of specifying twomultibyte fonts, one for normalanditalicprinting and one forbold and bold-italic printing, and usingCourier to print codes in the ASCII code range but using the nationalcharacter set::set printmbfont=r:WadaMin-Regular,b:WadaMin-Bold,c:yespopt-option'printoptions''popt'string (default "")globalThisisa comma-separatedlist of items thatcontrol the format of the outputof:hardcopy: left:{spec}left margin (default: 10pc) right:{spec}right margin (default: 5pc) top:{spec}top margin (default: 5pc) bottom:{spec}bottom margin (default: 5pc){spec}isa number followed by "in" for inches, "pt"for points (1 pointis 1/72 of an inch), "mm" formillimeters or "pc" fora percentage of the mediasize.Weird example: left:2in,top:30pt,right:16mm,bottom:3pcIf the unitis not recognized thereis no error andthe default valueis used. header:{nr}Number of lines to reserve for the header.Only the first lineis actually filled, thus when{nr}is 2 thereis one empty line. The headeris formattedaccording to'printheader'. header:0Do not printa header. header:2 (default)Use two lines for the header syntax:nDo not usesyntax highlighting. Thisis faster andthus useful whenprinting large files. syntax:yDosyntax highlighting. syntax:a (default)Usesyntax highlighting if the printer appears to beable to print color or grey. number:yInclude line numbers in the printed output. number:n (default)No line numbers. wrap:y (default)Wrap long lines. wrap:nTruncate long lines. duplex:offPrint on one side. duplex:long (default)Print on both sides (when possible), bind on longside. duplex:shortPrint on both sides (when possible), bind on shortside. collate:y (default)Collating: 1 2 3, 1 2 3, 1 2 3 collate:nNo collating: 1 1 1, 2 2 2, 3 3 3 jobsplit:n (default)Do all copies in one printjob jobsplit:yDo each copyasa separate print job. Useful whendoing N-up postprocessing. portrait:y (default)Orientationis portrait. portrait:nOrientationis landscape.a4letter paper:A4 (default)Paper size: A4 paper:{name}Paper size from this table:{name} size in cm size in inch10x1425.4x 35.57 10x 14A3 29.7x42 11.69x 16.54A4 21x 29.7 8.27x 11.69A5 14.8x 21 5.83x 8.27B4 25x 35.3 10.12x 14.33B5 17.6x 25 7.17x 10.12executive 18.42x 26.67 7.25x10.5folio 21x 33 8.27x 13ledger 43.13x 27.96 17x 11legal 21.59x 35.57 8.5x 14letter 21.59x 27.96 8.5x 11quarto 21.59x27.5 8.5x 10.83statement 13.97x 21.59 5.5x 8.5tabloid 27.96x 43.13 11x 17 formfeed:n (default)Treat form feed characters (0x0c)asa normal printcharacter. formfeed:yWhena form feed characteris encountered, continueprinting of the current lineat the beginning of thefirst line ona new page.The item indicated with (default)is used when the itemis not present. Thevalues are not always used, especially when usingadialog to select theprinter and options.Example::set printoptions=paper:letter,duplex:off==============================================================================3. PostScript Printingpostscript-printingE455E456E457E624Provided you have enough diskspace there should be no problems generatingaPostScript file. You need to have the runtime files correctly installed (ifyou can find thehelp files, they probably are).There are currentlya number of limitations with PostScript printing:-'printfont'- The font nameis ignored (the Courier familyis always used-it should be available on all PostScript printers) but the font sizeis used.-'printoptions'- The duplex settingis used when generating PostScript output, butitis up to the printer to take notice of the setting. If the printer does not support duplexprinting thenit should be silently ignored. Some printers, however, don't printat all.- 8-bit support- Whilea number of 8-bit print character encodings are supporteditis possible that some characters will not print. Whethera character will print depends on the font in the printer knowing the character. Missing characters will be replaced with an upside down question mark, oraspace if that characteris also not known by the font. It may be possible to get all the characters in an encoding to print by installinga new version of the Courier font family.- Multi-byte support- Currently Vim will try to convertmultibyte characters to the 8-bit encoding specified by'printencoding' (or latin1 ifitis empty). Any characters that are not successfully converted are shownas unknown characters. Printing will fail if Vim cannot convert themultibyte to the 8-bit encoding.==============================================================================4. Custom 8-bit Print Character Encodingspostscript-print-encodingE618E619To use your own print character encoding whenprinting 8-bit character datayou need to define your own PostScript font encoding vector. Details on howto definea font encoding vectoris beyond the scope of thishelp file, butyou can find details in the PostScript Language Reference Manual, 3rd Edition,published by Addison-Wesley and available in PDF formathttps://www.adobe.com/. The following describes what you need todo for Vimto locate and use your print character encoding.i. Decide onaunique name for your encoding vector, one that does not clash with any of the recognized or standard encoding names that Vim uses (seeencoding-names fora list), and that no one elseis likely to use.ii. Copy $VIMRUNTIME/print/latin1.ps to the print subdirectory in your'runtimepath' and renameit with yourunique name.iii. Edit your renamed copy of latin1.ps,replacing all occurrences of latin1 with yourunique name (don't forget the linestarting %%Title:), and modify the array of glyph names to define your new encoding vector. The arraymust have exactly 256 entries or you will not be able to print!iv. Within Vim, set'printencoding' to yourunique encoding name and then print your file. Vim will now use your custom print character encoding.Vim will report an error with the resource file if you change the order orcontent of the first 3 lines, other than the name of the encoding on the linestarting %%Title: or the version number on the linestarting %%Version:.[Technical explanation for those that know PostScript- Vim looks fora filewith the same nameas the encodingit will use when printing. The filedefinesa new PostScript Encoding resource called /VIM-name, where nameis theprint character encoding Vim will use.]==============================================================================5. PostScript CJK Printingpostscript-cjk-printingE673E674E675Vim supportsprinting of Chinese, Japanese, andKorean files. Setting up Vimto correctly print CJK files requires setting upa few more options.Each of these countries has many standard character sets and encodings whichrequire that both be specified when printing. In addition, CJK fonts normallydo not have the concept ofitalic glyphs and use different weight or strokestyle to achieve emphasis when printing. This in turn requiresa differentapproach to specifying fonts to use when printing.The encoding and character set are specified with the'printencoding' and'printmbcharset' options. If'printencoding'is not specified then'encoding'is usedas normal. If'printencoding'is specified then characters will betranslated to this encoding for printing. You should ensure that the encodingis compatible with the character set needed for the file contents or somecharacters may not appear when printed.The fonts to use for CJKprinting are specified with'printmbfont'. Thisoption allows you to specify different fonts to use whenprinting characterswhich aresyntax highlighted with the font styles normal, italic,bold andbold-italic.No CJK fonts are supplied with Vim. There are some free Korean, Japanese, andTraditionalChinese fonts available at:http://examples.oreilly.com/cjkvinfo/adobe/samples/https://resources.oreilly.com/examples/9781565922242/You can find descriptions of thevarious fonts in the read me fileathttps://resources.oreilly.com/examples/9781565922242/-/blob/master/00READMEPlease read your printer documentation on how toinstall new fonts.CJK fonts can be large containing several thousand glyphs, anditis notuncommon to find that they only containa subset ofa national standard. Itis not unusual to find the fonts to not include characters for codes in theASCII code range. If you find half-width Roman characters are not appearingin your printout then you should configure Vim to use the Courier font thehalf-width ASCII characters with'printmbfont'. If your font does not includeother characters then you will need to find another font that does.Another issue with ASCII characters,is that thevarious national charactersets specifya couple of different glyphs in the ASCII code range. If youprint ASCII text using the national character set you may see some unexpectedcharacters. If you wanttrue ASCII codeprinting then you need to configureVim to output ASCII characters for the ASCII code range with'printmbfont'.Itis possible to define your ownmultibyte character set although thisshould not be attempted lightly.A discussion on the process if beyond thescope of thesehelp files. You can find details on CMap (character map) filesin the document 'Adobe CMap and CIDFont Files Specification, Version 1.0',available fromhttps://www.adobe.comasa PDF file.==============================================================================6. PostScript Printing Troubleshootingpostscript-print-troubleE621Usually the only sign ofa problem whenprinting with PostScriptis that yourprintout does not appear. If you are lucky you may geta printed page thattells you the PostScriptoperator that generated the error that prevented theprintjob completing.There area number of possible causesas to why theprinting may have failed:- Wrong version of the prolog resource file. The prolog resource file contains some PostScript that Vim needs to be able to print. Each version of Vim needs one particular version. Make sure you have correctly installed the runtime files, and don't have any old versions ofa file called prolog in the print directory in your'runtimepath' directory.- Paper size. Some PostScript printers will abortprintinga file if theydo not support the requested paper size. By default Vim uses A4 paper. Find out what size paper your printer normally uses and set the appropriate paper size with'printoptions'. If you cannot find the name of the paper used, measurea sheet and compareit with the table of supported paper sizes listed for'printoptions', using the paper thatis closest in both width AND height.Note: The dimensions of actual paper may vary slightly from the ones listed. If thereis no paper listed close enough, then you may want to try psresize from PSUtils, discussed below.- Two-sidedprinting (duplex). Normallya PostScript printer that does not support two-sidedprinting will ignore any request todo it. However, some printers may abort thejob altogether. Tryprinting with duplex turned off.Note: Duplex prints can be achieved manually using PS utils- see below.- Collated printing. As with Duplex printing, most PostScript printers thatdo not support collating printouts will ignorea request todo so. Some may not. Tryprinting with collation turned off.-Syntax highlighting. Some print management code may prevent the generated PostScript file from being printed ona black and white printer whensyntax highlightingis turned on, even if solid blackis the only color used. Tryprinting withsyntax highlighting turned off.A safe printoptions setting to try is::set printoptions=paper:A4,duplex:off,collate:n,syntax:nReplace "A4" with the paper size that best matches your printer paper.==============================================================================7. PostScript Utilitiespostscript-print-util7.1 GhostscriptGhostscriptisa PostScript and PDF interpreter that can be used to displayand print on non-PostScript printers PostScript and PDF files. It can alsogenerate PDF files from PostScript.Ghostscript will run ona wide variety of platforms.There are three available versions:- AFPL Ghostscript (formerly Aladdin Ghostscript) whichis free for non-commercial use. It can be obtained from:http://www.cs.wisc.edu/~ghost/- GNU Ghostscript whichis available under the GNU General Public License. It can be obtained from:https://www.gnu.org/software/ghostscript-A commercial version forinclusion in commercial products.Additional information on Ghostscript can also be found at:http://www.ghostscript.com/Support fora number of non PostScript printersis provided in thedistributionas standard, but if you cannot find support for your printercheck the Ghostscript site for other printers not included by default.7.2 Ghostscript Previewers.Theinterface to Ghostscriptis very primitive soa number of graphical frontends have been created. These allow easier PostScript file selection,previewingat different zoom levels, and printing. Check supplieddocumentation for full details.X11- Ghostview. Obtainable from:http://www.cs.wisc.edu/~ghost/gv/https://www.gnu.org/software/gv/ Copies (possibly not the most recent) can be found at:http://www.cs.wisc.edu/~ghost/gv/OpenVMS- Is apparently supported in the main code now (untested). See (link seems dead): wwwthep.physik.uni-mainz.de/~plass/gv/MS-Windows- GSview. Obtainable from:http://www.cs.wisc.edu/~ghost/gsview/Linux- GSview. Linux version of the popularMS-Windows previewer. Obtainable from:http://www.cs.wisc.edu/~ghost/gsview/7.3 PSUtilsPSUtilsisa collection of utility programs for manipulating PostScriptdocuments. Binary distributions are available for many platforms,as wellasthe full source. PSUtils can be found at:http://knackered.org/angus/psutilsThe utilities of interest include:- psnup. Convert PS files for N-up printing.- psselect.Select page range and order of printing.- psresize. Change the page size.- psbook. Reorder and lay out pages ready for makinga book.The output of one program can be usedas the input to the next, allowing forcomplex print document creation.N-UP PRINTINGThe psnup utility takes an existing PostScript file generated from Vim andconvertit to an n-up version. The simplest way to createa 2-up printoutisto first createa PostScript file with::hardcopy > test.psThen on your command line execute:psnup -n 2 test.ps final.psNote: You may get warnings from some Ghostscript previewers for files producedby psnup- these may safely be ignored.Finally print the file final.ps to your PostScript printer with yourplatform's print command. (You will need to delete the two PostScript filesafterwards yourself.)'printexpr' could be modified to perform this extrastep before printing.ALTERNATE DUPLEX PRINTINGItis possible to achievea poor man's version of duplexprinting using the PSutility psselect. This utility hasoptions-e and-o forprinting just theeven or odd pages ofa PS file respectively.First generatea PS file with the'hardcopy' command, then generate newfiles with all the odd and even numbered pages with:psselect -o test.ps odd.pspsselect -e test.ps even.psNext print odd.ps with your platform's normal print command. Then take theprint output, turnit over and placeit back in the paper feeder. Now printeven.ps with your platform's print command. All the even pages should nowappear on the back of the odd pages.There area couple of points to bear in mind:1. Position of the first page. If the first pageis on top of the printout whenprinting the odd pages then you need to reverse the order that the odd pages are printed. This can be done with the-r option to psselect. This will ensure page 2is printed on the back of page 1.Note:itis better to reverse the odd numbered pages rather than the even numbered incase there are an odd number of pages in the original PS file.2. Paper flipping. When turning over the paper with the odd pages printed on them you may have to either flip them horizontally (along the long edge) or vertically (along the short edge),as wellas possibly rotating them 180 degrees. All this depends on the printer-it will be more obvious for desktop ink jets than for small office laser printers where the paper pathis hidden from view.==============================================================================8. Formfeed Charactersprinting-formfeedBy default Vim does notdo any special processing of formfeedcontrolcharacters. Setting the'printoptions' formfeed item will make Vim recognizeformfeed characters and continueprinting the current lineat the beginningof the first line ona new page. The use of formfeed characters providesrudimentary printcontrol but there are certain things to be aware of.Vim will always startprintinga line (includinga line number if enabled)containinga formfeed character, even ifitis the first character on theline. This means ifa linestarting witha formfeed characteris the firstline ofa page then Vim will printa blank page.Since the line numberis printedat the start ofprinting the line containingthe formfeed character, the remainder of the line printed on the new pagewill not havea line number printed forit (in the same wayas the wrappedlines ofa long line when wrap in'printoptions'is enabled).If the formfeed characteris the last character ona line, thenprinting willcontinue on the second line of the new page, not the first. Thisis due toVim processing theend of the line after the formfeed character and movingdowna line to continue printing.Due to the points made aboveitis recommended that when formfeed characterprocessingis enabled,printing of line numbersis disabled, and that formfeed characters are not the last character ona line. Even then you may needto adjust the number of lines beforea formfeed character to preventaccidental blank pages.============================================================================== vim:tw=78:ts=8:noet:ft=help:norl: