comparison thesis/scripts/improve-index.awk @ 402:e57129f57faa

finished the indexing in a huge last effort
author meillo@marmaro.de
date Sun, 08 Feb 2009 22:51:42 +0100
parents d51894e48762
children ee7211546c02
comparison
equal deleted inserted replaced
401:d6ff5728dcd1 402:e57129f57faa
1 #!/usr/bin/awk -f 1 #!/usr/bin/awk -f
2 # 2 #
3 # improve the index 3 # improve the index
4 4
5
5 BEGIN{ 6 BEGIN{
6 e["mta"] = "mail transfer agent (\\NAME{MTA})"; 7
7 e["mua"] = "mail user agent (\\NAME{MUA})"; 8 # special formating for entries
8 e["mda"] = "mail delivery agent (\\NAME{MUA})"; 9 e["mta"] = "Mail Transfer Agent (\\NAME{MTA})";
9 e["smtp"] = "simple mail transfer protocol (\\NAME{SMTP})"; 10 e["mua"] = "Mail User Agent (\\NAME{MUA})";
10 e["ietf"] = "Internet Engineering Task Force (\\NAME{IETF})"; 11 e["mda"] = "Mail Delivery Agent (\\NAME{MDA})";
12 e["smtp"] = "Simple Mail Transfer Protocol (\\NAME{SMTP})";
13 e["ietf"] = "ietf@\\NAME{IETF}";
11 e["debian"] = "Debian"; 14 e["debian"] = "Debian";
12 e["ascii"] = "ascii@\\NAME{ASCII}"; 15 e["ascii"] = "ascii@\\NAME{ASCII}";
13 e["gpl"] = "General Public License (\\NAME{GPL})"; 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";
14 46
47
48 # persons
15 e["Oliver Kurth"] = e["Kurth"] = "Kurth@\\textsc{Kurth, Oliver}"; 49 e["Oliver Kurth"] = e["Kurth"] = "Kurth@\\textsc{Kurth, Oliver}";
16 e["Adam Back"] = e["Back"] = "Back@\\textsc{Back, Adam}"; 50 e["Adam Back"] = e["Back"] = "Back@\\textsc{Back, Adam}";
17 e["Eric Allman"] = e["Allman"] = "Allman@\\textsc{Allman, Eric}"; 51 e["Eric Allman"] = e["Allman"] = "Allman@\\textsc{Allman, Eric}";
18 e["Stas Bekman"] = e["Bekman"] = "Bekman@\\textsc{Bekman, Stas}"; 52 e["Stas Bekman"] = e["Bekman"] = "Bekman@\\textsc{Bekman, Stas}";
19 e["Daniel J. Bernstein"] = e["Bernstein"] = "Bernstein@\\textsc{Bernstein, Daniel J.}"; 53 e["Daniel J. Bernstein"] = e["Bernstein"] = "Bernstein@\\textsc{Bernstein, Daniel J.}";
47 e["Peter Schmitz"] = e["Schmitz"] = "Schmitz@\\textsc{Schmitz, Peter}"; 81 e["Peter Schmitz"] = e["Schmitz"] = "Schmitz@\\textsc{Schmitz, Peter}";
48 e["Ken Simpson"] = e["Simpson"] = "Simpson@\\textsc{Simpson, Ken}"; 82 e["Ken Simpson"] = e["Simpson"] = "Simpson@\\textsc{Simpson, Ken}";
49 e["Diomidis Spinellis"] = e["Spinellis"] = "Spinellis@\\textsc{Spinellis, Diomidis}"; 83 e["Diomidis Spinellis"] = e["Spinellis"] = "Spinellis@\\textsc{Spinellis, Diomidis}";
50 e["Andrew S. Tanenbaum"] = e["Tanenbaum"] = "Tanenbaum@\\textsc{Tanenbaum, Andrew S.}"; 84 e["Andrew S. Tanenbaum"] = e["Tanenbaum"] = "Tanenbaum@\\textsc{Tanenbaum, Andrew S.}";
51 e["Kenneth R. van Wyk"] = e["van Wyk"] = "van Wyk@\\textsc{van Wyk, Kenneth R.}"; 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.}";
52 e["Wietse Venema"] = e["Venema"] = "Venema@\\textsc{Venema, Wietse}"; 100 e["Wietse Venema"] = e["Venema"] = "Venema@\\textsc{Venema, Wietse}";
101 e["Volkmar Kese"] = e["Kese"] = "Kese@\\textsc{Kese, Volkmar}";
102
103
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}";
109
110
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}";
120
53 } 121 }
54 122
55 123
56 124
57 { 125 {
58 cur = $0 126 gsub(/\\ /, " ");
59 gsub(/\\nobreakspace \{\}/, " ", cur); 127 gsub(/\\nobreakspace \{\}/, " ");
60 gsub(/\\ /, " ", cur); 128 gsub(/\\discretionary \{-\}\{\}\{\}/, "");
61 sub(/[^{]*{/, "", cur); 129
62 sub(/[}!].*/, "", cur); 130 entry = $0
63 if (e[cur]) { 131 sub(/[^{]*{/, "", entry);
64 sub(/{[^}!]*/, "{" e[cur]); 132 sub(/[}!].*/, "", entry);
133 if (e[entry]) {
134 sub(/{[^}!]*/, "{" e[entry]);
65 } 135 }
136
137 subentry = $0
138 sub(/[^!]*!/, "", subentry);
139 sub(/}.*/, "", subentry);
140 if (s[subentry]) {
141 sub(/![^}]*/, "!" s[subentry]);
142 }
143
66 print; 144 print;
67 } 145 }
146
147
148
149 END {
150 # aliases
151 for (i in a) {
152 print "\\indexentry{" a[i] "}{0}";
153 }
154 }