(Mini)Guide til a2ps

Dette er en lille kort gennemgang af brugen af ascii-postscript konverterings/formaterings programmet a2ps. Dette program er særligt velegnet at bruge når man skal printe en aflevering der mest består af kildekode-filer.

Som standard tager a2ps blot et enkelt argument, nemlig den ascii fil man vil have formateret og printet. Filen vil så blive formateret og printet på den printer man har som default. Vil man printe på en bestemt printer bruges "-P[printernavn]", f.eks. "-Psk" for at printe på printeren i mausoleet.

[term]$ a2ps AddressBookDemo.java
[CatFiles.java (Java): 1 page on 1 sheet]
[Total: 1 page on 1 sheet] sent to the default printer

Oftest vil man dog nok hellere få a2ps til at skrive til en fil istedet for direkte at smide siden i en printerkø. Det giver både den fordel at man får en chance for at se den formaterede side inden man printer (printe en ps-fil: lpr -P[printernavn] file.ps ) og at man har et dokument som man kan dele med andre. Især hvis man konverterer a2ps's output fil fra ps til pdf, med f.esk. ps2pdf eller direkte med flaget -=pdf istedet for -o, så har man en rigtig fin elektronisk udgave af ens dokument.

For at få a2ps til at lave en outpuf fil bruges optionen "-o <filnavn>", f.eks.:

[term]$ a2ps AddressBookDemo.java -o java.ps
[CatFiles.java (Java): 1 page on 1 sheet]
[Total: 1 page on 1 sheet] saved into the file `java.ps'
Man kan nu f.eks. vha. GhostView se det færdige resultat:
[term]$ gv java.ps
default formatering Som man nok kan se er default opsætningen af a2ps ikke helt perfekt for folk som synes at et ark a4 er et ark a4 og ikke to ark a5. (vil man se hvilke options a2ps bruger som standard kan det lade sig gøre ved at skrive: a2ps --list=default ).

For at slippe af med to-i-en layoutet bruges optionen "-1":

[term]$ a2ps -1 AddressBookDemo.java -o java.ps
One-page layout

Har man en fancy printer der elsker farver eller synes man bare at syntax-highlighting'en skal have lidt mere farvelade kan det naturligvis også lade sige gøre. Nemlig ved brug at "--prologue=color" optionen:

[term]$ a2ps -1 --prologue=color AddressBookDemo.java -o java.ps
Highlighting in color Læg her mærke til at options der kun består af et tegn kun har en enkelt "-" foran mens options der består at flere tegn har to, dvs. "--" foran.

a2ps laver selv en header og footer ud fra brugerens navn, dato for kørslen, ascii filen navn og sidetal. En standard header kan f.eks. se sådan ud:
Default header
...og en footer:
Default footer
Man kan naturligvis ændre på teksten i både header og footer. Det gøres med en option for hver del. Lad os begynde med headeren.

[term]$ a2ps -1 --header="Min header" --left-title="Venstre" --center-title="Midt" --right-title="Hoejre" AddressBookDemo.java -o java.ps
Custom header
[term]$ a2ps -1 --left-footer="Venstre" --footer="Midt" --right-footer="Hoejre" AddressBookDemo.java -o java.ps
Custom footer
Man behøves naturligvis ikke at angive dem alle sammen. Kun dem man vil ændre skal angives, det man ikke angiver bliver bare det det var som default. Man kan også helt blive fri for headeren/footeren ved at bruge optionen "--no-header" (eller blot "-B" for de dovne :-) ). Vil man af med den ramme der kommer om siden kan man bruge "--border=0" og så er den væk.

En semi-fancy feature a2ps har er at der kan laves vandmærker...sådan næsten da. Man kan i hvertfald lave noget der ligner, det gøres med "--underlay="<tekst>"" (eller blot "-u<tekst>"):

[term]$ a2ps -1 --underlay="Fortroligt" AddressBookDemo.java -o java.ps
Vandmærke

Nu er der nok mange der sidder og tænker: "ej, det er jo mega lange kommandoer man skal indtaste... det sku' da ikke ret smart, vel!". Men det behøver man faktisk slet ikke, man kan nemlig bare smide alle sine indstillinger i ~/.a2ps/a2psrc og så er man fri for at skulle indtaste kæmpe lange rækker af options hver gang man bare vil smide en kildefil efter en printer.
Min a2psrc indholder for tiden:

[term]$ cat ~/.a2ps/a2psrc
Options: -1 --medium=a4 --header="Jonathan Fromer Dat4 20030584"
Så jeg kan printe ved blot at skrive a2ps -P[printernavn] <filnavn>. Vil man lave mere om på default layoutet skriver man bare mere på sin "Options" linie i sin a2psrc-fil.

Mere info om a2ps kan findes lokalt ved at skrive:

[term]$ man a2ps
eller:
[term]$ info a2ps
eller hvis man er mere glad for at læse dokumentation i en browser: http://www.gnu.org/software/a2ps/.




Sidst opdateret: $Date: 2006/01/25 10:33:50 $