docs/diploma

view thesis/scripts/improve-index.awk @ 406:1d527ad76c97

spell checking
author meillo@marmaro.de
date Sun, 08 Feb 2009 23:51:48 +0100
parents d51894e48762
children ee7211546c02
line source
1 #!/usr/bin/awk -f
2 #
3 # improve the index
6 BEGIN{
8 # special formating for entries
9 e["mta"] = "Mail Transfer Agent (\\NAME{MTA})";
10 e["mua"] = "Mail User Agent (\\NAME{MUA})";
11 e["mda"] = "Mail Delivery Agent (\\NAME{MDA})";
12 e["smtp"] = "Simple Mail Transfer Protocol (\\NAME{SMTP})";
13 e["ietf"] = "ietf@\\NAME{IETF}";
14 e["debian"] = "Debian";
15 e["ascii"] = "ascii@\\NAME{ASCII}";
16 e["gpl"] = "General Public License (\\NAME{GPL})";
17 e["auth"] = "authentication";
18 e["bsd"] = "Berkeley Software Distribution (\\NAME{BSD})";
19 e["c"] = "C programming language";
20 e["changing ip addresses"] = "changing \\NAME{IP} addresses";
21 e["cyrus sasl"] = "cyrus \\NAME{SASL}";
22 e["dns blacklist"] = "dns blacklist@\\NAME{DNS} blacklist";
23 e["dynamic dns"] = "dynamic \\NAME{DNS}";
24 e["enc"] = "encryption";
25 e["fax"] = "telefax";
26 e["imap"] = "imap@\\NAME{IMAP}";
27 e["ipc"] = "Inter-Process Communication (\\NAME{IPC})";
28 e["isp"] = "Internet Service Provider (\\NAME{ISP})";
29 e["mime"] = "mime@\\NAME{MIME}";
30 e["mmdf"] = "mmdf@\\NAME{MMDF}";
31 e["pam"] = "pam@\\NAME{PAM}";
32 e["pop3"] = "pop3@\\NAME{POP3}";
33 e["relay-only mta"] = "relay-only \\NAME{MTA}";
34 e["rfc"] = "Request for Comments (\\NAME{RFC})";
35 e["sasl"] = "sasl@\\NAME{SASL}";
36 e["smtps"] = "smtps@\\NAME{SMTPS}";
37 e["starttls"] = "starttls@\\NAME{STARTTLS}";
38 e["swot analysis"] = "swot analysis@\\NAME{SWOT} analysis";
39 e["tcp socket"] = "tcp socket@\\NAME{TCP} socket";
40 e["tcp wrapper"] = "tcp wrapper@\\NAME{TCP} Wrapper";
41 e["tls"] = "Transport Layer Security (\\NAME{TLS})";
42 e["uc"] = "Unified Communication";
43 e["um"] = "Unified Messaging";
44 e["uucp"] = "uucp@\\NAME{UUCP}";
45 e["setuid"] = "setuid/setgid";
48 # persons
49 e["Oliver Kurth"] = e["Kurth"] = "Kurth@\\textsc{Kurth, Oliver}";
50 e["Adam Back"] = e["Back"] = "Back@\\textsc{Back, Adam}";
51 e["Eric Allman"] = e["Allman"] = "Allman@\\textsc{Allman, Eric}";
52 e["Stas Bekman"] = e["Bekman"] = "Bekman@\\textsc{Bekman, Stas}";
53 e["Daniel J. Bernstein"] = e["Bernstein"] = "Bernstein@\\textsc{Bernstein, Daniel J.}";
54 e["Bryan Costales"] = e["Costales"] = "Costales@\\textsc{Costales, Bryan}";
55 e["George Candea"] = e["Candea"] = "Candea@\\textsc{Candea, George}";
56 e["Dan Shearer"] = e["Shearer"] = "Shearer@\\textsc{Shearer, Dan}";
57 e["Dave Sill"] = e["Sill"] = "Sill@\\textsc{Sill, Dave}";
58 e["David A. Wheeler"] = e["Wheeler"] = "Wheeler@\\textsc{Wheeler, David A.}";
59 e["Kyle D. Dent"] = e["Dent"] = "Dent@\\textsc{Dent, Kyle D.}";
60 e["Derek Broughton"] = e["Broughton"] = "Broughton@\\textsc{Broughton, Derek}";
61 e["Doug McIlroy"] = e["McIlroy"] = "McIlroy@\\textsc{McIlroy, Doug}";
62 e["Peter Eisentraut"] = e["Eisentraut"] = "Eisentraut@\\textsc{Eisentraut, Peter}";
63 e["Tony Finch"] = e["Finch"] = "Finch@\\textsc{Finch, Tony}";
64 e["Armando Fox"] = e["Fox"] = "Fox@\\textsc{Fox, Armando}";
65 e["Frederik Vermeulen"] = e["Vermeulen"] = "Vermeulen@\\textsc{Vermeulen, Frederik}";
66 e["Marc G. Graff"] = e["Graff"] = "Graff@\\textsc{Graff, Marc G.}";
67 e["Munawar Hafiz"] = e["Hafiz"] = "Hafiz@\\textsc{Hafiz, Munawar}";
68 e["Philip Hazel"] = e["Hazel"] = "Hazel@\\textsc{Hazel, Philip}";
69 e["Ian R. Justman"] = e["Justman"] = "Justman@\\textsc{Justman, Ian R.}";
70 e["Jesse Freund"] = e["Freund"] = "Freund@\\textsc{Freund, Jesse}";
71 e["Jon Postel"] = e["Postel"] = "Postel@\\textsc{Postel, Jon}";
72 e["Jonathan de Boyne Pollard"] = e["de Boyne Pollard"] = "de Boyne Pollard@\\textsc{de Boyne Pollard, Jonathan}";
73 e["Stephen H. Kan"] = e["Kan"] = "Kan@\\textsc{Kan, Stephen H.}";
74 e["Brian W. Kernighan"] = e["Kernighan"] = "Kernighan@\\textsc{Kernighan, Brian W.}";
75 e["Nils Lenke"] = e["Lenke"] = "Lenke@\\textsc{Lenke, Nils}";
76 e["Markus Schnalke"] = e["Schnalke"] = "Schnalke@\\textsc{Schnalke, Markus}";
77 e["Michael Osterman"] = e["Osterman"] = "Osterman@\\textsc{Osterman, Michael}";
78 e["Rob Pike"] = e["Pike"] = "Pike@\\textsc{Pike, Rob}";
79 e["Eric S. Raymond"] = e["Raymond"] = "Raymond@\\textsc{Raymond, Eric S.}";
80 e["Dennis Ritchie"] = e["Ritchie"] = "Ritchie@\\textsc{Ritchie, Dennis}";
81 e["Peter Schmitz"] = e["Schmitz"] = "Schmitz@\\textsc{Schmitz, Peter}";
82 e["Ken Simpson"] = e["Simpson"] = "Simpson@\\textsc{Simpson, Ken}";
83 e["Diomidis Spinellis"] = e["Spinellis"] = "Spinellis@\\textsc{Spinellis, Diomidis}";
84 e["Andrew S. Tanenbaum"] = e["Tanenbaum"] = "Tanenbaum@\\textsc{Tanenbaum, Andrew S.}";
85 e["Kenneth R. van Wyk"] = e["van Wyk"] = "van Wyk@\\textsc{van Wyk, Kenneth R.}";
86 e["Christian Langbein"] = e["Langbein"] = "Langbein@\\textsc{Langbein, Christian}";
87 e["Dad"] = "Schnalke@\\textsc{Schnalke, R\\\"udiger}";
88 e["Hans-J\\\"org Schaaf"] = e["Schaaf"] = "Schaaf@\\textsc{Schaaf, Hans-J\\\"org}";
89 e["Henry Atting"] = e["Atting"] = "Atting@\\textsc{Atting, Henry}";
90 e["Heraclitus"] = "Heraclitus@\\textsc{Heraclitus}";
91 e["James Stenard"] = e["Stenard"] = "Stenard@\\textsc{Stenard, James}";
92 e["Joachim Breitner"] = e["Breitner"] = "Breitner@\\textsc{Breitner, Joachim}";
93 e["Jochen Roth"] = e["Roth"] = "Roth@\\textsc{Roth, Jochen}";
94 e["Julian Forster"] = e["Forster"] = "Forster@\\textsc{Forster, Julian}";
95 e["Lydi"] = "Steffan@\\textsc{Steffan, Lydi}";
96 e["Marc Geis"] = e["Geis"] = "Geis@\\textsc{Geis, Marc}";
97 e["Markus Sch\\\"affter"] = e["Sch\\\"affter"] = "Schaeffter@\\textsc{Sch\\\"affter, Markus}";
98 e["Roger Schietzel"] = e["Schietzel"] = "Schietzel@\\textsc{Schietzel, Roger}";
99 e["Stephen C. Johnson"] = e["Johnson"] = "Johnson@\\textsc{Johnson, Stephen C.}";
100 e["Wietse Venema"] = e["Venema"] = "Venema@\\textsc{Venema, Wietse}";
101 e["Volkmar Kese"] = e["Kese"] = "Kese@\\textsc{Kese, Volkmar}";
104 # subentries
105 s["sendmailx"] = "sendmail X";
106 s["meta1"] = "MeTA1";
107 s["smtp-after-pop"] = "\\NAME{SMTP}-after-\\NAME{POP}";
108 s["smtp-auth"] = "\\NAME{SMTP-AUTH}";
111 # aliases
112 a["ifdef"] = "ifdef|see{conditional compilation}";
113 a["envelope"] = "envelope|see{mail message}";
114 a["header"] = "header|see{mail message}";
115 a["body"] = "body|see{mail message}";
116 a["ssl"] = "ssl@\\NAME{SSL}|see{\\NAME{TLS}}";
117 a["forwarder"] = "forwarder|see{relay-only \\NAME{MTA}}";
118 a["junk mail"] = "junk mail|see{spam}";
119 a["fax"] = "fax|see{telefax}";
121 }
125 {
126 gsub(/\\ /, " ");
127 gsub(/\\nobreakspace \{\}/, " ");
128 gsub(/\\discretionary \{-\}\{\}\{\}/, "");
130 entry = $0
131 sub(/[^{]*{/, "", entry);
132 sub(/[}!].*/, "", entry);
133 if (e[entry]) {
134 sub(/{[^}!]*/, "{" e[entry]);
135 }
137 subentry = $0
138 sub(/[^!]*!/, "", subentry);
139 sub(/}.*/, "", subentry);
140 if (s[subentry]) {
141 sub(/![^}]*/, "!" s[subentry]);
142 }
144 print;
145 }
149 END {
150 # aliases
151 for (i in a) {
152 print "\\indexentry{" a[i] "}{0}";
153 }
154 }