]>
Commit | Line | Data |
---|---|---|
23bb8df2 JS |
1 | #!/usr/bin/perl |
2 | ||
3 | %terms=(); | |
4 | ||
5 | while(<>) { | |
6 | if(/^(\S.*)::$/) { | |
7 | my $term=$1; | |
8 | if(defined($terms{$term})) { | |
9 | die "$1 defined twice\n"; | |
10 | } | |
11 | $terms{$term}=""; | |
12 | LOOP: while(<>) { | |
13 | if(/^$/) { | |
14 | last LOOP; | |
15 | } | |
16 | if(/^ \S/) { | |
17 | $terms{$term}.=$_; | |
18 | } else { | |
19 | die "Error 1: $_"; | |
20 | } | |
21 | } | |
22 | } | |
23 | } | |
24 | ||
25 | sub format_tab_80 ($) { | |
26 | my $text=$_[0]; | |
27 | my $result=""; | |
28 | $text=~s/\s+/ /g; | |
29 | $text=~s/^\s+//; | |
30 | while($text=~/^(.{1,72})(|\s+(\S.*)?)$/) { | |
31 | $result.=" ".$1."\n"; | |
32 | $text=$3; | |
33 | } | |
34 | return $result; | |
35 | } | |
36 | ||
37 | sub no_spaces ($) { | |
38 | my $result=$_[0]; | |
39 | $result=~tr/ /_/; | |
40 | return $result; | |
41 | } | |
42 | ||
43 | print 'GIT Glossary | |
44 | ============ | |
23bb8df2 JS |
45 | |
46 | This list is sorted alphabetically: | |
47 | ||
48 | '; | |
49 | ||
50 | @keys=sort {uc($a) cmp uc($b)} keys %terms; | |
51 | $pattern='(\b'.join('\b|\b',reverse @keys).'\b)'; | |
52 | foreach $key (@keys) { | |
53 | $terms{$key}=~s/$pattern/sprintf "<<ref_".no_spaces($1).",$1>>";/eg; | |
54 | print '[[ref_'.no_spaces($key).']]'.$key."::\n" | |
55 | .format_tab_80($terms{$key})."\n"; | |
56 | } | |
57 | ||
58 | print ' | |
59 | ||
60 | Author | |
61 | ------ | |
62 | Written by Johannes Schindelin <Johannes.Schindelin@gmx.de> and | |
63 | the git-list <git@vger.kernel.org>. | |
64 | ||
65 | GIT | |
66 | --- | |
67 | Part of the link:git.html[git] suite | |
68 | '; | |
69 |