Mercurial > emacs
annotate lisp/emacs-lisp/authors.el @ 38588:08a4c6c00af0
(init_from_display_pos): If POS is in an overlay string,
deal with the first overlay string having an image `display'
property.
(try_window_reusing_current_matrix, compute_line_metrics): Fix
computation of row's visible height for the case that part of the
row is invisible above and part of the row is at the same time
invisible below the window.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Fri, 27 Jul 2001 15:29:16 +0000 |
parents | 253f761ad37b |
children | 8a9386a43e41 |
rev | line source |
---|---|
30790 | 1 ;;; authors.el --- utility for maintaining Emacs' AUTHORS file |
2 | |
3 ;; Copyright (C) 2000 Free Software Foundation, Inc. | |
4 | |
33752
9ebf8de0e42c
Remove autoload cookied, add author,
Gerd Moellmann <gerd@gnu.org>
parents:
33151
diff
changeset
|
5 ;; Author: Gerd Moellmann <gerd@gnu.org> |
9ebf8de0e42c
Remove autoload cookied, add author,
Gerd Moellmann <gerd@gnu.org>
parents:
33151
diff
changeset
|
6 ;; Maintainer: FSF |
9ebf8de0e42c
Remove autoload cookied, add author,
Gerd Moellmann <gerd@gnu.org>
parents:
33151
diff
changeset
|
7 ;; Keywords: maint |
9ebf8de0e42c
Remove autoload cookied, add author,
Gerd Moellmann <gerd@gnu.org>
parents:
33151
diff
changeset
|
8 |
30790 | 9 ;; This file is part of GNU Emacs. |
10 | |
11 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
12 ;; it under the terms of the GNU General Public License as published by | |
13 ;; the Free Software Foundation; either version 2, or (at your option) | |
14 ;; any later version. | |
15 | |
16 ;; GNU Emacs is distributed in the hope that it will be useful, | |
17 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
19 ;; GNU General Public License for more details. | |
20 | |
21 ;; You should have received a copy of the GNU General Public License | |
22 ;; along with GNU Emacs; see the file COPYING. If not, write to the | |
23 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
24 ;; Boston, MA 02111-1307, USA. | |
25 | |
26 ;;; Commentary: | |
27 | |
28 ;; Use M-x authors RET to create an *Authors* buffer that can used as | |
29 ;; or merged with Emacs' AUTHORS file. | |
30 | |
31 ;;; Code: | |
32 | |
33 (defconst authors-many-files 20 | |
34 "Maximum number of files for which to print individual information. | |
35 If an author has modified more files, only a single entry is | |
36 printed telling how many files he changed, instead of listing each | |
37 file individually.") | |
38 | |
39 (defconst authors-aliases | |
40 '(("eliz" . "Eli Zaretskii") | |
41 ("Richard Stallman" . "Richard M. Stallman") | |
42 ("Richard M. Stallman,,," . "Richard M. Stallman") | |
43 ("Richard Stallmao" . "Richard M. Stallman") | |
44 ("rms@gnu.org" . "Richard M. Stallman") | |
45 ("NIIBE Yutaka" . "Yutaka NIIBE") | |
46 ("(saw@cebaf.gov)" . "Stephen A. Wood") | |
47 ("(pmr@legacy.pajato.com)" . "Paul Reilly") | |
48 ("(Eric Youngdale at youngdale@v6550c.nrl.navy.mil)" . "Eric Youngdale") | |
49 ("<Daniel.Pfeiffer@Informatik.START.db.de>" . "Daniel Pfeiffer") | |
50 ("<Daniel.Pfeiffer@Informatik.START.dbp.de>" . "Daniel Pfeiffer") | |
51 ("(afs@hplb.hpl.hp.com)" . "ignore") | |
52 ("<Use-Author-Address-Header@\\[127.1\\]>" . "ignore") | |
53 ("Code Extracted" . "ignore") | |
54 ("Fsf" . "ignore") | |
55 ("David M. Koppelman, Koppel@Ee.Lsu.Edu" . "David M. Koppelman") | |
56 ("jka@ece.cmu.edu" . "Jay K. Adams") | |
57 ("Per Abhiddenware; you can redistribute it and/or modify" . "Per Abrahamsen") | |
58 ("Andrw Innes" . "Andrew Innes") | |
59 ("Barry Warsaw" . "Barry A. Warsaw") | |
60 ("Barry A. Warsaw, Century Computing, Inc." . "Barry A. Warsaw") | |
61 ("Barry A. Warsaw, ITB" . "Barry A. Warsaw") | |
62 ("Ken'ichi Handa" . "Kenichi Handa") | |
63 ("Bob Chassell" . "Robert J. Chassell") | |
64 ("SL Baur" . "Steven L. Baur") | |
65 ("Steven L Baur" . "Steven L. Baur") | |
66 ("eggert" . "Paul Eggert") | |
67 ("voelker" . "Geoff Voelker") | |
68 ("rms" . "Richard M. Stallman") | |
69 ("Edward M Reingold" . "Edward M. Reingold") | |
70 ("Eric Ludlam" . "Eric M. Ludlam") | |
71 ("Eric Raymond" . "Eric S. Raymond") | |
72 ("Francois Pinard" . "François Pinard") | |
73 ("Fred Pierresteguy" . "Frederic Pierresteguy") | |
74 ("Hallvard B Furuseth" . "Hallvard B. Furuseth") | |
75 ("ISO-2022-JP" . "ignore") | |
76 ("Jens-Ulrik Petersen" . "Jens-Ulrik Holger Petersen") | |
77 ("Christoph.Wedler@sap.com" . "Christoph Wedler") | |
78 ("Jonathan Kamens" . "Jonathan I. Kamens") | |
79 ("Kim Storm" . "Kim F. Storm") | |
80 ("Marcus Daniels" . "Marcus G. Daniels") | |
81 ("Michael I Bushnell" . "Michael I. Bushnell") | |
82 ("Michael I. Bushnell, P/Bsg" . "Michael I. Bushnell") | |
83 ("Reingold Edward M" . "Edward M. Reingold") | |
84 ("Roland B Roberts" . "Roland B. Roberts") | |
85 ("Sam Shteingold" . "Sam Steingold") | |
32832
1ce7dce8710b
(authors-aliases): Add some more aliases.
Gerd Moellmann <gerd@gnu.org>
parents:
32529
diff
changeset
|
86 ("W{\L}Odek Bzyl" . "Wlodzimierz Bzyl") |
1ce7dce8710b
(authors-aliases): Add some more aliases.
Gerd Moellmann <gerd@gnu.org>
parents:
32529
diff
changeset
|
87 ("Kenneth Manheimer" . "Ken Manheimer") |
32885
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
88 ("Kenichi HANDA" . "Kenichi Handa") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
89 ("Jay Adams" . "Jay R. Adams") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
90 ("Joe Arceneaux" . "Josef Arceneaux") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
91 ("K. Berry" . "Karl Berry") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
92 ("Michael Ernst" . "Michael D. Ernst") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
93 ("Dave Gillespie" . "David Gillespie") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
94 ("Shane Hartman" . "K. Shane Hartman") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
95 ("Francesco Potorti`" . "Francesco Potorti") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
96 ("Roland Roberts" . "Roland B. Roberts") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
97 ("David Smith" . "David M. Smith") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
98 ) |
30790 | 99 "Alist of author aliases. |
100 | |
101 Each entry is of the form (REGEXP . ALIAS). If an author's name | |
102 matches REGEXP, use ALIAS instead. The special alias \"ignore\" means | |
103 ignore that author.") | |
104 | |
105 | |
33151
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
106 (defvar authors-public-domain-files |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
107 '("auto-show\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
108 "form-d2\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
109 "emerge\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
110 "unused\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
111 "vi\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
112 "feedmail\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
113 "mailpost\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
114 "hanoi\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
115 "meese\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
116 "studly\\.el" |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
117 "modula2\\.el") |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
118 "List of regexps matching files for which the FSF doesn't need papers.") |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
119 |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
120 |
32028
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
121 (defvar authors-obsolete-files-regexps |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
122 '("vc-\\*\\.el$" |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
123 "spec.txt$" |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
124 "vc-\\(rcs\\|cvs\\|sccs\\)-hooks\\.el$") |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
125 "List of regexps matching obsolete files. |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
126 Changes to files matching one of the regexps in this list are not |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
127 listed.") |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
128 |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
129 |
32885
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
130 (defconst authors-fixed-entries |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
131 '(("Joe Arceneax" :wrote "xrdb.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
132 ("Blitz Product Development Corporation" :wrote "ispell.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
133 ("Frank Bresz" :wrote "diff.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
134 ("David M. Brown" :wrote "array.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
135 ("Gary Byers" :changed "xenix.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
136 ("Shawn M. Carey" :wrote "freebsd.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
137 ("Eric Decker" :changed "hp9000s800.h" "hpux.h" "sysdep.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
138 ("Lawrence R. Dodd" :wrote "dired-x.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
139 ("Viktor Dukhovni" :wrote "unexsunos4.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
140 ("Paul Eggert" :wrote "rcs2log" "vcdiff") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
141 ("Fred Fish" :changed "unexec.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
142 ("Tim Fleehart" :wrote "makefile.nt") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
143 ("Keith Gabryelski" :wrote "hexl.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
144 ("Kevin Gallagher" :wrote "flow-ctrl.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
145 ("Howard Gayle" :wrote "disp-table.el" "iso-syntax.el" "casetab.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
146 ("Stephen Gildea" :wrote "refcard.tex" "mh-funcs.el" "mh-pick.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
147 ("David Gillespie" :wrote "cl.texinfo") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
148 ("Hewlett-Packard" :changed "emacsclient.c" "emacsserver.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
149 "server.el" "keyboard.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
150 ("Thomas Horsley" :wrote "cxux.h" "cxux7.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
151 ("Indiana University Foundation" :changed "buffer.c" "buffer.h" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
152 "indent.c" "search.c" "xdisp.c" "region-cache.c" "region-cache.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
153 ("International Business Machines" :changed "emacs.c" "fileio.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
154 "ibmrt.h" "process.c" "sysdep.c" "unexec.c" "ibmrt-aix.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
155 ("Ishikawa Chiaki" :changed "aviion.h" "dgux.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
156 ("Michael K. Johnson" :changed "configure.in" "emacs.c" "intel386.h" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
157 "mem-limits.h" "process.c" "template.h" "sysdep.c" "syssignal.h" "systty.h" "unexec.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
158 "ymakefile" "linux.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
159 ("Kyle E. Jones" :wrote "mldrag.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
160 ("Kenry Kautz" :wrote "bib-mode.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
161 ("Joseph M. Kelsey" :changed "fileio.c" "vms-pwd.h" "vmsfns.c" "dir.h" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
162 "uaf.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
163 ("Sam Kendall" :changed "etags.c" "etags.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
164 ("Richard King" :wrote "backquote.el" "userlock.el" "filelock.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
165 ("Larry Kolodney" :wrote "cvtmail.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
166 ("Sebastian Kremer" :changed "add-log.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
167 ("Mark Lambert" :changed "process.c" "process.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
168 ("Aaron Larson" :changed "bibtex.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
169 ("James R. Larus" :wrote "mh-e.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
170 ("Lars Lindberg" :changed "dabbrev.el" :wrote "imenu.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
171 ("Lucid, Inc." :changed "bytecode.c" "byte-opt.el" "byte-run.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
172 "bytecomp.el" "delsel.el" "disass.el" "faces.el" "font-lock.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
173 "lmenu.el" "lselect.el" "mailabbrev.el" "select.el" "xfaces.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
174 "xselect.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
175 ("MCC" :changed "etags.c" "emacsclient.c" "emacsserver.c" "movemail.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
176 "rmail.el" "rmailedit.el" "rmailkwd.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
177 "rmailmsc.el" "rmailout.el" "rmailsum.el" "scribe.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
178 "server.el" "lisp.h" "sysdep.c" "unexec.c" :wrote "xmenu.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
179 ("Niall Mansfield" :changed "etags.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
180 ("Brian Marick" :wrote "hideif.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
181 ("Marko Kohtala" :changed "info.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
182 ("Sidney Markowitz" :changed "doctor.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
183 ("Richard Mlynarik" :wrote "env.c" "ehelp.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
184 ("Mosur Mohan" :changed "etags.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
185 ("Jeff Morgenthaler" :changed "flow-ctrl.el" "vt200.el" "vt201.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
186 "vt220.el" "vt240.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
187 ("Motorola" :changed "buff-menu.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
188 ("Hiroshi Nakano" :changed "ralloc.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
189 ("Sundar Narasimhan" :changed "rnewspost.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
190 ("NeXT, Inc." :wrote "unexnext.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
191 ("Mark Neale" :changed "fortran.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
192 ("Martin Neitzel" :changed "sc.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
193 ("Andrew Oram" :changed "miscellaneous changes to files in man/" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
194 "man/calendar.texi") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
195 ("Frederic Pierresteguy" :wrote "widget.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
196 ("Michael D. Prange" :changed "tex-mode.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
197 ("Paul Reilly" :wrote "gux5-4r2.h" "dgux5-4r3.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
198 ("Roland B Roberts" :changed "files.el" "sort.el" "vmsproc.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
199 "buffer.h" "callproc.c" "dired.c" "process.c" "sysdep.c" "systty.h" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
200 "vmspaths.h" "build.com" "compile.com" "kepteditor.com" "precomp.com" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
201 :wrote "logout.com" "mailemacs.com") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
202 ("Guillermo J. Rozas" :wrote "fakemail.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
203 ("Wolfgang Rupprecht" :changed "lisp-mode.el" "loadup.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
204 "sort.el" "alloc.c" "callint.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
205 "config.h.in" "crt0.c" "data.c" "fns.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
206 "lisp.h" "lread.c" "sun3.h" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
207 "print.c" "ymakefile" :wrote "float-sup.el" "floatfns.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
208 ("Schlumberger Technology Corporation" :changed "gud.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
209 ("Gregor Schmid" :wrote "tcl-mode.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
210 ("Rainer Schoepf" :wrote "alpha.h" "unexalpha.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
211 ("William Sommerfeld" :wrote "emacsclient.c" "emacsserver.c" "scribe.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
212 ("Leigh Stoller" :changed "emacsclient.c" "emacsserver.c" "server.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
213 ("Steve Strassman" :wrote "spook.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
214 ("Shinichirou Sugou" :changed "etags.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
215 ("Sun Microsystems, Inc" :changed "emacsclient.c" "emacsserver.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
216 "server.el" :wrote "emacs.icon" "emacstool.1" "emacstool.c" "sun-curs.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
217 "sun-fns.el" "sun-mouse.el" "sun.el" "sunfns.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
218 ("Kayvan Sylvan" :changed "sc.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
219 ("Spencer Thomas" :changed "emacsclient.c" "emacsserver.c" "server.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
220 "dabbrev.el" "unexec.c" "tcp.c" "gnus.texi") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
221 ("Jonathan Vail" :changed "vc.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
222 ("James Van Artsdalen" :changed "usg5-4.h" "unexec.c") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
223 ("Geoff Voelker" :wrote "src/makefile.nt" "lisp/makefile.nt" "winnt.el" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
224 "nt.c" "nt.h" "ntheap.c" "ntheap.h" "ntinevt.c" |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
225 "ntproc.c" "ntterm.c" "windowsnt.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
226 ("Morten Welinder" :wrote "dosfns.c" "[many MSDOS files]" "msdos.h") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
227 ("Pace Willisson" :wrote "ispell.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
228 ("Garrett Wollman" :changed "sendmail.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
229 ("Dale Worley" :changed "mail-extr.el") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
230 ("Jamie Zawinski" :changed "bytecode.c" :wrote "disass.el" "tar-mode.el")) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
231 "Actions taken from the original, manually (un)maintained AUTHORS file.") |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
232 |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
233 |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
234 (defun authors-add-fixed-entries (table) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
235 "Add actions from `authors-fixed-entries' to TABLE." |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
236 (dolist (entry authors-fixed-entries) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
237 (let ((author (car entry)) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
238 action) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
239 (dolist (item (cdr entry)) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
240 (if (symbolp item) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
241 (setq action item) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
242 (authors-add author item action table)))))) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
243 |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
244 |
32028
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
245 (defun authors-obsolete-file-p (file) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
246 "Return non-nil if FILE is obsolete. |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
247 FILE is considered obsolete if it matches on of the regular expressions |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
248 from `authors-obsolete-files-regexps'." |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
249 (let (obsolete-p |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
250 (regexps authors-obsolete-files-regexps)) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
251 (while (and regexps (not obsolete-p)) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
252 (setq obsolete-p (string-match (car regexps) file) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
253 regexps (cdr regexps))) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
254 obsolete-p)) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
255 |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
256 |
30790 | 257 (defun authors-add (author file action table) |
258 "Record that AUTHOR worked on FILE. | |
259 ACTION is a keyword symbol describing what he did. Record file, | |
260 author and what he did in hash table TABLE. See the description of | |
261 `authors-scan-change-log' for the structure of the hash table." | |
32529
efaa4e4c5fef
(authors-add): Don't add an entry if
Gerd Moellmann <gerd@gnu.org>
parents:
32028
diff
changeset
|
262 (unless (or (authors-obsolete-file-p file) |
efaa4e4c5fef
(authors-add): Don't add an entry if
Gerd Moellmann <gerd@gnu.org>
parents:
32028
diff
changeset
|
263 (equal author "")) |
32028
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
264 (let* ((value (gethash author table)) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
265 (entry (assoc file value))) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
266 (if (null entry) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
267 (puthash author (cons (list file action) value) table) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
268 (unless (memq action entry) |
1bb0e9c9c64d
(authors-obsolete-file-p): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32005
diff
changeset
|
269 (nconc entry (list action))))))) |
30790 | 270 |
271 | |
272 (defun authors-process-lines (program &rest args) | |
273 "Execute PROGRAM with ARGS, returning its output as a list of lines. | |
274 Signal an error if the program returns with a non-zero exit status." | |
275 (with-temp-buffer | |
276 (let ((status (apply 'call-process program nil (current-buffer) nil args))) | |
277 (unless (eq status 0) | |
278 (error "%s exited with status %s" program status)) | |
279 (goto-char (point-min)) | |
280 (let (lines) | |
281 (while (not (eobp)) | |
282 (setq lines (cons (buffer-substring-no-properties | |
283 (line-beginning-position) | |
284 (line-end-position)) | |
285 lines)) | |
286 (forward-line 1)) | |
287 (nreverse lines))))) | |
288 | |
289 | |
290 (defun authors-canonical-author-name (author) | |
291 "Return a canonicalized form of AUTHOR, an author name. | |
292 If AUTHOR has an alias, use that. Remove email addresses. Capitalize | |
293 words in the author's name." | |
294 (let ((aliases authors-aliases)) | |
295 (while aliases | |
296 (when (string-match (car (car aliases)) author) | |
297 (setq author (cdr (car aliases)) | |
298 aliases nil)) | |
299 (setq aliases (cdr aliases)))) | |
300 (setq author (replace-regexp-in-string "[ \t]*[(<].*$" "" author)) | |
301 (setq author (replace-regexp-in-string "^[ \t]+" "" author)) | |
302 (setq author (replace-regexp-in-string "[ \t]+$" "" author)) | |
303 (capitalize author)) | |
304 | |
305 | |
306 (defun authors-scan-change-log (file table) | |
307 "Scan change log FILE for author information. | |
308 | |
309 For each change mentioned in the log, add an entry to hash table TABLE | |
310 under the author's canonical name. | |
311 | |
312 Keys of TABLE are author names. Values are alists of entries (FILE | |
313 ACTION...). FILE is one file the author worked on. The rest of the | |
314 entry is a list of keyword symbols describing what he did with the | |
315 file. | |
316 | |
317 :wrote means the author wrote the file | |
318 :changed means he changed the file." | |
319 | |
320 (let* ((enable-local-variables t) | |
321 (enable-local-eval t) | |
322 (existing-buffer (get-file-buffer file)) | |
323 (buffer (find-file-noselect file)) | |
324 author) | |
325 (save-excursion | |
326 (set-buffer buffer) | |
327 (save-restriction | |
328 (widen) | |
329 (goto-char (point-min)) | |
330 (while (re-search-forward "^[0-9]\\|^[ \t]+\\* " nil t) | |
331 (beginning-of-line) | |
332 (cond ((looking-at "^[0-9]+-[0-9]+-[0-9]+") | |
333 (skip-chars-forward " \t+:0-9-") | |
334 (setq author (buffer-substring-no-properties | |
335 (point) (line-end-position))) | |
336 (setq author (authors-canonical-author-name author)) | |
337 (forward-line 1)) | |
338 ((looking-at "^[ \t]+\\*") | |
339 (let ((line (buffer-substring-no-properties | |
340 (match-end 0) (line-end-position)))) | |
341 (while (and (not (string-match ":" line)) | |
342 (forward-line 1) | |
343 (not (looking-at ":\\|^[ \t]*$"))) | |
344 (setq line (concat line | |
345 (buffer-substring-no-properties | |
346 (line-beginning-position) | |
347 (line-end-position))))) | |
348 (when (string-match ":" line) | |
349 (setq line (substring line 0 (match-beginning 0))) | |
350 (setq line (replace-regexp-in-string "[[(<{].*$" "" line)) | |
351 (setq line (replace-regexp-in-string "," "" line)) | |
352 (dolist (file (split-string line)) | |
353 (setq file (file-name-nondirectory file)) | |
354 ;(message "%s changed %s" author file) | |
355 (authors-add author file :changed table))) | |
356 (forward-line 1))))))) | |
357 (unless existing-buffer | |
358 (kill-buffer buffer)))) | |
359 | |
360 | |
361 (defun authors-scan-el (file table) | |
362 "Scan Lisp file FILE for author information. | |
363 TABLE is a hash table to add author information to." | |
364 (let* ((existing-buffer (get-file-buffer file)) | |
365 (enable-local-variables t) | |
366 (enable-local-eval t) | |
367 (buffer (find-file-noselect file))) | |
368 (save-excursion | |
369 (set-buffer buffer) | |
370 (save-restriction | |
371 (widen) | |
372 (goto-char (point-min)) | |
373 (while (and (re-search-forward | |
374 "^;+[ \t]*\\(Author\\|Commentary\\):[ \t]*" nil t) | |
375 (not (string= (match-string 1) "Commentary"))) | |
376 ;; Some entries contain a year range in front of the | |
377 ;; author's name. | |
378 (skip-chars-forward "-0-9 \t") | |
379 (let ((author (buffer-substring-no-properties | |
380 (point) (line-end-position)))) | |
381 (setq author (authors-canonical-author-name author)) | |
382 (setq file (file-name-nondirectory file)) | |
383 (authors-add author file :wrote table))))) | |
384 (unless existing-buffer | |
385 (kill-buffer buffer)))) | |
386 | |
387 | |
33151
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
388 (defun authors-public-domain-p (file) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
389 "Return t if FILE is a file that was put in public domain." |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
390 (let ((public-domain-p nil) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
391 (list authors-public-domain-files)) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
392 (while (and list (not public-domain-p)) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
393 (when (string-match (car list) file) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
394 (setq public-domain-p t)) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
395 (setq list (cdr list))) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
396 public-domain-p)) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
397 |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
398 |
30790 | 399 (defun authors-print (author changes) |
400 "Insert information about AUTHOR's work on Emacs into the current buffer. | |
401 CHANGES is an alist of entries (FILE ACTION...), as produced by | |
402 `authors-scan-change-log'." | |
403 (unless (equal author "Ignore") | |
404 (let ((nchanged 0)) | |
405 (dolist (change changes) | |
406 (let ((actions (cdr change)) | |
407 (file (car change))) | |
408 (if (memq :wrote actions) | |
33151
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
409 (progn |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
410 (insert author " (wrote) " file) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
411 (when (authors-public-domain-p file) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
412 (insert " (public domain)")) |
452df6342ae5
(authors-public-domain-files): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
32885
diff
changeset
|
413 (insert "\n")) |
30790 | 414 (setq nchanged (1+ nchanged))))) |
415 (if (> nchanged authors-many-files) | |
32005
01a7fea88dc1
(authors-print): Rephrase many-files string.
Miles Bader <miles@gnu.org>
parents:
31957
diff
changeset
|
416 (insert author " (changed) [more than " |
30790 | 417 (int-to-string authors-many-files) " files]\n") |
418 (dolist (change changes) | |
419 (let ((actions (cdr change)) | |
420 (file (car change))) | |
421 (unless (memq :wrote actions) | |
422 (insert author " (changed) " file "\n")))))))) | |
423 | |
424 | |
425 (defun authors (root) | |
426 "Extract author information from change logs and Lisp source files. | |
427 ROOT is the root directory under which to find the files. If called | |
428 interactively, ROOT is read from the minibuffer. Result is a | |
429 buffer *Authors* containing authorship information." | |
430 (interactive "DEmacs source directory: ") | |
36010
c486995553f8
(authors): Expand `root' before running
Dave Love <fx@gnu.org>
parents:
33752
diff
changeset
|
431 (setq root (expand-file-name root)) |
30790 | 432 (let ((logs (authors-process-lines "find" root "-name" "ChangeLog*")) |
433 (table (make-hash-table :test 'equal)) | |
434 (buffer-name "*Authors*")) | |
32885
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
435 (authors-add-fixed-entries table) |
30790 | 436 (unless (file-exists-p (expand-file-name "src/emacs.c" root)) |
437 (error "Not the root directory of Emacs: %s" root)) | |
438 (dolist (log logs) | |
32885
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
439 (when (and (string-match "ChangeLog\\(.[0-9]+\\)?$" log) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
440 (not (string-match "/lispref/" log))) |
30790 | 441 (message "Scanning %s..." log) |
442 (authors-scan-change-log log table))) | |
443 (let ((els (authors-process-lines "find" root "-name" "*.el"))) | |
444 (dolist (file els) | |
445 (message "Scanning %s..." file) | |
446 (authors-scan-el file table))) | |
447 (set-buffer (get-buffer-create buffer-name)) | |
448 (erase-buffer) | |
32832
1ce7dce8710b
(authors-aliases): Add some more aliases.
Gerd Moellmann <gerd@gnu.org>
parents:
32529
diff
changeset
|
449 (set-buffer-file-coding-system 'iso-2022-7bit) |
30790 | 450 (maphash #'authors-print table) |
451 (sort-lines nil (point-min) (point-max)) | |
32832
1ce7dce8710b
(authors-aliases): Add some more aliases.
Gerd Moellmann <gerd@gnu.org>
parents:
32529
diff
changeset
|
452 (insert "\nLocal" " Variables:\ncoding: iso-2022-7bit\nEnd:\n") |
32885
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
453 (unless noninteractive |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
454 (pop-to-buffer buffer-name)))) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
455 |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
456 |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
457 (defun batch-update-authors () |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
458 "Produce an AUTHORS file. |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
459 Call this function in batch mode with two command line arguments FILE |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
460 and ROOT. FILE is the file to write, ROOT is the root directory of |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
461 the Emacs source tree, from which to build the file." |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
462 (unless noninteractive |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
463 (error "`batch-update-authors' is to be used only with -batch")) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
464 (when (/= (length command-line-args-left) 2) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
465 (error "Call `batch-update-authors' with the name of the file to write")) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
466 (let* ((file (pop command-line-args-left)) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
467 (root (pop command-line-args-left))) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
468 (authors root) |
c5fc43371c70
(batch-update-authors): New function.
Gerd Moellmann <gerd@gnu.org>
parents:
32832
diff
changeset
|
469 (write-file file))) |
30790 | 470 |
38412
253f761ad37b
Some fixes to follow coding conventions in files maintained by FSF.
Pavel Janík <Pavel@Janik.cz>
parents:
36010
diff
changeset
|
471 ;;; authors.el ends here |