43 Printing Hard Copies
Emacs provides commands for printing hard copies of either an entire
buffer or just part of one, with or without page headers. You can
invoke the printing commands directly, as detailed in the following
section, or using the ‘File’ menu on the menu bar. See also the
hardcopy commands of Dired (see Misc File Ops) and the diary
(see Displaying the Diary).
- M-x print-buffer
- Print hardcopy of current buffer with page headings containing the file
name and page number.
- M-x lpr-buffer
- Print hardcopy of current buffer without page headings.
- M-x print-region
- Like
print-buffer
but print only the current region.
- M-x lpr-region
- Like
lpr-buffer
but print only the current region.
The hardcopy commands (aside from the Postscript commands) pass extra
switches to the lpr
program based on the value of the variable
lpr-switches
. Its value should be a list of strings, each string
an option starting with ‘-’. For example, to specify a line width
of 80 columns for all the printing you do in Emacs, set
lpr-switches
like this:
(setq lpr-switches '("-w80"))
You can specify the printer to use by setting the variable
printer-name
.
The variable lpr-command
specifies the name of the printer
program to run; the default value depends on your operating system type.
On most systems, the default is "lpr"
. The variable
lpr-headers-switches
similarly specifies the extra switches to
use to make page headers. The variable lpr-add-switches
controls
whether to supply ‘-T’ and ‘-J’ options (suitable for
lpr
) to the printer program: nil
means don't add them.
lpr-add-switches
should be nil
if your printer program is
not compatible with lpr
.