目的
コマンドラインからバシバシソースコードを印刷したり,PDFに変換したい,けどa2ps
だとあんまり綺麗にならない.という時にenscript
を使いましょう.
環境
- OS: Ubuntu 16.04LTS, Ubuntu 17.04, CentOS6, CentOS7 等で実行可能
インストール
- Ubuntu/Debian
$ sudo apt install enscript
- CentOS/RHEL
$ sudo yum install enscript
使い方
そのままデフォルトプリンタに印刷
$ enscript test.c
PDF出力
$ enscript test.c -o test.ps
$ ps2pdf test.ps
HTML出力
$ enscript test.c -Whtml
おすすめオプション
- C言語ハイライト,カラー,行番号表示,1行ごとに色分け
$ enscript --pretty-print=c --color --line-numbers -H1 test.c -o test.ps
- C言語ハイライト,カラー,行番号表示,1行ごとに色分け,2段組,横向き
$ enscript --pretty-print=c --color --line-numbers -H1 --columns=2 --landscape test.c -o test.ps
その他
対応言語
--pretty-print
で指定できる言語の一覧は,--help-pretty-print
オプションで表示できる.
$ enscript --help-pretty-print | grep Name
Name: ada
Name: asm
Name: awk
Name: bash
Name: c
Name: changelog
Name: cpp
Name: csh
Name: delphi
Name: diff
Name: diffs
Name: diffu
Name: dylan
Name: eiffel
Name: elisp
Name: erlang
Name: f90
Name: forth
Name: fortran
Name: fortran_pp
Name: haskell
Name: html
Name: icon
Name: idl
Name: inf
Name: java
Name: javascript
Name: ksh
Name: lua
Name: m4
Name: mail
Name: makefile
Name: matlab
Name: nroff
Name: oberon2
Name: objc
Name: octave
Name: outline
Name: oz
Name: pascal
Name: perl
Name: postscript
Name: pyrex
Name: python
Name: rfc
Name: ruby
Name: scheme
Name: sh
Name: skill
Name: Smalltalk
Name: sml
Name: sql
Name: states
Name: synopsys
Name: tcl
Name: tcsh
Name: tex
Name: vba
Name: verilog
Name: vhdl
Name: vrml
Name: wmlscript
Name: zsh