Ad blocker interference detected!
Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers
Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.
created 2001 · complexity intermediate · author Aric Blumer · version 6.0
I have found it undesirable to use
:hardcopy directly because it uses the current syntax highlighting to determine how to print the text. For example, I like to print comments in italics, but I don't like italic fonts on the screen. This tip will show you how to set up a colorscheme for printing and use it only when you print. This assumes that you are already using a colorscheme.
I copied an existing colorscheme to
~/.vim/colors/print.vim, and changed all the lines like this:
highlight Normal ctermbg=DarkGrey ctermfg=White guifg=White guibg=grey20
highlight clear Normal
Then I set the syntax groups how I wanted them to be printed on the printer:
highlight Comment term=italic cterm=italic gui=italic highlight Constant term=bold cterm=bold gui=bold ...etc...
I then defined the following command and function in my vimrc:
command! -nargs=* Hardcopy call DoMyPrint('<args>') function DoMyPrint(args) let colorsave=g:colors_name color print exec 'hardcopy '.a:args exec 'color '.colorsave endfunction
After this is complete, you can do (use uppercase 'H'):
:Hardcopy > /tmp/out.ps