Simplify gmxapi RPATH handling
[gromacs.git] / docs / manual / subindex
blobfe12f1b8e705c5c3f20b86f3c971ba3a9ae067bf
1 #!/usr/bin/awk -f
4 # (c) K. Anton Feenstra 2001
6 # subindex v. 0.1 - 12 feb 2001
8 # reads tex index entries as generated by makeindex and
9 # combines identical words into sub-entries
12 BEGIN {
13 n=0;
16 /[{ ]Symbols[ }]/ {
17 if ( substr(1,1,$0)!="%" )
18 $0 = "% " $0;
21 /^[ \t]*\\see/ {
22 sub("^[ \t]*","");
23 pp = pp $0;
24 next;
28 sub(", \\\\see.*","",pp);
31 function dump() {
32 printf("%% %d %d %d %d |", mc, nc, mp, np);
33 for(i=1;i<=nc;i++) printf(" %s",c[i]);
34 printf(" |");
35 for(i=1;i<=np;i++) printf(" %s",p[i]);
36 printf(" |\n");
41 mc=0;
42 if ($1=="\\item") {
43 for(i=1; $(i)!="\\hfill" && i<=NF; i++) {
44 c[i]=$(i+1);
45 sub(",$","",c[i]);
46 if (i<=np && c[i]==p[i]) mc=i;
48 nc=i-2;
49 } else {
50 nc=0;
51 mc=0;
53 # if (mc) dump();
54 if (mc && mc<=nc) {
55 if (mc) {
56 key=c[1];
57 for(i=2; i<=mc; i++)
58 key=key" "c[i];
59 } else
60 key="";
61 if (key != pkey && mc<np)
62 printf(" \\item %s \\hfill \\nopagebreak\n", key);
63 pkey=key;
65 if (mp) m=mp; else m=mc;
66 skey=p[m+1];
67 for(i=m+2; i<=np; i++)
68 skey=skey" "p[i];
69 if (mc<np)
70 for(i=1; i<=mp || i<=mc; i++) {
71 sub("item "key" ", "subitem ", pp);
72 sub("item "key", "skey, "subitem "skey" $\\sim$", pp);
73 pp=" "pp;
76 np=nc;
77 mp=mc;
78 for(i=1;i<=np;i++)
79 p[i]=c[i];
83 if (NR>1) print pp;
84 pp=$0;
87 END {
88 print pp;
91 #last line