aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Bader2005-04-09 02:16:29 +0000
committerMiles Bader2005-04-09 02:16:29 +0000
commit768d4533ce51d61ce065b28f63aae43c7be0d1cc (patch)
treefb2d103d5c9354b3a15550b160bba0ff2e22c418
parent918bcc18650840562677f841aa0bcaa34a069be5 (diff)
parent2a9e192d3815d2c34fdd41d52590027805bc9055 (diff)
downloademacs-768d4533ce51d61ce065b28f63aae43c7be0d1cc.tar.gz
emacs-768d4533ce51d61ce065b28f63aae43c7be0d1cc.zip
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-35
Merge from emacs--cvs-trunk--0 Patches applied: * emacs--cvs-trunk--0 (patch 228-240) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 53-58) - Merge from emacs--cvs-trunk--0 - Update from CVS - Collapse feature addition/removal within single ChangeLog entry
-rw-r--r--admin/FOR-RELEASE14
-rw-r--r--etc/ChangeLog45
-rw-r--r--etc/NEWS4
-rw-r--r--etc/TUTORIAL.cs4
-rw-r--r--etc/TUTORIAL.de3
-rw-r--r--etc/TUTORIAL.it6
-rw-r--r--etc/TUTORIAL.ja12
-rw-r--r--etc/TUTORIAL.sv210
-rw-r--r--etc/TUTORIAL.translators111
-rw-r--r--leim/ChangeLog5
-rw-r--r--leim/quail/sgml-input.el3
-rw-r--r--lisp/ChangeLog331
-rw-r--r--lisp/ChangeLog.52
-rw-r--r--lisp/add-log.el22
-rw-r--r--lisp/autorevert.el4
-rw-r--r--lisp/battery.el2
-rw-r--r--lisp/buff-menu.el1
-rw-r--r--lisp/calc/calc-aent.el24
-rw-r--r--lisp/calc/calc.el3
-rw-r--r--lisp/calendar/calendar.el6
-rw-r--r--lisp/calendar/diary-lib.el2
-rw-r--r--lisp/calendar/time-date.el4
-rw-r--r--lisp/calendar/timeclock.el4
-rw-r--r--lisp/comint.el7
-rw-r--r--lisp/cus-edit.el97
-rw-r--r--lisp/desktop.el4
-rw-r--r--lisp/diff-mode.el10
-rw-r--r--lisp/dired.el16
-rw-r--r--lisp/ediff-init.el11
-rw-r--r--lisp/emacs-lisp/authors.el27
-rw-r--r--lisp/emacs-lisp/copyright.el2
-rw-r--r--lisp/emacs-lisp/easy-mmode.el21
-rw-r--r--lisp/emacs-lisp/eldoc.el5
-rw-r--r--lisp/emacs-lisp/lisp.el20
-rw-r--r--lisp/emacs-lisp/re-builder.el6
-rw-r--r--lisp/emulation/cua-base.el1
-rw-r--r--lisp/ffap.el20
-rw-r--r--lisp/filesets.el9
-rw-r--r--lisp/font-core.el2
-rw-r--r--lisp/font-lock.el16
-rw-r--r--lisp/generic-x.el111
-rw-r--r--lisp/generic.el45
-rw-r--r--lisp/gnus/ChangeLog22
-rw-r--r--lisp/gnus/ChangeLog.22
-rw-r--r--lisp/gnus/gnus-art.el1
-rw-r--r--lisp/gnus/gnus-delay.el1
-rw-r--r--lisp/gnus/gnus-demon.el2
-rw-r--r--lisp/gnus/gnus-sum.el2
-rw-r--r--lisp/gnus/message.el2
-rw-r--r--lisp/gnus/nnimap.el2
-rw-r--r--lisp/gnus/nnultimate.el1
-rw-r--r--lisp/hi-lock.el19
-rw-r--r--lisp/hilit-chg.el6
-rw-r--r--lisp/hl-line.el4
-rw-r--r--lisp/ido.el12
-rw-r--r--lisp/ielm.el2
-rw-r--r--lisp/iimage.el9
-rw-r--r--lisp/info.el26
-rw-r--r--lisp/international/encoded-kb.el2
-rw-r--r--lisp/language/thai-util.el8
-rw-r--r--lisp/longlines.el2
-rw-r--r--lisp/mail/supercite.el9
-rw-r--r--lisp/master.el24
-rw-r--r--lisp/mh-e/ChangeLog117
-rw-r--r--lisp/mh-e/mh-customize.el6
-rw-r--r--lisp/mouse.el3
-rw-r--r--lisp/msb.el6
-rw-r--r--lisp/obsolete/fast-lock.el (renamed from lisp/fast-lock.el)0
-rw-r--r--lisp/obsolete/lazy-lock.el (renamed from lisp/lazy-lock.el)0
-rw-r--r--lisp/pcvs-info.el6
-rw-r--r--lisp/pcvs.el23
-rw-r--r--lisp/progmodes/cc-fonts.el4
-rw-r--r--lisp/progmodes/compile.el13
-rw-r--r--lisp/progmodes/cwarn.el4
-rw-r--r--lisp/progmodes/ebrowse.el14
-rw-r--r--lisp/progmodes/flymake.el4
-rw-r--r--lisp/progmodes/glasses.el4
-rw-r--r--lisp/progmodes/hideif.el4
-rw-r--r--lisp/progmodes/idlw-help.el5
-rw-r--r--lisp/progmodes/sh-script.el13
-rw-r--r--lisp/progmodes/tcl.el56
-rw-r--r--lisp/progmodes/vhdl-mode.el15
-rw-r--r--lisp/reveal.el1
-rw-r--r--lisp/simple.el6
-rw-r--r--lisp/smerge-mode.el14
-rw-r--r--lisp/startup.el48
-rw-r--r--lisp/term.el2
-rw-r--r--lisp/term/mac-win.el5
-rw-r--r--lisp/term/xterm.el6
-rw-r--r--lisp/textmodes/bibtex.el123
-rw-r--r--lisp/textmodes/enriched.el4
-rw-r--r--lisp/textmodes/flyspell.el8
-rw-r--r--lisp/textmodes/org.el4
-rw-r--r--lisp/textmodes/refill.el4
-rw-r--r--lisp/textmodes/table.el4
-rw-r--r--lisp/textmodes/tex-mode.el2
-rw-r--r--lisp/url/ChangeLog4
-rw-r--r--lisp/url/url-handlers.el4
-rw-r--r--lisp/wdired.el81
-rw-r--r--lisp/whitespace.el36
-rw-r--r--lisp/wid-edit.el20
-rw-r--r--lisp/woman.el10
-rw-r--r--lisp/xt-mouse.el7
-rw-r--r--lispref/ChangeLog22
-rw-r--r--lispref/hooks.texi204
-rw-r--r--lispref/modes.texi173
-rw-r--r--lispref/nonascii.texi20
-rw-r--r--mac/ChangeLog8
-rw-r--r--mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings4
-rw-r--r--mac/src/Emacs.r18
-rw-r--r--man/ChangeLog26
-rw-r--r--man/calc.texi397
-rw-r--r--man/calendar.texi3
-rw-r--r--man/cmdargs.texi2
-rw-r--r--man/dired.texi41
-rw-r--r--man/frames.texi4
-rw-r--r--src/ChangeLog38
-rw-r--r--src/ChangeLog.64
-rw-r--r--src/alloc.c4
-rw-r--r--src/emacs.c2
-rw-r--r--src/eval.c7
-rw-r--r--src/lread.c56
-rw-r--r--src/mac.c35
-rw-r--r--src/macfns.c4
-rw-r--r--src/xdisp.c2
125 files changed, 2147 insertions, 1027 deletions
diff --git a/admin/FOR-RELEASE b/admin/FOR-RELEASE
index ff6b4c7e73e..863f7ab72ad 100644
--- a/admin/FOR-RELEASE
+++ b/admin/FOR-RELEASE
@@ -182,7 +182,7 @@ man/regs.texi "Luc Teirlinck" Chong Yidong
182man/rmail.texi Chong Yidong 182man/rmail.texi Chong Yidong
183man/screen.texi "Luc Teirlinck" Chong Yidong 183man/screen.texi "Luc Teirlinck" Chong Yidong
184man/search.texi "Luc Teirlinck" Chong Yidong 184man/search.texi "Luc Teirlinck" Chong Yidong
185man/sending.texi Chong Yidong 185man/sending.texi Chong Yidong "Luc Teirlinck"
186man/text.texi "Luc Teirlinck" Chong Yidong 186man/text.texi "Luc Teirlinck" Chong Yidong
187man/trouble.texi Chong Yidong 187man/trouble.texi Chong Yidong
188man/windows.texi "Luc Teirlinck" Chong Yidong 188man/windows.texi "Luc Teirlinck" Chong Yidong
@@ -263,12 +263,12 @@ SECTION READERS
263etc/TUTORIAL rms 263etc/TUTORIAL rms
264etc/TUTORIAL.bg Ognyan Kulev <ogi@fmi.uni-sofia.bg> 264etc/TUTORIAL.bg Ognyan Kulev <ogi@fmi.uni-sofia.bg>
265etc/TUTORIAL.cn 265etc/TUTORIAL.cn
266etc/TUTORIAL.cs 266etc/TUTORIAL.cs Pavel Janík <Pavel@Janik.cz>
267etc/TUTORIAL.de 267etc/TUTORIAL.de Werner LEMBERG <wl@gnu.org>
268etc/TUTORIAL.es Marcelo Toledo 268etc/TUTORIAL.es Marcelo Toledo
269etc/TUTORIAL.fr 269etc/TUTORIAL.fr Thien-Thi Nguyen
270etc/TUTORIAL.it 270etc/TUTORIAL.it Thien-Thi Nguyen
271etc/TUTORIAL.ja 271etc/TUTORIAL.ja Kenichi Handa <handa@m17n.org>
272etc/TUTORIAL.ko 272etc/TUTORIAL.ko
273etc/TUTORIAL.nl Lute Kamstra 273etc/TUTORIAL.nl Lute Kamstra
274etc/TUTORIAL.pl 274etc/TUTORIAL.pl
@@ -276,7 +276,7 @@ etc/TUTORIAL.pt_BR Marcelo Toledo
276etc/TUTORIAL.ro 276etc/TUTORIAL.ro
277etc/TUTORIAL.ru 277etc/TUTORIAL.ru
278etc/TUTORIAL.sk 278etc/TUTORIAL.sk
279etc/TUTORIAL.sl 279etc/TUTORIAL.sl Primoz PETERLIN <primoz.peterlin@biofiz.mf.uni-lj.si>
280etc/TUTORIAL.sv Mats Lidell <matsl@contactor.se> 280etc/TUTORIAL.sv Mats Lidell <matsl@contactor.se>
281etc/TUTORIAL.th 281etc/TUTORIAL.th
282etc/TUTORIAL.zh 282etc/TUTORIAL.zh
diff --git a/etc/ChangeLog b/etc/ChangeLog
index 8d7a9610321..2d28135ecfe 100644
--- a/etc/ChangeLog
+++ b/etc/ChangeLog
@@ -1,5 +1,31 @@
12005-04-08 Kenichi Handa <handa@m17n.org>
2
3 * TUTORIAL.ja: Updated header, contents synchronized with
4 TUTORIAL at 2005-04-01T00:31:25Z!rms@gnu.org.
5
62005-04-06 Pavel Jan,Am(Bk <Pavel@Janik.cz>
7
8 * TUTORIAL.cs: Updated header.
9
102005-04-05 Werner Lemberg <wl@gnu.org>
11
12 * TUTORIAL.de: Updated header.
13
142005-04-05 Marcelo Toledo <marcelo@marcelotoledo.org>
15
16 * TUTORIAL.translators: Added the field Maintainer.
17
182005-04-04 Thien-Thi Nguyen <ttn@gnu.org>
19
20 * TUTORIAL.it: Move "copying conditions at end" sentence after title.
21
222005-04-04 Thien-Thi Nguyen <ttn@gnu.org>
23
24 * TUTORIAL.ja: Update text before first period.
25 Reported by Kenichi Handa.
26
12005-04-02 Richard M. Stallman <rms@gnu.org> 272005-04-02 Richard M. Stallman <rms@gnu.org>
2 28
3 * TUTORIAL.ja, TUTORIAL.cn, TUTORIAL.ru, TUTORIAL.zh: Remove the 29 * TUTORIAL.ja, TUTORIAL.cn, TUTORIAL.ru, TUTORIAL.zh: Remove the
4 old intro line that apparently was a longer version of "Emacs 30 old intro line that apparently was a longer version of "Emacs
5 tutorial". 31 tutorial".
@@ -9,18 +35,17 @@
92005-04-01 Marcelo Toledo <marcelo@marcelotoledo.org> 352005-04-01 Marcelo Toledo <marcelo@marcelotoledo.org>
10 36
11 * TUTORIAL.pt_BR, TUTORIAL.cn, TUTORIAL.cs, TUTORIAL.de, 37 * TUTORIAL.pt_BR, TUTORIAL.cn, TUTORIAL.cs, TUTORIAL.de,
12 TUTORIAL.es, TUTORIAL.fr, TUTORIAL.it, TUTORIAL.ja, TUTORIAL.ko, 38 * TUTORIAL.es, TUTORIAL.fr, TUTORIAL.it, TUTORIAL.ja, TUTORIAL.ko,
13 TUTORIAL.pl, TUTORIAL.pt_BR, TUTORIAL.ro, TUTORIAL.ru, 39 * TUTORIAL.pl, TUTORIAL.pt_BR, TUTORIAL.ro, TUTORIAL.ru,
14 TUTORIAL.sk, TUTORIAL.sl, TUTORIAL.th, TUTORIAL.zh: Fix title 40 * TUTORIAL.sk, TUTORIAL.sl, TUTORIAL.th, TUTORIAL.zh: Fix title
15 line. 41 line.
16 42
17 * TUTORIAL.bg: Fix title line; Applied TUTORIAL changes in 43 * TUTORIAL.bg: Fix title line; Applied TUTORIAL changes in
18 2005-02-08T14:20:54Z!lute@gnu.org, "Emacs" is not transliterated to cyrillic anymore; 44 2005-02-08T14:20:54Z!lute@gnu.org, "Emacs" is not transliterated to cyrillic anymore;
19 Minor fixes; by Ognyan Kulev <ogi@fmi.uni-sofia.bg>. 45 Minor fixes; patch by Ognyan Kulev <ogi@fmi.uni-sofia.bg>.
20
21 * TUTORIAL.sv: Sync some other changes with the TUTORIAL version
22 2005-04-01T00:31:25Z!rms@gnu.org by Mats Lidell <matsl@contactor.se>.
23 46
47 * TUTORIAL.sv: Sync some other changes with the TUTORIAL version
48 2005-04-01T00:31:25Z!rms@gnu.org patch by Mats Lidell <matsl@contactor.se>.
24 49
252005-04-01 Lute Kamstra <lute@gnu.org> 502005-04-01 Lute Kamstra <lute@gnu.org>
26 51
diff --git a/etc/NEWS b/etc/NEWS
index 431fb8d9bc7..02a956aded6 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -193,6 +193,8 @@ versions which recognize Thai words. Affected commands are
193 M-t (transpose-words) 193 M-t (transpose-words)
194 M-q (fill-paragraph) 194 M-q (fill-paragraph)
195 195
196** fast-lock.el and lazy-lock.el are obsolete. Use jit-lock.el instead.
197
196** iso-acc.el is now obsolete. Use one of the latin input methods instead. 198** iso-acc.el is now obsolete. Use one of the latin input methods instead.
197 199
198--- 200---
@@ -425,7 +427,7 @@ the next/previous matching line found by M-x occur.
425** Telnet now prompts you for a port number with C-u M-x telnet. 427** Telnet now prompts you for a port number with C-u M-x telnet.
426 428
427+++ 429+++
428** New command line option -Q. 430** New command line option -Q or --bare-bones.
429 431
430This is like using -q --no-site-file, but in addition it also disables 432This is like using -q --no-site-file, but in addition it also disables
431the menu-bar, the tool-bar, the scroll-bars, tool tips, the blinking 433the menu-bar, the tool-bar, the scroll-bars, tool tips, the blinking
diff --git a/etc/TUTORIAL.cs b/etc/TUTORIAL.cs
index f8945b89e36..54b77094a37 100644
--- a/etc/TUTORIAL.cs
+++ b/etc/TUTORIAL.cs
@@ -1,5 +1,5 @@
1tutoriál k Emacsu. 1Tutoriál k Emacsu. Podmínky viz na konci.
2Copyright (c) 1985 Free Software Foundation, Inc; podmínky viz na konci. 2Copyright (c) 1985, 1996, 1998, 2001, 2002, 2005 Free Software Foundation.
3Do èe¹tiny pøelo¾il Milan Zamazal <pdm@zamazal.org>. 3Do èe¹tiny pøelo¾il Milan Zamazal <pdm@zamazal.org>.
4 4
5Máte pøed sebou tutoriál k Emacsu. 5Máte pøed sebou tutoriál k Emacsu.
diff --git a/etc/TUTORIAL.de b/etc/TUTORIAL.de
index a007fef752b..9c556c83b90 100644
--- a/etc/TUTORIAL.de
+++ b/etc/TUTORIAL.de
@@ -1,4 +1,5 @@
1Einführung in Emacs. (c) 2002, 2003 Free Software Foundation, Inc. 1Einführung in Emacs. Siehe Dateiende für Vervielfältigungsbedingungen.
2(c) 2002, 2003, 2005 Free Software Foundation, Inc.
2 3
3Emacs-Befehle beinhalten im allgemeinen die CONTROL-Taste (manchmal 4Emacs-Befehle beinhalten im allgemeinen die CONTROL-Taste (manchmal
4auch als CTRL, CTL oder STRG beschriftet) sowie die META-Taste (auch 5auch als CTRL, CTL oder STRG beschriftet) sowie die META-Taste (auch
diff --git a/etc/TUTORIAL.it b/etc/TUTORIAL.it
index 02a91045d0e..55608250c2b 100644
--- a/etc/TUTORIAL.it
+++ b/etc/TUTORIAL.it
@@ -1,5 +1,5 @@
1Esercitazione di Emacs. Copyright (c) 2003 Free Software Foundation, Inc. 1Esercitazione di Emacs. Condizioni d'uso alla fine del file.
2Condizioni d'uso alla fine del file. 2Copyright (c) 2003 Free Software Foundation, Inc.
3 3
4I comandi di Emacs comportano generalmente l'uso del tasto CONTROL (a 4I comandi di Emacs comportano generalmente l'uso del tasto CONTROL (a
5volte indicato con CTRL o CTL) o del tasto META (a volte indicato con EDIT 5volte indicato con CTRL o CTL) o del tasto META (a volte indicato con EDIT
@@ -817,7 +817,7 @@ margine che si desidera.
817 testo e osserva come Emacs interrompe le righe a 20 caratteri. Infine 817 testo e osserva come Emacs interrompe le righe a 20 caratteri. Infine
818 torna di nuovo a un margine di 70 caratteri con C-x f. 818 torna di nuovo a un margine di 70 caratteri con C-x f.
819 819
820Se si modifica il testo all'interno di un paragrafo la modalità 820Se si modifica il testo all'interno di un paragrafo la modalità
821"Auto Fill" non 821"Auto Fill" non
822lo risistema. 822lo risistema.
823Per risistemare i margini di un paragrafo 823Per risistemare i margini di un paragrafo
diff --git a/etc/TUTORIAL.ja b/etc/TUTORIAL.ja
index 3ca2afa7c41..ccb454bf3f6 100644
--- a/etc/TUTORIAL.ja
+++ b/etc/TUTORIAL.ja
@@ -1,5 +1,5 @@
1Emacs $BF~Lg%,%$%I$G$9(B. 1Emacs $BF~Lg%,%$%I(B. $BK\%U%!%$%k$NCx:n8"$K$D$$$F$O:G8e$r8fMw2<$5$$!#(B
2Copyright (c) 1985, 1996, 1998, 2001, 2002 Free Software Foundation. 2Copyright (c) 1985, 1996, 1998, 2001, 2002, 2005 Free Software Foundation.
3 3
4Emacs $B$N%3%^%s%I$rF~NO$9$k$K$O!"0lHL$K%3%s%H%m!<%k%-!<!J%-!<%H%C%W$K(B 4Emacs $B$N%3%^%s%I$rF~NO$9$k$K$O!"0lHL$K%3%s%H%m!<%k%-!<!J%-!<%H%C%W$K(B
5CONTROL $B$H$+(B CTRL $B$H$+(B CTL $B$H=q$$$F$"$k!K$d%a%?%-!<!J%-!<%H%C%W$K(B META 5CONTROL $B$H$+(B CTRL $B$H$+(B CTL $B$H=q$$$F$"$k!K$d%a%?%-!<!J%-!<%H%C%W$K(B META
@@ -372,7 +372,7 @@ C-k $B$O#2$D$N9T$H$=$l$>$l$KB3$/2~9TJ8;z$r>C$7$^$9$,!"(BC-k $B$r#2EY%?%$%W$7
372 372
373$B>C5n$7$?J8>O$rI|3h$5$;$kA`:n$r:FF~!J(Byanking$B!K$H8F$S$^$9!#>C$7$?J8>O$O!"(B 373$B>C5n$7$?J8>O$rI|3h$5$;$kA`:n$r:FF~!J(Byanking$B!K$H8F$S$^$9!#>C$7$?J8>O$O!"(B
374$B85$HF1$8>l=j$K$G$b85$H$O0c$&>l=j$K$G$b!"$5$i$K$OJL$N%U%!%$%k$K$b:FF~$G(B 374$B85$HF1$8>l=j$K$G$b85$H$O0c$&>l=j$K$G$b!"$5$i$K$OJL$N%U%!%$%k$K$b:FF~$G(B
375$B$-$^$9!#$^$?!"2?EY$b:FF~$7$FJ8>O$N%3%T!<$rJ#?t:n$k$3$H$b$G$-$^$9!#(B 375$B$-$^$9!#$^$?!"2?EY$b:FF~$9$k$3$H$GJ8>O$N%3%T!<$rJ#?t:n$k$3$H$b$G$-$^$9!#(B
376 376
377$B:FF~$N$?$a$N%3%^%s%I$O(B C-y $B$G$9!#$3$l$O!":G8e$K>C5n$7$?J8>O$r8=:_%+!<(B 377$B:FF~$N$?$a$N%3%^%s%I$O(B C-y $B$G$9!#$3$l$O!":G8e$K>C5n$7$?J8>O$r8=:_%+!<(B
378$B%=%k$,$"$k0LCV$K:FF~$7$^$9!#(B 378$B%=%k$,$"$k0LCV$K:FF~$7$^$9!#(B
@@ -592,7 +592,7 @@ Emacs $B$K$O!"%3%s%H%m!<%kJ8;z$d%a%?J8;z$K3dEv$F$i$l$k$h$j$b$:$C$H$:$C$H(B
592$B;H$$$^$9!#$=$l$K$O!"0J2<$N#2$D$N<oN`$,$"$j$^$9!#(B 592$B;H$$$^$9!#$=$l$K$O!"0J2<$N#2$D$N<oN`$,$"$j$^$9!#(B
593 593
594 C-x $BJ8;z$K$h$k3HD%!#B3$1$F0lJ8;z$rF~NO$7$^$9!#(B 594 C-x $BJ8;z$K$h$k3HD%!#B3$1$F0lJ8;z$rF~NO$7$^$9!#(B
595 ESC x $BL>A0$K$h$k3HD%!#B3$1$F%3%^%s%I$NL>A0$rF~NO$7$^$9!#(B 595 M-x $BL>A0$K$h$k3HD%!#B3$1$F%3%^%s%I$NL>A0$rF~NO$7$^$9!#(B
596 596
597$B$3$l$i$O!"0lHLE*$K$OJXMx$@$1$l$I$b!"$3$l$^$G8+$F$-$?$b$N$[$I$OIQHK$KMQ(B 597$B$3$l$i$O!"0lHLE*$K$OJXMx$@$1$l$I$b!"$3$l$^$G8+$F$-$?$b$N$[$I$OIQHK$KMQ(B
598$B$$$i$l$J$$%3%^%s%I$G$9!#(BC-x C-f $B!J%U%!%$%k$r3+$/!K$d(B C-x C-s$B!J%U%!%$%k(B 598$B$$$i$l$J$$%3%^%s%I$G$9!#(BC-x C-f $B!J%U%!%$%k$r3+$/!K$d(B C-x C-s$B!J%U%!%$%k(B
@@ -1027,7 +1027,7 @@ F10 h r$B!K$G$"$m$&$H!"$=$l$rFI$a$P(B Emacs $B$K$D$$$F$b$C$HB?$/$r3X$Y$^$9!#
1027$B!v$3$NK]LuHG$K$D$$$F$N<U<-(B 1027$B!v$3$NK]LuHG$K$D$$$F$N<U<-(B
1028========================== 1028==========================
1029 1029
1030$B$3$NJ8=q$O(B Emacs Ver.21 $BIUB0$N1Q8lHG$NF~Lg%,%$%I$rF|K\8l$KK]Lu$7$?$b$N(B 1030$B$3$NJ8=q$O(B Emacs Ver.22 $BIUB0$N1Q8lHG$NF~Lg%,%$%I$rF|K\8l$KK]Lu$7$?$b$N(B
1031$B$G$9!#$=$N:]!"(BEmacs Ver. 20 $BImB0$NF|K\8lHGF~Lg%,%$%I$r%Y!<%9$K$7$^$7$?!#(B 1031$B$G$9!#$=$N:]!"(BEmacs Ver. 20 $BImB0$NF|K\8lHGF~Lg%,%$%I$r%Y!<%9$K$7$^$7$?!#(B
1032Emacs Ver. 20 $BImB0$NF|K\8lHGF~Lg%,%$%I$O!"(BMule $BIUB0$NF|K\8l%,%$%I$r;2(B 1032Emacs Ver. 20 $BImB0$NF|K\8lHGF~Lg%,%$%I$O!"(BMule $BIUB0$NF|K\8l%,%$%I$r;2(B
1033$B9M$K$7$?$b$N$G!"$=$N85$O(B SANETO Takanori $B;a$,F|K\8l(B MicroEmacs(kemacs) 1033$B9M$K$7$?$b$N$G!"$=$N85$O(B SANETO Takanori $B;a$,F|K\8l(B MicroEmacs(kemacs)
@@ -1048,7 +1048,7 @@ starting with the one written by Stuart Cracraft for the original Emacs.
1048This version of the tutorial, like GNU Emacs, is copyrighted, and 1048This version of the tutorial, like GNU Emacs, is copyrighted, and
1049comes with permission to distribute copies on certain conditions: 1049comes with permission to distribute copies on certain conditions:
1050 1050
1051Copyright (c) 1985, 1996, 1998, 2001, 2002 Free Software Foundation 1051Copyright (c) 1985, 1996, 1998, 2001, 2002, 2005 Free Software Foundation
1052 1052
1053 Permission is granted to anyone to make or distribute verbatim copies 1053 Permission is granted to anyone to make or distribute verbatim copies
1054 of this document as received, in any medium, provided that the 1054 of this document as received, in any medium, provided that the
diff --git a/etc/TUTORIAL.sv b/etc/TUTORIAL.sv
index bbda74380b2..e4a86cabada 100644
--- a/etc/TUTORIAL.sv
+++ b/etc/TUTORIAL.sv
@@ -1,5 +1,6 @@
1användarhandledningen till Emacs. I slutet finns kopieringsvillkoren. 1Emacs användarhandledning. I slutet finns kopieringsvillkoren.
2Copyright (c) 1985, 1996, 1998, 2001, 2002 Free Software Foundation, Inc. 2Copyright (c) 1985, 1996, 1998, 2001, 2002, 2005 Free Software
3Foundation, Inc.
3 4
4Emacs-kommandon innebär ofta användning av kontrolltangenten (vanligen 5Emacs-kommandon innebär ofta användning av kontrolltangenten (vanligen
5märkt CTRL eller CTL) eller META-tangenten (på vissa tangentbord märkt 6märkt CTRL eller CTL) eller META-tangenten (på vissa tangentbord märkt
@@ -48,6 +49,10 @@ Följande kommandon är bra för att se hela skärmbilder:
48 Hitta markören igen och notera att det är samma text som står kring 49 Hitta markören igen och notera att det är samma text som står kring
49 markören nu. 50 markören nu.
50 51
52Du kan också använda PageUp och PageDn tangenterna, om din terminal
53har dem, för att flytta en hel skärmbild åt gången, men du redigerar
54effektivare om du använder C-v och M-v.
55
51 56
52* GRUNDLÄGGANDE MARKÖRRÖRELSER 57* GRUNDLÄGGANDE MARKÖRRÖRELSER
53------------------------------ 58------------------------------
@@ -55,12 +60,10 @@ Följande kommandon är bra för att se hela skärmbilder:
55Att flytta sig från skärmbild till skärmbild kan vara bra, men hur 60Att flytta sig från skärmbild till skärmbild kan vara bra, men hur
56förflyttar man sig till en speciell plats på skärmen? 61förflyttar man sig till en speciell plats på skärmen?
57 62
58Det finns flera sätt att göra detta på. Det vanligaste är att använda 63Det finns flera sätt att göra detta. Du kan använda piltangenterna,
59kommandona C-p, C-b, C-f och C-n. Vart och ett av dessa kommandon 64men det är mer effektivt att ha händerna i standardläget och använda
60flyttar markören en rad eller en kolumn i en bestämd riktning på 65kommandona C-p, C-b, C-f och C-n. Dessa tecken är likvärdiga med de
61skärmen. Här visas dessa fyra kommandon och i vilken riktning de 66fyra piltangenterna. Så här:
62flyttar markören:
63
64 67
65 Föregående rad, C-p 68 Föregående rad, C-p
66 : 69 :
@@ -74,11 +77,10 @@ flyttar markören:
74 och C-p. Använd sedan C-l för att centrera diagrammet på 77 och C-p. Använd sedan C-l för att centrera diagrammet på
75 skärmbilden. 78 skärmbilden.
76 79
77Detta är säkert lite enklare att förstå om du tänker på dessa 80Detta är enklare att komma ihåg om du tänker på dessa förkortningar: P
78förkortningar: P för föregående (previous), N för nästa (next), B för 81för föregående (previous), N för nästa (next), B för bakåt (backward)
79bakåt (backward) och F för framåt (forward). Detta är de grundläggande 82och F för framåt (forward). Dessa är de grundläggande kommandona för
80kommandona för att flytta markören och du kommer säkert att använda 83att flytta markören och du kommer att använda dem hela tiden.
81dem hela tiden, så det är en stor fördel om du lär dig dem nu.
82 84
83>> Gör några C-n så att du kommer ned till den här raden. 85>> Gör några C-n så att du kommer ned till den här raden.
84 86
@@ -308,17 +310,23 @@ texten. Tecken som du kan se, så som A, 7, *, etc. tolkas som text och
308sätts in direkt. Skriv <Return> (retur-tangenten) för att sätta in en 310sätts in direkt. Skriv <Return> (retur-tangenten) för att sätta in en
309radbrytning. 311radbrytning.
310 312
311Du kan radera det sista tecknet du skrev genom att trycka <Delete>. 313Du kan radera det sista tecknet du skrev genom att trycka <Delback>.
312<Delete> är en tangent på tangentbordet, som kan vara märkt "Del". I 314<Delback> är en tangent på tangentbordet -- samma som du normalt
313några fall fungerar också "backsteg" som <Delete> men inte alltid! 315använder utanför Emacs för att ta bort det senaste tecknet du skrivit.
316Det är vanligen en stor tangent några rader ovanför retur-tangenten,
317och den är vanligtvis märkt "Delete, "Del" eller "Backspace".
314 318
315Generellt raderar <Delete> tecknet precis före den aktuella 319Om den stora tangenten är märkt med "Backspace" så är det den du
320använder för <Delback>. Det kan finnas en annan tangent som är märkt
321med "Delete" men det är inte <Delback>.
322
323Generellt raderar <Delback> tecknet precis före den aktuella
316markörspositionen. 324markörspositionen.
317 325
318>> Gör detta nu: Skriv in några tecken och ta bort dem genom att 326>> Gör detta nu: Skriv in några tecken och ta bort dem genom att
319 använda <Delete>. Var inte rädd för att skriva i den här filen, du 327 använda <Delback>. Var inte rädd för att skriva i den här filen,
320 kommer inte att kunna förändra originalet till vägledningen. Detta 328 du kommer inte att kunna förändra originalet till vägledningen.
321 är bara en lokal kopia. 329 Detta är bara en lokal kopia.
322 330
323När en rad blir för lång för att rymmas på en skärmbredd så fortsätter 331När en rad blir för lång för att rymmas på en skärmbredd så fortsätter
324den på raden under. Ett bakstreck ("\") (eller om du kör under ett 332den på raden under. Ett bakstreck ("\") (eller om du kör under ett
@@ -329,7 +337,7 @@ indikerar att raden fortsätter.
329 fortsätt att skriva lite till. Du kommer då att se hur 337 fortsätt att skriva lite till. Du kommer då att se hur
330 fortsättningstecknet ser ut. 338 fortsättningstecknet ser ut.
331 339
332>> Använd <Delete> för att radera texten tills raden ryms på en 340>> Använd <Delback> för att radera texten tills raden ryms på en
333 skärmbredd igen. Fortsättningstecknet kommer då att försvinna. 341 skärmbredd igen. Fortsättningstecknet kommer då att försvinna.
334 342
335Du kan radera radbrytning precis som andra tecken. Genom att radera 343Du kan radera radbrytning precis som andra tecken. Genom att radera
@@ -337,7 +345,7 @@ radbrytningen mellan två rader slås dessa samman till en. Om
337resultatet av denna sammanslagning blir för stor för att passa inom en 345resultatet av denna sammanslagning blir för stor för att passa inom en
338skärmbredd, så kommer den att visas med ett fortsättningstecken. 346skärmbredd, så kommer den att visas med ett fortsättningstecken.
339 347
340>> Flytta markören till början av en rad och tryck <Delete>. 348>> Flytta markören till början av en rad och tryck <Delback>.
341 Detta kommer att klistra ihop raden med raden över. 349 Detta kommer att klistra ihop raden med raden över.
342 350
343>> Tryck <Return> för att sätta in radbrytningen du tog bort. 351>> Tryck <Return> för att sätta in radbrytningen du tog bort.
@@ -352,21 +360,21 @@ Du har nu lärt dig de mest grundläggande sätten att skriva något i
352Emacs och att rätta fel. Du kan radera ord och rader också. Här är en 360Emacs och att rätta fel. Du kan radera ord och rader också. Här är en
353översikt över kommandon för radering: 361översikt över kommandon för radering:
354 362
355 <Delete> raderar tecknet som står precis före markören 363 <Delback> Raderar tecknet som står precis före markören
356 C-d raderar tecknet som står precis under markören 364 C-d Raderar tecknet som står precis under markören
357 365
358 M-<Delete> raderar ordet precis före markören 366 M-<Delback> Raderar ordet precis före markören
359 M-d raderar ordet precis efter markören 367 M-d Raderar ordet precis efter markören
360 368
361 C-k raderar från markören till slutet av raden 369 C-k Raderar från markören till slutet av raden
362 M-k raderar till slutet av stycket 370 M-k Raderar till slutet av stycket
363 371
364Lägg märke till att <Delete> och C-d kontra M-<Delete> och M-d följer 372Lägg märke till att <Delback> och C-d kontra M-<Delback> och M-d
365mönstret som började med C-f och M-f. (<Delete> är inte precis 373följer mönstret som började med C-f och M-f. (<Delback> är inte precis
366ett kontrolltecken men låt oss inte bry oss om det.) C-k och M-k 374ett kontrolltecken men låt oss inte bry oss om det.) C-k och M-k
367fungerar på samma sätt som C-e och M-e (nästan). 375fungerar på samma sätt som C-e och M-e (nästan).
368 376
369Du kan också ta bort vilken del som helst av bufferten med hjälp av 377Du kan också ta bort vilken del som helst av texten med hjälp av
370följande allmänna metod. Flytta till ena änden av det område du vill 378följande allmänna metod. Flytta till ena änden av det område du vill
371ta bort och tryck C-@ eller C-mellanslag. Flytta till andra änden av 379ta bort och tryck C-@ eller C-mellanslag. Flytta till andra änden av
372området och tryck C-w. Detta tar bort all text mellan de två 380området och tryck C-w. Detta tar bort all text mellan de två
@@ -400,13 +408,13 @@ raderar så många rader OCH innehållet i dem. Detta är alltså inte bara
400en repetition av kommandot. C-u 2 C-k raderar två rader samt de tomma 408en repetition av kommandot. C-u 2 C-k raderar två rader samt de tomma
401raderna, medan C-k två gånger inte kommer att göra det. 409raderna, medan C-k två gånger inte kommer att göra det.
402 410
403Att sätta in borttagen text kallas att "återhämta" den (yanking). 411Att sätta in borttagen text kallas att "återhämta" den (yanking).
404(Tänk på det som att du rycker, eller drar, tillbaka någon text som 412(Tänk på det som att du rycker, eller drar, tillbaka någon text som
405tagits bort.) Du kan antingen hämta tillbaka borttagen text till samma 413tagits bort.) Du kan antingen hämta tillbaka borttagen text till samma
406plats som där den blev borttagen, eller så kan du sätta in den på en 414plats som där den blev borttagen, eller så kan du sätta in den på en
407annan plats i bufferten eller till och med i en helt annan fil. Du kan 415annan plats i texten du redigerar eller till och med i en helt annan
408också hämta tillbaka den flera gånger så att du får flera lika 416fil. Du kan också hämta tillbaka samma text flera gånger så att du får
409förekomster av den. 417flera lika förekomster av den.
410 418
411Kommandot för att hämta tillbaka text är C-y. Kommandot hämtar 419Kommandot för att hämta tillbaka text är C-y. Kommandot hämtar
412tillbaka den sist borttagna texten och placerar den där markören är. 420tillbaka den sist borttagna texten och placerar den där markören är.
@@ -495,8 +503,8 @@ nytt namn, som backup, ifall du senare ångrar alltihop.
495 503
496Om du tittar nästan längst ner på skärmbilden så kommer du se en rad 504Om du tittar nästan längst ner på skärmbilden så kommer du se en rad
497som börjar och slutar med minustecken, och som innehåller texten 505som börjar och slutar med minustecken, och som innehåller texten
498"--:-- TUTORIAL.se". Denna del av skärmbilden visar alltid namnet på 506"--:-- TUTORIAL.sv". Denna del av skärmbilden visar alltid namnet på
499filen du besöker. Just nu är du inne i en fil som heter "TUTORIAL.se" 507filen du besöker. Just nu är du inne i en fil som heter "TUTORIAL.sv"
500och som är en personlig kopia av vägledningen till Emacs. Vilken fil 508och som är en personlig kopia av vägledningen till Emacs. Vilken fil
501du än är inne i så kommer filnamnet stå där. 509du än är inne i så kommer filnamnet stå där.
502 510
@@ -539,7 +547,7 @@ blev sparad. Du bör spara ofta så att du inte förlorar så mycket om
539systemet kraschar. 547systemet kraschar.
540 548
541>> Skriv C-x C-s för att spara en kopia av denna vägledning. 549>> Skriv C-x C-s för att spara en kopia av denna vägledning.
542 Detta skall leda till att "Wrote ...TUTORIAL.se" skrivs ut nederst 550 Detta skall leda till att "Wrote ...TUTORIAL.sv" skrivs ut nederst
543 på skärmbilden. 551 på skärmbilden.
544 552
545Observera: På vissa system leder C-x C-s till att skärmen låser 553Observera: På vissa system leder C-x C-s till att skärmen låser
@@ -568,7 +576,7 @@ den på nytt med C-x C-f. På så sätt kan du ha ett stort antal filer
568 576
569>> Skapa en fil med namnet "foo" genom att trycka C-x C-f foo <Return>. 577>> Skapa en fil med namnet "foo" genom att trycka C-x C-f foo <Return>.
570 Skriv in lite text, redigera den och spara "foo" genom att använda 578 Skriv in lite text, redigera den och spara "foo" genom att använda
571 C-x C-s. Skriv till slut C-x C-f TUTORIAL.se<Return> för att komma 579 C-x C-s. Skriv till slut C-x C-f TUTORIAL.sv <Return> för att komma
572 tillbaka till den här vägledningen. 580 tillbaka till den här vägledningen.
573 581
574Emacs sparar texten för varje fil i ett objekt kallat "buffert". När 582Emacs sparar texten för varje fil i ett objekt kallat "buffert". När
@@ -580,13 +588,37 @@ du finner en ny fil skapas en ny buffert i Emacs. För att se en lista
580>> Prova C-x C-b nu. 588>> Prova C-x C-b nu.
581 589
582Se hur varje buffert har ett namn och att de också kan ha namnet på 590Se hur varje buffert har ett namn och att de också kan ha namnet på
583den fil som innehållet kommer från. En del buffertar är inte knutna 591den fil som innehållet kommer från. Vilken text du än ser i ett
584till någon fil, till exempel bufferten "*Buffer List*". Det är den 592Emacs-fönster så tillhör den alltid en buffert.
585buffert som innehåller buffertlistan som skapades med C-x C-b. Vilken
586text du än ser i ett Emacs-fönster så tillhör den alltid en buffert.
587 593
588>> Skriv C-x 1 för att bli kvitt buffertlistan. 594>> Skriv C-x 1 för att bli kvitt buffertlistan.
589 595
596När du har flera buffertar så är bara en av dem "gällande" åt gången.
597Det är den buffert du redigerar. Om du vill redigera en annan buffert
598så måste du byta till den. Om du vill byta till en buffert som
599motsvarar en fil kan du göra det genom att besöka den igen med C-x
600C-f. Det finns dock ett enklare sätt: använd C-x b kommandot. I det
601kommandot anger du buffertens namn.
602
603>> Skriv C-x b foo <Return> för att gå tillbaka till bufferten "foo"
604 som innehåller texten i filen "foo". Skriv sedan C-x b TUTORIAL.sv
605 <Return> för att komma tillbaka till den här handledningen.
606
607Mestadels är buffertens namn densamma som filens namn (utan
608katalogdel.) Det är dock inte alltid så. Bufferlistan du skapar med
609C-x C-b visar alltid namnen på varje buffert.
610
611All text du ser i ett Emacsfönster är alltid del av någon buffert. En
612del buffertar är inte knutna till någon fil, till exempel bufferten
613"*Buffer List*". Det är den buffert som innehåller buffertlistan som
614skapades med C-x C-b. Bufferten "*Messages*" motsvarar inte heller
615någon fil. Den innehåller de meddelanden som visas på den nedersta
616raden i Emacs sessionen.
617
618>> Skriv C-x b *Messages* <Return> för att se meddelandebufferten.
619 Skriv sedan C-x b TUTORIAL.sv <Return> för att återgå till den här
620 handledningen.
621
590Om du ändrar texten till en fil och sedan öppnar en ny fil, så kommer 622Om du ändrar texten till en fil och sedan öppnar en ny fil, så kommer
591inte den första filen sparas. Förändringen ligger kvar i 623inte den första filen sparas. Förändringen ligger kvar i
592bufferten. Skapande och redigering av den nya filen påverkar inte den 624bufferten. Skapande och redigering av den nya filen påverkar inte den
@@ -602,7 +634,7 @@ vill spara eller ej.
602 634
603>> Sätt in en rad med text och spara med C-x s 635>> Sätt in en rad med text och spara med C-x s
604 Du skall nu få frågan om du önskar spara bufferten 636 Du skall nu få frågan om du önskar spara bufferten
605 TUTORIAL.se. Svara ja på frågan genom att trycka "y" (yes). 637 TUTORIAL.sv. Svara ja på frågan genom att trycka "y" (yes).
606 638
607 639
608* UTVIDGNING AV KOMMANDOMÄNGDEN 640* UTVIDGNING AV KOMMANDOMÄNGDEN
@@ -617,9 +649,9 @@ META-tangenter. För att komma förbi denna begränsning har Emacs ett
617 kommandonamn. 649 kommandonamn.
618 650
619Detta är kommandon som är bra att ha men används mer sällan än de 651Detta är kommandon som är bra att ha men används mer sällan än de
620kommandon du redan har lärt dig. Du har redan sett två av dem, C-x C-f 652kommandon du redan har lärt dig. Du har redan sett några av dem, C-x
621för finn, och C-x C-s för spara. Ett annat exempel är kommandot för 653C-f för finn, och C-x C-s för spara. Ett annat exempel är kommandot
622att avsluta Emacs som är C-x C-c. Var inte rädd för att förlora 654för att avsluta Emacs som är C-x C-c. Var inte rädd för att förlora
623förändringar du har gjort. C-x C-c erbjuder dig att spara förändringar 655förändringar du har gjort. C-x C-c erbjuder dig att spara förändringar
624innan Emacs avslutas. 656innan Emacs avslutas.
625 657
@@ -645,12 +677,14 @@ istället för att avsluta.
645Det finns många C-x kommandon. Här är en lista över de du har lärt dig 677Det finns många C-x kommandon. Här är en lista över de du har lärt dig
646hittills: 678hittills:
647 679
648 C-x C-f Finn fil. 680 C-x C-f Finn fil
649 C-x C-s Spara fil. 681 C-x C-s Spara fil
650 C-x C-b Lista buffertar. 682 C-x s Spara några buffertar
651 C-x C-c Avsluta Emacs. 683 C-x C-b Lista buffertar
652 C-x 1 Ta bort alla utom ett fönster. 684 C-x b Byt buffert
653 C-x u Ångra. 685 C-x C-c Avsluta Emacs
686 C-x 1 Ta bort alla utom ett fönster
687 C-x u Ångra
654 688
655Namngivna utvidgade kommandon är kommandon som används mycket sällan 689Namngivna utvidgade kommandon är kommandon som används mycket sällan
656eller bara i vissa lägen. Ett exempel på ett sådant kommando är 690eller bara i vissa lägen. Ett exempel på ett sådant kommando är
@@ -707,16 +741,16 @@ skärmbilden.
707Raden precis över ekoområdet kallas "lägesrad" (mode line). Den ser 741Raden precis över ekoområdet kallas "lägesrad" (mode line). Den ser
708ungefär ut så här: 742ungefär ut så här:
709 743
710--:** TUTORIAL (Fundamental)--L670--58%---------------- 744--:** TUTORIAL 63% L749 (Fundamental)-----------------------
711 745
712Raden innehåller information om Emacs och texten du redigerar. 746Raden innehåller information om Emacs och texten du redigerar.
713 747
714Du vet redan vad filnamnet betyder, det är den fil du har funnit. 748Du vet redan vad filnamnet betyder, det är den fil du har funnit. NN%
715-NN%-- visar den aktuella positionen i texten, dvs. NN procent av 749visar den aktuella positionen i texten, dvs. NN procent av texten
716texten befinner sig över toppen av skärmbilden. Om toppen av filen är 750befinner sig över toppen av skärmbilden. Om toppen av filen är i
717i skärmbilden kommer det stå --Top-- istället för --00%-- och om 751skärmbilden kommer det stå "Top" istället för " 0%" och om slutet av
718slutet av filen är i skärmbilden kommer det stå --Bot--. Om du ser på 752filen är i skärmbilden kommer det stå "Bot". Om du ser på en fil där
719en fil där hela texten passar in på en sida kommer det stå --All--. 753hela texten passar in på en sida kommer det stå "All".
720 754
721Bokstaven L följd av siffror anger positionen på ett annat 755Bokstaven L följd av siffror anger positionen på ett annat
722sätt. Siffrorna visar vilken rad som markören befinner sig på. 756sätt. Siffrorna visar vilken rad som markören befinner sig på.
@@ -830,7 +864,7 @@ efter. <Return> avslutar sökandet.
830 har du sökt efter ordet "markör" en gång. 864 har du sökt efter ordet "markör" en gång.
831>> Skriv C-s en gång till för att söka efter nästa förekomst av ordet 865>> Skriv C-s en gång till för att söka efter nästa förekomst av ordet
832 "markör". 866 "markör".
833>> Tryck nu på <Delete> fyra gånger och se hur markören flyttar sig 867>> Tryck nu på <Delback> fyra gånger och se hur markören flyttar sig
834>> Tryck <Return> för att avsluta sökandet. 868>> Tryck <Return> för att avsluta sökandet.
835 869
836Såg du vad som hände? Under inkrementell sökning försöker Emacs att gå 870Såg du vad som hände? Under inkrementell sökning försöker Emacs att gå
@@ -846,12 +880,12 @@ den vidare till Emacs. För att fortsätta måste du trycka C-q. Se i så
846fall avsnittet "Spontaneous Entry to Incremental Search" i 880fall avsnittet "Spontaneous Entry to Incremental Search" i
847Emacs-manualen för råd om hur detta kan undvikas. 881Emacs-manualen för råd om hur detta kan undvikas.
848 882
849Om du är inne i en inkrementell sökning och trycker <Delete> kommer du 883Om du är inne i en inkrementell sökning och trycker <Delback> kommer
850lägga märke till att den sista bokstaven i söksträngen blir raderad 884du lägga märke till att den sista bokstaven i söksträngen blir raderad
851och sökandet hoppar tillbaka till en tidigare förekomst. Om du till 885och sökandet hoppar tillbaka till en tidigare förekomst. Om du till
852exempel skriver "m" för att söka efter den första förekomsten av "m", 886exempel skriver "m" för att söka efter den första förekomsten av "m",
853och sedan trycker "a" så kommer markören flytta sig till första 887och sedan trycker "a" så kommer markören flytta sig till första
854förekomsten av "ma". Tryck nu <Delete>. Detta avlägsnar "a" från 888förekomsten av "ma". Tryck nu <Delback>. Detta avlägsnar "a" från
855söksträngen, och markören flyttar sig tillbaka till den första 889söksträngen, och markören flyttar sig tillbaka till den första
856förekomsten av "m". 890förekomsten av "m".
857 891
@@ -879,7 +913,7 @@ skärmen samtidig.
879 det övre fönstret. 913 det övre fönstret.
880 914
881>> Skriv C-M-v för att rulla det nedre fönstret. 915>> Skriv C-M-v för att rulla det nedre fönstret.
882 (Om du inte har META-tangenten trycker du ESC C-v.) 916 (Om du inte har META-tangenten trycker du <ESC> C-v.)
883 917
884>> Skriv C-x o (o för other) för att flytta markören till det 918>> Skriv C-x o (o för other) för att flytta markören till det
885 nedre fönstret. 919 nedre fönstret.
@@ -909,10 +943,10 @@ som du trycker v. Det har ingen betydelse vilken av tangenterna
909KONTROLL och META som trycks först, för bägge fungerar så att de 943KONTROLL och META som trycks först, för bägge fungerar så att de
910"modifierar" de andra tangenterna du trycker. 944"modifierar" de andra tangenterna du trycker.
911 945
912Om du inte har META-tangenten och använder ESC istället är 946Om du inte har META-tangenten och använder <ESC> istället är
913ordningsföljden viktig. Du måste trycka ESC följt av KONTROLL-v, 947ordningsföljden viktig. Du måste trycka <ESC> följt av KONTROLL-v,
914KONTROLL-ESC v fungerar inte. Det är för att ESC är ett tecken i sig 948KONTROLL-<ESC> v fungerar inte. Det är för att <ESC> är ett tecken i
915och inte en äkta "modifierare". 949sig och inte en äkta "modifierare".
916 950
917>> Skriv C-x 1 i det övre fönstret för att bli kvitt det nedre 951>> Skriv C-x 1 i det övre fönstret för att bli kvitt det nedre
918 fönstret. 952 fönstret.
@@ -945,12 +979,12 @@ Ibland kan du hamna i något som kallas "rekursiv redigering"
945huvudläget i lägesraden. Till exempel kan det stå [(Fundamental)] 979huvudläget i lägesraden. Till exempel kan det stå [(Fundamental)]
946istället för (Fundamental). 980istället för (Fundamental).
947 981
948För att komma ur rekursiv redigering trycker du ESC ESC ESC. Detta är 982För att komma ur rekursiv redigering trycker du <ESC> <ESC> <ESC>.
949ett generellt brytkommando. Du kan också använda det för att bli kvitt 983Detta är ett generellt brytkommando. Du kan också använda det för att
950extra fönster och för att komma ut ur minibufferten. 984bli kvitt extra fönster och för att komma ut ur minibufferten.
951 985
952>> Skriv M-x för att komma in i minibufferten. Skriv så ESC ESC ESC 986>> Skriv M-x för att komma in i minibufferten. Skriv så <ESC> <ESC>
953 för att komma ut. 987 <ESC> för att komma ut.
954 988
955Du kan inte använda C-g för att komma ut ur rekursiv redigering. 989Du kan inte använda C-g för att komma ut ur rekursiv redigering.
956Detta är för att C-g används för att avbryta kommandon och argument 990Detta är för att C-g används för att avbryta kommandon och argument
@@ -984,7 +1018,8 @@ Den mest grundläggande hjälp-funktionen är C-h c. Skriv C-h, ett "c"
984och en knappsekvens. Emacs ger då en beskrivning av kommandot. 1018och en knappsekvens. Emacs ger då en beskrivning av kommandot.
985 1019
986>> Skriv C-h c C-p. 1020>> Skriv C-h c C-p.
987 Meddelandet skall då bli något i stil med 1021
1022Meddelandet skall då bli något i stil med:
988 1023
989 C-p runs the command previous-line 1024 C-p runs the command previous-line
990 1025
@@ -1060,6 +1095,29 @@ oklart duger det inte att sitta och tycka synd om sig själv -- Skicka
1060ett mail och klaga! 1095ett mail och klaga!
1061 1096
1062 1097
1098* MER FUNKTIONER
1099----------------
1100
1101Du kan lära dig mer om Emacs genom att läsa dess manual, antingen i
1102bokform eller on-line i Info (använd Hjälp-menyn eller skriv F10 h r).
1103Två finesser som du kan komma att gilla speciellt är komplettering
1104(completion), som spar tangenttryckningar, och dired, som förenklar
1105filhantering.
1106
1107Komplettering är ett sätt att undvika onödiga tangenttryckningar. Till
1108exempel, om du vill byta till *Messages* bufferten, kan du du skriva
1109C-x b *M<Tab> och Emacs kommer fylla i resten av buffertnamnet så
1110långt den kan räkna ut det från det du redan skrivit. Komplettering
1111finns beskrivet i Emacs-manualen i noden "Completion".
1112
1113Dired gör det möjligt att lista filer i en katalog (och även dess
1114subkataloger), flytta runt i listan, besöka, byta namn, ta bort och
1115operera på olika sätt på filerna. Dired finns beskrivet i Info i
1116Emacs-manualen i noden "Dired".
1117
1118Manualen beskriver även många andra Emacs funktioner.
1119
1120
1063* KOPIERING 1121* KOPIERING
1064----------- 1122-----------
1065 1123
@@ -1070,7 +1128,7 @@ Lidell översatte den till Svenska.
1070This version of the tutorial, like GNU Emacs, is copyrighted, and 1128This version of the tutorial, like GNU Emacs, is copyrighted, and
1071comes with permission to distribute copies on certain conditions: 1129comes with permission to distribute copies on certain conditions:
1072 1130
1073Copyright (c) 1985, 1996 Free Software Foundation 1131Copyright (c) 1985, 1996, 1998, 2001, 2002, 2005 Free Software Foundation
1074 1132
1075 Permission is granted to anyone to make or distribute verbatim copies 1133 Permission is granted to anyone to make or distribute verbatim copies
1076 of this document as received, in any medium, provided that the 1134 of this document as received, in any medium, provided that the
diff --git a/etc/TUTORIAL.translators b/etc/TUTORIAL.translators
index 0e4f2d4e124..5583430c750 100644
--- a/etc/TUTORIAL.translators
+++ b/etc/TUTORIAL.translators
@@ -1,28 +1,89 @@
1This file contains the list of translators of the tutorial. 1This file contains the list of translators and maintainers of the
2 2tutorial.
3TUTORIAL.bg: Ognyan Kulev <ogi@fmi.uni-sofia.bg> 3
4TUTORIAL.cn: Chao-Hong Liu <chliu@gnu.org> 4* TUTORIAL.bg:
5TUTORIAL.cs: Milan Zamazal <pdm@zamazal.org> 5Author: Ognyan Kulev <ogi@fmi.uni-sofia.bg>
6 Pavel Janík <Pavel@Janik.cz> 6Maintainer: Ognyan Kulev <ogi@fmi.uni-sofia.bg>
7TUTORIAL.de: Werner Lemberg <wl@gnu.org> 7
8TUTORIAL.es: Rafael Sepúlveda <drs@gnulinux.org.mx> 8* TUTORIAL.cn:
9TUTORIAL.fr: Éric Jacoboni <jaco@teaser.fr> 9Author: Chao-Hong Liu <chliu@gnu.org>
10TUTORIAL.it: Alfredo Finelli <alfredofnl@tiscali.it> 10Maintainer: Chao-Hong Liu <chliu@gnu.org>
11 Italian GNU Translation Group <tp@lists.linux.it> 11
12TUTORIAL.ja: Kenichi Handa <handa@m17n.org> 12* TUTORIAL.cs:
13TUTORIAL.ko: Koaunghi Un <koaunghi@ling.cnu.ac.kr> 13Author: Milan Zamazal <pdm@zamazal.org>
14TUTORIAL.nl: Pieter Schoenmakers <tiggr@tiggr.net> 14 Pavel Janík <Pavel@Janik.cz>
15TUTORIAL.pl: Beatę Wierzchołowską <beataw@orient.uw.edu.pl> 15Maintainer: Milan Zamazal <pdm@zamazal.org>
16 Janusz S. Bien <jsbien@mail.uw.edu.pl> 16 Pavel Janík <Pavel@Janik.cz>
17TUTORIAL.pt_BR: Marcelo Toledo <marcelo@marcelotoledo.org> 17
18TUTORIAL.ro: Tudor Hulubei <tudor@gnu.org> 18* TUTORIAL.de:
19TUTORIAL.ru: Alex Ott <ottalex@narod.ru> 19Author: Werner Lemberg <wl@gnu.org>
20TUTORIAL.sk: Miroslav Vaško <vasko@debian.cz> 20Maintainer: Werner Lemberg <wl@gnu.org>
21 Pavel Janík <Pavel@Janik.cz> 21
22TUTORIAL.sl: Primož Peterlin <primoz.peterlin@biofiz.mf.uni-lj.si> 22* TUTORIAL.es:
23TUTORIAL.sv: Mats Lidell <matsl@contactor.se> 23Author: Rafael Sepúlveda <drs@gnulinux.org.mx>
24TUTORIAL.th: Virach Sornlertlamvanich <virach@nectec.or.th> 24Maintainer: Rafael Sepúlveda <drs@gnulinux.org.mx>
25TUTORIAL.zh: Chao-Hong Liu <chliu@gnu.org> 25
26* TUTORIAL.fr:
27Author: Éric Jacoboni <jaco@teaser.fr>
28Maintainer: Éric Jacoboni <jaco@teaser.fr>
29
30* TUTORIAL.it:
31Author: Alfredo Finelli <alfredofnl@tiscali.it>
32 Italian GNU Translation Group <tp@lists.linux.it>
33Maintainer: Alfredo Finelli <alfredofnl@tiscali.it>
34 Italian GNU Translation Group <tp@lists.linux.it>
35
36* TUTORIAL.ja:
37Author: Kenichi Handa <handa@m17n.org>
38Maintainer: Kenichi Handa <handa@m17n.org>
39
40* TUTORIAL.ko:
41Author: Koaunghi Un <koaunghi@ling.cnu.ac.kr>
42Maintainer: Maintainer needed.
43
44* TUTORIAL.nl:
45Author: Pieter Schoenmakers <tiggr@tiggr.net>
46Maintainer: Pieter Schoenmakers <tiggr@tiggr.net>
47
48* TUTORIAL.pl:
49Author: Beatę Wierzchołowską <beataw@orient.uw.edu.pl>
50 Janusz S. Bien <jsbien@mail.uw.edu.pl>
51Maintainer: Beatę Wierzchołowską <beataw@orient.uw.edu.pl>
52 Janusz S. Bien <jsbien@mail.uw.edu.pl>
53
54* TUTORIAL.pt_BR:
55Author: Marcelo Toledo <marcelo@marcelotoledo.org>
56Maintainer: Marcelo Toledo <marcelo@marcelotoledo.org>
57
58* TUTORIAL.ro:
59Author: Tudor Hulubei <tudor@gnu.org>
60Maintainer: Maintainer needed.
61
62* TUTORIAL.ru:
63Author: Alex Ott <ottalex@narod.ru>
64Maintainer: Alex Ott <ottalex@narod.ru>
65
66* TUTORIAL.sk:
67Author: Miroslav Vaško <vasko@debian.cz>
68 Pavel Janík <Pavel@Janik.cz>
69Maintainer: Pavel Janík <Pavel@Janik.cz>
70
71* TUTORIAL.sl:
72Author: Primož Peterlin <primoz.peterlin@biofiz.mf.uni-lj.si>
73Maintainer: Primož Peterlin <primoz.peterlin@biofiz.mf.uni-lj.si>
74
75* TUTORIAL.sv:
76Author: Mats Lidell <matsl@contactor.se>
77Maintainer: Mats Lidell <matsl@contactor.se>
78
79* TUTORIAL.th:
80Author: Virach Sornlertlamvanich <virach@nectec.or.th>
81Maintainer: Virach Sornlertlamvanich <virach@nectec.or.th>
82
83* TUTORIAL.zh:
84Author: Chao-Hong Liu <chliu@gnu.org>
85Maintainer: Chao-Hong Liu <chliu@gnu.org>
86
26 87
27;;; Local Variables: 88;;; Local Variables:
28;;; coding: utf-8 89;;; coding: utf-8
diff --git a/leim/ChangeLog b/leim/ChangeLog
index b88f4c9254a..f0ef48c9701 100644
--- a/leim/ChangeLog
+++ b/leim/ChangeLog
@@ -1,3 +1,8 @@
12005-04-06 Kenichi Handa <handa@m17n.org>
2
3 * quail/sgml-input.el ("sgml"): Enable quail-completion by typing
4 TAB.
5
12005-03-26 Kenichi Handa <handa@m17n.org> 62005-03-26 Kenichi Handa <handa@m17n.org>
2 7
3 * quail/latin-ltx.el ("TeX"): Enable quail-completion by typing 8 * quail/latin-ltx.el ("TeX"): Enable quail-completion by typing
diff --git a/leim/quail/sgml-input.el b/leim/quail/sgml-input.el
index 60491c5ab63..d41af8dbc9f 100644
--- a/leim/quail/sgml-input.el
+++ b/leim/quail/sgml-input.el
@@ -40,7 +40,8 @@ ISOgrk2, ISOgrk3, ISOgrk4, ISOlat1, ISOlat2, ISOnum, ISOpub, ISOtech,
40HTMLspecial and HTMLsymbol. 40HTMLspecial and HTMLsymbol.
41 41
42E.g.: &aacute; -> á" 42E.g.: &aacute; -> á"
43 nil t nil nil nil nil nil nil nil nil t) 43 '(("\t" . quail-completion))
44 t nil nil nil nil nil nil nil nil t)
44 45
45(quail-define-rules 46(quail-define-rules
46 ("&Aacgr;" ?\Ά) ;; GREEK CAPITAL LETTER ALPHA WITH TONOS 47 ("&Aacgr;" ?\Ά) ;; GREEK CAPITAL LETTER ALPHA WITH TONOS
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index ec3d4f8a831..14c80f2f58c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,323 @@
12005-04-09 Kenichi Handa <handa@m17n.org>
2
3 * international/code-pages.el (iso-latin-7): Fix the map.
4
52005-04-08 Luc Teirlinck <teirllm@auburn.edu>
6
7 * emacs-lisp/lisp.el (defun-prompt-regexp)
8 (parens-require-spaces, buffer-end, end-of-defun)
9 (insert-parentheses): Doc fixes.
10
112005-04-08 Kim F. Storm <storm@cua.dk>
12
13 * comint.el (comint-highlight-prompt): Fix face spec.
14 * hi-lock.el (hi-green): Likewise.
15
162005-04-08 Dan Nicolaescu <dann@ics.uci.edu>
17
18 * cus-edit.el (custom-modified-face):
19 * comint.el (comint-highlight-input): Fix previous changes.
20 * term.el (term-handle-ansi-escape): Add a comment.
21
222005-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
23
24 * whitespace.el (whitespace-highlight-the-space): Put the same overlay
25 in the buffer and in whitespace-highlighted-space.
26 (whitespace-unhighlight-the-space): Simplify.
27 (whitespace-buffer): Simplify.
28
292005-04-08 Dan Nicolaescu <dann@ics.uci.edu>
30
31 * textmodes/table.el (table-cell-face): Add special case for
32 displays supporting a high number of colors.
33 * progmodes/vhdl-mode.el (vhdl-font-lock-prompt-face)
34 (vhdl-font-lock-reserved-words-face)
35 (vhdl-speedbar-architecture-face)
36 (vhdl-speedbar-instantiation-face)
37 (vhdl-speedbar-architecture-selected-face)
38 (vhdl-speedbar-instantiation-selected-face): Likewise.
39 * progmodes/sh-script.el (sh-heredoc-face): Likewise.
40 * progmodes/idlw-help.el (idlwave-help-link-face): Likewise.
41 * progmodes/ebrowse.el (ebrowse-tree-mark-face)
42 (ebrowse-root-class-face, ebrowse-member-attribute-face)
43 (ebrowse-progress-face): Likewise.
44 * progmodes/compile.el (compilation-info-face): Likewise.
45 * progmodes/cc-fonts.el (c-invalid-face): Likewise.
46 * emacs-lisp/re-builder.el (reb-match-3): Likewise.
47 * calendar/calendar.el (diary-face): Likewise.
48 * woman.el (woman-italic-face, woman-bold-face)
49 (woman-unknown-face): Likewise.
50 * wid-edit.el (widget-button-pressed-face): Likewise.
51 * whitespace.el (whitespace-highlight-face): Likewise.
52 * smerge-mode.el (smerge-mine-face, smerge-base-face): Likewise.
53 * pcvs-info.el (cvs-marked-face): Likewise.
54 * info.el (info-xref): Likewise.
55 * ido.el (ido-subdir-face, ido-indicator-face): Likewise.
56 * hilit-chg.el (highlight-changes-face)
57 (highlight-changes-delete-face): Likewise.
58 * hi-lock.el (hi-yellow, hi-green, hi-blue-b, hi-green-b)
59 (hi-red-b): Likewise.
60 * generic-x.el (show-tabs-tab-face, show-tabs-space-face): Likewise.
61 * font-lock.el (font-lock-keyword-face)
62 (font-lock-function-name-face, font-lock-warning-face): Likewise.
63 * cus-edit.el (custom-invalid-face, custom-modified-face)
64 (custom-set-face, custom-changed-face, custom-variable-tag-face)
65 (custom-group-tag-face-1, custom-group-tag-face): Likewise.
66 * comint.el (comint-highlight-prompt): Likewise.
67
682005-04-08 Lute Kamstra <lute@gnu.org>
69
70 * font-lock.el (font-lock-keywords): Docstring fixes.
71
722005-04-08 Kenichi Handa <handa@m17n.org>
73
74 * ps-mule.el (ps-mule-show-warning): If the number of unprintable
75 chars are more than a limit, print " and more..." at the tail.
76
772005-04-08 Kim F. Storm <storm@cua.dk>
78
79 * emacs-lisp/authors.el (authors-aliases): Update list.
80 (authors-ignored-files): New list.
81 (authors-fixed-entries): Fix typo.
82 (authors-renamed-files-alist): Update list.
83 (authors-add): Check authors-ignored-files.
84
852005-04-08 Carsten Dominik <dominik@science.uva.nl>
86
87 * calendar/diary-lib.el (add-to-diary-list): MARKER argument made
88 optional, to ensure backward compatibility.
89
902005-04-08 Stephen Eglen <stephen@gnu.org>
91
92 * textmodes/flyspell.el (flyspell-large-region): Doc fix.
93
942005-04-08 Kim F. Storm <storm@cua.dk>
95
96 * buff-menu.el (Buffer-menu-mode-map): Map follow-link to
97 mouse-face.
98
99 * mouse.el (mouse-on-link-p): Doc fix.
100
1012005-04-07 Luc Teirlinck <teirllm@auburn.edu>
102
103 * ielm.el (ielm-prompt-read-only): Doc fix.
104
105 * comint.el (comint-prompt-read-only): Doc fix.
106
1072005-04-07 Benjamin Rutt <brutt@bloomington.in.us>
108
109 * ffap.el (ffap-pass-wildcards-to-dired): New user option to
110 ensure dired always handles wildcards passed to ffap.
111 (find-file-at-point): Use it.
112 (ffap-dired-wildcards): Doc fix.
113
1142005-04-07 Juri Linkov <juri@jurta.org>
115
116 * simple.el (next-error-overlay-arrow-position): New defvar.
117 Put "=>" on its property `overlay-arrow-string'. Add it to
118 `overlay-arrow-variable-list'.
119
120 * progmodes/compile.el (compilation-setup):
121 Set `next-error-overlay-arrow-position' to nil. Also set it to
122 nil in the local hook `kill-buffer-hook'. Make local variable
123 `overlay-arrow-string' and set it to "=>".
124 (compilation-goto-locus): Set BOL position to
125 `next-error-overlay-arrow-position' instead of
126 `overlay-arrow-position'.
127
128 * info.el (Info-mode): Add `Info-kill-buffer' to `kill-buffer-hook'
129 locally instead of adding it to the global hook.
130 (Info-kill-buffer): Move up.
131
1322005-04-06 Dan Nicolaescu <dann@ics.uci.edu>
133
134 * term/xterm.el (xterm-standard-colors): Update color values from
135 xterm-200.
136
1372005-04-06 Stefan Monnier <monnier@iro.umontreal.ca>
138
139 * textmodes/tex-mode.el (tex-font-lock-keywords-2): Add \bfseries.
140
141 * fast-lock.el:
142 * lazy-lock.el: Move them to the obsolete subdir.
143
1442005-04-06 JUAN-LEON Lahoz Garcia <juanleon1@gmail.com>
145
146 * wdired.el (wdired-advise-functions, wdired-add-skip-in-replace)
147 (wdired-add-replace-advice): Remove.
148 (wdired-change-to-wdired-mode): Use query-replace-skip-read-only.
149
1502005-04-06 Kim F. Storm <storm@cua.dk>
151
152 * startup.el (command-line): Add --bare-bones alias for -Q.
153
1542005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
155
156 * term/mac-win.el: Use create-fontset-from-mac-roman-font to
157 create the startup fontset if a font specification ends with
158 `mac-roman'.
159
1602005-04-06 Lute Kamstra <lute@gnu.org>
161
162 * add-log.el (change-log-font-lock-keywords): Complete 2005-04-03
163 change.
164
165 * emacs-lisp/copyright.el (copyright-update-year): Replace the
166 right subexpression. Suggested by Jay Bingham <jay.bingham@hp.com>.
167
1682005-04-05 Lute Kamstra <lute@gnu.org>
169
170 * generic.el (generic-mode-internal): Fix 2005-03-31 change.
171 (define-generic-mode): Ditto. Fix debug declaration.
172
173 * generic-x.el (show-tabs-tab-face, show-tabs-space-face):
174 Put them in the generic-x group.
175
176 * calendar/timeclock.el (timeclock): Doc fix.
177
178 * generic.el (define-generic-mode): Don't use custom-current-group.
179 Document default :group value.
180 * emacs-lisp/easy-mmode.el (define-minor-mode): Ditto.
181 (define-global-minor-mode): Don't use custom-current-group.
182
1832005-04-05 Glenn Morris <gmorris@ast.cam.ac.uk>
184
185 * startup.el (command-line-1): Display startup-echo-area-message
186 when fancy splash screen is in use.
187
188 * progmodes/sh-script.el (sh-builtins) <bash>: Add `caller'.
189 (sh-escaped-newline): New face.
190 (sh-font-lock-keywords) <shell>: Improve regexp for escaped
191 newline, and use sh-escaped-newline face.
192
193 * progmodes/tcl.el (tcl-escaped-newline): New face.
194 (tcl-builtin-list): New variable.
195 (tcl-set-font-lock-keywords): Add builtins, variables, and escaped
196 newlines. Fix keywords subexpression number.
197
1982005-04-05 Carsten Dominik <dominik@science.uva.nl>
199
200 * textmodes/org.el (org-diary-default-entry): Fix call to
201 `add-to-diary-entry'.
202
2032005-04-05 Kim F. Storm <storm@cua.dk>
204
205 * ediff-init.el: Use (featurep 'xemacs).
206
2072005-04-05 David Ponce <david@dponce.com>
208
209 * cus-edit.el (face): Derive from symbol widget. Display sample
210 of the current face on the fly.
211 (widget-face-sample-face-get, widget-face-notify): New functions.
212 (widget-face-value-create): Remove.
213
214 * wid-edit.el (widget-field-end): Temporarily remove field
215 narrowing before to call `get-char-property'.
216
2172005-04-04 Jay Belanger <belanger@truman.edu>
218
219 * calc/calc-aent.el (math-read-replacement-list): Add subscripts.
220 (math-read-subscripts): New variable.
221 (math-read-preprocess-string): Process subscripts.
222
2232005-04-04 Luc Teirlinck <teirllm@auburn.edu>
224
225 * comint.el (comint-prompt-read-only): Doc fix.
226
227 * dired.el (dired-copy-filename-as-kill): Make `-' arg behave like
228 `-1'. Doc fix.
229
2302005-04-04 Carsten Dominik <dominik@science.uva.nl>
231
232 * textmodes/org.el (org-insert-mode-line-in-empty-file):
233 Change default value to nil.
234
2352005-04-04 Lute Kamstra <lute@gnu.org>
236
237 * autorevert.el (auto-revert-mode): Specify :group.
238 * battery.el (display-battery-mode): Specify :group.
239 * diff-mode.el (diff-minor-mode): Specify :group.
240 * font-core.el (font-lock-mode): Specify :group.
241 * hl-line.el (hl-line-mode): Specify :group.
242 * iimage.el (iimage): New customization group.
243 (iimage-mode): Specify :group.
244 * longlines.el (longlines-mode): Specify :group.
245 * master.el: Don't require easy-mmode.
246 (master): New customization group.
247 (master-mode): Specify :group.
248 * msb.el (msb-mode): Specify :group.
249 * reveal.el (reveal-mode): Specify :group.
250 * simple.el (next-error-follow-minor-mode): Specify :group.
251 * smerge-mode.el (smerge-mode): Specify :group.
252 * emacs-lisp/eldoc.el (eldoc-mode): Specify :group.
253 * emulation/cua-base.el (cua-mode): Specify :group.
254 * international/encoded-kb.el (encoded-kbd-mode): Specify :group.
255 * language/thai-util.el (thai-auto-composition-mode)
256 (thai-word-mode): Specify :group.
257 * mail/supercite.el (sc-minor-mode): Specify :group.
258 * progmodes/cwarn.el (cwarn-mode): Specify :group.
259 * progmodes/flymake.el (flymake-mode): Specify :group.
260 * progmodes/glasses.el (glasses-mode): Specify :group.
261 * progmodes/hideif.el (hide-ifdef-mode): Specify :group.
262 * textmodes/enriched.el (enriched-mode): Specify :group.
263 * textmodes/refill.el (refill-mode): Specify :group.
264
265 * add-log.el (change-log-font-lock-keywords): Names in
266 parenthesized lists can contain spaces.
267
2682005-04-04 Thien-Thi Nguyen <ttn@gnu.org>
269
270 * startup.el (fancy-splash-text): Shorten default text of
271 "Emacs Tutorial" line. Also, if the current language env
272 indicates an available tutorial file other than TUTORIAL,
273 extract its title and append it to the line in parentheses.
274 (fancy-splash-insert): If arg is a thunk, funcall it.
275
2762005-04-04 Jay Belanger <belanger@truman.edu>
277
278 * calc.el (calc-language-alist): Add tags to customization type.
279
2802005-04-03 Luc Teirlinck <teirllm@auburn.edu>
281
282 * xt-mouse.el (xterm-mouse-mode): Add explicit Custom group, mouse.
283 Doc fix.
284
2852005-04-03 Marcelo Toledo <marcelo@marcelotoledo.org>
286
287 * add-log.el (change-log-font-lock-keywords): The manual
288 describing a Change Log entry, says: (...) "Aside from these
289 header lines, every line in the change log starts with a space or
290 a tab.". The font-lock was not highlighting lines started with
291 spaces, added support for it.
292
2932005-04-03 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
294
295 * textmodes/bibtex.el (bibtex-url): Use format to generate the url.
296 (bibtex-generate-url-list): Update docstring accordingly. Put the
297 complex example in the docstring.
298 (bibtex-font-lock-url): Use pop.
299
3002005-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
301
302 * progmodes/tcl.el (tcl-set-font-lock-keywords): Use new \_< ops.
303
304 * pcvs.el (cvs-checkout): Prompt for cvsroot as well.
305
3062005-04-03 Glenn Morris <gmorris@ast.cam.ac.uk>
307
308 * filesets.el (filesets-set-default): Doc fix.
309
3102005-04-03 Lute Kamstra <lute@gnu.org>
311
312 * generic.el (define-generic-mode): Add argument to specify
313 keywords for defcustom.
314 (default-generic-mode): Specify :group.
315
316 * generic-x.el: Specify :group for all generic modes.
317
318 * desktop.el (desktop-no-desktop-file-hook)
319 (desktop-after-read-hook): Doc fix.
320
12005-04-02 Luc Teirlinck <teirllm@auburn.edu> 3212005-04-02 Luc Teirlinck <teirllm@auburn.edu>
2 322
3 * simple.el (visible-mode): Use explicit :group keyword. 323 * simple.el (visible-mode): Use explicit :group keyword.
@@ -110,12 +430,12 @@
110 430
1112005-03-31 Karl Berry <karl@freefriends.org> 4312005-03-31 Karl Berry <karl@freefriends.org>
112 432
113 * textmodes/tex-mode.el (tex-compile): shell-quote-argument, 433 * textmodes/tex-mode.el (tex-compile): Use shell-quote-argument,
114 not comint-quote-filename. 434 not comint-quote-filename.
115 435
1162005-03-31 Olive Lin <olive.lin@versateladsl.be> (tiny change) 4362005-03-31 Olive Lin <olive.lin@versateladsl.be> (tiny change)
117 437
118 * textmodes/tex-mode.el (tex-start-tex) shell-quote-argument, 438 * textmodes/tex-mode.el (tex-start-tex) Use shell-quote-argument,
119 not comint-quote-filename. 439 not comint-quote-filename.
120 440
1212005-03-31 Thien-Thi Nguyen <ttn@gnu.org> 4412005-03-31 Thien-Thi Nguyen <ttn@gnu.org>
@@ -1526,7 +1846,7 @@
1526 (debug-entry-code): New const. 1846 (debug-entry-code): New const.
1527 (debug-on-entry-1): Use it. 1847 (debug-on-entry-1): Use it.
1528 1848
15292005-02-28 Chong Yidong" <cyd@stupidchicken.com> (tiny change) 18492005-02-28 Chong Yidong <cyd@stupidchicken.com>
1530 1850
1531 * international/utf-16.el (ccl-encode-mule-utf-16le): 1851 * international/utf-16.el (ccl-encode-mule-utf-16le):
1532 Fix BUFFER_MAGNIFICATION to 2. 1852 Fix BUFFER_MAGNIFICATION to 2.
@@ -2688,7 +3008,7 @@
2688 * simple.el (eval-expression-print-format): Avoid warning 3008 * simple.el (eval-expression-print-format): Avoid warning
2689 about edebug-active. 3009 about edebug-active.
2690 3010
26912005-01-15 "James R. Van Zandt" <jrvz@comcast.net> (Tiny change) 30112005-01-15 James R. Van Zandt <jrvz@comcast.net> (Tiny change)
2692 3012
2693 * progmodes/sh-script.el: Code copied from make-mode.el 3013 * progmodes/sh-script.el: Code copied from make-mode.el
2694 with small changes, 3014 with small changes,
@@ -7405,8 +7725,7 @@
7405 7725
74062004-09-21 Kenichi Handa <handa@m17n.org> 77262004-09-21 Kenichi Handa <handa@m17n.org>
7407 7727
7408 * descr-text.el (describe-char): Checking of quail activation 7728 * descr-text.el (describe-char): Checking of quail activation fixed.
7409 fixed.
7410 7729
74112004-09-21 Jay Belanger <belanger@truman.edu> 77302004-09-21 Jay Belanger <belanger@truman.edu>
7412 7731
diff --git a/lisp/ChangeLog.5 b/lisp/ChangeLog.5
index 5d3125b3ffc..dad524ed851 100644
--- a/lisp/ChangeLog.5
+++ b/lisp/ChangeLog.5
@@ -1063,7 +1063,7 @@
1063 * vc-hooks.el (vc-status): If vc-locking-user returns a number, 1063 * vc-hooks.el (vc-status): If vc-locking-user returns a number,
1064 compare it to (user-uid). 1064 compare it to (user-uid).
1065 1065
10661995-05-11 James Thompson <thompson@wg2.waii.com> 10661995-05-11 Jim Thompson <thompson@wg2.waii.com>
1067 1067
1068 * ps-print.el: Miscellaneous fixes for better compatibility with 1068 * ps-print.el: Miscellaneous fixes for better compatibility with
1069 XEmacs 19.12. 1069 XEmacs 19.12.
diff --git a/lisp/add-log.el b/lisp/add-log.el
index 7706a697755..2714df554b8 100644
--- a/lisp/add-log.el
+++ b/lisp/add-log.el
@@ -1,7 +1,7 @@
1;;; add-log.el --- change log maintenance commands for Emacs 1;;; add-log.el --- change log maintenance commands for Emacs
2 2
3;; Copyright (C) 1985, 86, 88, 93, 94, 97, 98, 2000, 03, 2004 3;; Copyright (C) 1985, 1986, 1988, 1993, 1994, 1997, 1998, 2000, 2003,
4;; Free Software Foundation, Inc. 4;; 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Maintainer: FSF 6;; Maintainer: FSF
7;; Keywords: tools 7;; Keywords: tools
@@ -225,20 +225,20 @@ Note: The search is conducted only within 10%, at the beginning of the file."
225 (2 'change-log-email-face))) 225 (2 'change-log-email-face)))
226 ;; 226 ;;
227 ;; File names. 227 ;; File names.
228 ("^\t\\* \\([^ ,:([\n]+\\)" 228 ("^\\( +\\|\t\\)\\* \\([^ ,:([\n]+\\)"
229 (1 'change-log-file-face) 229 (2 'change-log-file-face)
230 ;; Possibly further names in a list: 230 ;; Possibly further names in a list:
231 ("\\=, \\([^ ,:([\n]+\\)" nil nil (1 'change-log-file-face)) 231 ("\\=, \\([^ ,:([\n]+\\)" nil nil (1 'change-log-file-face))
232 ;; Possibly a parenthesized list of names: 232 ;; Possibly a parenthesized list of names:
233 ("\\= (\\([^() ,\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" 233 ("\\= (\\([^(),\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)"
234 nil nil (1 'change-log-list-face)) 234 nil nil (1 'change-log-list-face))
235 ("\\=, *\\([^() ,\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" 235 ("\\=, *\\([^(),\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)"
236 nil nil (1 'change-log-list-face))) 236 nil nil (1 'change-log-list-face)))
237 ;; 237 ;;
238 ;; Function or variable names. 238 ;; Function or variable names.
239 ("^\t(\\([^() ,\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" 239 ("^\\( +\\|\t\\)(\\([^(),\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)"
240 (1 'change-log-list-face) 240 (2 'change-log-list-face)
241 ("\\=, *\\([^() ,\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" nil nil 241 ("\\=, *\\([^(),\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" nil nil
242 (1 'change-log-list-face))) 242 (1 'change-log-list-face)))
243 ;; 243 ;;
244 ;; Conditionals. 244 ;; Conditionals.
@@ -250,8 +250,8 @@ Note: The search is conducted only within 10%, at the beginning of the file."
250 ;; Acknowledgements. 250 ;; Acknowledgements.
251 ;; Don't include plain "From" because that is vague; 251 ;; Don't include plain "From" because that is vague;
252 ;; we want to encourage people to say something more specific. 252 ;; we want to encourage people to say something more specific.
253 ("\\(^\t\\| \\)\\(Patch\\(es\\)? by\\|Report\\(ed by\\| from\\)\\|Suggest\\(ed by\\|ion from\\)\\)" 253 ("\\(^\\( +\\|\t\\)\\| \\)\\(Patch\\(es\\)? by\\|Report\\(ed by\\| from\\)\\|Suggest\\(ed by\\|ion from\\)\\)"
254 2 'change-log-acknowledgement-face)) 254 3 'change-log-acknowledgement-face))
255 "Additional expressions to highlight in Change Log mode.") 255 "Additional expressions to highlight in Change Log mode.")
256 256
257(defvar change-log-mode-map 257(defvar change-log-mode-map
diff --git a/lisp/autorevert.el b/lisp/autorevert.el
index 361a11a67ea..36b5a6f5a37 100644
--- a/lisp/autorevert.el
+++ b/lisp/autorevert.el
@@ -1,6 +1,6 @@
1;;; autorevert.el --- revert buffers when files on disk change 1;;; autorevert.el --- revert buffers when files on disk change
2 2
3;; Copyright (C) 1997, 1998, 1999, 2001, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2001, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Anders Lindgren <andersl@andersl.com> 5;; Author: Anders Lindgren <andersl@andersl.com>
6;; Keywords: convenience 6;; Keywords: convenience
@@ -290,7 +290,7 @@ This is a minor mode that affects only the current buffer.
290Use `global-auto-revert-mode' to automatically revert all buffers. 290Use `global-auto-revert-mode' to automatically revert all buffers.
291Use `auto-revert-tail-mode' if you know that the file will only grow 291Use `auto-revert-tail-mode' if you know that the file will only grow
292without being changed in the part that is already in the buffer." 292without being changed in the part that is already in the buffer."
293 nil auto-revert-mode-text nil 293 :group 'auto-revert :lighter auto-revert-mode-text
294 (if auto-revert-mode 294 (if auto-revert-mode
295 (if (not (memq (current-buffer) auto-revert-buffer-list)) 295 (if (not (memq (current-buffer) auto-revert-buffer-list))
296 (push (current-buffer) auto-revert-buffer-list)) 296 (push (current-buffer) auto-revert-buffer-list))
diff --git a/lisp/battery.el b/lisp/battery.el
index 69bd68bb0b9..42ceec0c90c 100644
--- a/lisp/battery.el
+++ b/lisp/battery.el
@@ -114,7 +114,7 @@ The text being displayed in the mode line is controlled by the variables
114`battery-mode-line-format' and `battery-status-function'. 114`battery-mode-line-format' and `battery-status-function'.
115The mode line will be updated automatically every `battery-update-interval' 115The mode line will be updated automatically every `battery-update-interval'
116seconds." 116seconds."
117 :global t 117 :global t :group 'battery
118 (setq battery-mode-line-string "") 118 (setq battery-mode-line-string "")
119 (or global-mode-string (setq global-mode-string '(""))) 119 (or global-mode-string (setq global-mode-string '("")))
120 (and battery-update-timer (cancel-timer battery-update-timer)) 120 (and battery-update-timer (cancel-timer battery-update-timer))
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el
index 8e1a3e69295..7d0ac885c2f 100644
--- a/lisp/buff-menu.el
+++ b/lisp/buff-menu.el
@@ -141,6 +141,7 @@ Auto Revert Mode.")
141 (define-key Buffer-menu-mode-map "V" 'Buffer-menu-view) 141 (define-key Buffer-menu-mode-map "V" 'Buffer-menu-view)
142 (define-key Buffer-menu-mode-map "T" 'Buffer-menu-toggle-files-only) 142 (define-key Buffer-menu-mode-map "T" 'Buffer-menu-toggle-files-only)
143 (define-key Buffer-menu-mode-map [mouse-2] 'Buffer-menu-mouse-select) 143 (define-key Buffer-menu-mode-map [mouse-2] 'Buffer-menu-mouse-select)
144 (define-key Buffer-menu-mode-map [follow-link] 'mouse-face)
144) 145)
145 146
146;; Buffer Menu mode is suitable only for specially formatted data. 147;; Buffer Menu mode is suitable only for specially formatted data.
diff --git a/lisp/calc/calc-aent.el b/lisp/calc/calc-aent.el
index e174d81c41d..a2d6e9dc88c 100644
--- a/lisp/calc/calc-aent.el
+++ b/lisp/calc/calc-aent.el
@@ -519,7 +519,22 @@ T means abort and give an error message.")
519 ("â½" "(") ; ( 519 ("â½" "(") ; (
520 ("â¾" ")") ; ) 520 ("â¾" ")") ; )
521 ("â¿" "n") ; n 521 ("â¿" "n") ; n
522 ("â±" "i")) ; i 522 ("â±" "i") ; i
523 ;; subscripts
524 ("â‚€" "0") ; 0
525 ("â‚" "1") ; 1
526 ("â‚‚" "2") ; 2
527 ("₃" "3") ; 3
528 ("â‚„" "4") ; 4
529 ("â‚…" "5") ; 5
530 ("₆" "6") ; 6
531 ("₇" "7") ; 7
532 ("₈" "8") ; 8
533 ("₉" "9") ; 9
534 ("₊" "+") ; +
535 ("â‚‹" "-") ; -
536 ("â‚" "(") ; (
537 ("₎" ")")) ; )
523 "A list whose elements (old new) indicate replacements to make 538 "A list whose elements (old new) indicate replacements to make
524in Calc algebraic input.") 539in Calc algebraic input.")
525 540
@@ -527,11 +542,18 @@ in Calc algebraic input.")
527 "â°Â¹Â²Â³â´âµâ¶â·â¸â¹âºâ»â½â¾â¿â±" ; 0123456789+-()ni 542 "â°Â¹Â²Â³â´âµâ¶â·â¸â¹âºâ»â½â¾â¿â±" ; 0123456789+-()ni
528 "A string consisting of the superscripts allowed by Calc.") 543 "A string consisting of the superscripts allowed by Calc.")
529 544
545(defvar math-read-subscripts
546 "â‚€â‚₂₃₄₅₆₇₈₉₊₋â‚₎" ; 0123456789+-()
547 "A string consisting of the subscripts allowed by Calc.")
548
530(defun math-read-preprocess-string (str) 549(defun math-read-preprocess-string (str)
531 "Replace some substrings of STR by Calc equivalents." 550 "Replace some substrings of STR by Calc equivalents."
532 (setq str 551 (setq str
533 (replace-regexp-in-string (concat "[" math-read-superscripts "]+") 552 (replace-regexp-in-string (concat "[" math-read-superscripts "]+")
534 "^(\\&)" str)) 553 "^(\\&)" str))
554 (setq str
555 (replace-regexp-in-string (concat "[" math-read-subscripts "]+")
556 "_(\\&)" str))
535 (let ((rep-list math-read-replacement-list)) 557 (let ((rep-list math-read-replacement-list))
536 (while rep-list 558 (while rep-list
537 (setq str 559 (setq str
diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el
index 3d78599ecc1..ceee013e493 100644
--- a/lisp/calc/calc.el
+++ b/lisp/calc/calc.el
@@ -231,7 +231,8 @@
231 (f90-mode . fortran)) 231 (f90-mode . fortran))
232 "*Alist of major modes with appropriate Calc languages." 232 "*Alist of major modes with appropriate Calc languages."
233 :group 'calc 233 :group 'calc
234 :type '(alist :key-type symbol :value-type symbol)) 234 :type '(alist :key-type (symbol :tag "Major mode")
235 :value-type (symbol :tag "Calc language")))
235 236
236(defcustom calc-embedded-announce-formula 237(defcustom calc-embedded-announce-formula
237 "%Embed\n\\(% .*\n\\)*" 238 "%Embed\n\\(% .*\n\\)*"
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 5fc23a15cc9..305ecc1e9bc 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -209,8 +209,12 @@ If nil, make an icon of the frame. If non-nil, delete the frame."
209(defvar diary-face 'diary-face 209(defvar diary-face 'diary-face
210 "Face name to use for diary entries.") 210 "Face name to use for diary entries.")
211(defface diary-face 211(defface diary-face
212 '((((class color) (background light)) 212 '((((min-colors 88) (class color) (background light))
213 :foreground "red1")
214 (((class color) (background light))
213 :foreground "red") 215 :foreground "red")
216 (((min-colors 88) (class color) (background dark))
217 :foreground "yellow1")
214 (((class color) (background dark)) 218 (((class color) (background dark))
215 :foreground "yellow") 219 :foreground "yellow")
216 (t 220 (t
diff --git a/lisp/calendar/diary-lib.el b/lisp/calendar/diary-lib.el
index 6b8f6986381..1832e0cd0fb 100644
--- a/lisp/calendar/diary-lib.el
+++ b/lisp/calendar/diary-lib.el
@@ -1647,7 +1647,7 @@ marked on the calendar."
1647 (or (diary-remind sexp (car days) marking) 1647 (or (diary-remind sexp (car days) marking)
1648 (diary-remind sexp (cdr days) marking)))))) 1648 (diary-remind sexp (cdr days) marking))))))
1649 1649
1650(defun add-to-diary-list (date string specifier marker &optional globcolor) 1650(defun add-to-diary-list (date string specifier &optional marker globcolor)
1651 "Add the entry (DATE STRING SPECIFIER MARKER GLOBCOLOR) to `diary-entries-list'. 1651 "Add the entry (DATE STRING SPECIFIER MARKER GLOBCOLOR) to `diary-entries-list'.
1652Do nothing if DATE or STRING is nil." 1652Do nothing if DATE or STRING is nil."
1653 (when (and date string) 1653 (when (and date string)
diff --git a/lisp/calendar/time-date.el b/lisp/calendar/time-date.el
index a4acb8b9291..7160d26ef42 100644
--- a/lisp/calendar/time-date.el
+++ b/lisp/calendar/time-date.el
@@ -1,5 +1,5 @@
1;;; time-date.el --- date and time handling functions 1;;; time-date.el --- Date and time handling functions
2;; Copyright (C) 1998, 1999, 2000, 2004, 2005 Free Software Foundation, Inc. 2;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
3 3
4;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> 4;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
5;; Masanobu Umeda <umerin@mse.kyutech.ac.jp> 5;; Masanobu Umeda <umerin@mse.kyutech.ac.jp>
diff --git a/lisp/calendar/timeclock.el b/lisp/calendar/timeclock.el
index 709ea25fbcb..82315108548 100644
--- a/lisp/calendar/timeclock.el
+++ b/lisp/calendar/timeclock.el
@@ -1,6 +1,6 @@
1;;; timeclock.el --- mode for keeping track of how much you work 1;;; timeclock.el --- mode for keeping track of how much you work
2 2
3;; Copyright (C) 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: John Wiegley <johnw@gnu.org> 5;; Author: John Wiegley <johnw@gnu.org>
6;; Created: 25 Mar 1999 6;; Created: 25 Mar 1999
@@ -78,7 +78,7 @@
78;;; Code: 78;;; Code:
79 79
80(defgroup timeclock nil 80(defgroup timeclock nil
81 "Keeping track time of the time that gets spent." 81 "Keeping track of the time that gets spent."
82 :group 'data) 82 :group 'data)
83 83
84;;; User Variables: 84;;; User Variables:
diff --git a/lisp/comint.el b/lisp/comint.el
index feb0bb83de3..f3f98b0500f 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -186,11 +186,11 @@ wish to put something like the following in your `.emacs' file:
186 186
187\(add-hook 'comint-mode-hook 187\(add-hook 'comint-mode-hook
188 (lambda () 188 (lambda ()
189 (define-key comint-mode-map \"\C-w\" 'comint-kill-region) 189 (define-key comint-mode-map \"\\C-w\" 'comint-kill-region)
190 (define-key comint-mode-map [C-S-backspace] 190 (define-key comint-mode-map [C-S-backspace]
191 'comint-kill-whole-line))) 191 'comint-kill-whole-line)))
192 192
193If you sometimes use comint-mode on text-only terminals or with `emacs-nw', 193If you sometimes use comint-mode on text-only terminals or with `emacs -nw',
194you might wish to use another binding for `comint-kill-whole-line'." 194you might wish to use another binding for `comint-kill-whole-line'."
195 :type 'boolean 195 :type 'boolean
196 :group 'comint 196 :group 'comint
@@ -228,7 +228,8 @@ This variable is buffer-local."
228 :group 'comint) 228 :group 'comint)
229 229
230(defface comint-highlight-prompt 230(defface comint-highlight-prompt
231 '((((background dark)) (:foreground "cyan")) 231 '((((min-colors 88) (background dark)) (:foreground "cyan1"))
232 (((background dark)) (:foreground "cyan"))
232 (t (:foreground "dark blue"))) 233 (t (:foreground "dark blue")))
233 "Face to use to highlight prompts." 234 "Face to use to highlight prompts."
234 :group 'comint) 235 :group 'comint)
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index fb76aa6c3d8..8d440be9b39 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -1633,7 +1633,7 @@ item in another window.\n\n"))
1633 :group 'custom-buffer) 1633 :group 'custom-buffer)
1634 1634
1635(defface custom-invalid-face '((((class color)) 1635(defface custom-invalid-face '((((class color))
1636 (:foreground "yellow" :background "red")) 1636 (:foreground "yellow1" :background "red1"))
1637 (t 1637 (t
1638 (:weight bold :slant italic :underline t))) 1638 (:weight bold :slant italic :underline t)))
1639 "Face used when the customize item is invalid." 1639 "Face used when the customize item is invalid."
@@ -1646,21 +1646,27 @@ item in another window.\n\n"))
1646 "Face used when the customize item is not defined for customization." 1646 "Face used when the customize item is not defined for customization."
1647 :group 'custom-magic-faces) 1647 :group 'custom-magic-faces)
1648 1648
1649(defface custom-modified-face '((((class color)) 1649(defface custom-modified-face '((((min-colors 88) (class color))
1650 (:foreground "white" :background "blue1"))
1651 (((class color))
1650 (:foreground "white" :background "blue")) 1652 (:foreground "white" :background "blue"))
1651 (t 1653 (t
1652 (:slant italic :bold))) 1654 (:slant italic :bold)))
1653 "Face used when the customize item has been modified." 1655 "Face used when the customize item has been modified."
1654 :group 'custom-magic-faces) 1656 :group 'custom-magic-faces)
1655 1657
1656(defface custom-set-face '((((class color)) 1658(defface custom-set-face '((((min-colors 88) (class color))
1659 (:foreground "blue1" :background "white"))
1660 (((class color))
1657 (:foreground "blue" :background "white")) 1661 (:foreground "blue" :background "white"))
1658 (t 1662 (t
1659 (:slant italic))) 1663 (:slant italic)))
1660 "Face used when the customize item has been set." 1664 "Face used when the customize item has been set."
1661 :group 'custom-magic-faces) 1665 :group 'custom-magic-faces)
1662 1666
1663(defface custom-changed-face '((((class color)) 1667(defface custom-changed-face '((((min-colors 88) (class color))
1668 (:foreground "white" :background "blue1"))
1669 (((class color))
1664 (:foreground "white" :background "blue")) 1670 (:foreground "white" :background "blue"))
1665 (t 1671 (t
1666 (:slant italic))) 1672 (:slant italic)))
@@ -2148,9 +2154,12 @@ If INITIAL-STRING is non-nil, use that rather than \"Parent groups:\"."
2148 `((((class color) 2154 `((((class color)
2149 (background dark)) 2155 (background dark))
2150 (:foreground "light blue" :weight bold :height 1.2 :inherit variable-pitch)) 2156 (:foreground "light blue" :weight bold :height 1.2 :inherit variable-pitch))
2157 (((min-colors 88) (class color)
2158 (background light))
2159 (:foreground "blue1" :weight bold :height 1.2 :inherit variable-pitch))
2151 (((class color) 2160 (((class color)
2152 (background light)) 2161 (background light))
2153 (:foreground "blue" :weight bold :height 1.2 :inherit variable-pitch)) 2162 (:foreground "blue" :weight bold :height 1.2 :inherit variable-pitch))
2154 (t (:weight bold))) 2163 (t (:weight bold)))
2155 "Face used for unpushable variable tags." 2164 "Face used for unpushable variable tags."
2156 :group 'custom-faces) 2165 :group 'custom-faces)
@@ -3296,65 +3305,37 @@ restoring it to the state of a face that has never been customized."
3296(defvar widget-face-prompt-value-history nil 3305(defvar widget-face-prompt-value-history nil
3297 "History of input to `widget-face-prompt-value'.") 3306 "History of input to `widget-face-prompt-value'.")
3298 3307
3299(define-widget 'face 'restricted-sexp 3308(define-widget 'face 'symbol
3300 "A Lisp face name." 3309 "A Lisp face name (with sample)."
3310 :format "%t: (%{sample%}) %v"
3311 :tag "Face"
3312 :value 'default
3313 :sample-face-get 'widget-face-sample-face-get
3314 :notify 'widget-face-notify
3315 :match (lambda (widget value) (facep value))
3301 :complete-function (lambda () 3316 :complete-function (lambda ()
3302 (interactive) 3317 (interactive)
3303 (lisp-complete-symbol 'facep)) 3318 (lisp-complete-symbol 'facep))
3304 :prompt-value 'widget-field-prompt-value
3305 :prompt-internal 'widget-symbol-prompt-internal
3306 :prompt-match 'facep 3319 :prompt-match 'facep
3307 :prompt-history 'widget-face-prompt-value-history 3320 :prompt-history 'widget-face-prompt-value-history
3308 :value-create 'widget-face-value-create
3309 :action 'widget-field-action
3310 :match-alternatives '(facep)
3311 :validate (lambda (widget) 3321 :validate (lambda (widget)
3312 (unless (facep (widget-value widget)) 3322 (unless (facep (widget-value widget))
3313 (widget-put widget :error (format "Invalid face: %S" 3323 (widget-put widget
3314 (widget-value widget))) 3324 :error (format "Invalid face: %S"
3315 widget)) 3325 (widget-value widget)))
3316 :value 'ignore 3326 widget)))
3317 :tag "Function")
3318
3319 3327
3320;;; There is a bug here: the sample doesn't get redisplayed 3328(defun widget-face-sample-face-get (widget)
3321;;; in the new font when you specify one. Does anyone know how to 3329 (let ((value (widget-value widget)))
3322;;; make that work? -- rms. 3330 (if (facep value)
3331 value
3332 'default)))
3323 3333
3324(defun widget-face-value-create (widget) 3334(defun widget-face-notify (widget child &optional event)
3325 "Create an editable face name field." 3335 "Update the sample, and notify the parent."
3326 (let ((buttons (widget-get widget :buttons)) 3336 (overlay-put (widget-get widget :sample-overlay)
3327 (symbol (widget-get widget :value))) 3337 'face (widget-apply widget :sample-face-get))
3328 ;; Sample. 3338 (widget-default-notify widget child event))
3329 (push (widget-create-child-and-convert widget 'item
3330 :format "(%{%t%})"
3331 :sample-face symbol
3332 :tag "sample")
3333 buttons)
3334 (insert " ")
3335 ;; Update buttons.
3336 (widget-put widget :buttons buttons))
3337
3338 (let ((size (widget-get widget :size))
3339 (value (widget-get widget :value))
3340 (from (point))
3341 ;; This is changed to a real overlay in `widget-setup'. We
3342 ;; need the end points to behave differently until
3343 ;; `widget-setup' is called.
3344 (overlay (cons (make-marker) (make-marker))))
3345 (widget-put widget :field-overlay overlay)
3346 (insert value)
3347 (and size
3348 (< (length value) size)
3349 (insert-char ?\ (- size (length value))))
3350 (unless (memq widget widget-field-list)
3351 (setq widget-field-new (cons widget widget-field-new)))
3352 (move-marker (cdr overlay) (point))
3353 (set-marker-insertion-type (cdr overlay) nil)
3354 (when (null size)
3355 (insert ?\n))
3356 (move-marker (car overlay) from)
3357 (set-marker-insertion-type (car overlay) t)))
3358 3339
3359 3340
3360;;; The `hook' Widget. 3341;;; The `hook' Widget.
@@ -3420,6 +3401,9 @@ and so forth. The remaining group tags are shown with
3420 `((((class color) 3401 `((((class color)
3421 (background dark)) 3402 (background dark))
3422 (:foreground "pink" :weight bold :height 1.2 :inherit variable-pitch)) 3403 (:foreground "pink" :weight bold :height 1.2 :inherit variable-pitch))
3404 (((min-colors 88) (class color)
3405 (background light))
3406 (:foreground "red1" :weight bold :height 1.2 :inherit variable-pitch))
3423 (((class color) 3407 (((class color)
3424 (background light)) 3408 (background light))
3425 (:foreground "red" :weight bold :height 1.2 :inherit variable-pitch)) 3409 (:foreground "red" :weight bold :height 1.2 :inherit variable-pitch))
@@ -3431,6 +3415,9 @@ and so forth. The remaining group tags are shown with
3431 `((((class color) 3415 `((((class color)
3432 (background dark)) 3416 (background dark))
3433 (:foreground "light blue" :weight bold :height 1.2)) 3417 (:foreground "light blue" :weight bold :height 1.2))
3418 (((min-colors 88) (class color)
3419 (background light))
3420 (:foreground "blue1" :weight bold :height 1.2))
3434 (((class color) 3421 (((class color)
3435 (background light)) 3422 (background light))
3436 (:foreground "blue" :weight bold :height 1.2)) 3423 (:foreground "blue" :weight bold :height 1.2))
diff --git a/lisp/desktop.el b/lisp/desktop.el
index 04fc7231c83..373f3fc3100 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -158,14 +158,14 @@ If nil, just print error messages in the message buffer."
158 158
159(defcustom desktop-no-desktop-file-hook nil 159(defcustom desktop-no-desktop-file-hook nil
160 "Normal hook run when `desktop-read' can't find a desktop file. 160 "Normal hook run when `desktop-read' can't find a desktop file.
161May e.g. be used to show a dired buffer." 161May be used to show a dired buffer."
162 :type 'hook 162 :type 'hook
163 :group 'desktop 163 :group 'desktop
164 :version "22.1") 164 :version "22.1")
165 165
166(defcustom desktop-after-read-hook nil 166(defcustom desktop-after-read-hook nil
167 "Normal hook run after a successful `desktop-read'. 167 "Normal hook run after a successful `desktop-read'.
168May e.g. be used to show a buffer list." 168May be used to show a buffer list."
169 :type 'hook 169 :type 'hook
170 :group 'desktop 170 :group 'desktop
171 :version "22.1") 171 :version "22.1")
diff --git a/lisp/diff-mode.el b/lisp/diff-mode.el
index c945a6a7221..d69685ac86f 100644
--- a/lisp/diff-mode.el
+++ b/lisp/diff-mode.el
@@ -1,7 +1,7 @@
1;;; diff-mode.el --- a mode for viewing/editing context diffs 1;;; diff-mode.el --- a mode for viewing/editing context diffs
2 2
3;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 3;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Author: Stefan Monnier <monnier@cs.yale.edu> 6;; Author: Stefan Monnier <monnier@cs.yale.edu>
7;; Keywords: convenience patch diff 7;; Keywords: convenience patch diff
@@ -263,7 +263,7 @@ when editing big diffs)."
263 (save-excursion 263 (save-excursion
264 (while (re-search-backward re start t) 264 (while (re-search-backward re start t)
265 (replace-match "" t t))))))) 265 (replace-match "" t t)))))))
266 266
267 267
268(defvar diff-font-lock-keywords 268(defvar diff-font-lock-keywords
269 `(("^\\(@@ -[0-9,]+ \\+[0-9,]+ @@\\)\\(.*\\)$" ;unified 269 `(("^\\(@@ -[0-9,]+ \\+[0-9,]+ @@\\)\\(.*\\)$" ;unified
@@ -484,7 +484,7 @@ If the OLD prefix arg is passed, tell the file NAME of the old file."
484 (let ((fs (diff-hunk-file-names old))) 484 (let ((fs (diff-hunk-file-names old)))
485 (unless fs (error "No file name to look for")) 485 (unless fs (error "No file name to look for"))
486 (push (cons fs name) diff-remembered-files-alist))) 486 (push (cons fs name) diff-remembered-files-alist)))
487 487
488(defun diff-hunk-file-names (&optional old) 488(defun diff-hunk-file-names (&optional old)
489 "Give the list of file names textually mentioned for the current hunk." 489 "Give the list of file names textually mentioned for the current hunk."
490 (save-excursion 490 (save-excursion
@@ -952,7 +952,7 @@ a diff with \\[diff-reverse-direction]."
952(define-minor-mode diff-minor-mode 952(define-minor-mode diff-minor-mode
953 "Minor mode for viewing/editing context diffs. 953 "Minor mode for viewing/editing context diffs.
954\\{diff-minor-mode-map}" 954\\{diff-minor-mode-map}"
955 nil " Diff" nil 955 :group 'diff-mode :lighter " Diff"
956 ;; FIXME: setup font-lock 956 ;; FIXME: setup font-lock
957 ;; setup change hooks 957 ;; setup change hooks
958 (if (not diff-update-on-the-fly) 958 (if (not diff-update-on-the-fly)
diff --git a/lisp/dired.el b/lisp/dired.el
index 8ee19486a7e..d709b9f89e8 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -1937,10 +1937,11 @@ Return the position of the beginning of the filename, or nil if none found."
1937 "Copy names of marked (or next ARG) files into the kill ring. 1937 "Copy names of marked (or next ARG) files into the kill ring.
1938The names are separated by a space. 1938The names are separated by a space.
1939With a zero prefix arg, use the absolute file name of each marked file. 1939With a zero prefix arg, use the absolute file name of each marked file.
1940With \\[universal-argument], use the file name sans directory of each marked file. 1940With \\[universal-argument], use the file name relative to the Dired buffer's
1941`default-directory'. (This still may contain slashes if in a subdirectory.)
1941 1942
1942If on a subdir headerline, use subdirname instead; prefix arg is ignored 1943If on a subdir headerline, use absolute subdirname instead;
1943in this case. 1944prefix arg and marked files are ignored in this case.
1944 1945
1945You can then feed the file name(s) to other commands with \\[yank]." 1946You can then feed the file name(s) to other commands with \\[yank]."
1946 (interactive "P") 1947 (interactive "P")
@@ -1950,10 +1951,11 @@ You can then feed the file name(s) to other commands with \\[yank]."
1950 (if arg 1951 (if arg
1951 (cond ((zerop (prefix-numeric-value arg)) 1952 (cond ((zerop (prefix-numeric-value arg))
1952 (dired-get-marked-files)) 1953 (dired-get-marked-files))
1953 ((integerp arg) 1954 ((consp arg)
1954 (dired-get-marked-files 'no-dir arg)) 1955 (dired-get-marked-files t))
1955 (t ; else a raw arg 1956 (t
1956 (dired-get-marked-files t))) 1957 (dired-get-marked-files
1958 'no-dir (prefix-numeric-value arg))))
1957 (dired-get-marked-files 'no-dir)) 1959 (dired-get-marked-files 'no-dir))
1958 " ")))) 1960 " "))))
1959 (if (eq last-command 'kill-region) 1961 (if (eq last-command 'kill-region)
diff --git a/lisp/ediff-init.el b/lisp/ediff-init.el
index 46e94e935f7..969097b6f76 100644
--- a/lisp/ediff-init.el
+++ b/lisp/ediff-init.el
@@ -1,6 +1,7 @@
1;;; ediff-init.el --- Macros, variables, and defsubsts used by Ediff 1;;; ediff-init.el --- Macros, variables, and defsubsts used by Ediff
2 2
3;; Copyright (C) 1994, 95, 96, 97, 98, 99, 2000, 01, 02, 04 Free Software Foundation, Inc. 3;; Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
4;; 2004, 2005 Free Software Foundation, Inc.
4 5
5;; Author: Michael Kifer <kifer@cs.stonybrook.edu> 6;; Author: Michael Kifer <kifer@cs.stonybrook.edu>
6 7
@@ -43,7 +44,7 @@
43;; end pacifier 44;; end pacifier
44 45
45;; Is it XEmacs? 46;; Is it XEmacs?
46(defconst ediff-xemacs-p (string-match "XEmacs" emacs-version)) 47(defconst ediff-xemacs-p (featurep 'xemacs))
47;; Is it Emacs? 48;; Is it Emacs?
48(defconst ediff-emacs-p (not ediff-xemacs-p)) 49(defconst ediff-emacs-p (not ediff-xemacs-p))
49 50
@@ -53,7 +54,7 @@
53;; compiler at hand. 54;; compiler at hand.
54;; Suggested by rms. 55;; Suggested by rms.
55(defmacro ediff-cond-compile-for-xemacs-or-emacs (xemacs-form emacs-form) 56(defmacro ediff-cond-compile-for-xemacs-or-emacs (xemacs-form emacs-form)
56 (if (string-match "XEmacs" emacs-version) 57 (if (featurep 'xemacs)
57 xemacs-form emacs-form)) 58 xemacs-form emacs-form))
58 59
59(defvar ediff-force-faces nil 60(defvar ediff-force-faces nil
@@ -1145,9 +1146,9 @@ this variable represents.")
1145 1146
1146(defface ediff-even-diff-face-B 1147(defface ediff-even-diff-face-B
1147 (if ediff-emacs-p 1148 (if ediff-emacs-p
1148 `((((class color) (min-colors 16)) 1149 `((((class color) (min-colors 16))
1149 (:foreground "White" :background "Grey")) 1150 (:foreground "White" :background "Grey"))
1150 (((class color)) 1151 (((class color))
1151 (:foreground "blue3" :background "Grey" :weight bold)) 1152 (:foreground "blue3" :background "Grey" :weight bold))
1152 (t (:italic t :stipple ,stipple-pixmap))) 1153 (t (:italic t :stipple ,stipple-pixmap)))
1153 `((((type tty)) (:foreground "blue3" :background "Grey" :weight bold)) 1154 `((((type tty)) (:foreground "blue3" :background "Grey" :weight bold))
diff --git a/lisp/emacs-lisp/authors.el b/lisp/emacs-lisp/authors.el
index 5ab42c06e8e..8eb177dd9ca 100644
--- a/lisp/emacs-lisp/authors.el
+++ b/lisp/emacs-lisp/authors.el
@@ -41,7 +41,6 @@ files.")
41 41
42(defconst authors-aliases 42(defconst authors-aliases
43 '( 43 '(
44 ("Andrew Innes" "Andrw Innes")
45 ("Barry A. Warsaw" "Barry A. Warsaw, Century Computing, Inc." 44 ("Barry A. Warsaw" "Barry A. Warsaw, Century Computing, Inc."
46 "Barry A. Warsaw, ITB" "Barry Warsaw") 45 "Barry A. Warsaw, ITB" "Barry Warsaw")
47 ("Bj,Av(Brn Torkelsson" "Bjorn Torkelsson") 46 ("Bj,Av(Brn Torkelsson" "Bjorn Torkelsson")
@@ -57,7 +56,7 @@ files.")
57 ("Edward M. Reingold" "Ed Reingold" "Edward M Reingold" 56 ("Edward M. Reingold" "Ed Reingold" "Edward M Reingold"
58 "Reingold Edward M") 57 "Reingold Edward M")
59 ("Eli Zaretskii" "eliz") 58 ("Eli Zaretskii" "eliz")
60; ("Emilio C. Lopes" "Emilio Lopes") 59 ("Emilio C. Lopes" "Emilio Lopes")
61 ("Era Eriksson" "Era@Iki.Fi") 60 ("Era Eriksson" "Era@Iki.Fi")
62 ("Eric M. Ludlam" "Eric Ludlam") 61 ("Eric M. Ludlam" "Eric Ludlam")
63 ("Eric S. Raymond" "Eric Raymond") 62 ("Eric S. Raymond" "Eric Raymond")
@@ -79,8 +78,10 @@ files.")
79 ("Jay K. Adams" "jka@ece.cmu.edu" "Jay Adams") 78 ("Jay K. Adams" "jka@ece.cmu.edu" "Jay Adams")
80 ("J,Ai(Br,At(Bme Marant" "J,bi(Br,bt(Bme Marant" "Jerome Marant") 79 ("J,Ai(Br,At(Bme Marant" "J,bi(Br,bt(Bme Marant" "Jerome Marant")
81 ("Jens-Ulrik Holger Petersen" "Jens-Ulrik Petersen") 80 ("Jens-Ulrik Holger Petersen" "Jens-Ulrik Petersen")
81 ("John W. Eaton" "John Eaton")
82 ("Jonathan I. Kamens" "Jonathan Kamens") 82 ("Jonathan I. Kamens" "Jonathan Kamens")
83 ("Joseph Arceneaux" "Joe Arceneaux") 83 ("Joseph Arceneaux" "Joe Arceneaux")
84 ("Juan Le,As(Bn Lahoz Garc,Am(Ba" "Juan-Leon Lahoz Garcia")
84 ("K. Shane Hartman" "Shane Hartman") 85 ("K. Shane Hartman" "Shane Hartman")
85 ("Kai Gro,A_(Bjohann" "Kai Grossjohann" "Kai Gro,b_(Bjohann" 86 ("Kai Gro,A_(Bjohann" "Kai Grossjohann" "Kai Gro,b_(Bjohann"
86 "Kai.Grossjohann@Cs.Uni-Dortmund.De" 87 "Kai.Grossjohann@Cs.Uni-Dortmund.De"
@@ -89,14 +90,17 @@ files.")
89 ("Kazushi Marukawa" "Kazushi") 90 ("Kazushi Marukawa" "Kazushi")
90 ("Ken Manheimer" "Kenneth Manheimer") 91 ("Ken Manheimer" "Kenneth Manheimer")
91 ("Kenichi Handa" "Ken'ichi Handa" "Kenichi HANDA") 92 ("Kenichi Handa" "Ken'ichi Handa" "Kenichi HANDA")
93 ("Kevin Greiner" "Kevin J. Greiner")
92 ("Kim F. Storm" "Kim Storm") 94 ("Kim F. Storm" "Kim Storm")
93 ("Kyle Jones" "Kyle E. Jones") 95 ("Kyle Jones" "Kyle E. Jones")
94 ("Marcus G. Daniels" "Marcus Daniels") 96 ("Marcus G. Daniels" "Marcus Daniels")
95 ("Mark D. Baushke" "Mark D Baushke") 97 ("Mark D. Baushke" "Mark D Baushke")
96 ("Martin Lorentzon" "Martin Lorentzson") 98 ("Martin Lorentzon" "Martin Lorentzson")
97 ("Matt Swift" "Matthew Swift") 99 ("Matt Swift" "Matthew Swift")
100 ("Michael R. Mauger" "Michael Mauger")
98 ("Michael D. Ernst" "Michael Ernst") 101 ("Michael D. Ernst" "Michael Ernst")
99 ("Michael I. Bushnell" "Michael I Bushnell" "Michael I. Bushnell, P/Bsg") 102 ("Michael I. Bushnell" "Michael I Bushnell" "Michael I. Bushnell, P/Bsg")
103 ("Mikio Nakajima" "Nakajima Mikio")
100 ("Paul Eggert" "eggert") 104 ("Paul Eggert" "eggert")
101 ("Paul Reilly" "(pmr@legacy.pajato.com)") 105 ("Paul Reilly" "(pmr@legacy.pajato.com)")
102 ("Pavel Jan,Bm(Bk" "Pavel Jan,Am(Bk Ml." "Pavel Jan,Am(Bk" "Pavel@Janik.Cz") 106 ("Pavel Jan,Bm(Bk" "Pavel Jan,Am(Bk Ml." "Pavel Jan,Am(Bk" "Pavel@Janik.Cz")
@@ -114,6 +118,7 @@ files.")
114 ("Stephen A. Wood" "(saw@cebaf.gov)") 118 ("Stephen A. Wood" "(saw@cebaf.gov)")
115 ("Steven L. Baur" "SL Baur" "Steven L Baur") 119 ("Steven L. Baur" "SL Baur" "Steven L Baur")
116 ("Takaaki Ota" "Tak Ota") 120 ("Takaaki Ota" "Tak Ota")
121 ("Takahashi Naoto" "Naoto Takahashi")
117 ("Teodor Zlatanov" "Ted Zlatanov") 122 ("Teodor Zlatanov" "Ted Zlatanov")
118 ("Torbj,Av(Brn Axelsson" "Torbjvrn Axelsson") 123 ("Torbj,Av(Brn Axelsson" "Torbjvrn Axelsson")
119 ("Torbj,Av(Brn Einarsson" "Torbj.*rn Einarsson") 124 ("Torbj,Av(Brn Einarsson" "Torbj.*rn Einarsson")
@@ -152,6 +157,13 @@ If REALNAME is nil, ignore that author.")
152Changes to files matching one of the regexps in this list are not 157Changes to files matching one of the regexps in this list are not
153listed.") 158listed.")
154 159
160(defconst authors-ignored-files
161 '("external-lisp"
162 "lock" "share-lib" "local-lisp"
163 "noleim-Makefile.in"
164 "NEWS" "PROBLEMS" "FAQ")
165 "List of files and directories to ignore.
166Changes to files in this list are not listed.")
155 167
156(defconst authors-fixed-entries 168(defconst authors-fixed-entries
157 '(("Richard M. Stallman" :wrote "[The original GNU emacs and numerous files]") 169 '(("Richard M. Stallman" :wrote "[The original GNU emacs and numerous files]")
@@ -184,7 +196,7 @@ listed.")
184 "mem-limits.h" "process.c" "template.h" "sysdep.c" "syssignal.h" "systty.h" "unexec.c" 196 "mem-limits.h" "process.c" "template.h" "sysdep.c" "syssignal.h" "systty.h" "unexec.c"
185 "ymakefile" "linux.h") 197 "ymakefile" "linux.h")
186 ("Kyle E. Jones" :wrote "mldrag.el") 198 ("Kyle E. Jones" :wrote "mldrag.el")
187 ("Kenry Kautz" :wrote "bib-mode.el") 199 ("Henry Kautz" :wrote "bib-mode.el")
188 ("Joseph M. Kelsey" :changed "fileio.c" "vms-pwd.h" "vmsfns.c" "dir.h" 200 ("Joseph M. Kelsey" :changed "fileio.c" "vms-pwd.h" "vmsfns.c" "dir.h"
189 "uaf.h") 201 "uaf.h")
190 ("Sam Kendall" :changed "etags.c" "etags.el") 202 ("Sam Kendall" :changed "etags.c" "etags.el")
@@ -260,7 +272,8 @@ listed.")
260 272
261(defconst authors-valid-file-names 273(defconst authors-valid-file-names
262 '("aclocal.m4" 274 '("aclocal.m4"
263 "makedist.bat") 275 "makedist.bat"
276 "make-delta")
264 "File names which are valid, but no longer exists (or cannot be 277 "File names which are valid, but no longer exists (or cannot be
265found) in the repository.") 278found) in the repository.")
266 279
@@ -274,6 +287,9 @@ found) in the repository.")
274 ("s/windowsnt.h" . "s/ms-w32.h") 287 ("s/windowsnt.h" . "s/ms-w32.h")
275 ("config.emacs" . "configure") 288 ("config.emacs" . "configure")
276 ("GETTING.GNU.SOFTWARE" . "FTP") 289 ("GETTING.GNU.SOFTWARE" . "FTP")
290 ("leim-Makefile" . "leim/Makefile")
291 ("leim-Makefile.in" . "leim/Makefile.in")
292 ("INSTALL-CVS" . "INSTALL.CVS")
277 ) 293 )
278 "Alist of files which have been renamed during their lifetime. 294 "Alist of files which have been renamed during their lifetime.
279Elements are (OLDNAME . NEWNAME).") 295Elements are (OLDNAME . NEWNAME).")
@@ -372,7 +388,8 @@ from `authors-obsolete-files-regexps'."
372ACTION is a keyword symbol describing what he did. Record file, 388ACTION is a keyword symbol describing what he did. Record file,
373author and what he did in hash table TABLE. See the description of 389author and what he did in hash table TABLE. See the description of
374`authors-scan-change-log' for the structure of the hash table." 390`authors-scan-change-log' for the structure of the hash table."
375 (unless (or (authors-obsolete-file-p file) 391 (unless (or (member file authors-ignored-files)
392 (authors-obsolete-file-p file)
376 (equal author "")) 393 (equal author ""))
377 (let* ((value (gethash author table)) 394 (let* ((value (gethash author table))
378 (entry (assoc file value)) 395 (entry (assoc file value))
diff --git a/lisp/emacs-lisp/copyright.el b/lisp/emacs-lisp/copyright.el
index a37dfac9e9a..d0ceaa96716 100644
--- a/lisp/emacs-lisp/copyright.el
+++ b/lisp/emacs-lisp/copyright.el
@@ -110,7 +110,7 @@ When this is `function', only ask when called non-interactively."
110 (concat "Add " copyright-current-year 110 (concat "Add " copyright-current-year
111 " to copyright? ")))) 111 " to copyright? "))))
112 (if replace 112 (if replace
113 (replace-match copyright-current-year t t nil 1) 113 (replace-match copyright-current-year t t nil 2)
114 (let ((size (save-excursion (skip-chars-backward "0-9")))) 114 (let ((size (save-excursion (skip-chars-backward "0-9"))))
115 (if (and (eq (% (- (string-to-number copyright-current-year) 115 (if (and (eq (% (- (string-to-number copyright-current-year)
116 (string-to-number (buffer-substring 116 (string-to-number (buffer-substring
diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el
index a96b1741139..01935c9d5e8 100644
--- a/lisp/emacs-lisp/easy-mmode.el
+++ b/lisp/emacs-lisp/easy-mmode.el
@@ -94,8 +94,11 @@ BODY contains code that will be executed each time the mode is (dis)activated.
94 These following keyword arguments are supported (other keywords 94 These following keyword arguments are supported (other keywords
95 will be passed to `defcustom' if the minor mode is global): 95 will be passed to `defcustom' if the minor mode is global):
96:group GROUP Custom group name to use in all generated `defcustom' forms. 96:group GROUP Custom group name to use in all generated `defcustom' forms.
97 Defaults to MODE without the possible trailing \"-mode\".
98 (This default may not be a valid customization group defined
99 with `defgroup'. Make sure it is.)
97:global GLOBAL If non-nil specifies that the minor mode is not meant to be 100:global GLOBAL If non-nil specifies that the minor mode is not meant to be
98 buffer-local, so don't make the variable MODE buffer-local. 101 buffer-local, so don't make the variable MODE buffer-local.
99 By default, the mode is buffer-local. 102 By default, the mode is buffer-local.
100:init-value VAL Same as the INIT-VALUE argument. 103:init-value VAL Same as the INIT-VALUE argument.
101:lighter SPEC Same as the LIGHTER argument. 104:lighter SPEC Same as the LIGHTER argument.
@@ -153,10 +156,9 @@ For example, you could write
153 (unless group 156 (unless group
154 ;; We might as well provide a best-guess default group. 157 ;; We might as well provide a best-guess default group.
155 (setq group 158 (setq group
156 `(:group (or (custom-current-group) 159 `(:group ',(intern (replace-regexp-in-string
157 ',(intern (replace-regexp-in-string 160 "-mode\\'" "" mode-name)))))
158 "-mode\\'" "" mode-name)))))) 161
159
160 `(progn 162 `(progn
161 ;; Define the variable to enable or disable the mode. 163 ;; Define the variable to enable or disable the mode.
162 ,(if (not globalp) 164 ,(if (not globalp)
@@ -220,8 +222,8 @@ With zero or negative ARG turn mode off.
220 ;; Return the new setting. 222 ;; Return the new setting.
221 ,mode) 223 ,mode)
222 224
223 ;; Autoloading an easy-mmode-define-minor-mode autoloads 225 ;; Autoloading a define-minor-mode autoloads everything
224 ;; everything up-to-here. 226 ;; up-to-here.
225 :autoload-end 227 :autoload-end
226 228
227 ;; The toggle's hook. 229 ;; The toggle's hook.
@@ -280,9 +282,8 @@ KEYS is a list of CL-style keyword arguments:
280 (unless group 282 (unless group
281 ;; We might as well provide a best-guess default group. 283 ;; We might as well provide a best-guess default group.
282 (setq group 284 (setq group
283 `(:group (or (custom-current-group) 285 `(:group ',(intern (replace-regexp-in-string
284 ',(intern (replace-regexp-in-string 286 "-mode\\'" "" (symbol-name mode))))))
285 "-mode\\'" "" (symbol-name mode)))))))
286 287
287 `(progn 288 `(progn
288 ;; The actual global minor-mode 289 ;; The actual global minor-mode
diff --git a/lisp/emacs-lisp/eldoc.el b/lisp/emacs-lisp/eldoc.el
index bc868759d92..f31dafb7b11 100644
--- a/lisp/emacs-lisp/eldoc.el
+++ b/lisp/emacs-lisp/eldoc.el
@@ -1,6 +1,7 @@
1;;; eldoc.el --- show function arglist or variable docstring in echo area 1;;; eldoc.el --- show function arglist or variable docstring in echo area
2 2
3;; Copyright (C) 1996, 97, 98, 99, 2000, 2003 Free Software Foundation, Inc. 3;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2003, 2005
4;; Free Software Foundation, Inc.
4 5
5;; Author: Noah Friedman <friedman@splode.com> 6;; Author: Noah Friedman <friedman@splode.com>
6;; Maintainer: friedman@splode.com 7;; Maintainer: friedman@splode.com
@@ -150,7 +151,7 @@ If point is over a documented variable, print that variable's docstring
150instead. 151instead.
151 152
152With prefix ARG, turn ElDoc mode on if and only if ARG is positive." 153With prefix ARG, turn ElDoc mode on if and only if ARG is positive."
153 nil eldoc-minor-mode-string nil 154 :group 'eldoc :lighter eldoc-minor-mode-string
154 (setq eldoc-last-message nil) 155 (setq eldoc-last-message nil)
155 (if eldoc-mode 156 (if eldoc-mode
156 (progn 157 (progn
diff --git a/lisp/emacs-lisp/lisp.el b/lisp/emacs-lisp/lisp.el
index d0a2fdc01da..f9442bc0084 100644
--- a/lisp/emacs-lisp/lisp.el
+++ b/lisp/emacs-lisp/lisp.el
@@ -31,18 +31,16 @@
31 31
32;; Note that this variable is used by non-lisp modes too. 32;; Note that this variable is used by non-lisp modes too.
33(defcustom defun-prompt-regexp nil 33(defcustom defun-prompt-regexp nil
34 "*If non-nil, a regexp to ignore before the character that starts a defun. 34 "*If non-nil, a regexp to ignore before a defun.
35This is only necessary if the opening paren or brace is not in column 0. 35This is only necessary if the opening paren or brace is not in column 0.
36See function `beginning-of-defun'. 36See function `beginning-of-defun'."
37
38Setting this variable automatically makes it local to the current buffer."
39 :type '(choice (const nil) 37 :type '(choice (const nil)
40 regexp) 38 regexp)
41 :group 'lisp) 39 :group 'lisp)
42(make-variable-buffer-local 'defun-prompt-regexp) 40(make-variable-buffer-local 'defun-prompt-regexp)
43 41
44(defcustom parens-require-spaces t 42(defcustom parens-require-spaces t
45 "Non-nil means `insert-parentheses' should insert whitespace as needed." 43 "If non-nil, `insert-parentheses' inserts whitespace as needed."
46 :type 'boolean 44 :type 'boolean
47 :group 'lisp) 45 :group 'lisp)
48 46
@@ -74,7 +72,7 @@ move forward across N balanced expressions."
74The place mark goes is the same place \\[forward-sexp] would 72The place mark goes is the same place \\[forward-sexp] would
75move to with the same argument. 73move to with the same argument.
76Interactively, if this command is repeated 74Interactively, if this command is repeated
77or (in Transient Mark mode) if the mark is active, 75or (in Transient Mark mode) if the mark is active,
78it marks the next ARG sexps after the ones already marked." 76it marks the next ARG sexps after the ones already marked."
79 (interactive "P\np") 77 (interactive "P\np")
80 (cond ((and allow-extend 78 (cond ((and allow-extend
@@ -233,13 +231,14 @@ recipe (see `end-of-defun'). Major modes can define this if the
233normal method is not appropriate.") 231normal method is not appropriate.")
234 232
235(defun buffer-end (arg) 233(defun buffer-end (arg)
236 "Return the \"far end\" position of the buffer, moving in direction ARG. 234 "Return the \"far end\" position of the buffer, in direction ARG.
237If ARG is positive, that's the end of the buffer. 235If ARG is positive, that's the end of the buffer.
238Otherwise, that's the beginning of the buffer." 236Otherwise, that's the beginning of the buffer."
239 (if (> arg 0) (point-max) (point-min))) 237 (if (> arg 0) (point-max) (point-min)))
240 238
241(defun end-of-defun (&optional arg) 239(defun end-of-defun (&optional arg)
242 "Move forward to next end of defun. With argument, do it that many times. 240 "Move forward to next end of defun.
241With argument, do it that many times.
243Negative argument -N means move back to Nth preceding end of defun. 242Negative argument -N means move back to Nth preceding end of defun.
244 243
245An end of a defun occurs right after the close-parenthesis that 244An end of a defun occurs right after the close-parenthesis that
@@ -299,7 +298,7 @@ is called as a function to find the defun's end."
299The defun marked is the one that contains point or follows point. 298The defun marked is the one that contains point or follows point.
300 299
301Interactively, if this command is repeated 300Interactively, if this command is repeated
302or (in Transient Mark mode) if the mark is active, 301or (in Transient Mark mode) if the mark is active,
303it marks the next defun after the ones already marked." 302it marks the next defun after the ones already marked."
304 (interactive "p") 303 (interactive "p")
305 (cond ((and allow-extend 304 (cond ((and allow-extend
@@ -424,7 +423,8 @@ character is inserted ARG times."
424 (prefix-numeric-value arg)))) 423 (prefix-numeric-value arg))))
425 424
426(defun insert-parentheses (&optional arg) 425(defun insert-parentheses (&optional arg)
427 "Enclose following ARG sexps in parentheses. Leave point after open-paren. 426 "Enclose following ARG sexps in parentheses.
427Leave point after open-paren.
428A negative ARG encloses the preceding ARG sexps instead. 428A negative ARG encloses the preceding ARG sexps instead.
429No argument is equivalent to zero: just insert `()' and leave point between. 429No argument is equivalent to zero: just insert `()' and leave point between.
430If `parens-require-spaces' is non-nil, this command also inserts a space 430If `parens-require-spaces' is non-nil, this command also inserts a space
diff --git a/lisp/emacs-lisp/re-builder.el b/lisp/emacs-lisp/re-builder.el
index d26a0ae5f38..1c8d12fef0e 100644
--- a/lisp/emacs-lisp/re-builder.el
+++ b/lisp/emacs-lisp/re-builder.el
@@ -1,6 +1,6 @@
1;;; re-builder.el --- building Regexps with visual feedback 1;;; re-builder.el --- building Regexps with visual feedback
2 2
3;; Copyright (C) 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 1999, 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Detlev Zundel <dzu@gnu.org> 5;; Author: Detlev Zundel <dzu@gnu.org>
6;; Keywords: matching, lisp, tools 6;; Keywords: matching, lisp, tools
@@ -177,7 +177,9 @@ Set it to nil if you don't want limits here."
177 :group 're-builder) 177 :group 're-builder)
178 178
179(defface reb-match-3 179(defface reb-match-3
180 '((((class color) (background light)) 180 '((((min-colors 88) (class color) (background light))
181 :background "yellow1")
182 (((class color) (background light))
181 :background "yellow") 183 :background "yellow")
182 (((class color) (background dark)) 184 (((class color) (background dark))
183 :background "sienna4") 185 :background "sienna4")
diff --git a/lisp/emulation/cua-base.el b/lisp/emulation/cua-base.el
index 7b2ba5c6fb2..8852999db2d 100644
--- a/lisp/emulation/cua-base.el
+++ b/lisp/emulation/cua-base.el
@@ -1307,6 +1307,7 @@ highlight the region using `transient-mark-mode'), and typed text replaces
1307the active selection. C-z, C-x, C-c, and C-v will undo, cut, copy, and 1307the active selection. C-z, C-x, C-c, and C-v will undo, cut, copy, and
1308paste (in addition to the normal emacs bindings)." 1308paste (in addition to the normal emacs bindings)."
1309 :global t 1309 :global t
1310 :group 'cua
1310 :set-after '(cua-enable-modeline-indications cua-use-hyper-key) 1311 :set-after '(cua-enable-modeline-indications cua-use-hyper-key)
1311 :require 'cua-base 1312 :require 'cua-base
1312 :link '(emacs-commentary-link "cua-base.el") 1313 :link '(emacs-commentary-link "cua-base.el")
diff --git a/lisp/ffap.el b/lisp/ffap.el
index c36ed7ff81f..89e04c0f2bd 100644
--- a/lisp/ffap.el
+++ b/lisp/ffap.el
@@ -217,10 +217,13 @@ Sensible values are nil, \"news\", or \"mailto\"."
217 "*A regexp matching filename wildcard characters, or nil. 217 "*A regexp matching filename wildcard characters, or nil.
218 218
219If `find-file-at-point' gets a filename matching this pattern, 219If `find-file-at-point' gets a filename matching this pattern,
220it passes it on to `find-file' with non-nil WILDCARDS argument, 220and `ffap-pass-wildcards-to-dired' is nil, it passes it on to
221which expands wildcards and visits multiple files. To visit 221`find-file' with non-nil WILDCARDS argument, which expands
222a file whose name contains wildcard characters you can suppress 222wildcards and visits multiple files. To visit a file whose name
223wildcard expansion by setting `find-file-wildcards'. 223contains wildcard characters you can suppress wildcard expansion
224by setting `find-file-wildcards'. If `find-file-at-point' gets a
225filename matching this pattern and `ffap-pass-wildcards-to-dired'
226is non-nil, it passes it on to `dired'.
224 227
225If `dired-at-point' gets a filename matching this pattern, 228If `dired-at-point' gets a filename matching this pattern,
226it passes it on to `dired'." 229it passes it on to `dired'."
@@ -230,6 +233,11 @@ it passes it on to `dired'."
230 ) 233 )
231 :group 'ffap) 234 :group 'ffap)
232 235
236(defcustom ffap-pass-wildcards-to-dired nil
237 "*If non-nil, pass filenames matching `ffap-dired-wildcards' to dired."
238 :type 'boolean
239 :group 'ffap)
240
233(defcustom ffap-newfile-prompt nil 241(defcustom ffap-newfile-prompt nil
234 ;; Suggestion from RHOGEE, 11 Jul 1994. Disabled, I think this is 242 ;; Suggestion from RHOGEE, 11 Jul 1994. Disabled, I think this is
235 ;; better handled by `find-file-not-found-hooks'. 243 ;; better handled by `find-file-not-found-hooks'.
@@ -1386,6 +1394,10 @@ See <ftp://ftp.mathcs.emory.edu/pub/mic/emacs/> for latest version."
1386 ((ffap-url-p filename) 1394 ((ffap-url-p filename)
1387 (let (current-prefix-arg) ; w3 2.3.25 bug, reported by KPC 1395 (let (current-prefix-arg) ; w3 2.3.25 bug, reported by KPC
1388 (funcall ffap-url-fetcher filename))) 1396 (funcall ffap-url-fetcher filename)))
1397 ((and ffap-pass-wildcards-to-dired
1398 ffap-dired-wildcards
1399 (string-match ffap-dired-wildcards filename))
1400 (funcall ffap-directory-finder filename))
1389 ((and ffap-dired-wildcards 1401 ((and ffap-dired-wildcards
1390 (string-match ffap-dired-wildcards filename) 1402 (string-match ffap-dired-wildcards filename)
1391 find-file-wildcards 1403 find-file-wildcards
diff --git a/lisp/filesets.el b/lisp/filesets.el
index 13ddfa5a84d..5a4dd7bda9a 100644
--- a/lisp/filesets.el
+++ b/lisp/filesets.el
@@ -250,8 +250,15 @@ key is supported."
250; (customize-set-variable var val)) 250; (customize-set-variable var val))
251; (filesets-build-menu)) 251; (filesets-build-menu))
252 252
253;; It seems this is a workaround for the XEmacs issue described in the
254;; doc-string of filesets-menu-ensure-use-cached. Under Emacs this is
255;; essentially just `set-default'.
253(defun filesets-set-default (sym val &optional init-flag) 256(defun filesets-set-default (sym val &optional init-flag)
254 "Set-default wrapper function used in conjunction with `defcustom'." 257 "Set-default wrapper function used in conjunction with `defcustom'.
258If SYM is in the list `filesets-ignore-next-set-default', delete
259it from that list, and return nil. Otherwise, set the value of
260SYM to VAL and return t. If INIT-FLAG is non-nil, set with
261`custom-initialize-set', otherwise with `set-default'."
255 (let ((ignore-flag (member sym filesets-ignore-next-set-default))) 262 (let ((ignore-flag (member sym filesets-ignore-next-set-default)))
256 (if ignore-flag 263 (if ignore-flag
257 (setq filesets-ignore-next-set-default 264 (setq filesets-ignore-next-set-default
diff --git a/lisp/font-core.el b/lisp/font-core.el
index ea1880baac7..5bf30d4d6c5 100644
--- a/lisp/font-core.el
+++ b/lisp/font-core.el
@@ -148,7 +148,7 @@ buffer local value for `font-lock-defaults', via its mode hook.
148The above is the default behavior of `font-lock-mode'; you may specify 148The above is the default behavior of `font-lock-mode'; you may specify
149your own function which is called when `font-lock-mode' is toggled via 149your own function which is called when `font-lock-mode' is toggled via
150`font-lock-function'. " 150`font-lock-function'. "
151 nil nil nil 151 :group 'font-lock
152 ;; Don't turn on Font Lock mode if we don't have a display (we're running a 152 ;; Don't turn on Font Lock mode if we don't have a display (we're running a
153 ;; batch job) or if the buffer is invisible (the name starts with a space). 153 ;; batch job) or if the buffer is invisible (the name starts with a space).
154 (when (or noninteractive (eq (aref (buffer-name) 0) ?\ )) 154 (when (or noninteractive (eq (aref (buffer-name) 0) ?\ ))
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index e030acbc6ed..59d68e6376d 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -383,14 +383,14 @@ word \"bar\" following the word \"anchor\" then MATCH-ANCHORED may be required.
383 383
384MATCH-HIGHLIGHT should be of the form: 384MATCH-HIGHLIGHT should be of the form:
385 385
386 (MATCH FACENAME OVERRIDE LAXMATCH) 386 (MATCH FACENAME [[OVERRIDE [LAXMATCH]])
387 387
388MATCH is the subexpression of MATCHER to be highlighted. FACENAME is an 388MATCH is the subexpression of MATCHER to be highlighted. FACENAME is an
389expression whose value is the face name to use. Face default attributes 389expression whose value is the face name to use. Face default attributes
390can be modified via \\[customize]. Instead of a face, FACENAME can 390can be modified via \\[customize]. Instead of a face, FACENAME can
391evaluate to a property list of the form (face VAL1 PROP2 VAL2 PROP3 VAL3 ...) 391evaluate to a property list of the form (face FACE PROP1 VAL1 PROP2 VAL2 ...)
392in which case all the listed text-properties will be set rather than 392in which case all the listed text-properties will be set rather than
393just `face'. In such a case, you will most likely want to put those 393just FACE. In such a case, you will most likely want to put those
394properties in `font-lock-extra-managed-props' or to override 394properties in `font-lock-extra-managed-props' or to override
395`font-lock-unfontify-region-function'. 395`font-lock-unfontify-region-function'.
396 396
@@ -426,7 +426,7 @@ the last, instance MATCH-ANCHORED's MATCHER is used. Therefore they can be
426used to initialise before, and cleanup after, MATCHER is used. Typically, 426used to initialise before, and cleanup after, MATCHER is used. Typically,
427PRE-MATCH-FORM is used to move to some position relative to the original 427PRE-MATCH-FORM is used to move to some position relative to the original
428MATCHER, before starting with MATCH-ANCHORED's MATCHER. POST-MATCH-FORM might 428MATCHER, before starting with MATCH-ANCHORED's MATCHER. POST-MATCH-FORM might
429be used to move, before resuming with MATCH-ANCHORED's parent's MATCHER. 429be used to move back, before resuming with MATCH-ANCHORED's parent's MATCHER.
430 430
431For example, an element of the form highlights (if not already highlighted): 431For example, an element of the form highlights (if not already highlighted):
432 432
@@ -436,7 +436,7 @@ For example, an element of the form highlights (if not already highlighted):
436 discrete occurrences of \"item\" (on the same line) in the value of `item-face'. 436 discrete occurrences of \"item\" (on the same line) in the value of `item-face'.
437 (Here PRE-MATCH-FORM and POST-MATCH-FORM are nil. Therefore \"item\" is 437 (Here PRE-MATCH-FORM and POST-MATCH-FORM are nil. Therefore \"item\" is
438 initially searched for starting from the end of the match of \"anchor\", and 438 initially searched for starting from the end of the match of \"anchor\", and
439 searching for subsequent instance of \"anchor\" resumes from where searching 439 searching for subsequent instances of \"anchor\" resumes from where searching
440 for \"item\" concluded.) 440 for \"item\" concluded.)
441 441
442The above-mentioned exception is as follows. The limit of the MATCHER search 442The above-mentioned exception is as follows. The limit of the MATCHER search
@@ -1657,7 +1657,7 @@ Sets various variables using `font-lock-defaults' (or, if nil, using
1657 '((((class grayscale) (background light)) (:foreground "LightGray" :weight bold)) 1657 '((((class grayscale) (background light)) (:foreground "LightGray" :weight bold))
1658 (((class grayscale) (background dark)) (:foreground "DimGray" :weight bold)) 1658 (((class grayscale) (background dark)) (:foreground "DimGray" :weight bold))
1659 (((class color) (min-colors 88) (background light)) (:foreground "Purple")) 1659 (((class color) (min-colors 88) (background light)) (:foreground "Purple"))
1660 (((class color) (min-colors 88) (background dark)) (:foreground "Cyan")) 1660 (((class color) (min-colors 88) (background dark)) (:foreground "Cyan1"))
1661 (((class color) (min-colors 16) (background light)) (:foreground "Purple")) 1661 (((class color) (min-colors 16) (background light)) (:foreground "Purple"))
1662 (((class color) (min-colors 16) (background dark)) (:foreground "Cyan")) 1662 (((class color) (min-colors 16) (background dark)) (:foreground "Cyan"))
1663 (((class color) (min-colors 8)) (:foreground "cyan" :weight bold)) 1663 (((class color) (min-colors 8)) (:foreground "cyan" :weight bold))
@@ -1678,7 +1678,7 @@ Sets various variables using `font-lock-defaults' (or, if nil, using
1678 :group 'font-lock-highlighting-faces) 1678 :group 'font-lock-highlighting-faces)
1679 1679
1680(defface font-lock-function-name-face 1680(defface font-lock-function-name-face
1681 '((((class color) (min-colors 88) (background light)) (:foreground "Blue")) 1681 '((((class color) (min-colors 88) (background light)) (:foreground "Blue1"))
1682 (((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue")) 1682 (((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue"))
1683 (((class color) (min-colors 16) (background light)) (:foreground "Blue")) 1683 (((class color) (min-colors 16) (background light)) (:foreground "Blue"))
1684 (((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue")) 1684 (((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue"))
@@ -1728,7 +1728,7 @@ Sets various variables using `font-lock-defaults' (or, if nil, using
1728 :group 'font-lock-highlighting-faces) 1728 :group 'font-lock-highlighting-faces)
1729 1729
1730(defface font-lock-warning-face 1730(defface font-lock-warning-face
1731 '((((class color) (min-colors 88) (background light)) (:foreground "Red" :weight bold)) 1731 '((((class color) (min-colors 88) (background light)) (:foreground "Red1" :weight bold))
1732 (((class color) (min-colors 88) (background dark)) (:foreground "Pink" :weight bold)) 1732 (((class color) (min-colors 88) (background dark)) (:foreground "Pink" :weight bold))
1733 (((class color) (min-colors 16) (background light)) (:foreground "Red" :weight bold)) 1733 (((class color) (min-colors 16) (background light)) (:foreground "Red" :weight bold))
1734 (((class color) (min-colors 16) (background dark)) (:foreground "Pink" :weight bold)) 1734 (((class color) (min-colors 16) (background dark)) (:foreground "Pink" :weight bold))
diff --git a/lisp/generic-x.el b/lisp/generic-x.el
index d39edbb7ef6..9191c39e553 100644
--- a/lisp/generic-x.el
+++ b/lisp/generic-x.el
@@ -170,7 +170,8 @@ generic-x to enable the specified modes."
170 '((nil "^\\([-A-Za-z0-9_]+\\)" 1) 170 '((nil "^\\([-A-Za-z0-9_]+\\)" 1)
171 ("*Directories*" "^\\s-*<Directory\\s-*\\([^>]+\\)>" 1) 171 ("*Directories*" "^\\s-*<Directory\\s-*\\([^>]+\\)>" 1)
172 ("*Locations*" "^\\s-*<Location\\s-*\\([^>]+\\)>" 1)))))) 172 ("*Locations*" "^\\s-*<Location\\s-*\\([^>]+\\)>" 1))))))
173 "Generic mode for Apache or HTTPD configuration files.")) 173 "Generic mode for Apache or HTTPD configuration files."
174 :group 'generic-x))
174 175
175(when (memq 'apache-log-generic-mode generic-extras-enable-list) 176(when (memq 'apache-log-generic-mode generic-extras-enable-list)
176 177
@@ -183,7 +184,8 @@ generic-x to enable the specified modes."
183 (2 font-lock-variable-name-face))) 184 (2 font-lock-variable-name-face)))
184 '("access_log\\'") 185 '("access_log\\'")
185 nil 186 nil
186 "Mode for Apache log files")) 187 "Mode for Apache log files"
188 :group 'generic-x))
187 189
188;;; Samba 190;;; Samba
189(when (memq 'samba-generic-mode generic-extras-enable-list) 191(when (memq 'samba-generic-mode generic-extras-enable-list)
@@ -197,7 +199,8 @@ generic-x to enable the specified modes."
197 (2 font-lock-type-face))) 199 (2 font-lock-type-face)))
198 '("smb\\.conf\\'") 200 '("smb\\.conf\\'")
199 '(generic-bracket-support) 201 '(generic-bracket-support)
200 "Generic mode for Samba configuration files.")) 202 "Generic mode for Samba configuration files."
203 :group 'generic-x))
201 204
202;;; Fvwm 205;;; Fvwm
203;; This is pretty basic. Also, modes for other window managers could 206;; This is pretty basic. Also, modes for other window managers could
@@ -222,7 +225,8 @@ generic-x to enable the specified modes."
222 nil 225 nil
223 '("\\.fvwmrc\\'" "\\.fvwm2rc\\'") 226 '("\\.fvwmrc\\'" "\\.fvwm2rc\\'")
224 nil 227 nil
225 "Generic mode for FVWM configuration files.")) 228 "Generic mode for FVWM configuration files."
229 :group 'generic-x))
226 230
227;;; X Resource 231;;; X Resource
228;; I'm pretty sure I've seen an actual mode to do this, but I don't 232;; I'm pretty sure I've seen an actual mode to do this, but I don't
@@ -235,7 +239,8 @@ generic-x to enable the specified modes."
235 '(("^\\([^:\n]+:\\)" 1 font-lock-variable-name-face)) 239 '(("^\\([^:\n]+:\\)" 1 font-lock-variable-name-face))
236 '("\\.Xdefaults\\'" "\\.Xresources\\'" "\\.Xenvironment\\'" "\\.ad\\'") 240 '("\\.Xdefaults\\'" "\\.Xresources\\'" "\\.Xenvironment\\'" "\\.ad\\'")
237 nil 241 nil
238 "Generic mode for X Resource configuration files.")) 242 "Generic mode for X Resource configuration files."
243 :group 'generic-x))
239 244
240;;; Hosts 245;;; Hosts
241(when (memq 'hosts-generic-mode generic-extras-enable-list) 246(when (memq 'hosts-generic-mode generic-extras-enable-list)
@@ -246,7 +251,8 @@ generic-x to enable the specified modes."
246 '(("\\([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\\)" 1 font-lock-constant-face)) 251 '(("\\([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\\)" 1 font-lock-constant-face))
247 '("[hH][oO][sS][tT][sS]\\'") 252 '("[hH][oO][sS][tT][sS]\\'")
248 nil 253 nil
249 "Generic mode for HOSTS files.")) 254 "Generic mode for HOSTS files."
255 :group 'generic-x))
250 256
251;;; Windows INF files 257;;; Windows INF files
252(when (memq 'inf-generic-mode generic-extras-enable-list) 258(when (memq 'inf-generic-mode generic-extras-enable-list)
@@ -257,7 +263,8 @@ generic-x to enable the specified modes."
257 '(("^\\(\\[.*\\]\\)" 1 font-lock-constant-face)) 263 '(("^\\(\\[.*\\]\\)" 1 font-lock-constant-face))
258 '("\\.[iI][nN][fF]\\'") 264 '("\\.[iI][nN][fF]\\'")
259 '(generic-bracket-support) 265 '(generic-bracket-support)
260 "Generic mode for MS-Windows INF files.")) 266 "Generic mode for MS-Windows INF files."
267 :group 'generic-x))
261 268
262;;; Windows INI files 269;;; Windows INI files
263;; Should define escape character as well! 270;; Should define escape character as well!
@@ -277,7 +284,8 @@ generic-x to enable the specified modes."
277 (setq imenu-generic-expression 284 (setq imenu-generic-expression
278 '((nil "^\\[\\(.*\\)\\]" 1) 285 '((nil "^\\[\\(.*\\)\\]" 1)
279 ("*Variables*" "^\\s-*\\([^=]+\\)\\s-*=" 1)))))) 286 ("*Variables*" "^\\s-*\\([^=]+\\)\\s-*=" 1))))))
280 "Generic mode for MS-Windows INI files.")) 287 "Generic mode for MS-Windows INI files."
288 :group 'generic-x))
281 289
282;;; Windows REG files 290;;; Windows REG files
283;;; Unfortunately, Windows 95 and Windows NT have different REG file syntax! 291;;; Unfortunately, Windows 95 and Windows NT have different REG file syntax!
@@ -294,7 +302,8 @@ generic-x to enable the specified modes."
294 (lambda () 302 (lambda ()
295 (setq imenu-generic-expression 303 (setq imenu-generic-expression
296 '((nil "^\\s-*\\(.*\\)\\s-*=" 1)))))) 304 '((nil "^\\s-*\\(.*\\)\\s-*=" 1))))))
297 "Generic mode for MS-Windows Registry files.")) 305 "Generic mode for MS-Windows Registry files."
306 :group 'generic-x))
298 307
299;;; DOS/Windows BAT files 308;;; DOS/Windows BAT files
300(when (memq 'bat-generic-mode generic-extras-enable-list) 309(when (memq 'bat-generic-mode generic-extras-enable-list)
@@ -368,7 +377,8 @@ generic-x to enable the specified modes."
368 "\\`[cC][oO][nN][fF][iI][gG]\\." 377 "\\`[cC][oO][nN][fF][iI][gG]\\."
369 "\\`[aA][uU][tT][oO][eE][xX][eE][cC]\\.") 378 "\\`[aA][uU][tT][oO][eE][xX][eE][cC]\\.")
370 '(generic-bat-mode-setup-function) 379 '(generic-bat-mode-setup-function)
371 "Generic mode for MS-Windows BAT files.") 380 "Generic mode for MS-Windows BAT files."
381 :group 'generic-x)
372 382
373(defvar bat-generic-mode-syntax-table nil 383(defvar bat-generic-mode-syntax-table nil
374 "Syntax table in use in bat-generic-mode buffers.") 384 "Syntax table in use in bat-generic-mode buffers.")
@@ -446,7 +456,8 @@ generic-x to enable the specified modes."
446 (lambda () 456 (lambda ()
447 (setq imenu-generic-expression 457 (setq imenu-generic-expression
448 '((nil "\\s-/\\([^/]+\\)/[i, \t\n]" 1)))))) 458 '((nil "\\s-/\\([^/]+\\)/[i, \t\n]" 1))))))
449 "Mode for Mailagent rules files.")) 459 "Mode for Mailagent rules files."
460 :group 'generic-x))
450 461
451;; Solaris/Sys V prototype files 462;; Solaris/Sys V prototype files
452(when (memq 'prototype-generic-mode generic-extras-enable-list) 463(when (memq 'prototype-generic-mode generic-extras-enable-list)
@@ -469,7 +480,8 @@ generic-x to enable the specified modes."
469 (2 font-lock-variable-name-face))) 480 (2 font-lock-variable-name-face)))
470 '("prototype\\'") 481 '("prototype\\'")
471 nil 482 nil
472 "Mode for Sys V prototype files.")) 483 "Mode for Sys V prototype files."
484 :group 'generic-x))
473 485
474;; Solaris/Sys V pkginfo files 486;; Solaris/Sys V pkginfo files
475(when (memq 'pkginfo-generic-mode generic-extras-enable-list) 487(when (memq 'pkginfo-generic-mode generic-extras-enable-list)
@@ -482,7 +494,8 @@ generic-x to enable the specified modes."
482 (2 font-lock-variable-name-face))) 494 (2 font-lock-variable-name-face)))
483 '("pkginfo\\'") 495 '("pkginfo\\'")
484 nil 496 nil
485 "Mode for Sys V pkginfo files.")) 497 "Mode for Sys V pkginfo files."
498 :group 'generic-x))
486 499
487;; Javascript mode 500;; Javascript mode
488;; Includes extra keywords from Armando Singer [asinger@MAIL.COLGATE.EDU] 501;; Includes extra keywords from Armando Singer [asinger@MAIL.COLGATE.EDU]
@@ -559,7 +572,8 @@ generic-x to enable the specified modes."
559 (setq imenu-generic-expression 572 (setq imenu-generic-expression
560 '((nil "^function\\s-+\\([A-Za-z0-9_]+\\)" 1) 573 '((nil "^function\\s-+\\([A-Za-z0-9_]+\\)" 1)
561 ("*Variables*" "^var\\s-+\\([A-Za-z0-9_]+\\)" 1)))))) 574 ("*Variables*" "^var\\s-+\\([A-Za-z0-9_]+\\)" 1))))))
562 "Mode for JavaScript files.") 575 "Mode for JavaScript files."
576 :group 'generic-x)
563 577
564;; VRML files 578;; VRML files
565(define-generic-mode vrml-generic-mode 579(define-generic-mode vrml-generic-mode
@@ -610,7 +624,8 @@ generic-x to enable the specified modes."
610 ("*Definitions*" 624 ("*Definitions*"
611 "DEF\\s-+\\([-A-Za-z0-9_]+\\)\\s-+\\([A-Za-z0-9]+\\)\\s-*{" 625 "DEF\\s-+\\([-A-Za-z0-9_]+\\)\\s-+\\([A-Za-z0-9]+\\)\\s-*{"
612 1)))))) 626 1))))))
613 "Generic Mode for VRML files.") 627 "Generic Mode for VRML files."
628 :group 'generic-x)
614 629
615;; Java Manifests 630;; Java Manifests
616(define-generic-mode java-manifest-generic-mode 631(define-generic-mode java-manifest-generic-mode
@@ -629,7 +644,8 @@ generic-x to enable the specified modes."
629 (2 font-lock-constant-face))) 644 (2 font-lock-constant-face)))
630 '("[mM][aA][nN][iI][fF][eE][sS][tT]\\.[mM][fF]\\'") 645 '("[mM][aA][nN][iI][fF][eE][sS][tT]\\.[mM][fF]\\'")
631 nil 646 nil
632 "Mode for Java Manifest files") 647 "Mode for Java Manifest files"
648 :group 'generic-x)
633 649
634;; Java properties files 650;; Java properties files
635(define-generic-mode java-properties-generic-mode 651(define-generic-mode java-properties-generic-mode
@@ -659,7 +675,8 @@ generic-x to enable the specified modes."
659 (lambda () 675 (lambda ()
660 (setq imenu-generic-expression 676 (setq imenu-generic-expression
661 '((nil "^\\([^#! \t\n\r=:]+\\)" 1)))))) 677 '((nil "^\\([^#! \t\n\r=:]+\\)" 1))))))
662 "Mode for Java properties files.") 678 "Mode for Java properties files."
679 :group 'generic-x)
663 680
664;; C shell alias definitions 681;; C shell alias definitions
665(when (memq 'alias-generic-mode generic-extras-enable-list) 682(when (memq 'alias-generic-mode generic-extras-enable-list)
@@ -677,7 +694,8 @@ generic-x to enable the specified modes."
677 (lambda () 694 (lambda ()
678 (setq imenu-generic-expression 695 (setq imenu-generic-expression
679 '((nil "^\\(alias\\|unalias\\)\\s-+\\([-a-zA-Z0-9_]+\\)" 2)))))) 696 '((nil "^\\(alias\\|unalias\\)\\s-+\\([-a-zA-Z0-9_]+\\)" 2))))))
680 "Mode for C Shell alias files.")) 697 "Mode for C Shell alias files."
698 :group 'generic-x))
681 699
682;;; Windows RC files 700;;; Windows RC files
683;; Contributed by ACorreir@pervasive-sw.com (Alfred Correira) 701;; Contributed by ACorreir@pervasive-sw.com (Alfred Correira)
@@ -769,7 +787,8 @@ generic-x to enable the specified modes."
769 (2 font-lock-variable-name-face nil t)))) 787 (2 font-lock-variable-name-face nil t))))
770 '("\\.[rR][cC]$") 788 '("\\.[rR][cC]$")
771 nil 789 nil
772 "Generic mode for MS-Windows Resource files.")) 790 "Generic mode for MS-Windows Resource files."
791 :group 'generic-x))
773 792
774;; InstallShield RUL files 793;; InstallShield RUL files
775;; Contributed by Alfred.Correira@Pervasive.Com 794;; Contributed by Alfred.Correira@Pervasive.Com
@@ -1389,7 +1408,8 @@ generic-x to enable the specified modes."
1389 font-lock-variable-name-face "[^_]" "[^_]"))) ; is this face the best choice? 1408 font-lock-variable-name-face "[^_]" "[^_]"))) ; is this face the best choice?
1390 '("\\.[rR][uU][lL]$") 1409 '("\\.[rR][uU][lL]$")
1391 '(generic-rul-mode-setup-function) 1410 '(generic-rul-mode-setup-function)
1392 "Generic mode for InstallShield RUL files.") 1411 "Generic mode for InstallShield RUL files."
1412 :group 'generic-x)
1393 1413
1394(define-skeleton rul-if 1414(define-skeleton rul-if
1395 "Insert an if statement." 1415 "Insert an if statement."
@@ -1437,7 +1457,8 @@ generic-x to enable the specified modes."
1437 (2 font-lock-variable-name-face))) 1457 (2 font-lock-variable-name-face)))
1438 '("\\.mailrc\\'") 1458 '("\\.mailrc\\'")
1439 nil 1459 nil
1440 "Mode for mailrc files.") 1460 "Mode for mailrc files."
1461 :group 'generic-x)
1441 1462
1442;; Inetd.conf 1463;; Inetd.conf
1443(when (memq 'inetd-conf-generic-mode generic-extras-enable-list) 1464(when (memq 'inetd-conf-generic-mode generic-extras-enable-list)
@@ -1457,7 +1478,8 @@ generic-x to enable the specified modes."
1457 (function 1478 (function
1458 (lambda () 1479 (lambda ()
1459 (setq imenu-generic-expression 1480 (setq imenu-generic-expression
1460 '((nil "^\\([-A-Za-z0-9_]+\\)" 1)))))))) 1481 '((nil "^\\([-A-Za-z0-9_]+\\)" 1))))))
1482 :group 'generic-x))
1461 1483
1462;; Services 1484;; Services
1463(when (memq 'etc-services-generic-mode generic-extras-enable-list) 1485(when (memq 'etc-services-generic-mode generic-extras-enable-list)
@@ -1475,7 +1497,8 @@ generic-x to enable the specified modes."
1475 (function 1497 (function
1476 (lambda () 1498 (lambda ()
1477 (setq imenu-generic-expression 1499 (setq imenu-generic-expression
1478 '((nil "^\\([-A-Za-z0-9_]+\\)" 1)))))))) 1500 '((nil "^\\([-A-Za-z0-9_]+\\)" 1))))))
1501 :group 'generic-x))
1479 1502
1480;; Password and Group files 1503;; Password and Group files
1481(when (memq 'etc-passwd-generic-mode generic-extras-enable-list) 1504(when (memq 'etc-passwd-generic-mode generic-extras-enable-list)
@@ -1517,7 +1540,8 @@ generic-x to enable the specified modes."
1517 (function 1540 (function
1518 (lambda () 1541 (lambda ()
1519 (setq imenu-generic-expression 1542 (setq imenu-generic-expression
1520 '((nil "^\\([-A-Za-z0-9_]+\\):" 1)))))))) 1543 '((nil "^\\([-A-Za-z0-9_]+\\):" 1))))))
1544 :group 'generic-x))
1521 1545
1522;; Fstab 1546;; Fstab
1523(when (memq 'etc-fstab-generic-mode generic-extras-enable-list) 1547(when (memq 'etc-fstab-generic-mode generic-extras-enable-list)
@@ -1567,7 +1591,8 @@ generic-x to enable the specified modes."
1567 (function 1591 (function
1568 (lambda () 1592 (lambda ()
1569 (setq imenu-generic-expression 1593 (setq imenu-generic-expression
1570 '((nil "^\\([/-A-Za-z0-9_]+\\)\\s-+" 1)))))))) 1594 '((nil "^\\([/-A-Za-z0-9_]+\\)\\s-+" 1))))))
1595 :group 'generic-x))
1571 1596
1572;; From Jacques Duthen <jacques.duthen@sncf.fr> 1597;; From Jacques Duthen <jacques.duthen@sncf.fr>
1573(eval-when-compile 1598(eval-when-compile
@@ -1587,20 +1612,20 @@ generic-x to enable the specified modes."
1587(defface show-tabs-tab-face 1612(defface show-tabs-tab-face
1588 '((((class grayscale) (background light)) (:background "DimGray" :weight bold)) 1613 '((((class grayscale) (background light)) (:background "DimGray" :weight bold))
1589 (((class grayscale) (background dark)) (:background "LightGray" :weight bold)) 1614 (((class grayscale) (background dark)) (:background "LightGray" :weight bold))
1590 (((class color) (background light)) (:background "red")) 1615 (((class color) (min-colors 88)) (:background "red1"))
1591 (((class color) (background dark)) (:background "red")) 1616 (((class color)) (:background "red"))
1592 (t (:weight bold))) 1617 (t (:weight bold)))
1593 "Font Lock mode face used to highlight TABs." 1618 "Font Lock mode face used to highlight TABs."
1594 :group 'show-tabs) 1619 :group 'generic-x)
1595 1620
1596(defface show-tabs-space-face 1621(defface show-tabs-space-face
1597 '((((class grayscale) (background light)) (:background "DimGray" :weight bold)) 1622 '((((class grayscale) (background light)) (:background "DimGray" :weight bold))
1598 (((class grayscale) (background dark)) (:background "LightGray" :weight bold)) 1623 (((class grayscale) (background dark)) (:background "LightGray" :weight bold))
1599 (((class color) (background light)) (:background "yellow")) 1624 (((class color) (min-colors 88)) (:background "yellow1"))
1600 (((class color) (background dark)) (:background "yellow")) 1625 (((class color)) (:background "yellow"))
1601 (t (:weight bold))) 1626 (t (:weight bold)))
1602 "Font Lock mode face used to highlight spaces." 1627 "Font Lock mode face used to highlight spaces."
1603 :group 'show-tabs) 1628 :group 'generic-x)
1604 1629
1605(define-generic-mode show-tabs-generic-mode 1630(define-generic-mode show-tabs-generic-mode
1606 nil ;; no comment char 1631 nil ;; no comment char
@@ -1609,7 +1634,8 @@ generic-x to enable the specified modes."
1609 nil ;; no auto-mode-alist 1634 nil ;; no auto-mode-alist
1610 ;; '(show-tabs-generic-mode-hook-fun) 1635 ;; '(show-tabs-generic-mode-hook-fun)
1611 nil 1636 nil
1612 "Generic mode to show tabs and trailing spaces") 1637 "Generic mode to show tabs and trailing spaces"
1638 :group 'generic-x)
1613 1639
1614;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 1640;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1615;; DNS modes 1641;; DNS modes
@@ -1630,7 +1656,8 @@ generic-x to enable the specified modes."
1630 ;; List of additional automode-alist expressions 1656 ;; List of additional automode-alist expressions
1631 '("/etc/named.boot\\'") 1657 '("/etc/named.boot\\'")
1632 ;; List of set up functions to call 1658 ;; List of set up functions to call
1633 nil) 1659 nil
1660 :group 'generic-x)
1634 1661
1635(define-generic-mode named-database-generic-mode 1662(define-generic-mode named-database-generic-mode
1636 ;; List of comment characters 1663 ;; List of comment characters
@@ -1643,7 +1670,8 @@ generic-x to enable the specified modes."
1643 ;; List of additional automode-alist expressions 1670 ;; List of additional automode-alist expressions
1644 nil 1671 nil
1645 ;; List of set up functions to call 1672 ;; List of set up functions to call
1646 nil) 1673 nil
1674 :group 'generic-x)
1647 1675
1648(defvar named-database-time-string "%Y%m%d%H" 1676(defvar named-database-time-string "%Y%m%d%H"
1649 "Timestring for named serial numbers.") 1677 "Timestring for named serial numbers.")
@@ -1663,7 +1691,8 @@ generic-x to enable the specified modes."
1663 ;; List of additional automode-alist expressions 1691 ;; List of additional automode-alist expressions
1664 '("/etc/resolv[e]?.conf\\'") 1692 '("/etc/resolv[e]?.conf\\'")
1665 ;; List of set up functions to call 1693 ;; List of set up functions to call
1666 nil) 1694 nil
1695 :group 'generic-x)
1667 1696
1668;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 1697;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1669;; Modes for spice and common electrical engineering circuit netlist formats 1698;; Modes for spice and common electrical engineering circuit netlist formats
@@ -1705,7 +1734,8 @@ generic-x to enable the specified modes."
1705 (function 1734 (function
1706 (lambda() 1735 (lambda()
1707 (setq font-lock-defaults '(generic-font-lock-keywords nil t))))) 1736 (setq font-lock-defaults '(generic-font-lock-keywords nil t)))))
1708 "Generic mode for SPICE circuit netlist files.") 1737 "Generic mode for SPICE circuit netlist files."
1738 :group 'generic-x)
1709 1739
1710(define-generic-mode ibis-generic-mode 1740(define-generic-mode ibis-generic-mode
1711 '(?|) 1741 '(?|)
@@ -1714,7 +1744,8 @@ generic-x to enable the specified modes."
1714 ("\\(\\(_\\|\\w\\)+\\)\\s-*=" 1 font-lock-variable-name-face)) 1744 ("\\(\\(_\\|\\w\\)+\\)\\s-*=" 1 font-lock-variable-name-face))
1715 '("\\.[iI][bB][sS]\\'") 1745 '("\\.[iI][bB][sS]\\'")
1716 '(generic-bracket-support) 1746 '(generic-bracket-support)
1717 "Generic mode for IBIS circuit netlist files.") 1747 "Generic mode for IBIS circuit netlist files."
1748 :group 'generic-x)
1718 1749
1719(define-generic-mode astap-generic-mode 1750(define-generic-mode astap-generic-mode
1720 nil 1751 nil
@@ -1749,7 +1780,8 @@ generic-x to enable the specified modes."
1749 (function 1780 (function
1750 (lambda() 1781 (lambda()
1751 (setq font-lock-defaults '(generic-font-lock-keywords nil t))))) 1782 (setq font-lock-defaults '(generic-font-lock-keywords nil t)))))
1752 "Generic mode for ASTAP circuit netlist files.") 1783 "Generic mode for ASTAP circuit netlist files."
1784 :group 'generic-x)
1753 1785
1754(define-generic-mode etc-modules-conf-generic-mode 1786(define-generic-mode etc-modules-conf-generic-mode
1755 ;; List of comment characters 1787 ;; List of comment characters
@@ -1791,7 +1823,8 @@ generic-x to enable the specified modes."
1791 ;; List of additional automode-alist expressions 1823 ;; List of additional automode-alist expressions
1792 '("/etc/modules.conf" "/etc/conf.modules") 1824 '("/etc/modules.conf" "/etc/conf.modules")
1793 ;; List of set up functions to call 1825 ;; List of set up functions to call
1794 nil) 1826 nil
1827 :group 'generic-x)
1795 1828
1796(provide 'generic-x) 1829(provide 'generic-x)
1797 1830
diff --git a/lisp/generic.el b/lisp/generic.el
index 78d329b358f..314a40ea80c 100644
--- a/lisp/generic.el
+++ b/lisp/generic.el
@@ -185,7 +185,8 @@ the regexp in `generic-find-file-regexp'. If the value is nil,
185;;;###autoload 185;;;###autoload
186(defmacro define-generic-mode (mode comment-list keyword-list 186(defmacro define-generic-mode (mode comment-list keyword-list
187 font-lock-list auto-mode-list 187 font-lock-list auto-mode-list
188 function-list &optional docstring) 188 function-list &optional docstring
189 &rest custom-keyword-args)
189 "Create a new generic mode MODE. 190 "Create a new generic mode MODE.
190 191
191MODE is the name of the command for the generic mode; it need not 192MODE is the name of the command for the generic mode; it need not
@@ -216,22 +217,42 @@ as soon as `define-generic-mode' is called.
216FUNCTION-LIST is a list of functions to call to do some 217FUNCTION-LIST is a list of functions to call to do some
217additional setup. 218additional setup.
218 219
220The optional CUSTOM-KEYWORD-ARGS are pairs of keywords and
221values. They will be passed to the generated `defcustom' form of
222the mode hook variable MODE-hook. Defaults to MODE without the
223possible trailing \"-mode\". (This default may not be a valid
224customization group defined with `defgroup'. Make sure it is.)
225You can specify keyword arguments without specifying a docstring.
226
219See the file generic-x.el for some examples of `define-generic-mode'." 227See the file generic-x.el for some examples of `define-generic-mode'."
220 (declare (debug (sexp def-form def-form def-form form def-form 228 (declare (debug (sexp def-form def-form def-form form def-form
221 &optional stringp)) 229 [&optional stringp] &rest [keywordp form]))
222 (indent 1)) 230 (indent 1))
223 231
224 ;; Backward compatibility. 232 ;; Backward compatibility.
225 (when (eq (car-safe mode) 'quote) 233 (when (eq (car-safe mode) 'quote)
226 (setq mode (eval mode))) 234 (setq mode (eval mode)))
227 (let* ((mode-name (symbol-name mode)) 235
236 (when (and docstring (not (stringp docstring)))
237 ;; DOCSTRING is not a string so we assume that it's actually the
238 ;; first keyword of CUSTOM-KEYWORD-ARGS.
239 (push docstring custom-keyword-args)
240 (setq docstring nil))
241
242 (let* ((name (symbol-name mode))
228 (pretty-name (capitalize (replace-regexp-in-string 243 (pretty-name (capitalize (replace-regexp-in-string
229 "-mode\\'" "" mode-name))) 244 "-mode\\'" "" name)))
230 (mode-hook (intern (concat mode-name "-hook")))) 245 (mode-hook (intern (concat name "-hook"))))
246
247 (unless (plist-get custom-keyword-args :group)
248 (setq custom-keyword-args
249 (plist-put custom-keyword-args
250 :group `',(intern (replace-regexp-in-string
251 "-mode\\'" "" name)))))
231 252
232 `(progn 253 `(progn
233 ;; Add a new entry. 254 ;; Add a new entry.
234 (add-to-list 'generic-mode-list ,mode-name) 255 (add-to-list 'generic-mode-list ,name)
235 256
236 ;; Add it to auto-mode-alist 257 ;; Add it to auto-mode-alist
237 (dolist (re ,auto-mode-list) 258 (dolist (re ,auto-mode-list)
@@ -240,9 +261,7 @@ See the file generic-x.el for some examples of `define-generic-mode'."
240 (defcustom ,mode-hook nil 261 (defcustom ,mode-hook nil
241 ,(concat "Hook run when entering " pretty-name " mode.") 262 ,(concat "Hook run when entering " pretty-name " mode.")
242 :type 'hook 263 :type 'hook
243 :group (or (custom-current-group) 264 ,@custom-keyword-args)
244 ',(intern (replace-regexp-in-string
245 "-mode\\'" "" mode-name))))
246 265
247 (defun ,mode () 266 (defun ,mode ()
248 ,(or docstring 267 ,(or docstring
@@ -256,10 +275,10 @@ See the file generic-x.el for some examples of `define-generic-mode'."
256(defun generic-mode-internal (mode comment-list keyword-list 275(defun generic-mode-internal (mode comment-list keyword-list
257 font-lock-list function-list) 276 font-lock-list function-list)
258 "Go into the generic mode MODE." 277 "Go into the generic mode MODE."
259 (let* ((mode-name (symbol-name mode)) 278 (let* ((name (symbol-name mode))
260 (pretty-name (capitalize (replace-regexp-in-string 279 (pretty-name (capitalize (replace-regexp-in-string
261 "-mode\\'" "" mode-name))) 280 "-mode\\'" "" name)))
262 (mode-hook (intern (concat mode-name "-hook")))) 281 (mode-hook (intern (concat name "-hook"))))
263 282
264 (kill-all-local-variables) 283 (kill-all-local-variables)
265 284
@@ -373,7 +392,7 @@ Some generic modes are defined in `generic-x.el'."
373 imenu-case-fold-search t)) 392 imenu-case-fold-search t))
374 393
375;; This generic mode is always defined 394;; This generic mode is always defined
376(define-generic-mode default-generic-mode (list ?#) nil nil nil nil) 395(define-generic-mode default-generic-mode (list ?#) nil nil nil nil :group 'generic)
377 396
378;; A more general solution would allow us to enter generic-mode for 397;; A more general solution would allow us to enter generic-mode for
379;; *any* comment character, but would require us to synthesize a new 398;; *any* comment character, but would require us to synthesize a new
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index fe2fcab6643..d8e1065c610 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,23 @@
12005-04-04 Reiner Steib <Reiner.Steib@gmx.de>
2
3 * message.el (message-make-date): Add defvars in order to silence
4 the byte compiler inside the defun.
5
6 * nnimap.el (nnimap-date-days-ago): Ditto.
7
8 * gnus-demon.el (parse-time-string): Added autoload.
9
10 * gnus-delay.el (parse-time-string): Added autoload.
11
12 * gnus-art.el (parse-time-string): Added autoload.
13
14 * nnultimate.el (parse-time): Require for `parse-time-string'.
15
162005-04-03 Katsumi Yamaoka <yamaoka@jpl.org>
17
18 * gnus-sum.el (gnus-summary-make-menu-bar): Avoid the
19 "Unrecognized menu descriptor" error in XEmacs.
20
12005-03-25 Katsumi Yamaoka <yamaoka@jpl.org> 212005-03-25 Katsumi Yamaoka <yamaoka@jpl.org>
2 22
3 * message.el (message-resend): Bind rfc2047-encode-encoded-words. 23 * message.el (message-resend): Bind rfc2047-encode-encoded-words.
@@ -483,7 +503,7 @@
483 503
4842004-11-04 Katsumi Yamaoka <yamaoka@jpl.org> 5042004-11-04 Katsumi Yamaoka <yamaoka@jpl.org>
485 505
486 * gnus-art. (gnus-article-edit-article): Don't associate the 506 * gnus-art.el (gnus-article-edit-article): Don't associate the
487 article buffer with a draft file. This is a temporary measure 507 article buffer with a draft file. This is a temporary measure
488 against the 2004-08-22 change to gnus-article-edit-mode. 508 against the 2004-08-22 change to gnus-article-edit-mode.
489 509
diff --git a/lisp/gnus/ChangeLog.2 b/lisp/gnus/ChangeLog.2
index 2a774e2245a..5d7a608054e 100644
--- a/lisp/gnus/ChangeLog.2
+++ b/lisp/gnus/ChangeLog.2
@@ -12604,7 +12604,7 @@
12604 12604
12605 * nnfolder.el (nnfolder-read-folder): Use group instead of 12605 * nnfolder.el (nnfolder-read-folder): Use group instead of
12606 nnfolder-current-group. 12606 nnfolder-current-group.
12607 Suggested by Lorentey Karoly <lorentey@elte.hu>. 12607 Suggested by K,Ba(Broly L,Bu(Brentey <lorentey@elte.hu>.
12608 12608
126092001-11-17 Simon Josefsson <jas@extundo.com> 126092001-11-17 Simon Josefsson <jas@extundo.com>
12610 12610
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el
index ff04bfbb56f..9d09e58fd31 100644
--- a/lisp/gnus/gnus-art.el
+++ b/lisp/gnus/gnus-art.el
@@ -46,6 +46,7 @@
46(autoload 'gnus-msg-mail "gnus-msg" nil t) 46(autoload 'gnus-msg-mail "gnus-msg" nil t)
47(autoload 'gnus-button-mailto "gnus-msg") 47(autoload 'gnus-button-mailto "gnus-msg")
48(autoload 'gnus-button-reply "gnus-msg" nil t) 48(autoload 'gnus-button-reply "gnus-msg" nil t)
49(autoload 'parse-time-string "parse-time" nil nil)
49 50
50(defgroup gnus-article nil 51(defgroup gnus-article nil
51 "Article display." 52 "Article display."
diff --git a/lisp/gnus/gnus-delay.el b/lisp/gnus/gnus-delay.el
index acf7670b0ed..e0c673d1bf8 100644
--- a/lisp/gnus/gnus-delay.el
+++ b/lisp/gnus/gnus-delay.el
@@ -37,6 +37,7 @@
37 37
38(require 'nndraft) 38(require 'nndraft)
39(require 'gnus-draft) 39(require 'gnus-draft)
40(autoload 'parse-time-string "parse-time" nil nil)
40 41
41;;;###autoload 42;;;###autoload
42(defgroup gnus-delay nil 43(defgroup gnus-delay nil
diff --git a/lisp/gnus/gnus-demon.el b/lisp/gnus/gnus-demon.el
index 8d2018a0048..dbb9d82ba5f 100644
--- a/lisp/gnus/gnus-demon.el
+++ b/lisp/gnus/gnus-demon.el
@@ -40,6 +40,8 @@
40 (require 'itimer) 40 (require 'itimer)
41 (require 'timer))) 41 (require 'timer)))
42 42
43(autoload 'parse-time-string "parse-time" nil nil)
44
43(defgroup gnus-demon nil 45(defgroup gnus-demon nil
44 "Demonic behaviour." 46 "Demonic behaviour."
45 :group 'gnus) 47 :group 'gnus)
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index ea8f7e063fe..8d6a5f951b5 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -2250,7 +2250,7 @@ gnus-summary-show-article-from-menu-as-charset-%s" cs))))
2250 ,@(if (featurep 'xemacs) '(t) 2250 ,@(if (featurep 'xemacs) '(t)
2251 '(:help "Generate and print a PostScript image"))]) 2251 '(:help "Generate and print a PostScript image"))])
2252 ("Copy, move,... (Backend)" 2252 ("Copy, move,... (Backend)"
2253 ,@(if (featurep 'xemacs) '(t) 2253 ,@(if (featurep 'xemacs) nil
2254 '(:help "Copying, moving, expiring articles...")) 2254 '(:help "Copying, moving, expiring articles..."))
2255 ["Respool article..." gnus-summary-respool-article t] 2255 ["Respool article..." gnus-summary-respool-article t]
2256 ["Move article..." gnus-summary-move-article 2256 ["Move article..." gnus-summary-move-article
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 072097b505b..4613bef6af7 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -4568,6 +4568,8 @@ Otherwise, generate and save a value for `canlock-password' first."
4568 "Make a valid data header. 4568 "Make a valid data header.
4569If NOW, use that time instead." 4569If NOW, use that time instead."
4570 (require 'parse-time) 4570 (require 'parse-time)
4571 (defvar parse-time-weekdays)
4572 (defvar parse-time-months)
4571 (let* ((now (or now (current-time))) 4573 (let* ((now (or now (current-time)))
4572 (zone (nth 8 (decode-time now))) 4574 (zone (nth 8 (decode-time now)))
4573 (sign "+")) 4575 (sign "+"))
diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el
index 06bc1d76134..d7cec7a864f 100644
--- a/lisp/gnus/nnimap.el
+++ b/lisp/gnus/nnimap.el
@@ -1388,6 +1388,8 @@ function is generally only called when Gnus is shutting down."
1388 1388
1389(defun nnimap-date-days-ago (daysago) 1389(defun nnimap-date-days-ago (daysago)
1390 "Return date, in format \"3-Aug-1998\", for DAYSAGO days ago." 1390 "Return date, in format \"3-Aug-1998\", for DAYSAGO days ago."
1391 (require 'parse-time)
1392 (defvar parse-time-months)
1391 (let* ((time (nnimap-time-substract (current-time) (days-to-time daysago))) 1393 (let* ((time (nnimap-time-substract (current-time) (days-to-time daysago)))
1392 (date (format-time-string 1394 (date (format-time-string
1393 (format "%%d-%s-%%Y" 1395 (format "%%d-%s-%%Y"
diff --git a/lisp/gnus/nnultimate.el b/lisp/gnus/nnultimate.el
index b785e49af52..42fbc13a6ff 100644
--- a/lisp/gnus/nnultimate.el
+++ b/lisp/gnus/nnultimate.el
@@ -39,6 +39,7 @@
39(require 'mm-util) 39(require 'mm-util)
40(require 'mm-url) 40(require 'mm-url)
41(require 'nnweb) 41(require 'nnweb)
42(require 'parse-time)
42(autoload 'w3-parse-buffer "w3-parse") 43(autoload 'w3-parse-buffer "w3-parse")
43 44
44(nnoo-declare nnultimate) 45(nnoo-declare nnultimate)
diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el
index 431087087f1..a924c89ba37 100644
--- a/lisp/hi-lock.el
+++ b/lisp/hi-lock.el
@@ -119,7 +119,10 @@ calls."
119 :group 'hi-lock-interactive-text-highlighting) 119 :group 'hi-lock-interactive-text-highlighting)
120 120
121(defface hi-yellow 121(defface hi-yellow
122 '((((background dark)) (:background "yellow" :foreground "black")) 122 '((((min-colors 88) (background dark))
123 (:background "yellow1" :foreground "black"))
124 (((background dark)) (:background "yellow" :foreground "black"))
125 (((min-colors 88)) (:background "yellow1"))
123 (t (:background "yellow"))) 126 (t (:background "yellow")))
124 "Default face for hi-lock mode." 127 "Default face for hi-lock mode."
125 :group 'hi-lock-faces) 128 :group 'hi-lock-faces)
@@ -131,7 +134,10 @@ calls."
131 :group 'hi-lock-faces) 134 :group 'hi-lock-faces)
132 135
133(defface hi-green 136(defface hi-green
134 '((((background dark)) (:background "green" :foreground "black")) 137 '((((min-colors 88) (background dark))
138 (:background "green1" :foreground "black"))
139 (((background dark)) (:background "green" :foreground "black"))
140 (((min-colors 88)) (:background "green1"))
135 (t (:background "green"))) 141 (t (:background "green")))
136 "Face for hi-lock mode." 142 "Face for hi-lock mode."
137 :group 'hi-lock-faces) 143 :group 'hi-lock-faces)
@@ -148,17 +154,20 @@ calls."
148 :group 'hi-lock-faces) 154 :group 'hi-lock-faces)
149 155
150(defface hi-blue-b 156(defface hi-blue-b
151 '((t (:weight bold :foreground "blue"))) 157 '((((min-colors 88)) (:weight bold :foreground "blue1"))
158 (t (:weight bold :foreground "blue")))
152 "Face for hi-lock mode." 159 "Face for hi-lock mode."
153 :group 'hi-lock-faces) 160 :group 'hi-lock-faces)
154 161
155(defface hi-green-b 162(defface hi-green-b
156 '((t (:weight bold :foreground "green"))) 163 '((((min-colors 88)) (:weight bold :foreground "green1"))
164 (t (:weight bold :foreground "green")))
157 "Face for hi-lock mode." 165 "Face for hi-lock mode."
158 :group 'hi-lock-faces) 166 :group 'hi-lock-faces)
159 167
160(defface hi-red-b 168(defface hi-red-b
161 '((t (:weight bold :foreground "red"))) 169 '((((min-colors 88)) (:weight bold :foreground "red1"))
170 (t (:weight bold :foreground "red")))
162 "Face for hi-lock mode." 171 "Face for hi-lock mode."
163 :group 'hi-lock-faces) 172 :group 'hi-lock-faces)
164 173
diff --git a/lisp/hilit-chg.el b/lisp/hilit-chg.el
index 8e84bbf68e2..a6db060ce0f 100644
--- a/lisp/hilit-chg.el
+++ b/lisp/hilit-chg.el
@@ -213,14 +213,16 @@
213;; indentation on inserts gets underlined (which can look pretty ugly!). 213;; indentation on inserts gets underlined (which can look pretty ugly!).
214 214
215(defface highlight-changes-face 215(defface highlight-changes-face
216 '((((class color)) (:foreground "red" )) 216 '((((min-colors 88) (class color)) (:foreground "red1" ))
217 (((class color)) (:foreground "red" ))
217 (t (:inverse-video t))) 218 (t (:inverse-video t)))
218 "Face used for highlighting changes." 219 "Face used for highlighting changes."
219 :group 'highlight-changes) 220 :group 'highlight-changes)
220 221
221;; This looks pretty ugly, actually. Maybe the underline should be removed. 222;; This looks pretty ugly, actually. Maybe the underline should be removed.
222(defface highlight-changes-delete-face 223(defface highlight-changes-delete-face
223 '((((class color)) (:foreground "red" :underline t)) 224 '((((min-colors 88) (class color)) (:foreground "red1" :underline t))
225 (((class color)) (:foreground "red" :underline t))
224 (t (:inverse-video t))) 226 (t (:inverse-video t)))
225 "Face used for highlighting deletions." 227 "Face used for highlighting deletions."
226 :group 'highlight-changes) 228 :group 'highlight-changes)
diff --git a/lisp/hl-line.el b/lisp/hl-line.el
index a3e786dd801..e553636674b 100644
--- a/lisp/hl-line.el
+++ b/lisp/hl-line.el
@@ -1,6 +1,6 @@
1;;; hl-line.el --- highlight the current line 1;;; hl-line.el --- highlight the current line
2 2
3;; Copyright (C) 1998, 2000, 2001, 2003 Free Software Foundation, Inc. 3;; Copyright (C) 1998, 2000, 2001, 2003, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Dave Love <fx@gnu.org> 5;; Author: Dave Love <fx@gnu.org>
6;; Maintainer: FSF 6;; Maintainer: FSF
@@ -113,7 +113,7 @@ When `hl-line-sticky-flag' is nil, Hl-Line mode highlights the
113line about point in the selected window only. In this case, it 113line about point in the selected window only. In this case, it
114uses the function `hl-line-unhighlight' on `pre-command-hook' in 114uses the function `hl-line-unhighlight' on `pre-command-hook' in
115addition to `hl-line-highlight' on `post-command-hook'." 115addition to `hl-line-highlight' on `post-command-hook'."
116 nil nil nil 116 :group 'hl-line
117 (if hl-line-mode 117 (if hl-line-mode
118 (progn 118 (progn
119 ;; In case `kill-all-local-variables' is called. 119 ;; In case `kill-all-local-variables' is called.
diff --git a/lisp/ido.el b/lisp/ido.el
index ddeecbb9b69..2e2aca3126e 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -1,6 +1,6 @@
1;;; ido.el --- interactively do things with buffers and files. 1;;; ido.el --- interactively do things with buffers and files.
2 2
3;; Copyright (C) 1996-2004 Free Software Foundation, Inc. 3;; Copyright (C) 1996-2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Kim F. Storm <storm@cua.dk> 5;; Author: Kim F. Storm <storm@cua.dk>
6;; Based on: iswitchb by Stephen Eglen <stephen@cns.ed.ac.uk> 6;; Based on: iswitchb by Stephen Eglen <stephen@cns.ed.ac.uk>
@@ -747,13 +747,19 @@ subdirs in the alternatives."
747 "*Font used by ido for highlighting only match." 747 "*Font used by ido for highlighting only match."
748 :group 'ido) 748 :group 'ido)
749 749
750(defface ido-subdir-face '((((class color)) 750(defface ido-subdir-face '((((min-colors 88) (class color))
751 (:foreground "red1"))
752 (((class color))
751 (:foreground "red")) 753 (:foreground "red"))
752 (t (:underline t))) 754 (t (:underline t)))
753 "*Font used by ido for highlighting subdirs in the alternatives." 755 "*Font used by ido for highlighting subdirs in the alternatives."
754 :group 'ido) 756 :group 'ido)
755 757
756(defface ido-indicator-face '((((class color)) 758(defface ido-indicator-face '((((min-colors 88) (class color))
759 (:foreground "yellow1"
760 :background "red1"
761 :width condensed))
762 (((class color))
757 (:foreground "yellow" 763 (:foreground "yellow"
758 :background "red" 764 :background "red"
759 :width condensed)) 765 :width condensed))
diff --git a/lisp/ielm.el b/lisp/ielm.el
index cbfbf57e36f..5ef6ff1e1eb 100644
--- a/lisp/ielm.el
+++ b/lisp/ielm.el
@@ -65,7 +65,7 @@ wish to put something like the following in your `.emacs' file:
65 65
66\(add-hook 'ielm-mode-hook 66\(add-hook 'ielm-mode-hook
67 '(lambda () 67 '(lambda ()
68 (define-key ielm-map \"\C-w\" 'comint-kill-region) 68 (define-key ielm-map \"\\C-w\" 'comint-kill-region)
69 (define-key ielm-map [C-S-backspace] 69 (define-key ielm-map [C-S-backspace]
70 'comint-kill-whole-line))) 70 'comint-kill-whole-line)))
71 71
diff --git a/lisp/iimage.el b/lisp/iimage.el
index 9b183ebb01d..32f6aef9abd 100644
--- a/lisp/iimage.el
+++ b/lisp/iimage.el
@@ -1,6 +1,6 @@
1;;; iimage.el --- Inline image minor mode. 1;;; iimage.el --- Inline image minor mode.
2 2
3;; Copyright (C) 2004 Free Software Foundation 3;; Copyright (C) 2004, 2005 Free Software Foundation
4 4
5;; Author: KOSEKI Yoshinori <kose@meadowy.org> 5;; Author: KOSEKI Yoshinori <kose@meadowy.org>
6;; Maintainer: KOSEKI Yoshinori <kose@meadowy.org> 6;; Maintainer: KOSEKI Yoshinori <kose@meadowy.org>
@@ -51,6 +51,11 @@
51(eval-when-compile 51(eval-when-compile
52 (require 'image-file)) 52 (require 'image-file))
53 53
54(defgroup iimage nil
55 "Support for inline images."
56 :version "22.1"
57 :group 'image)
58
54(defconst iimage-version "1.1") 59(defconst iimage-version "1.1")
55(defvar iimage-mode nil) 60(defvar iimage-mode nil)
56(defvar iimage-mode-map nil) 61(defvar iimage-mode-map nil)
@@ -137,7 +142,7 @@ With numeric ARG, display the images if and only if ARG is positive."
137;;;###autoload 142;;;###autoload
138(define-minor-mode iimage-mode 143(define-minor-mode iimage-mode
139 "Toggle inline image minor mode." 144 "Toggle inline image minor mode."
140 nil " iImg" iimage-mode-map 145 :group 'iimage :lighter " iImg" :keymap iimage-mode-map
141 (run-hooks 'iimage-mode-hook) 146 (run-hooks 'iimage-mode-hook)
142 (iimage-mode-buffer iimage-mode)) 147 (iimage-mode-buffer iimage-mode))
143 148
diff --git a/lisp/info.el b/lisp/info.el
index cefe603a400..81494a167bb 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -1,6 +1,6 @@
1;;; info.el --- info package for Emacs 1;;; info.el --- info package for Emacs
2 2
3;; Copyright (C) 1985,86,92,93,94,95,96,97,98,99,2000,01,02,03,2004 3;; Copyright (C) 1985,86,92,93,94,95,96,97,98,99,2000,01,02,03,04,2005
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Maintainer: FSF 6;; Maintainer: FSF
@@ -83,7 +83,11 @@ The Lisp code is executed when the node is selected.")
83 :group 'info) 83 :group 'info)
84 84
85(defface info-xref 85(defface info-xref
86 '((((class color) (background light)) :foreground "blue" :underline t) 86 '((((min-colors 88)
87 (class color) (background light)) :foreground "blue1" :underline t)
88 (((class color) (background light)) :foreground "blue" :underline t)
89 (((min-colors 88)
90 (class color) (background dark)) :foreground "cyan1" :underline t)
87 (((class color) (background dark)) :foreground "cyan" :underline t) 91 (((class color) (background dark)) :foreground "cyan" :underline t)
88 (t :underline t)) 92 (t :underline t))
89 "Face for Info cross-references." 93 "Face for Info cross-references."
@@ -3240,6 +3244,7 @@ Advanced commands:
3240 (setq line-move-ignore-invisible t) 3244 (setq line-move-ignore-invisible t)
3241 (make-local-variable 'desktop-save-buffer) 3245 (make-local-variable 'desktop-save-buffer)
3242 (setq desktop-save-buffer 'Info-desktop-buffer-misc-data) 3246 (setq desktop-save-buffer 'Info-desktop-buffer-misc-data)
3247 (add-hook 'kill-buffer-hook 'Info-kill-buffer nil t)
3243 (add-hook 'clone-buffer-hook 'Info-clone-buffer-hook nil t) 3248 (add-hook 'clone-buffer-hook 'Info-clone-buffer-hook nil t)
3244 (add-hook 'change-major-mode-hook 'font-lock-defontify nil t) 3249 (add-hook 'change-major-mode-hook 'font-lock-defontify nil t)
3245 (add-hook 'isearch-mode-hook 'Info-isearch-start nil t) 3250 (add-hook 'isearch-mode-hook 'Info-isearch-start nil t)
@@ -3254,6 +3259,13 @@ Advanced commands:
3254 (Info-set-mode-line) 3259 (Info-set-mode-line)
3255 (run-hooks 'Info-mode-hook)) 3260 (run-hooks 'Info-mode-hook))
3256 3261
3262;; When an Info buffer is killed, make sure the associated tags buffer
3263;; is killed too.
3264(defun Info-kill-buffer ()
3265 (and (eq major-mode 'Info-mode)
3266 Info-tag-table-buffer
3267 (kill-buffer Info-tag-table-buffer)))
3268
3257(defun Info-clone-buffer-hook () 3269(defun Info-clone-buffer-hook ()
3258 (when (bufferp Info-tag-table-buffer) 3270 (when (bufferp Info-tag-table-buffer)
3259 (setq Info-tag-table-buffer 3271 (setq Info-tag-table-buffer
@@ -3887,16 +3899,6 @@ Preserve text properties."
3887 3899
3888 (set-buffer-modified-p nil)))) 3900 (set-buffer-modified-p nil))))
3889 3901
3890
3891;; When an Info buffer is killed, make sure the associated tags buffer
3892;; is killed too.
3893(defun Info-kill-buffer ()
3894 (and (eq major-mode 'Info-mode)
3895 Info-tag-table-buffer
3896 (kill-buffer Info-tag-table-buffer)))
3897
3898(add-hook 'kill-buffer-hook 'Info-kill-buffer)
3899
3900;;; Speedbar support: 3902;;; Speedbar support:
3901;; These functions permit speedbar to display the "tags" in the 3903;; These functions permit speedbar to display the "tags" in the
3902;; current info node. 3904;; current info node.
diff --git a/lisp/international/encoded-kb.el b/lisp/international/encoded-kb.el
index d5452c92c43..f016f1b9038 100644
--- a/lisp/international/encoded-kb.el
+++ b/lisp/international/encoded-kb.el
@@ -346,7 +346,7 @@ automatically.
346In Encoded-kbd mode, a text sent from keyboard is accepted 346In Encoded-kbd mode, a text sent from keyboard is accepted
347as a multilingual text encoded in a coding system set by 347as a multilingual text encoded in a coding system set by
348\\[set-keyboard-coding-system]." 348\\[set-keyboard-coding-system]."
349 :global t 349 :global t :group 'keyboard :group 'mule
350 350
351 (if encoded-kbd-mode 351 (if encoded-kbd-mode
352 ;; We are turning on Encoded-kbd mode. 352 ;; We are turning on Encoded-kbd mode.
diff --git a/lisp/language/thai-util.el b/lisp/language/thai-util.el
index 75d8c9fc797..184ebfae08b 100644
--- a/lisp/language/thai-util.el
+++ b/lisp/language/thai-util.el
@@ -174,7 +174,7 @@
174 174
175(defun thai-compose-syllable (beg end &optional category-set string) 175(defun thai-compose-syllable (beg end &optional category-set string)
176 (or category-set 176 (or category-set
177 (setq category-set 177 (setq category-set
178 (char-category-set (if string (aref string beg) (char-after beg))))) 178 (char-category-set (if string (aref string beg) (char-after beg)))))
179 (if (aref category-set ?c) 179 (if (aref category-set ?c)
180 ;; Starting with a consonant. We do relative composition. 180 ;; Starting with a consonant. We do relative composition.
@@ -183,9 +183,9 @@
183 (compose-region beg end)) 183 (compose-region beg end))
184 ;; Vowel tone sequence. 184 ;; Vowel tone sequence.
185 (if string 185 (if string
186 (compose-string string beg end (list (aref string beg) '(Bc . Bc) 186 (compose-string string beg end (list (aref string beg) '(Bc . Bc)
187 (aref string (1+ beg)))) 187 (aref string (1+ beg))))
188 (compose-region beg end (list (char-after beg) '(Bc . Bc) 188 (compose-region beg end (list (char-after beg) '(Bc . Bc)
189 (char-after (1+ beg)))))) 189 (char-after (1+ beg))))))
190 (- end beg)) 190 (- end beg))
191 191
@@ -256,7 +256,7 @@ positions (integers or markers) specifying the region."
256(define-minor-mode thai-word-mode 256(define-minor-mode thai-word-mode
257 "Minor mode to make word-oriented commands aware of Thai words. 257 "Minor mode to make word-oriented commands aware of Thai words.
258The commands affected are \\[forward-word], \\[backward-word], \\[kill-word], \\[backward-kill-word], \\[transpose-words], and \\[fill-paragraph]." 258The commands affected are \\[forward-word], \\[backward-word], \\[kill-word], \\[backward-kill-word], \\[transpose-words], and \\[fill-paragraph]."
259 :global t 259 :global t :group 'mule
260 (cond (thai-word-mode 260 (cond (thai-word-mode
261 ;; This enables linebreak between Thai characters. 261 ;; This enables linebreak between Thai characters.
262 (modify-category-entry (make-char 'thai-tis620) ?|) 262 (modify-category-entry (make-char 'thai-tis620) ?|)
diff --git a/lisp/longlines.el b/lisp/longlines.el
index 8491a0b7960..ebfb7a660b0 100644
--- a/lisp/longlines.el
+++ b/lisp/longlines.el
@@ -101,7 +101,7 @@ wrapped whenever the buffer is changed. You can always call
101 101
102If `longlines-show-hard-newlines' is non-nil, hard newlines will 102If `longlines-show-hard-newlines' is non-nil, hard newlines will
103be marked by a symbol." 103be marked by a symbol."
104 nil " ll" nil 104 :group 'longlines :lighter " ll"
105 (if longlines-mode 105 (if longlines-mode
106 ;; Turn on longlines mode 106 ;; Turn on longlines mode
107 (progn 107 (progn
diff --git a/lisp/mail/supercite.el b/lisp/mail/supercite.el
index 371bb90b9cf..6b769f53801 100644
--- a/lisp/mail/supercite.el
+++ b/lisp/mail/supercite.el
@@ -1866,10 +1866,11 @@ Note on function names in this list: all functions of the form
1866 1866
1867(define-minor-mode sc-minor-mode 1867(define-minor-mode sc-minor-mode
1868 "Supercite minor mode." 1868 "Supercite minor mode."
1869 nil (" SC" (sc-auto-fill-region-p 1869 :group 'supercite
1870 (":f" (sc-fixup-whitespace-p "w")) 1870 :lighter (" SC" (sc-auto-fill-region-p
1871 (sc-fixup-whitespace-p ":w"))) 1871 (":f" (sc-fixup-whitespace-p "w"))
1872 `((,sc-mode-map-prefix . ,sc-mode-map))) 1872 (sc-fixup-whitespace-p ":w")))
1873 :keymap `((,sc-mode-map-prefix . ,sc-mode-map)))
1873 1874
1874;;;###autoload 1875;;;###autoload
1875(defun sc-cite-original () 1876(defun sc-cite-original ()
diff --git a/lisp/master.el b/lisp/master.el
index ce4144f087c..b9908e82b55 100644
--- a/lisp/master.el
+++ b/lisp/master.el
@@ -1,6 +1,6 @@
1;;; master.el --- make a buffer the master over another buffer 1;;; master.el --- make a buffer the master over another buffer
2 2
3;; Copyright (C) 1999, 2000, 2001 Alexander Schroeder 3;; Copyright (C) 1999, 2000, 2001, 2005 Alexander Schroeder
4 4
5;; Author: Alex Schroeder <alex@gnu.org> 5;; Author: Alex Schroeder <alex@gnu.org>
6;; Maintainer: Alex Schroeder <alex@gnu.org> 6;; Maintainer: Alex Schroeder <alex@gnu.org>
@@ -55,7 +55,10 @@
55 55
56;;; Code: 56;;; Code:
57 57
58(require 'easy-mmode) 58(defgroup master nil
59 "Support for master/slave relationships between buffers."
60 :version "22.1"
61 :group 'convenience)
59 62
60;; Variables that don't need initialization. 63;; Variables that don't need initialization.
61 64
@@ -83,16 +86,13 @@ following commands:
83The slave buffer is stored in the buffer-local variable `master-of'. 86The slave buffer is stored in the buffer-local variable `master-of'.
84You can set this variable using `master-set-slave'. You can show 87You can set this variable using `master-set-slave'. You can show
85yourself the value of `master-of' by calling `master-show-slave'." 88yourself the value of `master-of' by calling `master-show-slave'."
86 ;; The initial value. 89 :group 'master
87 nil 90 :keymap
88 ;; The indicator for the mode line. 91 '(("\C-c\C-n" . master-says-scroll-up)
89 nil 92 ("\C-c\C-p" . master-says-scroll-down)
90 ;; The minor mode bindings. 93 ("\C-c<" . master-says-beginning-of-buffer)
91 '(("\C-c\C-n" . master-says-scroll-up) 94 ("\C-c>" . master-says-end-of-buffer)
92 ("\C-c\C-p" . master-says-scroll-down) 95 ("\C-c\C-l" . master-says-recenter)))
93 ("\C-c<" . master-says-beginning-of-buffer)
94 ("\C-c>" . master-says-end-of-buffer)
95 ("\C-c\C-l" . master-says-recenter)))
96 96
97;; Initialize Master mode by setting a slave buffer. 97;; Initialize Master mode by setting a slave buffer.
98 98
diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog
index b6bcb3938b0..92f997d7b4a 100644
--- a/lisp/mh-e/ChangeLog
+++ b/lisp/mh-e/ChangeLog
@@ -1,3 +1,8 @@
12005-04-08 Dan Nicolaescu <dann@ics.uci.edu>
2
3 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
4 high number of colors displays.
5
12005-03-25 Werner Lemberg <wl@gnu.org> 62005-03-25 Werner Lemberg <wl@gnu.org>
2 7
3 * mh-e.el, mh-identity.el, mh-mime.el: Replace `legal' with `valid'. 8 * mh-e.el, mh-identity.el, mh-mime.el: Replace `legal' with `valid'.
@@ -85,18 +90,18 @@
852004-08-15 Bill Wohler <wohler@newt.com> 902004-08-15 Bill Wohler <wohler@newt.com>
86 91
87 * Released MH-E version 7.4.80. 92 * Released MH-E version 7.4.80.
88 93
89 * MH-E-NEWS, README: Updated for release 7.4.80. 94 * MH-E-NEWS, README: Updated for release 7.4.80.
90 95
91 * mh-e.el (Version, mh-version): Updated for release 7.4.80. 96 * mh-e.el (Version, mh-version): Updated for release 7.4.80.
92 97
932004-08-15 Bill Wohler <wohler@newt.com> 982004-08-15 Bill Wohler <wohler@newt.com>
94 99
95 * mh-funcs.el, mh-gnus.el, mh-inc.el, mh-init.el, mh-junk.el, 100 * mh-funcs.el, mh-gnus.el, mh-inc.el, mh-init.el, mh-junk.el,
96 mh-pick.el, mh-print.el, mh-xemacs.el: Added 2004 to Copyright. 101 mh-pick.el, mh-print.el, mh-xemacs.el: Added 2004 to Copyright.
97 102
98 * mh-acros.el, mh-alias.el: Checkdoc fixes. 103 * mh-acros.el, mh-alias.el: Checkdoc fixes.
99 104
1002004-08-12 Satyaki Das <satyaki@theforce.stanford.edu> 1052004-08-12 Satyaki Das <satyaki@theforce.stanford.edu>
101 106
102 * mh-acros.el (cl): Load cl in this file. That is all right, since 107 * mh-acros.el (cl): Load cl in this file. That is all right, since
@@ -130,7 +135,7 @@
130 do a good job of suppressing compilation warnings in 21.3 and CVS 135 do a good job of suppressing compilation warnings in 21.3 and CVS
131 Emacs (21.4). This replaces (require 'cl) or (require 136 Emacs (21.4). This replaces (require 'cl) or (require
132 'utils) (mh-require-cl) calls: 137 'utils) (mh-require-cl) calls:
133 138
134 (eval-when-compile (require 'mh-acros)) 139 (eval-when-compile (require 'mh-acros))
135 (mh-require-cl) 140 (mh-require-cl)
136 141
@@ -151,7 +156,7 @@
151 156
152 * mh-seq.el (mh-thread-message, mh-thread-container): Use 157 * mh-seq.el (mh-thread-message, mh-thread-container): Use
153 mh-defstruct instead of defstruct. 158 mh-defstruct instead of defstruct.
154 (mh-thread-id-container, mh-thread-get-message-container) 159 (mh-thread-id-container, mh-thread-get-message-container)
155 (mh-thread-get-message): Use the slightly different structure 160 (mh-thread-get-message): Use the slightly different structure
156 constructor function. 161 constructor function.
157 162
@@ -240,8 +245,8 @@
240 programs are run in background. Running in foreground can be slow. 245 programs are run in background. Running in foreground can be slow.
241 Defaults to nil to spare machines with little memory. 246 Defaults to nil to spare machines with little memory.
242 247
243 * mh-junk.el (mh-spamassassin-blacklist, mh-bogofilter-blacklist) 248 * mh-junk.el (mh-spamassassin-blacklist, mh-bogofilter-blacklist)
244 (mh-bogofilter-whitelist, mh-spamprobe-blacklist) 249 (mh-bogofilter-whitelist, mh-spamprobe-blacklist)
245 (mh-spamprobe-whitelist): Use new option mh-junk-background. 250 (mh-spamprobe-whitelist): Use new option mh-junk-background.
246 251
2472004-07-25 Satyaki Das <satyaki@theforce.stanford.edu> 2522004-07-25 Satyaki Das <satyaki@theforce.stanford.edu>
@@ -266,7 +271,7 @@
266 * mh-customize.el (mh-invisible-header-fields-internal): Added 271 * mh-customize.el (mh-invisible-header-fields-internal): Added
267 header fields emitted by T-Mobile picture phones (X-Mms-*, and 272 header fields emitted by T-Mobile picture phones (X-Mms-*, and
268 commented out X-Operator field saying it's like X-Mailer). 273 commented out X-Operator field saying it's like X-Mailer).
269 274
2702004-07-12 Bill Wohler <wohler@newt.com> 2752004-07-12 Bill Wohler <wohler@newt.com>
271 276
272 * mh-gnus.el: Set local variables indent-tabs-mode and 277 * mh-gnus.el: Set local variables indent-tabs-mode and
@@ -306,7 +311,7 @@
306 311
307 * mh-init.el (mh-variant-set, mh-sys-path, mh-variant-mu-mh-info): 312 * mh-init.el (mh-variant-set, mh-sys-path, mh-variant-mu-mh-info):
308 Prefer GNU mailutils over GNU Mailutils MH. 313 Prefer GNU mailutils over GNU Mailutils MH.
309 314
310 * mh-comp.el (sc-cite-original, mh-smail, mh-smail-batch) 315 * mh-comp.el (sc-cite-original, mh-smail, mh-smail-batch)
311 (mh-edit-again, mh-extract-rejected-mail, mh-forward) 316 (mh-edit-again, mh-extract-rejected-mail, mh-forward)
312 (mh-smail-other-window, mh-reply, mh-send, mh-send-other-window): 317 (mh-smail-other-window, mh-reply, mh-send, mh-send-other-window):
@@ -325,8 +330,8 @@
325 * MH-E-NEWS, README: Updated for release 7.4.4. 330 * MH-E-NEWS, README: Updated for release 7.4.4.
326 331
327 * mh-e.el (Version, mh-version): Updated for release 7.4.4. 332 * mh-e.el (Version, mh-version): Updated for release 7.4.4.
328 333
329 * This patch release contains the following patches: 334 This patch release contains the following patches:
330 335
331 * mh-xemacs.el: New file from concatenation of mh-xemacs-compat.el 336 * mh-xemacs.el: New file from concatenation of mh-xemacs-compat.el
332 and mh-xemacs-icons.el which were removed since their names 337 and mh-xemacs-icons.el which were removed since their names
@@ -390,9 +395,9 @@
390 (require 'mouse): To shush compiler. 395 (require 'mouse): To shush compiler.
391 396
392 * Use new function mh-require-cl throughout. 397 * Use new function mh-require-cl throughout.
393 398
394 * Add arch taglines (courtesy Miles Bader). 399 * Add arch taglines (courtesy Miles Bader).
395 400
396 * mh-unit.el (mh-unit-files): Replaced mh-xemacs-compat.el and 401 * mh-unit.el (mh-unit-files): Replaced mh-xemacs-compat.el and
397 mh-xemacs-icons.el with mh-xemacs.el. 402 mh-xemacs-icons.el with mh-xemacs.el.
398 403
@@ -409,10 +414,10 @@
409 414
4102004-07-07 Stephen Gildea 4152004-07-07 Stephen Gildea
411 416
412 * mh-customize.el (mh-invisible-header-fields-internal): 417 * mh-customize.el (mh-invisible-header-fields-internal):
413 Add X-Greylist, X-Source*, and X-WebTV-Signature. 418 Add X-Greylist, X-Source*, and X-WebTV-Signature.
414 Replace specific X-Spam-* headers with general pattern. 419 Replace specific X-Spam-* headers with general pattern.
415 420
4162004-06-15 Bill Wohler <wohler@newt.com> 4212004-06-15 Bill Wohler <wohler@newt.com>
417 422
418 * README: Vladimir Ivanovic reports that mh-rmail works with 423 * README: Vladimir Ivanovic reports that mh-rmail works with
@@ -438,7 +443,7 @@
438 443
4392004-04-07 Satyaki Das <satyaki@theforce.stanford.edu> 4442004-04-07 Satyaki Das <satyaki@theforce.stanford.edu>
440 445
441 * mh-mime.el (mh-insert-mime-button) 446 * mh-mime.el (mh-insert-mime-button)
442 (mh-insert-mime-security-button): Add evaporate property to 447 (mh-insert-mime-security-button): Add evaporate property to
443 overlays used in MIME part buttons. This avoids problems with 448 overlays used in MIME part buttons. This avoids problems with
444 CVS Emacs. 449 CVS Emacs.
@@ -459,10 +464,10 @@
459 464
4602003-12-26 Jeffrey C Honig <jch@honig.net> 4652003-12-26 Jeffrey C Honig <jch@honig.net>
461 466
462 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist) 467 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist)
463 (mh-spamassassin-blacklist, mh-spamassassin-blacklist) 468 (mh-spamassassin-blacklist, mh-spamassassin-blacklist)
464 (mh-spamassassin-blacklist, mh-spamassassin-whitelist) 469 (mh-spamassassin-blacklist, mh-spamassassin-whitelist)
465 (mh-spamassassin-whitelist, mh-bogofilter-blacklist) 470 (mh-spamassassin-whitelist, mh-bogofilter-blacklist)
466 (mh-spamprobe-blacklist): Add progress messages. Change "Couldn't" 471 (mh-spamprobe-blacklist): Add progress messages. Change "Couldn't"
467 to "Unable" in error messages. Run bogofilter and spamprobe in 472 to "Unable" in error messages. Run bogofilter and spamprobe in
468 the foreground to prevent a large number of processes from 473 the foreground to prevent a large number of processes from
@@ -536,9 +541,9 @@
536 * MH-E-NEWS, README: Updated for release 7.4.3. 541 * MH-E-NEWS, README: Updated for release 7.4.3.
537 542
538 * mh-e.el (Version, mh-version): Updated for release 7.4.3. 543 * mh-e.el (Version, mh-version): Updated for release 7.4.3.
539 544
540 * This patch release contains the following two patches: 545 * This patch release contains the following two patches:
541 546
542 * mh-identity.el (mh-identity-make-menu): Removed condition on 547 * mh-identity.el (mh-identity-make-menu): Removed condition on
543 mh-auto-fields-list. Use it to enable or disable menu item 548 mh-auto-fields-list. Use it to enable or disable menu item
544 instead. 549 instead.
@@ -576,10 +581,10 @@
576 581
5772003-11-14 Mark D. Baushke <mdb@gnu.org> 5822003-11-14 Mark D. Baushke <mdb@gnu.org>
578 583
579 * mh-customize.el (mh-invisible-header-fields-internal): 584 * mh-customize.el (mh-invisible-header-fields-internal):
580 Add X-AntiAbuse and X-MailScanner. 585 Add X-AntiAbuse and X-MailScanner.
581 (Patch from Stephen Gildea.) 586 (Patch from Stephen Gildea.)
582 587
5832003-11-13 Peter S Galbraith <psg@debian.org> 5882003-11-13 Peter S Galbraith <psg@debian.org>
584 589
585 * mh-identity.el (mh-identity-handler-attribution-verb): New 590 * mh-identity.el (mh-identity-handler-attribution-verb): New
@@ -689,14 +694,14 @@
689 694
6902003-11-02 Jeffrey C Honig <jch@honig.net> 6952003-11-02 Jeffrey C Honig <jch@honig.net>
691 696
692 * mh-loaddefs.el: Regenerated. 697 * mh-loaddefs.el: Regenerated.
693 698
694 * mh-funcs.el (mh-print-msg): Move to mh-print.el. 699 * mh-funcs.el (mh-print-msg): Move to mh-print.el.
695 700
696 * mh-e.el (mh-folder-mode-map): Add mh-print-msg ("l") back, it 701 * mh-e.el (mh-folder-mode-map): Add mh-print-msg ("l") back, it
697 will print a message that this usage is deprecated. 702 will print a message that this usage is deprecated.
698 703
699 * mh-print.el (require, mh-ps-print-msg, mh-ps-print-msg-file): 704 * mh-print.el (require, mh-ps-print-msg, mh-ps-print-msg-file):
700 Require mh-funcs for mh-note-printed. PS print functions were not 705 Require mh-funcs for mh-note-printed. PS print functions were not
701 setting the printed notation. Move mh-print-msg here for 706 setting the printed notation. Move mh-print-msg here for
702 consistency. Print message if mh-print-msg invoked via deprecated 707 consistency. Print message if mh-print-msg invoked via deprecated
@@ -790,7 +795,7 @@
790 (custom-load.elc): Allow for '-no-autoloads'. 795 (custom-load.elc): Allow for '-no-autoloads'.
791 (compile-xemacs): New. It allows for the '-no-autoloads' option 796 (compile-xemacs): New. It allows for the '-no-autoloads' option
792 and byte-compiles all the source files with a single instance of 797 and byte-compiles all the source files with a single instance of
793 XEmacs. 798 XEmacs.
794 799
795 * mh-e.el (mh-folder-mode): Only load the toolbar in XEmacs if 800 * mh-e.el (mh-folder-mode): Only load the toolbar in XEmacs if
796 toolbar support is available. 801 toolbar support is available.
@@ -874,7 +879,7 @@
8742003-10-09 Peter S Galbraith <psg@debian.org> 8792003-10-09 Peter S Galbraith <psg@debian.org>
875 880
876 * mh-customize.el (mail-citation-hook): Moved from mh-comp.el and 881 * mh-customize.el (mail-citation-hook): Moved from mh-comp.el and
877 made into a defcustom. 882 made into a defcustom.
878 883
8792003-10-09 Satyaki Das <satyakid@stanford.edu> 8842003-10-09 Satyaki Das <satyakid@stanford.edu>
880 885
@@ -938,10 +943,10 @@
938 parenthetical comment. 943 parenthetical comment.
939 944
940 * mh-loaddefs.el: Regenerated. 945 * mh-loaddefs.el: Regenerated.
941 946
942 * mh-customize.el (mh-mml-method-default): What method should be 947 * mh-customize.el (mh-mml-method-default): What method should be
943 used in secure directives. 948 used in secure directives.
944 949
945 * mh-mime.el (mh-secure-message): New function used to generate 950 * mh-mime.el (mh-secure-message): New function used to generate
946 the mml security tags. 951 the mml security tags.
947 (mh-mml-unsecure-message): New wrapper function around 952 (mh-mml-unsecure-message): New wrapper function around
@@ -1061,7 +1066,7 @@
1061 1066
1062 * mh-customize.el (mh-identity-handlers): New defcustom. Alist of 1067 * mh-customize.el (mh-identity-handlers): New defcustom. Alist of
1063 Handler functions for mh-identity (downcased) fields. 1068 Handler functions for mh-identity (downcased) fields.
1064 (mh-identity-list): Add support for pgg-default-user-id. 1069 (mh-identity-list): Add support for pgg-default-user-id.
1065 1070
1066 * mh-identity.el (mh-insert-identity): Modified to use 1071 * mh-identity.el (mh-insert-identity): Modified to use
1067 `mh-identity-handlers', adding hacking flexibility for those who 1072 `mh-identity-handlers', adding hacking flexibility for those who
@@ -1084,7 +1089,7 @@
1084 (mh-header-field-delete): Make more robust wrt the field having a 1089 (mh-header-field-delete): Make more robust wrt the field having a
1085 trailing colon or not. 1090 trailing colon or not.
1086 (mh-identity-make-menu): Add a "Customize Identities" menu entry. 1091 (mh-identity-make-menu): Add a "Customize Identities" menu entry.
1087 1092
1088 * mh-loaddefs.el: Regenerated. 1093 * mh-loaddefs.el: Regenerated.
1089 1094
10902003-09-21 Peter S Galbraith <psg@debian.org> 10952003-09-21 Peter S Galbraith <psg@debian.org>
@@ -1093,7 +1098,7 @@
1093 with version numbers. 1098 with version numbers.
1094 1099
1095 * mh-e.el (mh-scan-format): patch from Sergey Poznyakoff. 1100 * mh-e.el (mh-scan-format): patch from Sergey Poznyakoff.
1096 GNU mailutils now supports the %(decode) format 1101 GNU mailutils now supports the %(decode) format
1097 1102
10982003-09-20 Satyaki Das <satyakid@stanford.edu> 11032003-09-20 Satyaki Das <satyakid@stanford.edu>
1099 1104
@@ -1422,7 +1427,7 @@
1422 * mh-utils.el (mh-find-path): Run setup code only if 1427 * mh-utils.el (mh-find-path): Run setup code only if
1423 `mh-find-path-run' is nil such that this is only done once. 1428 `mh-find-path-run' is nil such that this is only done once.
1424 Also remove the `setq' for `read-mail-command' and `mail-user-agent'. 1429 Also remove the `setq' for `read-mail-command' and `mail-user-agent'.
1425 1430
14262003-08-18 Peter S Galbraith <psg@debian.org> 14312003-08-18 Peter S Galbraith <psg@debian.org>
1427 1432
1428 * mh-e.el: require 'mh-utils first 1433 * mh-e.el: require 'mh-utils first
@@ -1441,16 +1446,16 @@
1441 (mh-path-search): Deleted. Was only used by `mh-find-progs'. 1446 (mh-path-search): Deleted. Was only used by `mh-find-progs'.
1442 1447
1443 * mh-e.el: require mh-init.el. 1448 * mh-e.el: require mh-init.el.
1444 (mh-version): Use simpler `mh-variant-in-use'. 1449 (mh-version): Use simpler `mh-variant-in-use'.
1445 (mh-scan-format): Use (mh-variant-p 'nmh) instead of mh-nmh-flag. 1450 (mh-scan-format): Use (mh-variant-p 'nmh) instead of mh-nmh-flag.
1446 1451
1447 * mh-comp.el (mh-insert-x-mailer): Use simpler `mh-variant-in-use'. 1452 * mh-comp.el (mh-insert-x-mailer): Use simpler `mh-variant-in-use'.
1448 1453
1449 * mh-utils.el (mh-progs, mh-lib, mh-lib-progs) 1454 * mh-utils.el (mh-progs, mh-lib, mh-lib-progs)
1450 (mh-flists-present-flag): Moved to mh-init.el. 1455 (mh-flists-present-flag): Moved to mh-init.el.
1451 (mh-nmh-flag): Deleted. Use (mh-variant-p 'nmh) instead. 1456 (mh-nmh-flag): Deleted. Use (mh-variant-p 'nmh) instead.
1452 1457
1453 * mh-comp.el (mh-repl-group-formfile, mh-forward, mh-reply) 1458 * mh-comp.el (mh-repl-group-formfile, mh-forward, mh-reply)
1454 (mh-send-letter): Use (mh-variant-p 'nmh) instead of mh-nmh-flag. 1459 (mh-send-letter): Use (mh-variant-p 'nmh) instead of mh-nmh-flag.
1455 1460
1456 * mh-mime.el (mh-edit-mhn, mh-mime-save-parts): Use (mh-variant-p 1461 * mh-mime.el (mh-edit-mhn, mh-mime-save-parts): Use (mh-variant-p
@@ -1484,7 +1489,7 @@
1484 (mh-variant-in-use, mh-variant-p): Developers may check which 1489 (mh-variant-in-use, mh-variant-p): Developers may check which
1485 variant is currently in use with the variable `mh-variant-in-use' 1490 variant is currently in use with the variable `mh-variant-in-use'
1486 or the function `mh-variant-p'. 1491 or the function `mh-variant-p'.
1487 1492
14882003-08-15 Bill Wohler <wohler@newt.com> 14932003-08-15 Bill Wohler <wohler@newt.com>
1489 1494
1490 * mh-customize.el (mh-auto-fields-list): The manual uses Fcc 1495 * mh-customize.el (mh-auto-fields-list): The manual uses Fcc
@@ -1653,7 +1658,7 @@
1653 1658
1654 * mh-identity.el (mh-insert-identity): Refactor to use 1659 * mh-identity.el (mh-insert-identity): Refactor to use
1655 mh-insert-signature 1660 mh-insert-signature
1656 1661
1657 * mh-comp.el (mh-signature-separator-p): Removed. 1662 * mh-comp.el (mh-signature-separator-p): Removed.
1658 1663
1659 * mh-comp.el (mh-insert-signature): Merge MIME awareness from 1664 * mh-comp.el (mh-insert-signature): Merge MIME awareness from
@@ -1724,8 +1729,8 @@
1724 * mh-funcs.el (mh-undo-folder): Ditto. 1729 * mh-funcs.el (mh-undo-folder): Ditto.
1725 1730
1726 * mh-mime.el (mh-mime-save-parts): Ditto. 1731 * mh-mime.el (mh-mime-save-parts): Ditto.
1727 1732
1728 * mh-seq.el (mh-subject-to-sequence-unthreaded) 1733 * mh-seq.el (mh-subject-to-sequence-unthreaded)
1729 (mh-narrow-to-subject, mh-delete-subject): Ditto. 1734 (mh-narrow-to-subject, mh-delete-subject): Ditto.
1730 1735
1731 * mh-index.el (mh-index-sequenced-messages) 1736 * mh-index.el (mh-index-sequenced-messages)
@@ -2021,7 +2026,7 @@
2021 (mh-unit-equal): New function that throws an error if RESULT 2026 (mh-unit-equal): New function that throws an error if RESULT
2022 doesn't equal EXPECTED. 2027 doesn't equal EXPECTED.
2023 (mh-unit): Call mh-unit-x-image-url-cache-canonicalize. 2028 (mh-unit): Call mh-unit-x-image-url-cache-canonicalize.
2024 2029
20252003-07-29 Satyaki Das <satyakid@stanford.edu> 20302003-07-29 Satyaki Das <satyakid@stanford.edu>
2026 2031
2027 * mh-unit.el (mh-unit-update-call-graph): Make the function work 2032 * mh-unit.el (mh-unit-update-call-graph): Make the function work
@@ -2159,10 +2164,10 @@
2159 hoping to quote the hint `t' but checkdoc wouldn't let me. 2164 hoping to quote the hint `t' but checkdoc wouldn't let me.
2160 (mh-note-deleted, mh-note-refiled, mh-note-cur): Moved to Scan 2165 (mh-note-deleted, mh-note-refiled, mh-note-cur): Moved to Scan
2161 Line Formats section. 2166 Line Formats section.
2162 (mh-scan-good-msg-regexp, mh-scan-deleted-msg-regexp) 2167 (mh-scan-good-msg-regexp, mh-scan-deleted-msg-regexp)
2163 (mh-scan-refiled-msg-regexp, mh-scan-valid-regexp) 2168 (mh-scan-refiled-msg-regexp, mh-scan-valid-regexp)
2164 (mh-scan-cur-msg-number-regexp, mh-scan-date-regexp) 2169 (mh-scan-cur-msg-number-regexp, mh-scan-date-regexp)
2165 (mh-scan-rcpt-regexp, mh-scan-body-regexp) 2170 (mh-scan-rcpt-regexp, mh-scan-body-regexp)
2166 (mh-scan-subject-regexp, mh-scan-format-regexp): Cleaned 2171 (mh-scan-subject-regexp, mh-scan-format-regexp): Cleaned
2167 up docstrings (changed phrases to sentences). 2172 up docstrings (changed phrases to sentences).
2168 (mh-scan-cur-msg-regexp): Marked this variable as obsolete; it 2173 (mh-scan-cur-msg-regexp): Marked this variable as obsolete; it
@@ -2350,7 +2355,7 @@
2350 * mh-utils.el (mh-replace-in-string): New function name instead of 2355 * mh-utils.el (mh-replace-in-string): New function name instead of
2351 `dired-replace-in-string'. 2356 `dired-replace-in-string'.
2352 * mh-alias.el (mh-alias-gcos-name): Use it. 2357 * mh-alias.el (mh-alias-gcos-name): Use it.
2353 2358
2354 * mh-alias.el (mh-alias-apropos): New command. Show all aliases 2359 * mh-alias.el (mh-alias-apropos): New command. Show all aliases
2355 that match REGEXP either in name or content. 2360 that match REGEXP either in name or content.
2356 2361
@@ -2374,7 +2379,7 @@
23742003-06-02 Peter S Galbraith <psg@debian.org> 23792003-06-02 Peter S Galbraith <psg@debian.org>
2375 2380
2376 * mh-utils.el (dired-replace-in-string): Bind if not already 2381 * mh-utils.el (dired-replace-in-string): Bind if not already
2377 defined. Borrowed from dired.el 2382 defined. Borrowed from dired.el
2378 2383
2379 * mh-alias.el (mh-alias-gcos-name): switch to using 2384 * mh-alias.el (mh-alias-gcos-name): switch to using
2380 dired-replace-in-string. 2385 dired-replace-in-string.
@@ -2425,7 +2430,7 @@
2425 second time. I have wrapped the value around \b word delimiters. 2430 second time. I have wrapped the value around \b word delimiters.
2426 Hope there are no side effects for other code. 2431 Hope there are no side effects for other code.
2427 2432
2428 * mh-comp.el (mh-insert-auto-fields): Attempt regardless of 2433 * mh-comp.el (mh-insert-auto-fields): Attempt regardless of
2429 `mh-insert-auto-fields-done-local' flag in interactive use. 2434 `mh-insert-auto-fields-done-local' flag in interactive use.
2430 2435
2431 * mh-comp.el (mh-insert-auto-fields-done-local): Keep track of 2436 * mh-comp.el (mh-insert-auto-fields-done-local): Keep track of
@@ -3153,7 +3158,7 @@
3153 * mh-e.el (mh-folder-map): Add "F'" to the map for 3158 * mh-e.el (mh-folder-map): Add "F'" to the map for
3154 mh-index-ticked-messages. 3159 mh-index-ticked-messages.
3155 (mh-help-messages): Replace broken [t]hread with [n]ew messages. 3160 (mh-help-messages): Replace broken [t]hread with [n]ew messages.
3156 3161
3157 * mh-customize.el (mh-index-ticked-messages-folders): New user 3162 * mh-customize.el (mh-index-ticked-messages-folders): New user
3158 customizable flag that controls the folders to be searched by 3163 customizable flag that controls the folders to be searched by
3159 mh-index-ticked-messages. 3164 mh-index-ticked-messages.
@@ -3224,7 +3229,7 @@
3224 * mh-unit.el (mh-unit): As it turns out, lm-crack-copyright has 3229 * mh-unit.el (mh-unit): As it turns out, lm-crack-copyright has
3225 been updated to handle multiple-line copyrights in 21.3, so 3230 been updated to handle multiple-line copyrights in 21.3, so
3226 updated code to run lm-verify only if user has 21.3 or greater. 3231 updated code to run lm-verify only if user has 21.3 or greater.
3227 Delete buffers after use, unless user already had buffer open. 3232 Delete buffers after use, unless user already had buffer open.
3228 3233
32292003-04-27 Satyaki Das <satyakid@stanford.edu> 32342003-04-27 Satyaki Das <satyakid@stanford.edu>
3230 3235
@@ -3433,7 +3438,7 @@
3433 'mh-customize'. 3438 'mh-customize'.
3434 3439
3435 * mh-customize.el: Require 'mh-xemacs-icons' instead of 3440 * mh-customize.el: Require 'mh-xemacs-icons' instead of
3436 'mh-xemacs-toolbar'. 3441 'mh-xemacs-toolbar'.
3437 3442
34382003-04-17 Peter S Galbraith <psg@debian.org> 34432003-04-17 Peter S Galbraith <psg@debian.org>
3439 3444
@@ -10928,9 +10933,9 @@
10928 $(EMACS_HOME)/src. 10933 $(EMACS_HOME)/src.
10929 (dist): Leave release in current directory. 10934 (dist): Leave release in current directory.
10930 10935
10931 10936
10932Copyright (C) 2003, 2004 Free Software Foundation, Inc. 10937Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
10933 10938
10934Copying and distribution of this file, with or without modification, 10939Copying and distribution of this file, with or without modification,
10935are permitted in any medium without royalty provided the copyright 10940are permitted in any medium without royalty provided the copyright
10936notice and this notice are preserved. 10941notice and this notice are preserved.
diff --git a/lisp/mh-e/mh-customize.el b/lisp/mh-e/mh-customize.el
index 622c457897f..c9a4b11702d 100644
--- a/lisp/mh-e/mh-customize.el
+++ b/lisp/mh-e/mh-customize.el
@@ -1,6 +1,6 @@
1;;; mh-customize.el --- MH-E customization 1;;; mh-customize.el --- MH-E customization
2 2
3;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Bill Wohler <wohler@newt.com> 5;; Author: Bill Wohler <wohler@newt.com>
6;; Maintainer: Bill Wohler <wohler@newt.com> 6;; Maintainer: Bill Wohler <wohler@newt.com>
@@ -2345,9 +2345,9 @@ The background and foreground is used in the image."
2345 2345
2346(defface mh-speedbar-selected-folder-face 2346(defface mh-speedbar-selected-folder-face
2347 '((((class color) (background light)) 2347 '((((class color) (background light))
2348 (:foreground "red" :underline t)) 2348 (:foreground "red1" :underline t))
2349 (((class color) (background dark)) 2349 (((class color) (background dark))
2350 (:foreground "red" :underline t)) 2350 (:foreground "red1" :underline t))
2351 (t (:underline t))) 2351 (t (:underline t)))
2352 "Face used for the current folder." 2352 "Face used for the current folder."
2353 :group 'mh-speed-faces) 2353 :group 'mh-speed-faces)
diff --git a/lisp/mouse.el b/lisp/mouse.el
index a409efadeca..a527b040d8a 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -788,8 +788,7 @@ POS may be a mouse event location in any window.
788A clickable link is identified by one of the following methods: 788A clickable link is identified by one of the following methods:
789 789
790- If the character at POS has a non-nil `follow-link' text or 790- If the character at POS has a non-nil `follow-link' text or
791overlay property, use the value of that property determines what 791overlay property, the value of that property determines what to do.
792to do.
793 792
794- If there is a local key-binding or a keybinding at position POS 793- If there is a local key-binding or a keybinding at position POS
795for the `follow-link' event, the binding of that event determines 794for the `follow-link' event, the binding of that event determines
diff --git a/lisp/msb.el b/lisp/msb.el
index 2ab7fe5491d..0bcdad314a6 100644
--- a/lisp/msb.el
+++ b/lisp/msb.el
@@ -1,7 +1,7 @@
1;;; msb.el --- customizable buffer-selection with multiple menus 1;;; msb.el --- customizable buffer-selection with multiple menus
2 2
3;; Copyright (C) 1993, 94, 95, 97, 98, 99, 2000, 2001, 2003 3;; Copyright (C) 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2003,
4;; Free Software Foundation, Inc. 4;; 2005 Free Software Foundation, Inc.
5 5
6;; Author: Lars Lindberg <lars.lindberg@home.se> 6;; Author: Lars Lindberg <lars.lindberg@home.se>
7;; Maintainer: FSF 7;; Maintainer: FSF
@@ -1141,7 +1141,7 @@ variable `msb-menu-cond'."
1141With arg, turn Msb mode on if and only if arg is positive. 1141With arg, turn Msb mode on if and only if arg is positive.
1142This mode overrides the binding(s) of `mouse-buffer-menu' to provide a 1142This mode overrides the binding(s) of `mouse-buffer-menu' to provide a
1143different buffer menu using the function `msb'." 1143different buffer menu using the function `msb'."
1144 :global t 1144 :global t :group 'msb
1145 (if msb-mode 1145 (if msb-mode
1146 (progn 1146 (progn
1147 (add-hook 'menu-bar-update-hook 'msb-menu-bar-update-buffers) 1147 (add-hook 'menu-bar-update-hook 'msb-menu-bar-update-buffers)
diff --git a/lisp/fast-lock.el b/lisp/obsolete/fast-lock.el
index 4a409bd77aa..4a409bd77aa 100644
--- a/lisp/fast-lock.el
+++ b/lisp/obsolete/fast-lock.el
diff --git a/lisp/lazy-lock.el b/lisp/obsolete/lazy-lock.el
index 3547674bf36..3547674bf36 100644
--- a/lisp/lazy-lock.el
+++ b/lisp/obsolete/lazy-lock.el
diff --git a/lisp/pcvs-info.el b/lisp/pcvs-info.el
index 77e165b2462..0f66099c46f 100644
--- a/lisp/pcvs-info.el
+++ b/lisp/pcvs-info.el
@@ -1,7 +1,7 @@
1;;; pcvs-info.el --- internal representation of a fileinfo entry 1;;; pcvs-info.el --- internal representation of a fileinfo entry
2 2
3;; Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 3;; Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4;; 2000, 2004 Free Software Foundation, Inc. 4;; 2000, 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Author: Stefan Monnier <monnier@cs.yale.edu> 6;; Author: Stefan Monnier <monnier@cs.yale.edu>
7;; Keywords: pcl-cvs 7;; Keywords: pcl-cvs
@@ -105,7 +105,9 @@ to confuse some users sometimes."
105 :group 'pcl-cvs) 105 :group 'pcl-cvs)
106 106
107(defface cvs-marked-face 107(defface cvs-marked-face
108 '((((class color) (background dark)) 108 '((((min-colors 88) (class color) (background dark))
109 (:foreground "green1" :weight bold))
110 (((class color) (background dark))
109 (:foreground "green" :weight bold)) 111 (:foreground "green" :weight bold))
110 (((class color) (background light)) 112 (((class color) (background light))
111 (:foreground "green3" :weight bold)) 113 (:foreground "green3" :weight bold))
diff --git a/lisp/pcvs.el b/lisp/pcvs.el
index 7330960b93e..e7139d9cfba 100644
--- a/lisp/pcvs.el
+++ b/lisp/pcvs.el
@@ -918,23 +918,28 @@ This usually doesn't really work but is a handy initval in a prompt."
918;;;; 918;;;;
919 919
920;;;###autoload 920;;;###autoload
921(defun cvs-checkout (modules dir flags) 921(defun cvs-checkout (modules dir flags &optional root)
922 "Run a 'cvs checkout MODULES' in DIR. 922 "Run a 'cvs checkout MODULES' in DIR.
923Feed the output to a *cvs* buffer, display it in the current window, 923Feed the output to a *cvs* buffer, display it in the current window,
924and run `cvs-mode' on it. 924and run `cvs-mode' on it.
925 925
926With a prefix argument, prompt for cvs FLAGS to use." 926With a prefix argument, prompt for cvs FLAGS to use."
927 (interactive 927 (interactive
928 (list (cvs-string->strings (read-string "Module(s): " (cvs-get-module))) 928 (let ((root (cvs-get-cvsroot)))
929 (read-directory-name "CVS Checkout Directory: " 929 (if (or (null root) current-prefix-arg)
930 nil default-directory nil) 930 (setq root (read-string "CVS Root: ")))
931 (cvs-add-branch-prefix 931 (list (cvs-string->strings (read-string "Module(s): " (cvs-get-module)))
932 (cvs-flags-query 'cvs-checkout-flags "cvs checkout flags")))) 932 (read-directory-name "CVS Checkout Directory: "
933 nil default-directory nil)
934 (cvs-add-branch-prefix
935 (cvs-flags-query 'cvs-checkout-flags "cvs checkout flags"))
936 root)))
933 (when (eq flags t) 937 (when (eq flags t)
934 (setf flags (cvs-flags-query 'cvs-checkout-flags nil 'noquery))) 938 (setf flags (cvs-flags-query 'cvs-checkout-flags nil 'noquery)))
935 (cvs-cmd-do "checkout" (or dir default-directory) 939 (let ((cvs-cvsroot root))
936 (append flags modules) nil 'new 940 (cvs-cmd-do "checkout" (or dir default-directory)
937 :noexist t)) 941 (append flags modules) nil 'new
942 :noexist t)))
938 943
939(defun-cvs-mode (cvs-mode-checkout . NOARGS) (dir) 944(defun-cvs-mode (cvs-mode-checkout . NOARGS) (dir)
940 "Run cvs checkout against the current branch. 945 "Run cvs checkout against the current branch.
diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el
index c5bbfaf86dd..8ca47af91f4 100644
--- a/lisp/progmodes/cc-fonts.el
+++ b/lisp/progmodes/cc-fonts.el
@@ -1,6 +1,6 @@
1;;; cc-fonts.el --- font lock support for CC Mode 1;;; cc-fonts.el --- font lock support for CC Mode
2 2
3;; Copyright (C) 2002, 03 Free Software Foundation, Inc. 3;; Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
4 4
5;; Authors: 2003- Alan Mackenzie 5;; Authors: 2003- Alan Mackenzie
6;; 2002- Martin Stjernholm 6;; 2002- Martin Stjernholm
@@ -194,7 +194,7 @@
194(unless (c-face-name-p c-invalid-face-name) 194(unless (c-face-name-p c-invalid-face-name)
195 (defconst c-invalid-face 'c-invalid-face) ; Necessary in Emacs 19. 195 (defconst c-invalid-face 'c-invalid-face) ; Necessary in Emacs 19.
196 (defface c-invalid-face 196 (defface c-invalid-face
197 '((((class color) (background light)) (:foreground "red")) 197 '((((class color) (background light)) (:foreground "red1"))
198 (((class color)) (:foreground "hotpink")) 198 (((class color)) (:foreground "hotpink"))
199 (t (:inverse-video t))) 199 (t (:inverse-video t)))
200 "Face used to highlight invalid syntax." 200 "Face used to highlight invalid syntax."
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index bafc901d3d1..6df76e21472 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -1,7 +1,7 @@
1;;; compile.el --- run compiler as inferior of Emacs, parse error messages 1;;; compile.el --- run compiler as inferior of Emacs, parse error messages
2 2
3;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 3;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4;; 2001, 2003, 2004 Free Software Foundation, Inc. 4;; 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Authors: Roland McGrath <roland@gnu.org>, 6;; Authors: Roland McGrath <roland@gnu.org>,
7;; Daniel Pfeiffer <occitan@esperanto.org> 7;; Daniel Pfeiffer <occitan@esperanto.org>
@@ -464,6 +464,8 @@ starting the compilation process.")
464(defface compilation-info-face 464(defface compilation-info-face
465 '((((class color) (min-colors 16) (background light)) 465 '((((class color) (min-colors 16) (background light))
466 (:foreground "Green3" :weight bold)) 466 (:foreground "Green3" :weight bold))
467 (((class color) (min-colors 88) (background dark))
468 (:foreground "Green1" :weight bold))
467 (((class color) (min-colors 16) (background dark)) 469 (((class color) (min-colors 16) (background dark))
468 (:foreground "Green" :weight bold)) 470 (:foreground "Green" :weight bold))
469 (((class color)) (:foreground "green" :weight bold)) 471 (((class color)) (:foreground "green" :weight bold))
@@ -1233,6 +1235,10 @@ Optional argument MINOR indicates this is called from
1233 (make-local-variable 'compilation-messages-start) 1235 (make-local-variable 'compilation-messages-start)
1234 (make-local-variable 'compilation-error-screen-columns) 1236 (make-local-variable 'compilation-error-screen-columns)
1235 (make-local-variable 'overlay-arrow-position) 1237 (make-local-variable 'overlay-arrow-position)
1238 (set (make-local-variable 'overlay-arrow-string) "=>")
1239 (setq next-error-overlay-arrow-position nil)
1240 (add-hook 'kill-buffer-hook
1241 (lambda () (setq next-error-overlay-arrow-position nil)) nil t)
1236 ;; Note that compilation-next-error-function is for interfacing 1242 ;; Note that compilation-next-error-function is for interfacing
1237 ;; with the next-error function in simple.el, and it's only 1243 ;; with the next-error function in simple.el, and it's only
1238 ;; coincidentally named similarly to compilation-next-error. 1244 ;; coincidentally named similarly to compilation-next-error.
@@ -1641,8 +1647,9 @@ and overlay is highlighted between MK and END-MK."
1641 (numberp next-error-highlight))) 1647 (numberp next-error-highlight)))
1642 (delete-overlay compilation-highlight-overlay)))))) 1648 (delete-overlay compilation-highlight-overlay))))))
1643 (when (and (eq next-error-highlight 'fringe-arrow)) 1649 (when (and (eq next-error-highlight 'fringe-arrow))
1644 (set (make-local-variable 'overlay-arrow-position) 1650 (setq next-error-overlay-arrow-position
1645 (copy-marker (line-beginning-position)))))) 1651 (copy-marker (line-beginning-position))))))
1652
1646 1653
1647(defun compilation-find-file (marker filename dir &rest formats) 1654(defun compilation-find-file (marker filename dir &rest formats)
1648 "Find a buffer for file FILENAME. 1655 "Find a buffer for file FILENAME.
diff --git a/lisp/progmodes/cwarn.el b/lisp/progmodes/cwarn.el
index b16381cd2c7..9dfd4dd9e26 100644
--- a/lisp/progmodes/cwarn.el
+++ b/lisp/progmodes/cwarn.el
@@ -1,6 +1,6 @@
1;;; cwarn.el --- highlight suspicious C and C++ constructions 1;;; cwarn.el --- highlight suspicious C and C++ constructions
2 2
3;; Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. 3;; Copyright (C) 1999, 2000, 2001, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Anders Lindgren <andersl@andersl.com> 5;; Author: Anders Lindgren <andersl@andersl.com>
6;; Keywords: c, languages, faces 6;; Keywords: c, languages, faces
@@ -193,7 +193,7 @@ be included in the variable `cwarn-configuration'. By default C and
193C++ modes are included. 193C++ modes are included.
194 194
195With ARG, turn CWarn mode on if and only if arg is positive." 195With ARG, turn CWarn mode on if and only if arg is positive."
196 nil cwarn-mode-text nil 196 :group 'cwarn :lighter cwarn-mode-text
197 (cwarn-font-lock-keywords cwarn-mode) 197 (cwarn-font-lock-keywords cwarn-mode)
198 (if font-lock-mode (font-lock-fontify-buffer))) 198 (if font-lock-mode (font-lock-fontify-buffer)))
199 199
diff --git a/lisp/progmodes/ebrowse.el b/lisp/progmodes/ebrowse.el
index bf11ea28514..ac8ab28d92a 100644
--- a/lisp/progmodes/ebrowse.el
+++ b/lisp/progmodes/ebrowse.el
@@ -1,6 +1,6 @@
1;;; ebrowse.el --- Emacs C++ class browser & tags facility 1;;; ebrowse.el --- Emacs C++ class browser & tags facility
2 2
3;; Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002 3;; Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002, 2005
4;; Free Software Foundation Inc. 4;; Free Software Foundation Inc.
5 5
6;; Author: Gerd Moellmann <gerd@gnu.org> 6;; Author: Gerd Moellmann <gerd@gnu.org>
@@ -158,13 +158,15 @@ This space is used to display markers."
158 158
159 159
160(defface ebrowse-tree-mark-face 160(defface ebrowse-tree-mark-face
161 '((t (:foreground "red"))) 161 '((((min-colors 88)) (:foreground "red1"))
162 (t (:foreground "red")))
162 "*The face used for the mark character in the tree." 163 "*The face used for the mark character in the tree."
163 :group 'ebrowse-faces) 164 :group 'ebrowse-faces)
164 165
165 166
166(defface ebrowse-root-class-face 167(defface ebrowse-root-class-face
167 '((t (:weight bold :foreground "blue"))) 168 '((((min-colors 88)) (:weight bold :foreground "blue1"))
169 (t (:weight bold :foreground "blue")))
168 "*The face used for root classes in the tree." 170 "*The face used for root classes in the tree."
169 :group 'ebrowse-faces) 171 :group 'ebrowse-faces)
170 172
@@ -182,7 +184,8 @@ This space is used to display markers."
182 184
183 185
184(defface ebrowse-member-attribute-face 186(defface ebrowse-member-attribute-face
185 '((t (:foreground "red"))) 187 '((((min-colors 88)) (:foreground "red1"))
188 (t (:foreground "red")))
186 "*Face used to display member attributes." 189 "*Face used to display member attributes."
187 :group 'ebrowse-faces) 190 :group 'ebrowse-faces)
188 191
@@ -194,7 +197,8 @@ This space is used to display markers."
194 197
195 198
196(defface ebrowse-progress-face 199(defface ebrowse-progress-face
197 '((t (:background "blue"))) 200 '((((min-colors 88)) (:background "blue1"))
201 (t (:background "blue")))
198 "*Face for progress indicator." 202 "*Face for progress indicator."
199 :group 'ebrowse-faces) 203 :group 'ebrowse-faces)
200 204
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index 70150111a86..7067ddca21c 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -964,7 +964,7 @@ Convert it to flymake internal format."
964 (if (consp file) (setq file (car file))) 964 (if (consp file) (setq file (car file)))
965 (if (consp line) (setq line (car line))) 965 (if (consp line) (setq line (car line)))
966 (if (consp col) (setq col (car col))) 966 (if (consp col) (setq col (car col)))
967 967
968 (when (not (functionp line)) 968 (when (not (functionp line))
969 (setq converted-list (cons (list regexp file line col) converted-list))))) 969 (setq converted-list (cons (list regexp file line col) converted-list)))))
970 converted-list)) 970 converted-list))
@@ -1508,7 +1508,7 @@ Return first 'INCLUDE-DIRS/REL-FILE-NAME' that exists, or just REL-FILE-NAME if
1508 "Minor mode to do on-the-fly syntax checking. 1508 "Minor mode to do on-the-fly syntax checking.
1509When called interactively, toggles the minor mode. 1509When called interactively, toggles the minor mode.
1510With arg, turn Flymake mode on if and only if arg is positive." 1510With arg, turn Flymake mode on if and only if arg is positive."
1511 :lighter flymake-mode-line 1511 :group 'flymake :lighter flymake-mode-line
1512 (if flymake-mode 1512 (if flymake-mode
1513 (if (flymake-can-syntax-check-file (buffer-file-name)) 1513 (if (flymake-can-syntax-check-file (buffer-file-name))
1514 (flymake-mode-on) 1514 (flymake-mode-on)
diff --git a/lisp/progmodes/glasses.el b/lisp/progmodes/glasses.el
index dea40b8db19..7aff14ec608 100644
--- a/lisp/progmodes/glasses.el
+++ b/lisp/progmodes/glasses.el
@@ -1,6 +1,6 @@
1;;; glasses.el --- make cantReadThis readable 1;;; glasses.el --- make cantReadThis readable
2 2
3;; Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. 3;; Copyright (C) 1999, 2000, 2001, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Milan Zamazal <pdm@zamazal.org> 5;; Author: Milan Zamazal <pdm@zamazal.org>
6;; Maintainer: Milan Zamazal <pdm@zamazal.org> 6;; Maintainer: Milan Zamazal <pdm@zamazal.org>
@@ -251,7 +251,7 @@ recognized according to the current value of the variable `glasses-separator'."
251 "Minor mode for making identifiers likeThis readable. 251 "Minor mode for making identifiers likeThis readable.
252When this mode is active, it tries to add virtual separators (like underscores) 252When this mode is active, it tries to add virtual separators (like underscores)
253at places they belong to." 253at places they belong to."
254 nil " o^o" nil 254 :group 'glasses :lighter " o^o"
255 (save-excursion 255 (save-excursion
256 (save-restriction 256 (save-restriction
257 (widen) 257 (widen)
diff --git a/lisp/progmodes/hideif.el b/lisp/progmodes/hideif.el
index da6b6f772b6..23031c5bcda 100644
--- a/lisp/progmodes/hideif.el
+++ b/lisp/progmodes/hideif.el
@@ -1,6 +1,6 @@
1;;; hideif.el --- hides selected code within ifdef 1;;; hideif.el --- hides selected code within ifdef
2 2
3;; Copyright (C) 1988,1994,2001, 2002 Free Software Foundation, Inc. 3;; Copyright (C) 1988, 1994, 2001, 2002, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Daniel LaLiberte <liberte@holonexus.org> 5;; Author: Daniel LaLiberte <liberte@holonexus.org>
6;; Maintainer: FSF 6;; Maintainer: FSF
@@ -197,7 +197,7 @@ how the hiding is done:
197 After `show-ifdefs', read-only status is restored to previous value. 197 After `show-ifdefs', read-only status is restored to previous value.
198 198
199\\{hide-ifdef-mode-map}" 199\\{hide-ifdef-mode-map}"
200 nil " Ifdef" nil 200 :group 'hide-ifdef :lighter " Ifdef"
201 (if hide-ifdef-mode 201 (if hide-ifdef-mode
202 (progn 202 (progn
203 ;; inherit global values 203 ;; inherit global values
diff --git a/lisp/progmodes/idlw-help.el b/lisp/progmodes/idlw-help.el
index 28f61b6cbcc..e3da5508342 100644
--- a/lisp/progmodes/idlw-help.el
+++ b/lisp/progmodes/idlw-help.el
@@ -1,7 +1,7 @@
1;;; idlw-help.el --- HTML Help code for IDLWAVE 1;;; idlw-help.el --- HTML Help code for IDLWAVE
2;; Copyright (c) 2000 Carsten Dominik 2;; Copyright (c) 2000 Carsten Dominik
3;; Copyright (c) 2001, 2002 J.D. Smith 3;; Copyright (c) 2001, 2002 J.D. Smith
4;; Copyright (c) 2003,2004 Free Software Foundation 4;; Copyright (c) 2003,2004,2005 Free Software Foundation
5;; 5;;
6;; Authors: J.D. Smith <jdsmith@as.arizona.edu> 6;; Authors: J.D. Smith <jdsmith@as.arizona.edu>
7;; Carsten Dominik <dominik@astro.uva.nl> 7;; Carsten Dominik <dominik@astro.uva.nl>
@@ -183,7 +183,8 @@ support."
183 :type 'string) 183 :type 'string)
184 184
185(defface idlwave-help-link-face 185(defface idlwave-help-link-face
186 '((((class color)) (:foreground "Blue")) 186 '((((min-colors 88) (class color)) (:foreground "Blue1"))
187 (((class color)) (:foreground "Blue"))
187 (t (:weight bold))) 188 (t (:weight bold)))
188 "Face for highlighting links into IDLWAVE online help." 189 "Face for highlighting links into IDLWAVE online help."
189 :group 'idlwave-online-help) 190 :group 'idlwave-online-help)
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index 6e8062deb34..2fc917c89c6 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -574,7 +574,7 @@ documents - you must insert literal tabs by hand.")
574;; but it *did* have an asterisk in the docstring! 574;; but it *did* have an asterisk in the docstring!
575(defcustom sh-builtins 575(defcustom sh-builtins
576 '((bash sh-append posix 576 '((bash sh-append posix
577 "." "alias" "bg" "bind" "builtin" "compgen" "complete" 577 "." "alias" "bg" "bind" "builtin" "caller" "compgen" "complete"
578 "declare" "dirs" "disown" "enable" "fc" "fg" "help" "history" 578 "declare" "dirs" "disown" "enable" "fc" "fg" "help" "history"
579 "jobs" "kill" "let" "local" "popd" "printf" "pushd" "shopt" 579 "jobs" "kill" "let" "local" "popd" "printf" "pushd" "shopt"
580 "source" "suspend" "typeset" "unalias") 580 "source" "suspend" "typeset" "unalias")
@@ -779,7 +779,10 @@ See `sh-feature'.")
779;; Font-Lock support 779;; Font-Lock support
780 780
781(defface sh-heredoc-face 781(defface sh-heredoc-face
782 '((((class color) 782 '((((min-colors 88) (class color)
783 (background dark))
784 (:foreground "yellow1" :weight bold))
785 (((class color)
783 (background dark)) 786 (background dark))
784 (:foreground "yellow" :weight bold)) 787 (:foreground "yellow" :weight bold))
785 (((class color) 788 (((class color)
@@ -791,6 +794,10 @@ See `sh-feature'.")
791 :group 'sh-indentation) 794 :group 'sh-indentation)
792(defvar sh-heredoc-face 'sh-heredoc-face) 795(defvar sh-heredoc-face 'sh-heredoc-face)
793 796
797(defface sh-escaped-newline '((t :inherit font-lock-string-face))
798 "Face used for (non-escaped) backslash at end of a line in Shell-script mode."
799 :group 'sh-script
800 :version "22.1")
794 801
795(defvar sh-font-lock-keywords 802(defvar sh-font-lock-keywords
796 '((csh sh-append shell 803 '((csh sh-append shell
@@ -815,7 +822,7 @@ See `sh-feature'.")
815 ;; The next entry is only used for defining the others 822 ;; The next entry is only used for defining the others
816 (shell sh-append executable-font-lock-keywords 823 (shell sh-append executable-font-lock-keywords
817 ;; Using font-lock-string-face here confuses sh-get-indent-info. 824 ;; Using font-lock-string-face here confuses sh-get-indent-info.
818 ("\\\\$" 0 font-lock-warning-face) 825 ("\\(^\\|[^\\]\\)\\(\\\\\\\\\\)*\\(\\\\\\)$" 3 'sh-escaped-newline)
819 ("\\\\[^A-Za-z0-9]" 0 font-lock-string-face) 826 ("\\\\[^A-Za-z0-9]" 0 font-lock-string-face)
820 ("\\${?\\([A-Za-z_][A-Za-z0-9_]*\\|[0-9]+\\|[$*_]\\)" 1 827 ("\\${?\\([A-Za-z_][A-Za-z0-9_]*\\|[0-9]+\\|[$*_]\\)" 1
821 font-lock-variable-name-face)) 828 font-lock-variable-name-face))
diff --git a/lisp/progmodes/tcl.el b/lisp/progmodes/tcl.el
index 4dba6b61a56..95cfbb15196 100644
--- a/lisp/progmodes/tcl.el
+++ b/lisp/progmodes/tcl.el
@@ -1,6 +1,7 @@
1;;; tcl.el --- Tcl code editing commands for Emacs 1;;; tcl.el --- Tcl code editing commands for Emacs
2 2
3;; Copyright (C) 1994,98,1999,2000,01,02,2003,2004 Free Software Foundation, Inc. 3;; Copyright (C) 1994, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
4;; Free Software Foundation, Inc.
4 5
5;; Maintainer: FSF 6;; Maintainer: FSF
6;; Author: Tom Tromey <tromey@redhat.com> 7;; Author: Tom Tromey <tromey@redhat.com>
@@ -41,6 +42,7 @@
41;; * tcl-typeword-list is similar, but uses font-lock-type-face. 42;; * tcl-typeword-list is similar, but uses font-lock-type-face.
42;; * tcl-keyword-list is a list of keywords. I've generally used this 43;; * tcl-keyword-list is a list of keywords. I've generally used this
43;; for flow-control words. Eg I add "unwind_protect" to this list. 44;; for flow-control words. Eg I add "unwind_protect" to this list.
45;; * tcl-builtin-list lists commands to be given font-lock-builtin-face.
44;; * tcl-type-alist can be used to minimally customize indentation 46;; * tcl-type-alist can be used to minimally customize indentation
45;; according to context. 47;; according to context.
46 48
@@ -192,6 +194,11 @@ inferior Tcl to load that file. The filename will be appropriately
192quoted for Tcl." 194quoted for Tcl."
193 :type 'string) 195 :type 'string)
194 196
197(defface tcl-escaped-newline '((t :inherit font-lock-string-face))
198 "Face used for (non-escaped) backslash at end of a line in Tcl mode."
199 :group 'tcl
200 :version "22.1")
201
195;; 202;;
196;; Keymaps, abbrevs, syntax tables. 203;; Keymaps, abbrevs, syntax tables.
197;; 204;;
@@ -371,6 +378,21 @@ Call `tcl-set-font-lock-keywords' after changing this list.")
371Default list includes some TclX keywords. 378Default list includes some TclX keywords.
372Call `tcl-set-font-lock-keywords' after changing this list.") 379Call `tcl-set-font-lock-keywords' after changing this list.")
373 380
381(defvar tcl-builtin-list
382 '("after" "append" "array" "bgerror" "binary" "catch" "cd" "clock"
383 "close" "concat" "console" "dde" "encoding" "eof" "exec" "expr"
384 "fblocked" "fconfigure" "fcopy" "file" "fileevent" "flush"
385 "format" "gets" "glob" "history" "incr" "info" "interp" "join"
386 "lappend" "lindex" "linsert" "list" "llength" "load" "lrange"
387 "lreplace" "lsort" "namespace" "open" "package" "pid" "puts" "pwd"
388 "read" "regexp" "registry" "regsub" "rename" "scan" "seek" "set"
389 "socket" "source" "split" "string" "subst" "tell" "time" "trace"
390 "unknown" "unset" "vwait")
391 "List of Tcl commands. Used only for highlighting.
392Call `tcl-set-font-lock-keywords' after changing this list.
393This list excludes those commands already found in `tcl-proc-list' and
394`tcl-keyword-list'.")
395
374(defvar tcl-font-lock-keywords nil 396(defvar tcl-font-lock-keywords nil
375 "Keywords to highlight for Tcl. See variable `font-lock-keywords'. 397 "Keywords to highlight for Tcl. See variable `font-lock-keywords'.
376This variable is generally set from `tcl-proc-regexp', 398This variable is generally set from `tcl-proc-regexp',
@@ -466,14 +488,30 @@ Uses variables `tcl-proc-regexp' and `tcl-keyword-list'."
466 "\\(\\s-\\|$\\)") 488 "\\(\\s-\\|$\\)")
467 2 'font-lock-type-face) 489 2 'font-lock-type-face)
468 490
491 (list (concat "\\_<" (regexp-opt tcl-builtin-list t) "\\_>")
492 1 'font-lock-builtin-face)
493
494 ;; When variable names are enclosed in {} braces, any
495 ;; character can be used. Otherwise just letters, digits,
496 ;; underscores. Variable names can be prefixed with any
497 ;; number of "namespace::" qualifiers. A leading "::" refers
498 ;; to the global namespace.
499 '("\\${\\([^}]+\\)}" 1 font-lock-variable-name-face)
500 '("\\$\\(\\(?:::\\)?\\(?:[[:alnum:]_]+::\\)*[[:alnum:]_]+\\)"
501 1 font-lock-variable-name-face)
502 '("\\(?:\\s-\\|^\\|\\[\\)set\\s-+{\\([^}]+\\)}"
503 1 font-lock-variable-name-face keep)
504 '("\\(?:\\s-\\|^\\|\\[\\)set\\s-+\\(\\(?:::\\)?\
505\\(?:[[:alnum:]_]+::\\)*[[:alnum:]_]+\\)"
506 1 font-lock-variable-name-face keep)
507
508 '("\\(^\\|[^\\]\\)\\(\\\\\\\\\\)*\\(\\\\\\)$" 3 'tcl-escaped-newline)
509
469 ;; Keywords. Only recognized if surrounded by whitespace. 510 ;; Keywords. Only recognized if surrounded by whitespace.
470 ;; FIXME consider using "not word or symbol", not 511 ;; FIXME consider using "not word or symbol", not
471 ;; "whitespace". 512 ;; "whitespace".
472 (cons (concat "\\(\\s-\\|^\\)" 513 (cons (concat "\\_<" (regexp-opt tcl-keyword-list t) "\\_>")
473 ;; FIXME Use regexp-quote? 514 1))))
474 (regexp-opt tcl-keyword-list t)
475 "\\(\\s-\\|$\\)")
476 2))))
477 515
478(if tcl-proc-regexp 516(if tcl-proc-regexp
479 () 517 ()
@@ -544,8 +582,8 @@ Commands:
544 582
545 (set (make-local-variable 'font-lock-defaults) 583 (set (make-local-variable 'font-lock-defaults)
546 '(tcl-font-lock-keywords nil nil nil beginning-of-defun 584 '(tcl-font-lock-keywords nil nil nil beginning-of-defun
547 (font-lock-syntactic-keywords . tcl-font-lock-syntactic-keywords) 585 (font-lock-syntactic-keywords . tcl-font-lock-syntactic-keywords)
548 (parse-sexp-lookup-properties . t))) 586 (parse-sexp-lookup-properties . t)))
549 587
550 (set (make-local-variable 'imenu-generic-expression) 588 (set (make-local-variable 'imenu-generic-expression)
551 tcl-imenu-generic-expression) 589 tcl-imenu-generic-expression)
@@ -1507,5 +1545,5 @@ The first line is assumed to look like \"#!.../program ...\"."
1507 1545
1508(provide 'tcl) 1546(provide 'tcl)
1509 1547
1510;;; arch-tag: 8a032554-c3ef-422e-b84c-acec0522179d 1548;; arch-tag: 8a032554-c3ef-422e-b84c-acec0522179d
1511;;; tcl.el ends here 1549;;; tcl.el ends here
diff --git a/lisp/progmodes/vhdl-mode.el b/lisp/progmodes/vhdl-mode.el
index 7e30a816e15..914c6725cc7 100644
--- a/lisp/progmodes/vhdl-mode.el
+++ b/lisp/progmodes/vhdl-mode.el
@@ -12593,7 +12593,9 @@ This does background highlighting of translate-off regions.")
12593 'vhdl-highlight-faces 'font-lock-variable-name-face 'custom-face) 12593 'vhdl-highlight-faces 'font-lock-variable-name-face 'custom-face)
12594 12594
12595(defface vhdl-font-lock-prompt-face 12595(defface vhdl-font-lock-prompt-face
12596 '((((class color) (background light)) (:foreground "Red" :bold t)) 12596 '((((min-colors 88) (class color) (background light))
12597 (:foreground "Red1" :bold t))
12598 (((class color) (background light)) (:foreground "Red" :bold t))
12597 (((class color) (background dark)) (:foreground "Pink" :bold t)) 12599 (((class color) (background dark)) (:foreground "Pink" :bold t))
12598 (t (:inverse-video t))) 12600 (t (:inverse-video t)))
12599 "Font lock mode face used to highlight prompts." 12601 "Font lock mode face used to highlight prompts."
@@ -12634,6 +12636,8 @@ This does background highlighting of translate-off regions.")
12634 12636
12635(defface vhdl-font-lock-reserved-words-face 12637(defface vhdl-font-lock-reserved-words-face
12636 '((((class color) (background light)) (:foreground "Orange" :bold t)) 12638 '((((class color) (background light)) (:foreground "Orange" :bold t))
12639 (((min-colors 88) (class color) (background dark))
12640 (:foreground "Yellow1" :bold t))
12637 (((class color) (background dark)) (:foreground "Yellow" :bold t)) 12641 (((class color) (background dark)) (:foreground "Yellow" :bold t))
12638 (t ())) 12642 (t ()))
12639 "Font lock mode face used to highlight additional reserved words." 12643 "Font lock mode face used to highlight additional reserved words."
@@ -14975,7 +14979,8 @@ expansion function)."
14975 :group 'speedbar-faces) 14979 :group 'speedbar-faces)
14976 14980
14977(defface vhdl-speedbar-architecture-face 14981(defface vhdl-speedbar-architecture-face
14978 '((((class color) (background light)) (:foreground "Blue")) 14982 '((((min-colors 88) (class color) (background light)) (:foreground "Blue1"))
14983 (((class color) (background light)) (:foreground "Blue"))
14979 (((class color) (background dark)) (:foreground "LightSkyBlue"))) 14984 (((class color) (background dark)) (:foreground "LightSkyBlue")))
14980 "Face used for displaying architecture names." 14985 "Face used for displaying architecture names."
14981 :group 'speedbar-faces) 14986 :group 'speedbar-faces)
@@ -15000,6 +15005,7 @@ expansion function)."
15000 15005
15001(defface vhdl-speedbar-instantiation-face 15006(defface vhdl-speedbar-instantiation-face
15002 '((((class color) (background light)) (:foreground "Brown")) 15007 '((((class color) (background light)) (:foreground "Brown"))
15008 (((min-colors 88) (class color) (background dark)) (:foreground "Yellow1"))
15003 (((class color) (background dark)) (:foreground "Yellow"))) 15009 (((class color) (background dark)) (:foreground "Yellow")))
15004 "Face used for displaying instantiation names." 15010 "Face used for displaying instantiation names."
15005 :group 'speedbar-faces) 15011 :group 'speedbar-faces)
@@ -15017,7 +15023,9 @@ expansion function)."
15017 :group 'speedbar-faces) 15023 :group 'speedbar-faces)
15018 15024
15019(defface vhdl-speedbar-architecture-selected-face 15025(defface vhdl-speedbar-architecture-selected-face
15020 '((((class color) (background light)) (:foreground "Blue" :underline t)) 15026 '((((min-colors 88) (class color) (background light)) (:foreground "Blue1" :underline t))
15027 (((min-colors 88) (class color) (background light)) (:foreground "Blue1" :underline t))
15028 (((class color) (background light)) (:foreground "Blue" :underline t))
15021 (((class color) (background dark)) (:foreground "LightSkyBlue" :underline t))) 15029 (((class color) (background dark)) (:foreground "LightSkyBlue" :underline t)))
15022 "Face used for displaying architecture names." 15030 "Face used for displaying architecture names."
15023 :group 'speedbar-faces) 15031 :group 'speedbar-faces)
@@ -15036,6 +15044,7 @@ expansion function)."
15036 15044
15037(defface vhdl-speedbar-instantiation-selected-face 15045(defface vhdl-speedbar-instantiation-selected-face
15038 '((((class color) (background light)) (:foreground "Brown" :underline t)) 15046 '((((class color) (background light)) (:foreground "Brown" :underline t))
15047 (((min-colors 88) (class color) (background dark)) (:foreground "Yellow1" :underline t))
15039 (((class color) (background dark)) (:foreground "Yellow" :underline t))) 15048 (((class color) (background dark)) (:foreground "Yellow" :underline t)))
15040 "Face used for displaying instantiation names." 15049 "Face used for displaying instantiation names."
15041 :group 'speedbar-faces) 15050 :group 'speedbar-faces)
diff --git a/lisp/reveal.el b/lisp/reveal.el
index 787c4d20791..97411fc1669 100644
--- a/lisp/reveal.el
+++ b/lisp/reveal.el
@@ -175,6 +175,7 @@ Reveal mode renders invisible text around point visible again.
175Interactively, with no prefix argument, toggle the mode. 175Interactively, with no prefix argument, toggle the mode.
176With universal prefix ARG (or if ARG is nil) turn mode on. 176With universal prefix ARG (or if ARG is nil) turn mode on.
177With zero or negative ARG turn mode off." 177With zero or negative ARG turn mode off."
178 :group 'reveal
178 :lighter (global-reveal-mode nil " Reveal") 179 :lighter (global-reveal-mode nil " Reveal")
179 :keymap reveal-mode-map 180 :keymap reveal-mode-map
180 (if reveal-mode 181 (if reveal-mode
diff --git a/lisp/simple.el b/lisp/simple.el
index 691ed0cf675..a57c63b499d 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -114,6 +114,10 @@ If `fringe-arrow', indicate the locus by the fringe arrow."
114 114
115(defvar next-error-highlight-timer nil) 115(defvar next-error-highlight-timer nil)
116 116
117(defvar next-error-overlay-arrow-position nil)
118(put 'next-error-overlay-arrow-position 'overlay-arrow-string "=>")
119(add-to-list 'overlay-arrow-variable-list 'next-error-overlay-arrow-position)
120
117(defvar next-error-last-buffer nil 121(defvar next-error-last-buffer nil
118 "The most recent next-error buffer. 122 "The most recent next-error buffer.
119A buffer becomes most recent when its compilation, grep, or 123A buffer becomes most recent when its compilation, grep, or
@@ -302,7 +306,7 @@ select the source buffer."
302When turned on, cursor motion in the compilation, grep, occur or diff 306When turned on, cursor motion in the compilation, grep, occur or diff
303buffer causes automatic display of the corresponding source code 307buffer causes automatic display of the corresponding source code
304location." 308location."
305 nil " Fol" nil 309 :group 'next-error :init-value " Fol"
306 (if (not next-error-follow-minor-mode) 310 (if (not next-error-follow-minor-mode)
307 (remove-hook 'post-command-hook 'next-error-follow-mode-post-command-hook t) 311 (remove-hook 'post-command-hook 'next-error-follow-mode-post-command-hook t)
308 (add-hook 'post-command-hook 'next-error-follow-mode-post-command-hook nil t) 312 (add-hook 'post-command-hook 'next-error-follow-mode-post-command-hook nil t)
diff --git a/lisp/smerge-mode.el b/lisp/smerge-mode.el
index 35903dcf749..0cab4b31404 100644
--- a/lisp/smerge-mode.el
+++ b/lisp/smerge-mode.el
@@ -1,6 +1,6 @@
1;;; smerge-mode.el --- Minor mode to resolve diff3 conflicts 1;;; smerge-mode.el --- Minor mode to resolve diff3 conflicts
2 2
3;; Copyright (C) 1999, 2000, 01, 03, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Stefan Monnier <monnier@cs.yale.edu> 5;; Author: Stefan Monnier <monnier@cs.yale.edu>
6;; Keywords: revision-control merge diff3 cvs conflict 6;; Keywords: revision-control merge diff3 cvs conflict
@@ -76,8 +76,12 @@ Used in `smerge-diff-base-mine' and related functions."
76 :type 'boolean) 76 :type 'boolean)
77 77
78(defface smerge-mine-face 78(defface smerge-mine-face
79 '((((background light)) 79 '((((min-colors 88) (background light))
80 (:foreground "blue1"))
81 (((background light))
80 (:foreground "blue")) 82 (:foreground "blue"))
83 (((min-colors 88) (background dark))
84 (:foreground "cyan1"))
81 (((background dark)) 85 (((background dark))
82 (:foreground "cyan"))) 86 (:foreground "cyan")))
83 "Face for your code." 87 "Face for your code."
@@ -94,7 +98,9 @@ Used in `smerge-diff-base-mine' and related functions."
94(defvar smerge-other-face 'smerge-other-face) 98(defvar smerge-other-face 'smerge-other-face)
95 99
96(defface smerge-base-face 100(defface smerge-base-face
97 '((((background light)) 101 '((((min-colors 88) (background light))
102 (:foreground "red1"))
103 (((background light))
98 (:foreground "red")) 104 (:foreground "red"))
99 (((background dark)) 105 (((background dark))
100 (:foreground "orange"))) 106 (:foreground "orange")))
@@ -667,7 +673,7 @@ buffer names."
667(define-minor-mode smerge-mode 673(define-minor-mode smerge-mode
668 "Minor mode to simplify editing output from the diff3 program. 674 "Minor mode to simplify editing output from the diff3 program.
669\\{smerge-mode-map}" 675\\{smerge-mode-map}"
670 nil " SMerge" nil 676 :group 'smerge :lighter " SMerge"
671 (when (and (boundp 'font-lock-mode) font-lock-mode) 677 (when (and (boundp 'font-lock-mode) font-lock-mode)
672 (set (make-local-variable 'font-lock-multiline) t) 678 (set (make-local-variable 'font-lock-multiline) t)
673 (save-excursion 679 (save-excursion
diff --git a/lisp/startup.el b/lisp/startup.el
index 610c3b7cc0c..682c7342656 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -657,7 +657,7 @@ or `CVS', and any subdirectory that contains a file named `.nosearch'."
657 (while (and (not done) args) 657 (while (and (not done) args)
658 (let* ((longopts '(("--no-init-file") ("--no-site-file") ("--user") 658 (let* ((longopts '(("--no-init-file") ("--no-site-file") ("--user")
659 ("--debug-init") ("--iconic") ("--icon-type") 659 ("--debug-init") ("--iconic") ("--icon-type")
660 ("--no-blinking-cursor"))) 660 ("--no-blinking-cursor") ("--bare-bones")))
661 (argi (pop args)) 661 (argi (pop args))
662 (orig-argi argi) 662 (orig-argi argi)
663 argval) 663 argval)
@@ -677,7 +677,7 @@ or `CVS', and any subdirectory that contains a file named `.nosearch'."
677 (setq argval nil 677 (setq argval nil
678 argi orig-argi))))) 678 argi orig-argi)))))
679 (cond 679 (cond
680 ((equal argi "-Q") 680 ((member argi '("-Q" "-bare-bones"))
681 (setq init-file-user nil 681 (setq init-file-user nil
682 site-run-file nil 682 site-run-file nil
683 no-blinking-cursor t 683 no-blinking-cursor t
@@ -1004,8 +1004,27 @@ If this is nil, no message will be displayed."
1004using the mouse.\n\n" 1004using the mouse.\n\n"
1005 :face (variable-pitch :weight bold) 1005 :face (variable-pitch :weight bold)
1006 "Important Help menu items:\n" 1006 "Important Help menu items:\n"
1007 :face variable-pitch "\ 1007 :face variable-pitch
1008Emacs Tutorial\tLearn-by-doing tutorial for using Emacs efficiently 1008 (lambda ()
1009 (let* ((en "TUTORIAL")
1010 (tut (or (get-language-info current-language-environment
1011 'tutorial)
1012 en))
1013 (title (with-temp-buffer
1014 (insert-file-contents
1015 (expand-file-name tut data-directory)
1016 nil 0 256)
1017 (search-forward ".")
1018 (buffer-substring (point-min) (1- (point))))))
1019 ;; If there is a specific tutorial for the current language
1020 ;; environment and it is not English, append its title.
1021 (concat
1022 "Emacs Tutorial\tLearn how to use Emacs efficiently"
1023 (if (string= en tut)
1024 ""
1025 (concat " (" title ")"))
1026 "\n")))
1027 :face variable-pitch "\
1009Emacs FAQ\tFrequently asked questions and answers 1028Emacs FAQ\tFrequently asked questions and answers
1010Read the Emacs Manual\tView the Emacs manual using Info 1029Read the Emacs Manual\tView the Emacs manual using Info
1011\(Non)Warranty\tGNU Emacs comes with " 1030\(Non)Warranty\tGNU Emacs comes with "
@@ -1069,14 +1088,18 @@ Values less than 60 seconds are ignored."
1069 1088
1070(defun fancy-splash-insert (&rest args) 1089(defun fancy-splash-insert (&rest args)
1071 "Insert text into the current buffer, with faces. 1090 "Insert text into the current buffer, with faces.
1072Arguments from ARGS should be either strings or pairs `:face FACE', 1091Arguments from ARGS should be either strings, functions called
1092with no args that return a string, or pairs `:face FACE',
1073where FACE is a valid face specification, as it can be used with 1093where FACE is a valid face specification, as it can be used with
1074`put-text-properties'." 1094`put-text-properties'."
1075 (let ((current-face nil)) 1095 (let ((current-face nil))
1076 (while args 1096 (while args
1077 (if (eq (car args) :face) 1097 (if (eq (car args) :face)
1078 (setq args (cdr args) current-face (car args)) 1098 (setq args (cdr args) current-face (car args))
1079 (insert (propertize (car args) 1099 (insert (propertize (let ((it (car args)))
1100 (if (functionp it)
1101 (funcall it)
1102 it))
1080 'face current-face 1103 'face current-face
1081 'help-echo fancy-splash-help-echo))) 1104 'help-echo fancy-splash-help-echo)))
1082 (setq args (cdr args))))) 1105 (setq args (cdr args)))))
@@ -1461,9 +1484,16 @@ normal otherwise."
1461 nil t)) 1484 nil t))
1462 (error nil)) 1485 (error nil))
1463 (kill-buffer buffer))))) 1486 (kill-buffer buffer)))))
1464 ;; Stop any "Loading image..." message hiding echo-area-message. 1487 ;; display-splash-screen at the end of command-line-1 calls
1465 (use-fancy-splash-screens-p) 1488 ;; use-fancy-splash-screens-p. This can cause image.el to be
1466 (display-startup-echo-area-message)) 1489 ;; loaded, putting "Loading image... done" in the echo area.
1490 ;; This hides startup-echo-area-message. So
1491 ;; use-fancy-splash-screens-p is called here simply to get the
1492 ;; loading of image.el (if needed) out of the way before
1493 ;; display-startup-echo-area-message runs.
1494 (progn
1495 (use-fancy-splash-screens-p)
1496 (display-startup-echo-area-message)))
1467 1497
1468 ;; Delay 2 seconds after an init file error message 1498 ;; Delay 2 seconds after an init file error message
1469 ;; was displayed, so user can read it. 1499 ;; was displayed, so user can read it.
diff --git a/lisp/term.el b/lisp/term.el
index eb3ae342359..aff894cab68 100644
--- a/lisp/term.el
+++ b/lisp/term.el
@@ -3231,7 +3231,7 @@ See `term-prompt-regexp'."
3231 ((eq char ?P) 3231 ((eq char ?P)
3232 (term-delete-chars (max 1 term-terminal-parameter))) 3232 (term-delete-chars (max 1 term-terminal-parameter)))
3233 ;; \E[@ - insert spaces 3233 ;; \E[@ - insert spaces
3234 ((eq char ?@) 3234 ((eq char ?@) ;; (terminfo: ich)
3235 (term-insert-spaces (max 1 term-terminal-parameter))) 3235 (term-insert-spaces (max 1 term-terminal-parameter)))
3236 ;; \E[?h - DEC Private Mode Set 3236 ;; \E[?h - DEC Private Mode Set
3237 ((eq char ?h) 3237 ((eq char ?h)
diff --git a/lisp/term/mac-win.el b/lisp/term/mac-win.el
index 2974bc5a456..4a59560b066 100644
--- a/lisp/term/mac-win.el
+++ b/lisp/term/mac-win.el
@@ -1178,7 +1178,10 @@ See the documentation of `create-fontset-from-fontset-spec for the format.")
1178 (new-fontset font (x-complement-fontset-spec xlfd-fields nil)) 1178 (new-fontset font (x-complement-fontset-spec xlfd-fields nil))
1179 ;; Create a fontset from FONT. The fontset name is 1179 ;; Create a fontset from FONT. The fontset name is
1180 ;; generated from FONT. 1180 ;; generated from FONT.
1181 (create-fontset-from-ascii-font font resolved-name "startup")))) 1181 (if (and (string= "mac" (aref xlfd-fields xlfd-regexp-registry-subnum))
1182 (string= "roman" (aref xlfd-fields xlfd-regexp-encoding-subnum)))
1183 (create-fontset-from-mac-roman-font font resolved-name "startup")
1184 (create-fontset-from-ascii-font font resolved-name "startup")))))
1182 1185
1183;; Apply a geometry resource to the initial frame. Put it at the end 1186;; Apply a geometry resource to the initial frame. Put it at the end
1184;; of the alist, so that anything specified on the command line takes 1187;; of the alist, so that anything specified on the command line takes
diff --git a/lisp/term/xterm.el b/lisp/term/xterm.el
index 5c210974f72..44688e82b6d 100644
--- a/lisp/term/xterm.el
+++ b/lisp/term/xterm.el
@@ -107,15 +107,15 @@
107 ("red" 1 (205 0 0)) ; red3 107 ("red" 1 (205 0 0)) ; red3
108 ("green" 2 ( 0 205 0)) ; green3 108 ("green" 2 ( 0 205 0)) ; green3
109 ("yellow" 3 (205 205 0)) ; yellow3 109 ("yellow" 3 (205 205 0)) ; yellow3
110 ("blue" 4 ( 0 0 205)) ; blue3 110 ("blue" 4 ( 0 0 238)) ; blue2
111 ("magenta" 5 (205 0 205)) ; magenta3 111 ("magenta" 5 (205 0 205)) ; magenta3
112 ("cyan" 6 ( 0 205 205)) ; cyan3 112 ("cyan" 6 ( 0 205 205)) ; cyan3
113 ("white" 7 (229 229 229)) ; gray90 113 ("white" 7 (229 229 229)) ; gray90
114 ("brightblack" 8 ( 77 77 77)) ; gray30 114 ("brightblack" 8 (127 127 127)) ; gray50
115 ("brightred" 9 (255 0 0)) ; red 115 ("brightred" 9 (255 0 0)) ; red
116 ("brightgreen" 10 ( 0 255 0)) ; green 116 ("brightgreen" 10 ( 0 255 0)) ; green
117 ("brightyellow" 11 (255 255 0)) ; yellow 117 ("brightyellow" 11 (255 255 0)) ; yellow
118 ("brightblue" 12 ( 0 0 255)) ; blue 118 ("brightblue" 12 (92 92 255)) ; rgb:5c/5c/ff
119 ("brightmagenta" 13 (255 0 255)) ; magenta 119 ("brightmagenta" 13 (255 0 255)) ; magenta
120 ("brightcyan" 14 ( 0 255 255)) ; cyan 120 ("brightcyan" 14 ( 0 255 255)) ; cyan
121 ("brightwhite" 15 (255 255 255))) ; white 121 ("brightwhite" 15 (255 255 255))) ; white
diff --git a/lisp/textmodes/bibtex.el b/lisp/textmodes/bibtex.el
index fc677b3de44..3e5b77d8baa 100644
--- a/lisp/textmodes/bibtex.el
+++ b/lisp/textmodes/bibtex.el
@@ -1,6 +1,6 @@
1;;; bibtex.el --- BibTeX mode for GNU Emacs 1;;; bibtex.el --- BibTeX mode for GNU Emacs
2 2
3;; Copyright (C) 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2003, 2004 3;; Copyright (C) 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2003, 2004, 2005
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Author: Stefan Schoef <schoef@offis.uni-oldenburg.de> 6;; Author: Stefan Schoef <schoef@offis.uni-oldenburg.de>
@@ -784,41 +784,56 @@ Used by `bibtex-complete-crossref-cleanup' and `bibtex-copy-summary-as-kill'."
784 (function :tag "Personalized function"))) 784 (function :tag "Personalized function")))
785 785
786(defcustom bibtex-generate-url-list 786(defcustom bibtex-generate-url-list
787 '((("url" . ".*:.*")) 787 '((("url" . ".*:.*")))
788 ;; Example of a complex setup.
789 (("journal" . "\\<\\(PR[ABCDEL]?\\|RMP\\)\\>")
790 "http://link.aps.org/abstract/"
791 ("journal" ".*" downcase)
792 "/v"
793 ("volume" ".*" 0)
794 "/p"
795 ("pages" "\\`\\([0-9]+\\)" 1)))
796 "List of schemes for generating the URL of a BibTeX entry. 788 "List of schemes for generating the URL of a BibTeX entry.
797These schemes are used by `bibtex-url'. 789These schemes are used by `bibtex-url'.
798 790
799Each scheme is of the form ((FIELD . REGEXP) STEP...). 791Each scheme should have one of these forms:
800 792
801FIELD is a field name as returned by `bibtex-parse-entry'. 793 ((FIELD . REGEXP))
802REGEXP is matched against the text of FIELD. If the match succeeds, then 794 ((FIELD . REGEXP) STEP...)
803this scheme is used. If no STEPs are specified the matched text is used 795 ((FIELD . REGEXP) STRING STEP...)
804as the URL, otherwise the URL is built by concatenating the STEPs.
805
806A STEP can be a string or a list (FIELD REGEXP REPLACE) in which case
807the text of FIELD is matched against REGEXP, and is replaced with REPLACE.
808REPLACE can be a string, or a number (which selects the corresponding submatch)
809or a function called with the field's text as argument and with the
810`match-data' properly set.
811 796
812Case is always ignored. Always remove the field delimiters." 797FIELD is a field name as returned by `bibtex-parse-entry'.
798REGEXP is matched against the text of FIELD. If the match succeeds,
799then this scheme is used. If no STRING and STEPs are specified
800the matched text is used as the URL, otherwise the URL is built
801by evaluating STEPs. If no STRING is specified the STEPs must result
802in strings which are concatenated. Otherwise the resulting objects
803are passed through `format' using STRING as format control string.
804
805A STEP is a list (FIELD REGEXP REPLACE). The text of FIELD
806is matched against REGEXP, and is replaced with REPLACE.
807REPLACE can be a string, or a number (which selects the corresponding
808submatch), or a function called with the field's text as argument
809and with the `match-data' properly set.
810
811Case is always ignored. Always remove the field delimiters.
812
813The following is a complex example, see http://link.aps.org/linkfaq.html.
814
815 (((\"journal\" . \"\\\\=<\\(PR[ABCDEL]?\\|RMP\\)\\\\=>\")
816 \"http://link.aps.org/abstract/%s/v%s/p%s\"
817 (\"journal\" \".*\" downcase)
818 (\"volume\" \".*\" 0)
819 (\"pages\" \"\\`[A-Z]?[0-9]+\" 0)))"
813 :group 'bibtex 820 :group 'bibtex
814 :type '(repeat 821 :type '(repeat
815 (list :tag "Scheme" 822 (cons :tag "Scheme"
816 (cons :tag "Matcher" :extra-offset 4 823 (cons :tag "Matcher" :extra-offset 4
817 (string :tag "BibTeX field") 824 (string :tag "BibTeX field")
818 (regexp :tag "Regexp")) 825 (regexp :tag "Regexp"))
819 (repeat :tag "Steps to generate URL" :inline t 826 (choice
820 (choice 827 (const :tag "Take match as is" nil)
821 (string :tag "Literal text") 828 (cons :tag "Formatted"
829 (string :tag "Format control string")
830 (repeat :tag "Steps to generate URL"
831 (list (string :tag "BibTeX field")
832 (regexp :tag "Regexp")
833 (choice (string :tag "Replacement")
834 (integer :tag "Sub-match")
835 (function :tag "Filter")))))
836 (repeat :tag "Concatenated"
822 (list (string :tag "BibTeX field") 837 (list (string :tag "BibTeX field")
823 (regexp :tag "Regexp") 838 (regexp :tag "Regexp")
824 (choice (string :tag "Replacement") 839 (choice (string :tag "Replacement")
@@ -2662,11 +2677,10 @@ begins at the beginning of a line. We use this function for font-locking."
2662 (let ((lst bibtex-generate-url-list) url) 2677 (let ((lst bibtex-generate-url-list) url)
2663 (goto-char start) 2678 (goto-char start)
2664 (while (and (not found) 2679 (while (and (not found)
2665 (setq url (caar lst))) 2680 (setq url (car (pop lst))))
2666 (setq found (and (bibtex-string= field (car url)) 2681 (setq found (and (bibtex-string= field (car url))
2667 (re-search-forward (cdr url) end t) 2682 (re-search-forward (cdr url) end t)
2668 (>= (match-beginning 0) pnt)) 2683 (>= (match-beginning 0) pnt)))))
2669 lst (cdr lst))))
2670 (goto-char end)) 2684 (goto-char end))
2671 (if found (bibtex-button (match-beginning 0) (match-end 0) 2685 (if found (bibtex-button (match-beginning 0) (match-end 0)
2672 'bibtex-url (match-beginning 0))) 2686 'bibtex-url (match-beginning 0)))
@@ -4283,39 +4297,36 @@ The URL is generated using the schemes defined in `bibtex-generate-url-list'
4283 ;; Always ignore case, 4297 ;; Always ignore case,
4284 (case-fold-search t) 4298 (case-fold-search t)
4285 (lst bibtex-generate-url-list) 4299 (lst bibtex-generate-url-list)
4286 field url scheme) 4300 field url scheme obj fmt)
4287 (while (setq scheme (pop lst)) 4301 (while (setq scheme (pop lst))
4288 (when (and (setq field (cdr (assoc-string (caar scheme) 4302 (when (and (setq field (cdr (assoc-string (caar scheme)
4289 fields-alist t))) 4303 fields-alist t)))
4290 ;; Always remove field delimiters 4304 ;; Always remove field delimiters
4291 (progn (setq field (bibtex-remove-delimiters-string field)) 4305 (progn (setq field (bibtex-remove-delimiters-string field))
4292 (string-match (cdar scheme) field))) 4306 (string-match (cdar scheme) field)))
4293 (setq lst nil) 4307 (setq lst nil
4294 (if (null (cdr scheme)) 4308 scheme (cdr scheme)
4295 (setq url (match-string 0 field))) 4309 url (if (null scheme) (match-string 0 field)
4296 (dolist (step (cdr scheme)) 4310 (if (stringp (car scheme))
4297 (cond ((stringp step) 4311 (setq fmt (pop scheme)))
4298 (setq url (concat url step))) 4312 (dolist (step scheme)
4299 ((setq field (cdr (assoc-string (car step) fields-alist t))) 4313 ;; Always remove field delimiters
4300 ;; Always remove field delimiters 4314 (setq field (bibtex-remove-delimiters-string
4301 (setq field (bibtex-remove-delimiters-string field)) 4315 (cdr (assoc-string (car step) fields-alist t))))
4302 (if (string-match (nth 1 step) field) 4316 (if (string-match (nth 1 step) field)
4303 (setq field (cond 4317 (setq field (cond ((functionp (nth 2 step))
4304 ((functionp (nth 2 step)) 4318 (funcall (nth 2 step) field))
4305 (funcall (nth 2 step) field)) 4319 ((numberp (nth 2 step))
4306 ((numberp (nth 2 step)) 4320 (match-string (nth 2 step) field))
4307 (match-string (nth 2 step) field)) 4321 (t
4308 (t 4322 (replace-match (nth 2 step) t nil field))))
4309 (replace-match (nth 2 step) t nil field)))) 4323 ;; If the scheme is set up correctly,
4310 ;; If the scheme is set up correctly, 4324 ;; we should never reach this point
4311 ;; we should never reach this point 4325 (error "Match failed: %s" field))
4312 (error "Match failed: %s" field)) 4326 (push field obj))
4313 (setq url (concat url field))) 4327 (if fmt (apply 'format fmt (nreverse obj))
4314 ;; If the scheme is set up correctly, 4328 (apply 'concat (nreverse obj)))))
4315 ;; we should never reach this point 4329 (browse-url (message "%s" url))))
4316 (t (error "Step failed: %s" step))))
4317 (message "%s" url)
4318 (browse-url url)))
4319 (unless url (message "No URL known."))))) 4330 (unless url (message "No URL known.")))))
4320 4331
4321 4332
diff --git a/lisp/textmodes/enriched.el b/lisp/textmodes/enriched.el
index 71bb6cf137d..b1b5abc488f 100644
--- a/lisp/textmodes/enriched.el
+++ b/lisp/textmodes/enriched.el
@@ -1,6 +1,6 @@
1;;; enriched.el --- read and save files in text/enriched format 1;;; enriched.el --- read and save files in text/enriched format
2 2
3;; Copyright (c) 1994, 1995, 1996, 2002, 2004 Free Software Foundation, Inc. 3;; Copyright (c) 1994, 1995, 1996, 2002, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Boris Goldowsky <boris@gnu.org> 5;; Author: Boris Goldowsky <boris@gnu.org>
6;; Keywords: wp, faces 6;; Keywords: wp, faces
@@ -183,7 +183,7 @@ etc/enriched.doc in the Emacs distribution directory.
183Commands: 183Commands:
184 184
185\\{enriched-mode-map}" 185\\{enriched-mode-map}"
186 nil " Enriched" nil 186 :group 'enriched :lighter " Enriched"
187 (cond ((null enriched-mode) 187 (cond ((null enriched-mode)
188 ;; Turn mode off 188 ;; Turn mode off
189 (setq buffer-file-format (delq 'text/enriched buffer-file-format)) 189 (setq buffer-file-format (delq 'text/enriched buffer-file-format))
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index dfa3a7fa692..dbe8b1cfbc6 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -221,10 +221,10 @@ Set this to nil if you don't want a modeline indicator."
221 221
222(defcustom flyspell-large-region 1000 222(defcustom flyspell-large-region 1000
223 "*The threshold that determines if a region is small. 223 "*The threshold that determines if a region is small.
224The `flyspell-region' function is invoked if the region is small, the 224If the region is smaller than this number of characters,
225word are checked one after the other using regular flyspell check 225`flyspell-region' checks the words sequentially using regular
226means. If the region is large, a new Ispell process is spawned to get 226flyspell methods. Else, if the region is large, a new Ispell process is
227speed." 227spawned for speed."
228 :group 'flyspell 228 :group 'flyspell
229 :version "21.1" 229 :version "21.1"
230 :type 'number) 230 :type 'number)
diff --git a/lisp/textmodes/org.el b/lisp/textmodes/org.el
index 86406d37475..06d4e697d55 100644
--- a/lisp/textmodes/org.el
+++ b/lisp/textmodes/org.el
@@ -279,7 +279,7 @@ the following lines anywhere in the buffer:
279 :group 'org-startup 279 :group 'org-startup
280 :type 'boolean) 280 :type 'boolean)
281 281
282(defcustom org-insert-mode-line-in-empty-file t 282(defcustom org-insert-mode-line-in-empty-file nil
283 "Non-nil means insert the first line setting Org-mode in empty files. 283 "Non-nil means insert the first line setting Org-mode in empty files.
284When the function `org-mode' is called interactively in an empty, this 284When the function `org-mode' is called interactively in an empty, this
285normally means that the file name does not automatically trigger Org-mode. 285normally means that the file name does not automatically trigger Org-mode.
@@ -3477,7 +3477,7 @@ date."
3477(defun org-diary-default-entry () 3477(defun org-diary-default-entry ()
3478 "Add a dummy entry to the diary. 3478 "Add a dummy entry to the diary.
3479Needed to avoid empty dates which mess up holiday display." 3479Needed to avoid empty dates which mess up holiday display."
3480 (add-to-diary-list original-date "Org-mode dummy" "")) 3480 (add-to-diary-list original-date "Org-mode dummy" "" nil))
3481 3481
3482(defun org-add-file (&optional file) 3482(defun org-add-file (&optional file)
3483 "Add current file to the list of files in variable `org-agenda-files'. 3483 "Add current file to the list of files in variable `org-agenda-files'.
diff --git a/lisp/textmodes/refill.el b/lisp/textmodes/refill.el
index 9979f4a3e27..d5f3b19cc9c 100644
--- a/lisp/textmodes/refill.el
+++ b/lisp/textmodes/refill.el
@@ -221,7 +221,9 @@ With prefix arg, turn Refill mode on iff arg is positive.
221When Refill mode is on, the current paragraph will be formatted when 221When Refill mode is on, the current paragraph will be formatted when
222changes are made within it. Self-inserting characters only cause 222changes are made within it. Self-inserting characters only cause
223refilling if they would cause auto-filling." 223refilling if they would cause auto-filling."
224 nil " Refill" '(("\177" . backward-delete-char-untabify)) 224 :group 'refill
225 :lighter " Refill"
226 :keymap '(("\177" . backward-delete-char-untabify))
225 ;; Remove old state if necessary 227 ;; Remove old state if necessary
226 (when refill-ignorable-overlay 228 (when refill-ignorable-overlay
227 (delete-overlay refill-ignorable-overlay) 229 (delete-overlay refill-ignorable-overlay)
diff --git a/lisp/textmodes/table.el b/lisp/textmodes/table.el
index 52a0c8a1deb..a85e968d3ee 100644
--- a/lisp/textmodes/table.el
+++ b/lisp/textmodes/table.el
@@ -683,7 +683,9 @@ height."
683 :group 'table) 683 :group 'table)
684 684
685(defface table-cell-face 685(defface table-cell-face
686 '((((class color)) 686 '((((min-colors 88) (class color))
687 (:foreground "gray90" :background "blue1"))
688 (((class color))
687 (:foreground "gray90" :background "blue")) 689 (:foreground "gray90" :background "blue"))
688 (t (:bold t))) 690 (t (:bold t)))
689 "*Face used for table cell contents." 691 "*Face used for table cell contents."
diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el
index 0c83406318a..1b3f06eb34b 100644
--- a/lisp/textmodes/tex-mode.el
+++ b/lisp/textmodes/tex-mode.el
@@ -573,7 +573,7 @@ An alternative value is \" . \", if you use a font with a narrow period."
573 2 '(tex-font-lock-append-prop 'italic) 'append) 573 2 '(tex-font-lock-append-prop 'italic) 'append)
574 ;; This is separate from the previous one because of cases like 574 ;; This is separate from the previous one because of cases like
575 ;; {\em foo {\bf bar} bla} where both match. 575 ;; {\em foo {\bf bar} bla} where both match.
576 (list (concat "\\\\\\(bf\\)\\>" args) 576 (list (concat "\\\\\\(bf\\(series\\)?\\)\\>" args)
577 2 '(tex-font-lock-append-prop 'bold) 'append))))) 577 2 '(tex-font-lock-append-prop 'bold) 'append)))))
578 "Gaudy expressions to highlight in TeX modes.") 578 "Gaudy expressions to highlight in TeX modes.")
579 579
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog
index 5a3bf23529c..82b7f64dc01 100644
--- a/lisp/url/ChangeLog
+++ b/lisp/url/ChangeLog
@@ -1,3 +1,7 @@
12005-04-04 Lute Kamstra <lute@gnu.org>
2
3 * url-handlers.el (url-handler-mode): Specify :group.
4
12005-02-26 James Cloos <cloos@jhcloos.com> (tiny change) 52005-02-26 James Cloos <cloos@jhcloos.com> (tiny change)
2 6
3 * url-history.el (url-have-visited-url): Don't barf if 7 * url-history.el (url-have-visited-url): Don't barf if
diff --git a/lisp/url/url-handlers.el b/lisp/url/url-handlers.el
index f90f21a3dbe..68bf0ec7ab5 100644
--- a/lisp/url/url-handlers.el
+++ b/lisp/url/url-handlers.el
@@ -1,6 +1,6 @@
1;;; url-handlers.el --- file-name-handler stuff for URL loading 1;;; url-handlers.el --- file-name-handler stuff for URL loading
2 2
3;; Copyright (c) 1996, 1997, 1998, 1999, 2004 Free Software Foundation, Inc. 3;; Copyright (c) 1996, 1997, 1998, 1999, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Keywords: comm, data, processes, hypermedia 5;; Keywords: comm, data, processes, hypermedia
6 6
@@ -106,7 +106,7 @@ particularly bad at this\).")
106;;;###autoload 106;;;###autoload
107(define-minor-mode url-handler-mode 107(define-minor-mode url-handler-mode
108 "Use URL to handle URL-like file names." 108 "Use URL to handle URL-like file names."
109 :global t 109 :global t :group 'url
110 (if (not (boundp 'file-name-handler-alist)) 110 (if (not (boundp 'file-name-handler-alist))
111 ;; Can't be turned ON anyway. 111 ;; Can't be turned ON anyway.
112 (setq url-handler-mode nil) 112 (setq url-handler-mode nil)
diff --git a/lisp/wdired.el b/lisp/wdired.el
index a4119343600..4b37bc33659 100644
--- a/lisp/wdired.el
+++ b/lisp/wdired.el
@@ -1,10 +1,10 @@
1;;; wdired.el --- Rename files editing their names in dired buffers 1;;; wdired.el --- Rename files editing their names in dired buffers
2 2
3;; Copyright (C) 2001, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 2001, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Filename: wdired.el 5;; Filename: wdired.el
6;; Author: Juan León Lahoz García <juan-leon.lahoz@tecsidel.es> 6;; Author: Juan León Lahoz García <juanleon1@gmail.com>
7;; Version: 1.91 7;; Version: 2.0
8;; Keywords: dired, environment, files, renaming 8;; Keywords: dired, environment, files, renaming
9 9
10;; This file is part of GNU Emacs. 10;; This file is part of GNU Emacs.
@@ -156,9 +156,8 @@
156 156
157;;; Code: 157;;; Code:
158 158
159(defvar dired-backup-overwrite) ; Only in emacs 20.x this is a custom var
159(eval-when-compile 160(eval-when-compile
160 (require 'advice)
161 (defvar dired-backup-overwrite) ; Only in emacs 20.x this is a custom var
162 (set (make-local-variable 'byte-compile-dynamic) t)) 161 (set (make-local-variable 'byte-compile-dynamic) t))
163 162
164(eval-and-compile 163(eval-and-compile
@@ -199,19 +198,6 @@ If nil, \"up\" and \"down\" movement is done as in any other buffer."
199 (other :tag "As in dired mode" t)) 198 (other :tag "As in dired mode" t))
200 :group 'wdired) 199 :group 'wdired)
201 200
202(defcustom wdired-advise-functions t
203 "*If t some editing commands are advised when wdired is loaded.
204The advice only has effect in wdired mode. These commands are
205`query-replace' `query-replace-regexp' `replace-string', and the
206advice makes them to ignore read-only regions, so no attempts to
207modify these regions are done by them, and so they don't end
208prematurely.
209
210Setting this to nil does not unadvise the functions, if they are
211already advised, but new Emacs will not advise them."
212 :type 'boolean
213 :group 'wdired)
214
215(defcustom wdired-allow-to-redirect-links t 201(defcustom wdired-allow-to-redirect-links t
216 "*If non-nil, the target of the symbolic links can be changed also. 202 "*If non-nil, the target of the symbolic links can be changed also.
217In systems without symbolic links support, this variable has no effect 203In systems without symbolic links support, this variable has no effect
@@ -309,6 +295,7 @@ See `wdired-mode'."
309 (interactive) 295 (interactive)
310 (set (make-local-variable 'wdired-old-content) 296 (set (make-local-variable 'wdired-old-content)
311 (buffer-substring (point-min) (point-max))) 297 (buffer-substring (point-min) (point-max)))
298 (set (make-local-variable 'query-replace-skip-read-only) t)
312 (use-local-map wdired-mode-map) 299 (use-local-map wdired-mode-map)
313 (force-mode-line-update) 300 (force-mode-line-update)
314 (setq buffer-read-only nil) 301 (setq buffer-read-only nil)
@@ -664,64 +651,6 @@ Like original function but it skips read-only words."
664 (interactive "p") 651 (interactive "p")
665 (wdired-xcase-word 'capitalize-word arg)) 652 (wdired-xcase-word 'capitalize-word arg))
666 653
667;; The following code is related to advice some interactive functions
668;; to make some editing commands in wdired mode not to fail trying to
669;; change read-only text. Notice that some advises advice and unadvise
670;; them-self to another functions: search-forward and
671;; re-search-forward. This is to keep these functions advised only
672;; when is necessary. Since they are built-in commands used heavily in
673;; lots of places, to have it permanently advised would cause some
674;; performance loss.
675
676
677(defun wdired-add-skip-in-replace (command)
678 "Advice COMMAND to skip matches while they have read-only properties.
679This is useful to avoid \"read-only\" errors in search and replace
680commands. This advice only has effect in wdired mode."
681 (eval
682 `(defadvice ,command (around wdired-discard-read-only activate)
683 ,(format "Make %s to work better with wdired,\n%s." command
684 "skipping read-only matches when invoked without argument")
685 ad-do-it
686 (if (eq major-mode 'wdired-mode)
687 (while (and ad-return-value
688 (text-property-any
689 (max 1 (1- (match-beginning 0))) (match-end 0)
690 'read-only t))
691 ad-do-it))
692 ad-return-value)))
693
694
695(defun wdired-add-replace-advice (command)
696 "Advice COMMAND to skip matches while they have read-only properties.
697This is useful to avoid \"read-only\" errors in search and replace
698commands. This advice only has effect in wdired mode."
699 (eval
700 `(defadvice ,command (around wdired-grok-read-only activate)
701 ,(format "Make %s to work better with wdired,\n%s." command
702 "skipping read-only matches when invoked without argument")
703 (if (eq major-mode 'wdired-mode)
704 (progn
705 (wdired-add-skip-in-replace 'search-forward)
706 (wdired-add-skip-in-replace 're-search-forward)
707 (unwind-protect
708 ad-do-it
709 (progn
710 (ad-remove-advice 'search-forward
711 'around 'wdired-discard-read-only)
712 (ad-remove-advice 're-search-forward
713 'around 'wdired-discard-read-only)
714 (ad-update 'search-forward)
715 (ad-update 're-search-forward))))
716 ad-do-it)
717 ad-return-value)))
718
719
720(if wdired-advise-functions
721 (progn
722 (mapcar 'wdired-add-replace-advice
723 '(query-replace query-replace-regexp replace-string))))
724
725 654
726;; The following code deals with changing the access bits (or 655;; The following code deals with changing the access bits (or
727;; permissions) of the files. 656;; permissions) of the files.
diff --git a/lisp/whitespace.el b/lisp/whitespace.el
index 323c75ed6de..4406a0615ee 100644
--- a/lisp/whitespace.el
+++ b/lisp/whitespace.el
@@ -1,6 +1,6 @@
1;;; whitespace.el --- warn about and clean bogus whitespaces in the file 1;;; whitespace.el --- warn about and clean bogus whitespaces in the file
2 2
3;; Copyright (C) 1999, 2000 Free Software Foundation, Inc. 3;; Copyright (C) 1999, 2000, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Rajesh Vaidheeswarran <rv@gnu.org> 5;; Author: Rajesh Vaidheeswarran <rv@gnu.org>
6;; Keywords: convenience 6;; Keywords: convenience
@@ -319,7 +319,7 @@ To disable timer scans, set this to zero."
319 :group 'faces) 319 :group 'faces)
320 320
321(defface whitespace-highlight-face '((((class color) (background light)) 321(defface whitespace-highlight-face '((((class color) (background light))
322 (:background "green")) 322 (:background "green1"))
323 (((class color) (background dark)) 323 (((class color) (background dark))
324 (:background "sea green")) 324 (:background "sea green"))
325 (((class grayscale mono) 325 (((class grayscale mono)
@@ -489,16 +489,14 @@ and:
489 (if whitespace-spacetab "s") 489 (if whitespace-spacetab "s")
490 (if whitespace-trailing "t"))))) 490 (if whitespace-trailing "t")))))
491 (whitespace-update-modeline whitespace-this-modeline) 491 (whitespace-update-modeline whitespace-this-modeline)
492 (save-excursion 492 (if (get-buffer whitespace-errbuf)
493 (get-buffer-create whitespace-errbuf) 493 (kill-buffer whitespace-errbuf))
494 (kill-buffer whitespace-errbuf) 494 (with-current-buffer (get-buffer-create whitespace-errbuf)
495 (get-buffer-create whitespace-errbuf)
496 (set-buffer whitespace-errbuf)
497 (if whitespace-errmsg 495 (if whitespace-errmsg
498 (progn 496 (progn
499 (insert whitespace-errmsg) 497 (insert whitespace-errmsg)
500 (if (not (or quiet whitespace-silent)) 498 (if (not (or quiet whitespace-silent))
501 (display-buffer whitespace-errbuf t)) 499 (display-buffer (current-buffer) t))
502 (if (not quiet) 500 (if (not quiet)
503 (message "Whitespaces: [%s%s] in %s" 501 (message "Whitespaces: [%s%s] in %s"
504 whitespace-this-modeline 502 whitespace-this-modeline
@@ -511,9 +509,7 @@ and:
511 (if (and (not quiet) (not (equal whitespace-clean-msg ""))) 509 (if (and (not quiet) (not (equal whitespace-clean-msg "")))
512 (message "%s %s" whitespace-filename 510 (message "%s %s" whitespace-filename
513 whitespace-clean-msg)))))))) 511 whitespace-clean-msg))))))))
514 (if whitespace-error 512 whitespace-error))
515 t
516 nil)))
517 513
518;;;###autoload 514;;;###autoload
519(defun whitespace-region (s e) 515(defun whitespace-region (s e)
@@ -736,23 +732,17 @@ Also with whitespaces whose testing has been turned off."
736(defun whitespace-highlight-the-space (b e) 732(defun whitespace-highlight-the-space (b e)
737 "Highlight the current line, unhighlighting a previously jumped to line." 733 "Highlight the current line, unhighlighting a previously jumped to line."
738 (if whitespace-display-spaces-in-color 734 (if whitespace-display-spaces-in-color
739 (progn 735 (let ((ol (whitespace-make-overlay b e)))
740 (whitespace-unhighlight-the-space) 736 (whitespace-unhighlight-the-space)
741 (add-to-list 'whitespace-highlighted-space 737 (push ol whitespace-highlighted-space)
742 (whitespace-make-overlay b e)) 738 (whitespace-overlay-put ol 'face 'whitespace-highlight-face))))
743 (whitespace-overlay-put (whitespace-make-overlay b e) 'face
744 'whitespace-highlight-face))))
745;; (add-hook 'pre-command-hook 'whitespace-unhighlight-the-space)) 739;; (add-hook 'pre-command-hook 'whitespace-unhighlight-the-space))
746 740
747(defun whitespace-unhighlight-the-space () 741(defun whitespace-unhighlight-the-space ()
748 "Unhighlight the currently highlight line." 742 "Unhighlight the currently highlight line."
749 (if (and whitespace-display-spaces-in-color whitespace-highlighted-space) 743 (if (and whitespace-display-spaces-in-color whitespace-highlighted-space)
750 (let ((whitespace-this-space nil)) 744 (progn
751 (while whitespace-highlighted-space 745 (mapc 'whitespace-delete-overlay whitespace-highlighted-space)
752 (setq whitespace-this-space (car whitespace-highlighted-space))
753 (setq whitespace-highlighted-space
754 (cdr whitespace-highlighted-space))
755 (whitespace-delete-overlay whitespace-this-space))
756 (setq whitespace-highlighted-space nil)) 746 (setq whitespace-highlighted-space nil))
757 (remove-hook 'pre-command-hook 'whitespace-unhighlight-the-space))) 747 (remove-hook 'pre-command-hook 'whitespace-unhighlight-the-space)))
758 748
@@ -863,5 +853,5 @@ This is meant to be added buffer-locally to `write-file-functions'."
863 853
864(provide 'whitespace) 854(provide 'whitespace)
865 855
866;;; arch-tag: 4ff44e87-b63c-402d-95a6-15e51e58bd0c 856;; arch-tag: 4ff44e87-b63c-402d-95a6-15e51e58bd0c
867;;; whitespace.el ends here 857;;; whitespace.el ends here
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index 58236e4225f..56c2e1c31e9 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -1,6 +1,6 @@
1;;; wid-edit.el --- Functions for creating and using widgets -*-byte-compile-dynamic: t;-*- 1;;; wid-edit.el --- Functions for creating and using widgets -*-byte-compile-dynamic: t;-*-
2;; 2;;
3;; Copyright (C) 1996,97,1999,2000,01,02,2003, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 1996,97,1999,2000,01,02,2003, 2004, 2005 Free Software Foundation, Inc.
4;; 4;;
5;; Author: Per Abrahamsen <abraham@dina.kvl.dk> 5;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
6;; Maintainer: FSF 6;; Maintainer: FSF
@@ -883,7 +883,9 @@ Recommended as a parent keymap for modes using widgets.")
883 (lookup-key widget-global-map (this-command-keys)))))) 883 (lookup-key widget-global-map (this-command-keys))))))
884 884
885(defface widget-button-pressed-face 885(defface widget-button-pressed-face
886 '((((class color)) 886 '((((min-colors 88) (class color))
887 (:foreground "red1"))
888 (((class color))
887 (:foreground "red")) 889 (:foreground "red"))
888 (t 890 (t
889 (:weight bold :underline t))) 891 (:weight bold :underline t)))
@@ -1185,9 +1187,17 @@ When not inside a field, move to the previous button or field."
1185 ;; or if a special `boundary' field has been added after the widget 1187 ;; or if a special `boundary' field has been added after the widget
1186 ;; field. 1188 ;; field.
1187 (if (overlayp overlay) 1189 (if (overlayp overlay)
1188 (if (and (not (eq (get-char-property (overlay-end overlay) 1190 (if (and (not (eq (with-current-buffer
1189 'field 1191 (widget-field-buffer widget)
1190 (widget-field-buffer widget)) 1192 (save-restriction
1193 ;; `widget-narrow-to-field' can be
1194 ;; active when this function is called
1195 ;; from an change-functions hook. So
1196 ;; temporarily remove field narrowing
1197 ;; before to call `get-char-property'.
1198 (widen)
1199 (get-char-property (overlay-end overlay)
1200 'field)))
1191 'boundary)) 1201 'boundary))
1192 (or widget-field-add-space 1202 (or widget-field-add-space
1193 (null (widget-get widget :size)))) 1203 (null (widget-get widget :size))))
diff --git a/lisp/woman.el b/lisp/woman.el
index e4b29374a05..4d92c9ee0c7 100644
--- a/lisp/woman.el
+++ b/lisp/woman.el
@@ -1,6 +1,6 @@
1;;; woman.el --- browse UN*X manual pages `wo (without) man' 1;;; woman.el --- browse UN*X manual pages `wo (without) man'
2 2
3;; Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 2000, 2002, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Francis J. Wright <F.J.Wright@qmul.ac.uk> 5;; Author: Francis J. Wright <F.J.Wright@qmul.ac.uk>
6;; Maintainer: Francis J. Wright <F.J.Wright@qmul.ac.uk> 6;; Maintainer: Francis J. Wright <F.J.Wright@qmul.ac.uk>
@@ -876,13 +876,16 @@ or different fonts."
876;; You should probably select either italic or underline as you prefer, but 876;; You should probably select either italic or underline as you prefer, but
877;; not both, although italic and underline work together perfectly well! 877;; not both, although italic and underline work together perfectly well!
878(defface woman-italic-face 878(defface woman-italic-face
879 `((((background light)) (:slant italic :underline t :foreground "red")) 879 `((((min-colors 88) (background light))
880 (:slant italic :underline t :foreground "red1"))
881 (((background light)) (:slant italic :underline t :foreground "red"))
880 (((background dark)) (:slant italic :underline t))) 882 (((background dark)) (:slant italic :underline t)))
881 "Face for italic font in man pages." 883 "Face for italic font in man pages."
882 :group 'woman-faces) 884 :group 'woman-faces)
883 885
884(defface woman-bold-face 886(defface woman-bold-face
885 '((((background light)) (:weight bold :foreground "blue")) 887 '((((min-colors 88) (background light)) (:weight bold :foreground "blue1"))
888 (((background light)) (:weight bold :foreground "blue"))
886 (((background dark)) (:weight bold :foreground "green2"))) 889 (((background dark)) (:weight bold :foreground "green2")))
887 "Face for bold font in man pages." 890 "Face for bold font in man pages."
888 :group 'woman-faces) 891 :group 'woman-faces)
@@ -892,6 +895,7 @@ or different fonts."
892;; non-standard fonts seem to do so badly or in idiosyncratic ways!) 895;; non-standard fonts seem to do so badly or in idiosyncratic ways!)
893(defface woman-unknown-face 896(defface woman-unknown-face
894 '((((background light)) (:foreground "brown")) 897 '((((background light)) (:foreground "brown"))
898 (((min-colors 88) (background dark)) (:foreground "cyan1"))
895 (((background dark)) (:foreground "cyan"))) 899 (((background dark)) (:foreground "cyan")))
896 "Face for all unknown fonts in man pages." 900 "Face for all unknown fonts in man pages."
897 :group 'woman-faces) 901 :group 'woman-faces)
diff --git a/lisp/xt-mouse.el b/lisp/xt-mouse.el
index 131f95db7d0..4f7e19623fe 100644
--- a/lisp/xt-mouse.el
+++ b/lisp/xt-mouse.el
@@ -155,8 +155,11 @@
155 "Toggle XTerm mouse mode. 155 "Toggle XTerm mouse mode.
156With prefix arg, turn XTerm mouse mode on iff arg is positive. 156With prefix arg, turn XTerm mouse mode on iff arg is positive.
157 157
158Turn it on to use emacs mouse commands, and off to use xterm mouse commands." 158Turn it on to use Emacs mouse commands, and off to use xterm mouse commands.
159 nil " Mouse" nil :global t 159This works in terminal emulators compatible with xterm. Only single clicks
160are supported. When turned on, the normal xterm mouse functionality is still
161available by holding down the SHIFT key while pressing the mouse button."
162 nil " Mouse" nil :global t :group 'mouse
160 (if xterm-mouse-mode 163 (if xterm-mouse-mode
161 ;; Turn it on 164 ;; Turn it on
162 (unless window-system 165 (unless window-system
diff --git a/lispref/ChangeLog b/lispref/ChangeLog
index 8a34499507f..2d3bd39ccca 100644
--- a/lispref/ChangeLog
+++ b/lispref/ChangeLog
@@ -1,3 +1,23 @@
12005-04-08 Lute Kamstra <lute@gnu.org>
2
3 * modes.texi (Search-based Fontification): Fix cross references.
4 Use consistent terminology. Document anchored highlighting.
5
62005-04-05 Lute Kamstra <lute@gnu.org>
7
8 * modes.texi (Defining Minor Modes): Document :group keyword
9 argument and its default value.
10
112005-04-03 Lute Kamstra <lute@gnu.org>
12
13 * hooks.texi (Standard Hooks): Add some hooks. Add cross
14 references and/or descriptions. Delete major mode hooks; mention
15 them as a category instead. Rename or delete obsolete hooks.
16
172005-04-02 Richard M. Stallman <rms@gnu.org>
18
19 * nonascii.texi (Coding System Basics): Another wording cleanup.
20
12005-04-01 Richard M. Stallman <rms@gnu.org> 212005-04-01 Richard M. Stallman <rms@gnu.org>
2 22
3 * nonascii.texi (Coding System Basics): Clarify previous change. 23 * nonascii.texi (Coding System Basics): Clarify previous change.
@@ -2333,7 +2353,7 @@
2333 2353
2334 * files.texi (Changing Files): copy-file allows dir as NEWNAME. 2354 * files.texi (Changing Files): copy-file allows dir as NEWNAME.
2335 (Magic File Names): Specify precedence order of handlers. 2355 (Magic File Names): Specify precedence order of handlers.
2336o 2356
2337 * commands.texi (Command Overview): Emacs server runs pre-command-hook 2357 * commands.texi (Command Overview): Emacs server runs pre-command-hook
2338 and post-command-hook. 2358 and post-command-hook.
2339 (Waiting): New calling convention for sit-for. 2359 (Waiting): New calling convention for sit-for.
diff --git a/lispref/hooks.texi b/lispref/hooks.texi
index 1aa22b94686..ea7c6605796 100644
--- a/lispref/hooks.texi
+++ b/lispref/hooks.texi
@@ -1,6 +1,6 @@
1@c -*-texinfo-*- 1@c -*-texinfo-*-
2@c This is part of the GNU Emacs Lisp Reference Manual. 2@c This is part of the GNU Emacs Lisp Reference Manual.
3@c Copyright (C) 1990, 1991, 1992, 1993, 1998, 2004 Free Software Foundation, Inc. 3@c Copyright (C) 1990, 1991, 1992, 1993, 1998, 2004, 2005 Free Software Foundation, Inc.
4@c See the file elisp.texi for copying conditions. 4@c See the file elisp.texi for copying conditions.
5@setfilename ../info/hooks 5@setfilename ../info/hooks
6@node Standard Hooks, Index, Standard Keymaps, Top 6@node Standard Hooks, Index, Standard Keymaps, Top
@@ -16,6 +16,11 @@ arguments and their values are completely ignored. The recommended way
16to put a new function on such a hook is to call @code{add-hook}. 16to put a new function on such a hook is to call @code{add-hook}.
17@xref{Hooks}, for more information about using hooks. 17@xref{Hooks}, for more information about using hooks.
18 18
19Every major mode defines a mode hook named
20@samp{@var{modename}-mode-hook}. The major mode command runs this
21normal hook with @code{run-mode-hooks} as the very last thing it does.
22@xref{Mode Hooks}. Mode hooks are omitted in the list below.
23
19The variables whose names end in @samp{-hooks} or @samp{-functions} are 24The variables whose names end in @samp{-hooks} or @samp{-functions} are
20usually @dfn{abnormal hooks}; their values are lists of functions, but 25usually @dfn{abnormal hooks}; their values are lists of functions, but
21these functions are called in a special way (they are passed arguments, 26these functions are called in a special way (they are passed arguments,
@@ -28,118 +33,229 @@ as their values. (In older Emacs versions, some of these variables had
28names ending in @samp{-hook} even though they were not normal hooks; 33names ending in @samp{-hook} even though they were not normal hooks;
29however, we have renamed all of those.) 34however, we have renamed all of those.)
30 35
31@c !!! need xref to where each hook is documented or else document it 36@c We need to xref to where each hook is documented or else document
32@c by specifying what is expected, and when it is called relative to 37@c it here.
33@c mode initialization.
34 38
35@table @code 39@table @code
36@item activate-mark-hook 40@item activate-mark-hook
41@xref{The Mark}.
42
37@item after-change-functions 43@item after-change-functions
44@xref{Change Hooks}.
45
38@item after-change-major-mode-hook 46@item after-change-major-mode-hook
47@xref{Mode Hooks}.
48
39@item after-init-hook 49@item after-init-hook
50@xref{Init File}.
51
40@item after-insert-file-functions 52@item after-insert-file-functions
53@xref{Saving Properties}.
54
41@item after-make-frame-functions 55@item after-make-frame-functions
56@xref{Creating Frames}.
57
42@item after-revert-hook 58@item after-revert-hook
59@xref{Reverting}.
60
43@item after-save-hook 61@item after-save-hook
44@item apropos-mode-hook 62@xref{Saving Buffers}.
63
45@item auto-fill-function 64@item auto-fill-function
65@xref{Auto Filling}.
66
46@item auto-save-hook 67@item auto-save-hook
68@xref{Auto-Saving}.
69
47@item before-change-functions 70@item before-change-functions
71@xref{Change Hooks}.
72
48@item before-init-hook 73@item before-init-hook
74@xref{Init File}.
75
49@item before-make-frame-hook 76@item before-make-frame-hook
77@xref{Creating Frames}.
78
50@item before-revert-hook 79@item before-revert-hook
80@xref{Reverting}.
81
51@item before-save-hook 82@item before-save-hook
83@xref{Saving Buffers}.
84
52@item blink-paren-function 85@item blink-paren-function
86@xref{Blinking}.
87
53@item buffer-access-fontify-functions 88@item buffer-access-fontify-functions
54@item c-mode-hook 89@xref{Lazy Properties}.
90
55@item calendar-load-hook 91@item calendar-load-hook
92@inforef{Calendar Customizing,, emacs-xtra}.
93
56@item change-major-mode-hook 94@item change-major-mode-hook
57@item command-history-hook 95@xref{Creating Buffer-Local}.
96
58@item command-line-functions 97@item command-line-functions
98@xref{Command-Line Arguments}.
99
59@item comment-indent-function 100@item comment-indent-function
101@xref{Options for Comments,, Options Controlling Comments, emacs, the
102GNU Emacs Manual}.
103
60@item custom-define-hook 104@item custom-define-hook
105Hook called after defining each customize option.
106
61@item deactivate-mark-hook 107@item deactivate-mark-hook
108@xref{The Mark}.
109
62@item desktop-after-read-hook 110@item desktop-after-read-hook
111Normal hook run after a successful @code{desktop-read}. May be used
112to show a buffer list. @xref{Saving Emacs Sessions,, Saving Emacs
113Sessions, emacs, the GNU Emacs Manual}.
114
63@item desktop-no-desktop-file-hook 115@item desktop-no-desktop-file-hook
116Normal hook run when @code{desktop-read} can't find a desktop file.
117May be used to show a dired buffer. @xref{Saving Emacs Sessions,,
118Saving Emacs Sessions, emacs, the GNU Emacs Manual}.
119
64@item desktop-save-hook 120@item desktop-save-hook
121Normal hook run before the desktop is saved in a desktop file. This
122is useful for truncating history lists, for example. @xref{Saving
123Emacs Sessions,, Saving Emacs Sessions, emacs, the GNU Emacs Manual}.
124
65@item diary-display-hook 125@item diary-display-hook
126@inforef{Fancy Diary Display,, emacs-xtra}.
127
66@item diary-hook 128@item diary-hook
67@item dired-mode-hook 129List of functions called after the display of the diary. Can be used
130for appointment notification.
131
68@item disabled-command-function 132@item disabled-command-function
133@xref{Disabling Commands}.
134
69@item echo-area-clear-hook 135@item echo-area-clear-hook
70@item edit-picture-hook 136@xref{The Echo Area}.
71@item electric-buffer-menu-mode-hook 137
72@item electric-command-history-hook 138@item emacs-startup-hook
73@item electric-help-mode-hook 139@xref{Init File}.
74@item emacs-lisp-mode-hook 140
75@item find-file-hook 141@item find-file-hook
142@xref{Visiting Functions}.
143
76@item find-file-not-found-functions 144@item find-file-not-found-functions
145@xref{Visiting Functions}.
146
77@item first-change-hook 147@item first-change-hook
78@item fortran-comment-hook 148@xref{Change Hooks}.
79@item fortran-mode-hook 149
80@item indent-mim-hook
81@item initial-calendar-window-hook 150@item initial-calendar-window-hook
151@inforef{Calendar Customizing,, emacs-xtra}.
152
82@item kbd-macro-termination-hook 153@item kbd-macro-termination-hook
154@xref{Keyboard Macros}.
155
83@item kill-buffer-hook 156@item kill-buffer-hook
157@xref{Killing Buffers}.
158
84@item kill-buffer-query-functions 159@item kill-buffer-query-functions
160@xref{Killing Buffers}.
161
85@item kill-emacs-hook 162@item kill-emacs-hook
163@xref{Killing Emacs}.
164
86@item kill-emacs-query-functions 165@item kill-emacs-query-functions
87@item LaTeX-mode-hook 166@xref{Killing Emacs}.
88@item ledit-mode-hook 167
89@item lisp-indent-function 168@item lisp-indent-function
90@item lisp-interaction-mode-hook 169
91@item lisp-mode-hook
92@item list-diary-entries-hook 170@item list-diary-entries-hook
93@item mail-mode-hook 171@inforef{Fancy Diary Display,, emacs-xtra}.
172
94@item mail-setup-hook 173@item mail-setup-hook
174@xref{Mail Mode Misc,, Mail Mode Miscellany, emacs, the GNU Emacs
175Manual}.
176
95@item mark-diary-entries-hook 177@item mark-diary-entries-hook
96@item medit-mode-hook 178@inforef{Fancy Diary Display,, emacs-xtra}.
179
97@item menu-bar-update-hook 180@item menu-bar-update-hook
181@xref{Menu Bar}.
182
98@item minibuffer-setup-hook 183@item minibuffer-setup-hook
184@xref{Minibuffer Misc}.
185
99@item minibuffer-exit-hook 186@item minibuffer-exit-hook
187@xref{Minibuffer Misc}.
188
100@item mouse-position-function 189@item mouse-position-function
101@item news-mode-hook 190@xref{Mouse Position}.
102@item news-reply-mode-hook 191
103@item news-setup-hook
104@item nongregorian-diary-listing-hook 192@item nongregorian-diary-listing-hook
193@inforef{Hebrew/Islamic Entries,, emacs-xtra}.
194
105@item nongregorian-diary-marking-hook 195@item nongregorian-diary-marking-hook
106@item nroff-mode-hook 196@inforef{Hebrew/Islamic Entries,, emacs-xtra}.
107@item outline-mode-hook 197
108@item plain-TeX-mode-hook
109@item post-command-hook 198@item post-command-hook
199@xref{Command Overview}.
200
110@item pre-abbrev-expand-hook 201@item pre-abbrev-expand-hook
202@xref{Abbrev Expansion}.
203
111@item pre-command-hook 204@item pre-command-hook
205@xref{Command Overview}.
206
112@item print-diary-entries-hook 207@item print-diary-entries-hook
113@item prolog-mode-hook 208@inforef{Diary Customizing,, emacs-xtra}.
114@item protect-innocence-hook 209
115@item redisplay-end-trigger-functions 210@item redisplay-end-trigger-functions
116@item rmail-edit-mode-hook 211@xref{Window Hooks}.
117@item rmail-mode-hook 212
118@item rmail-summary-mode-hook 213@item scheme-indent-function
119@item scheme-indent-hook 214
120@item scheme-mode-hook
121@item scribe-mode-hook
122@item shell-mode-hook
123@item shell-set-directory-error-hook
124@item suspend-hook 215@item suspend-hook
216@xref{Suspending Emacs}.
217
125@item suspend-resume-hook 218@item suspend-resume-hook
219@xref{Suspending Emacs}.
220
221@item temp-buffer-setup-hook
222@xref{Temporary Displays}.
223
126@item temp-buffer-show-function 224@item temp-buffer-show-function
225@xref{Temporary Displays}.
226
227@item temp-buffer-show-hook
228@xref{Temporary Displays}.
229
127@item term-setup-hook 230@item term-setup-hook
128@item terminal-mode-hook 231@xref{Terminal-Specific}.
129@item terminal-mode-break-hook 232
130@item TeX-mode-hook
131@item text-mode-hook
132@item today-visible-calendar-hook 233@item today-visible-calendar-hook
234@inforef{Calendar Customizing,, emacs-xtra}.
235
133@item today-invisible-calendar-hook 236@item today-invisible-calendar-hook
134@item vi-mode-hook 237@inforef{Calendar Customizing,, emacs-xtra}.
135@item view-hook 238
136@item window-configuration-change-hook 239@item window-configuration-change-hook
240@xref{Window Hooks}.
241
137@item window-scroll-functions 242@item window-scroll-functions
243@xref{Window Hooks}.
244
138@item window-setup-hook 245@item window-setup-hook
246@xref{Window Systems}.
247
139@item window-size-change-functions 248@item window-size-change-functions
249@xref{Window Hooks}.
250
140@item write-contents-functions 251@item write-contents-functions
252@xref{Saving Buffers}.
253
141@item write-file-functions 254@item write-file-functions
255@xref{Saving Buffers}.
256
142@item write-region-annotate-functions 257@item write-region-annotate-functions
258@xref{Saving Properties}.
143@end table 259@end table
144 260
145@ignore 261@ignore
diff --git a/lispref/modes.texi b/lispref/modes.texi
index f2cfcd2eb8c..b43b22275cc 100644
--- a/lispref/modes.texi
+++ b/lispref/modes.texi
@@ -1,6 +1,6 @@
1@c -*-texinfo-*- 1@c -*-texinfo-*-
2@c This is part of the GNU Emacs Lisp Reference Manual. 2@c This is part of the GNU Emacs Lisp Reference Manual.
3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999,
4@c 2003, 2004, 2005 Free Software Foundation, Inc. 4@c 2003, 2004, 2005 Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 5@c See the file elisp.texi for copying conditions.
6@setfilename ../info/modes 6@setfilename ../info/modes
@@ -1127,6 +1127,12 @@ used. The @var{keyword-args} consist of keywords followed by
1127corresponding values. A few keywords have special meanings: 1127corresponding values. A few keywords have special meanings:
1128 1128
1129@table @code 1129@table @code
1130@item :group @var{group}
1131Custom group name to use in all generated @code{defcustom} forms.
1132Defaults to @var{mode} without the possible trailing @samp{-mode}. Be
1133aware that this default may not be a valid customization group defined
1134with @code{defgroup}. Please make sure it is.
1135
1130@item :global @var{global} 1136@item :global @var{global}
1131If non-@code{nil} specifies that the minor mode should be global. 1137If non-@code{nil} specifies that the minor mode should be global.
1132By default, minor modes are buffer-local. 1138By default, minor modes are buffer-local.
@@ -2105,7 +2111,7 @@ processes the elements of @code{font-lock-keywords} one by one, and for
2105each element, it finds and handles all matches. Ordinarily, once 2111each element, it finds and handles all matches. Ordinarily, once
2106part of the text has been fontified already, this cannot be overridden 2112part of the text has been fontified already, this cannot be overridden
2107by a subsequent match in the same text; but you can specify different 2113by a subsequent match in the same text; but you can specify different
2108behavior using the @var{override} element of a @var{highlighter}. 2114behavior using the @var{override} element of a @var{subexp-highlighter}.
2109 2115
2110 Each element of @code{font-lock-keywords} should have one of these 2116 Each element of @code{font-lock-keywords} should have one of these
2111forms: 2117forms:
@@ -2116,14 +2122,14 @@ Highlight all matches for @var{regexp} using
2116@code{font-lock-keyword-face}. For example, 2122@code{font-lock-keyword-face}. For example,
2117 2123
2118@example 2124@example
2119;; @r{Highlight discrete occurrences of @samp{foo}} 2125;; @r{Highlight occurrences of the word @samp{foo}}
2120;; @r{using @code{font-lock-keyword-face}.} 2126;; @r{using @code{font-lock-keyword-face}.}
2121"\\<foo\\>" 2127"\\<foo\\>"
2122@end example 2128@end example
2123 2129
2124The function @code{regexp-opt} (@pxref{Syntax of Regexps}) is useful for 2130The function @code{regexp-opt} (@pxref{Regexp Functions}) is useful
2125calculating optimal regular expressions to match a number of different 2131for calculating optimal regular expressions to match a number of
2126keywords. 2132different keywords.
2127 2133
2128@item @var{function} 2134@item @var{function}
2129Find text by calling @var{function}, and highlight the matches 2135Find text by calling @var{function}, and highlight the matches
@@ -2140,10 +2146,10 @@ and with point where the previous invocation left it, until
2140@var{function} fails. On failure, @var{function} need not reset point 2146@var{function} fails. On failure, @var{function} need not reset point
2141in any particular way. 2147in any particular way.
2142 2148
2143@item (@var{matcher} . @var{match}) 2149@item (@var{matcher} . @var{subexp})
2144In this kind of element, @var{matcher} is either a regular 2150In this kind of element, @var{matcher} is either a regular
2145expression or a function, as described above. The @sc{cdr}, 2151expression or a function, as described above. The @sc{cdr},
2146@var{match}, specifies which subexpression of @var{matcher} should be 2152@var{subexp}, specifies which subexpression of @var{matcher} should be
2147highlighted (instead of the entire text that @var{matcher} matched). 2153highlighted (instead of the entire text that @var{matcher} matched).
2148 2154
2149@example 2155@example
@@ -2153,8 +2159,8 @@ highlighted (instead of the entire text that @var{matcher} matched).
2153@end example 2159@end example
2154 2160
2155If you use @code{regexp-opt} to produce the regular expression 2161If you use @code{regexp-opt} to produce the regular expression
2156@var{matcher}, then you can use @code{regexp-opt-depth} (@pxref{Syntax 2162@var{matcher}, then you can use @code{regexp-opt-depth} (@pxref{Regexp
2157of Regexps}) to calculate the value for @var{match}. 2163Functions}) to calculate the value for @var{subexp}.
2158 2164
2159@item (@var{matcher} . @var{facespec}) 2165@item (@var{matcher} . @var{facespec})
2160In this kind of element, @var{facespec} is an object which specifies 2166In this kind of element, @var{facespec} is an object which specifies
@@ -2167,37 +2173,39 @@ is a Lisp variable (a symbol), whose value should be a face name.
2167("fubar" . fubar-face) 2173("fubar" . fubar-face)
2168@end example 2174@end example
2169 2175
2170However, @var{facespec} can also be a list of the form 2176However, @var{facespec} can also be a list of the form:
2171 2177
2172@example 2178@example
2173(face @var{face} @var{prop1} @var{val1} @var{prop2} @var{val2}@dots{}) 2179(face @var{face} @var{prop1} @var{val1} @var{prop2} @var{val2}@dots{})
2174@end example 2180@end example
2175 2181
2176to specify various text properties to put on the text that matches. 2182to specify the face @var{face} and various additional text properties
2177If you do this, be sure to add the other text property names that you 2183to put on the text that matches. If you do this, be sure to add the
2178set in this way to the value of @code{font-lock-extra-managed-props} 2184other text property names that you set in this way to the value of
2179so that the properties will also be cleared out when they are no longer 2185@code{font-lock-extra-managed-props} so that the properties will also
2180appropriate. 2186be cleared out when they are no longer appropriate. Alternatively,
2187you can set the variable @code{font-lock-unfontify-region-function} to
2188a function that clears these properties.
2181 2189
2182@item (@var{matcher} . @var{highlighter}) 2190@item (@var{matcher} . @var{subexp-highlighter})
2183In this kind of element, @var{highlighter} is a list 2191In this kind of element, @var{subexp-highlighter} is a list
2184which specifies how to highlight matches found by @var{matcher}. 2192which specifies how to highlight matches found by @var{matcher}.
2185It has the form 2193It has the form:
2186 2194
2187@example 2195@example
2188(@var{subexp} @var{facespec} @var{override} @var{laxmatch}) 2196(@var{subexp} @var{facespec} [[@var{override} [@var{laxmatch}]])
2189@end example 2197@end example
2190 2198
2191The @sc{car}, @var{subexp}, is an integer specifying which subexpression 2199The @sc{car}, @var{subexp}, is an integer specifying which subexpression
2192of the match to fontify (0 means the entire matching text). The second 2200of the match to fontify (0 means the entire matching text). The second
2193subelement, @var{facespec}, specifies the face, as described above. 2201subelement, @var{facespec}, specifies the face, as described above.
2194 2202
2195The last two values in @var{highlighter}, @var{override} and 2203The last two values in @var{subexp-highlighter}, @var{override} and
2196@var{laxmatch}, are flags. If @var{override} is @code{t}, this 2204@var{laxmatch}, are optional flags. If @var{override} is @code{t},
2197element can override existing fontification made by previous elements 2205this element can override existing fontification made by previous
2198of @code{font-lock-keywords}. If it is @code{keep}, then each 2206elements of @code{font-lock-keywords}. If it is @code{keep}, then
2199character is fontified if it has not been fontified already by some 2207each character is fontified if it has not been fontified already by
2200other element. If it is @code{prepend}, the face specified by 2208some other element. If it is @code{prepend}, the face specified by
2201@var{facespec} is added to the beginning of the @code{font-lock-face} 2209@var{facespec} is added to the beginning of the @code{font-lock-face}
2202property. If it is @code{append}, the face is added to the end of the 2210property. If it is @code{append}, the face is added to the end of the
2203@code{font-lock-face} property. 2211@code{font-lock-face} property.
@@ -2213,8 +2221,8 @@ terminates search-based fontification.
2213Here are some examples of elements of this kind, and what they do: 2221Here are some examples of elements of this kind, and what they do:
2214 2222
2215@smallexample 2223@smallexample
2216;; @r{Highlight occurrences of either @samp{foo} or @samp{bar},} 2224;; @r{Highlight occurrences of either @samp{foo} or @samp{bar}, using}
2217;; @r{using @code{foo-bar-face}, even if they have already been highlighted.} 2225;; @r{@code{foo-bar-face}, even if they have already been highlighted.}
2218;; @r{@code{foo-bar-face} should be a variable whose value is a face.} 2226;; @r{@code{foo-bar-face} should be a variable whose value is a face.}
2219("foo\\|bar" 0 foo-bar-face t) 2227("foo\\|bar" 0 foo-bar-face t)
2220 2228
@@ -2224,64 +2232,71 @@ Here are some examples of elements of this kind, and what they do:
2224(fubar-match 1 fubar-face) 2232(fubar-match 1 fubar-face)
2225@end smallexample 2233@end smallexample
2226 2234
2227@item (@var{matcher} @var{highlighters}@dots{}) 2235@item (@var{matcher} . @var{anchored-highlighter})
2228This sort of element specifies several @var{highlighter} lists for a 2236In this kind of element, @var{anchored-highlighter} specifies how to
2229single @var{matcher}. In order for this to be useful, each 2237highlight text that follows a match found by @var{matcher}. So a
2230@var{highlighter} should have a different value of @var{subexp}; that is, 2238match found by @var{matcher} acts as the anchor for further searches
2231each one should apply to a different subexpression of @var{matcher}. 2239specified by @var{anchored-highlighter}. @var{anchored-highlighter}
2240is a list of the following form:
2232 2241
2233@ignore 2242@example
2234@item (@var{matcher} . @var{anchored}) 2243(@var{anchored-matcher} @var{pre-form} @var{post-form}
2235In this kind of element, @var{anchored} acts much like a 2244 @var{subexp-highlighters}@dots{})
2236@var{highlighter}, but it is more complex and can specify multiple 2245@end example
2237successive searches.
2238 2246
2239For highlighting single items, typically only @var{highlighter} is 2247Here, @var{anchored-matcher}, like @var{matcher}, is either a regular
2240required. However, if an item or (typically) items are to be 2248expression or a function. After a match of @var{matcher} is found,
2241highlighted following the instance of another item (the anchor) then 2249point is at the end of the match. Now, Font Lock evaluates the form
2242@var{anchored} may be required. 2250@var{pre-form}. Then it searches for matches of
2251@var{anchored-matcher} and uses @var{subexp-highlighters} to highlight
2252these. A @var{subexp-highlighter} is as described above. Finally,
2253Font Lock evaluates @var{post-form}.
2254
2255The forms @var{pre-form} and @var{post-form} can be used to initialize
2256before, and cleanup after, @var{anchored-matcher} is used. Typically,
2257@var{pre-form} is used to move point to some position relative to the
2258match of @var{matcher}, before starting with @var{anchored-matcher}.
2259@var{post-form} might be used to move back, before resuming with
2260@var{matcher}.
2261
2262After Font Lock evaluates @var{pre-form}, it does not search for
2263@var{anchored-matcher} beyond the end of the line. However, if
2264@var{pre-form} returns a buffer position that is greater than the
2265position of point after @var{pre-form} is evaluated, then the position
2266returned by @var{pre-form} is used as the limit of the search instead.
2267It is generally a bad idea to return a position greater than the end
2268of the line; in other words, the @var{anchored-matcher} search should
2269not span lines.
2243 2270
2244It has this format: 2271For example,
2245 2272
2246@example 2273@smallexample
2247(@var{submatcher} @var{pre-match-form} @var{post-match-form} @var{highlighters}@dots{}) 2274;; @r{Highlight occurrences of the word @samp{item} following}
2248@end example 2275;; @r{an occurrence of the word @samp{anchor} (on the same line)}
2276;; @r{in the value of @code{item-face}.}
2277("\\<anchor\\>" "\\<item\\>" nil nil (0 item-face))
2278@end smallexample
2249 2279
2250@c I can't parse this text -- rms 2280Here, @var{pre-form} and @var{post-form} are @code{nil}. Therefore
2251where @var{submatcher} is much like @var{matcher}, with one 2281searching for @samp{item} starts at the end of the match of
2252exception---see below. @var{pre-match-form} and @var{post-match-form} 2282@samp{anchor}, and searching for subsequent instances of @samp{anchor}
2253are evaluated before the first, and after the last, instance 2283resumes from where searching for @samp{item} concluded.
2254@var{anchored}'s @var{submatcher} is used. Therefore they can be used
2255to initialize before, and cleanup after, @var{submatcher} is used.
2256Typically, @var{pre-match-form} is used to move to some position
2257relative to the original @var{submatcher}, before starting with
2258@var{anchored}'s @var{submatcher}. @var{post-match-form} might be used
2259to move, before resuming with @var{anchored}'s parent's @var{matcher}.
2260 2284
2261For example, an element of the form highlights (if not already highlighted): 2285@item (@var{matcher} @var{highlighters}@dots{})
2286This sort of element specifies several @var{highlighter} lists for a
2287single @var{matcher}. A @var{highlighter} list can be of the type
2288@var{subexp-highlighter} or @var{anchored-highlighter} as described
2289above.
2262 2290
2263@example 2291For example,
2264("\\<anchor\\>" (0 anchor-face) ("\\<item\\>" nil nil (0 item-face)))
2265@end example
2266 2292
2267Discrete occurrences of @samp{anchor} in the value of 2293@smallexample
2268@code{anchor-face}, and subsequent discrete occurrences of @samp{item} 2294;; @r{Highlight occurrences of the word @samp{anchor} in the value}
2269(on the same line) in the value of @code{item-face}. (Here 2295;; @r{of @code{anchor-face}, and subsequent occurrences of the word}
2270@var{pre-match-form} and @var{post-match-form} are @code{nil}. 2296;; @r{@samp{item} (on the same line) in the value of @code{item-face}.}
2271Therefore @samp{item} is initially searched for starting from the end of 2297("\\<anchor\\>" (0 anchor-face)
2272the match of @samp{anchor}, and searching for subsequent instance of 2298 ("\\<item\\>" nil nil (0 item-face)))
2273@samp{anchor} resumes from where searching for @samp{item} concluded.) 2299@end smallexample
2274
2275The above-mentioned exception is as follows. The limit of the
2276@var{submatcher} search defaults to the end of the line after
2277@var{pre-match-form} is evaluated. However, if @var{pre-match-form}
2278returns a position greater than the position after @var{pre-match-form}
2279is evaluated, that position is used as the limit of the search. It is
2280generally a bad idea to return a position greater than the end of the
2281line; in other words, the @var{submatcher} search should not span lines.
2282
2283@item (@var{matcher} @var{highlighters-or-anchoreds} ...)
2284@end ignore
2285 2300
2286@item (eval . @var{form}) 2301@item (eval . @var{form})
2287Here @var{form} is an expression to be evaluated the first time 2302Here @var{form} is an expression to be evaluated the first time
@@ -2295,7 +2310,7 @@ to match text which spans lines; this does not work reliably. While
2295updating when you edit the buffer does not, since it considers text one 2310updating when you edit the buffer does not, since it considers text one
2296line at a time. If you have patterns that typically only span one 2311line at a time. If you have patterns that typically only span one
2297line but can occasionally span two or three, such as 2312line but can occasionally span two or three, such as
2298@samp{<title>...</title>}, you can ask font-lock to be more careful by 2313@samp{<title>...</title>}, you can ask Font Lock to be more careful by
2299setting @code{font-lock-multiline} to @code{t}. But it still will not 2314setting @code{font-lock-multiline} to @code{t}. But it still will not
2300work in all cases. 2315work in all cases.
2301 2316
diff --git a/lispref/nonascii.texi b/lispref/nonascii.texi
index 4e38c300a61..aaa23e90a48 100644
--- a/lispref/nonascii.texi
+++ b/lispref/nonascii.texi
@@ -628,11 +628,11 @@ characters; for example, there are three coding systems for the Cyrillic
628conversion, but some of them leave the choice unspecified---to be chosen 628conversion, but some of them leave the choice unspecified---to be chosen
629heuristically for each file, based on the data. 629heuristically for each file, based on the data.
630 630
631In general, a coding system doesn't guarantee roundtrip identity: 631 In general, a coding system doesn't guarantee roundtrip identity:
632decoding text then encoding the result in the same coding system can 632decoding a byte sequence using coding system, then encoding the
633produce a different byte sequence from the one you originally decoded. 633resulting text in the same coding system, can produce a different byte
634However, the following coding systems do guarantee that the result 634sequence. However, the following coding systems do guarantee that the
635will be the same as what you originally decoded: 635byte sequence will be the same as what you originally decoded:
636 636
637@quotation 637@quotation
638chinese-big5 chinese-iso-8bit cyrillic-iso-8bit emacs-mule 638chinese-big5 chinese-iso-8bit cyrillic-iso-8bit emacs-mule
@@ -641,13 +641,13 @@ iso-latin-4 iso-latin-5 iso-latin-8 iso-latin-9 iso-safe
641japanese-iso-8bit japanese-shift-jis korean-iso-8bit raw-text 641japanese-iso-8bit japanese-shift-jis korean-iso-8bit raw-text
642@end quotation 642@end quotation
643 643
644Encoding buffer text and then decoding the result can also fail to 644 Encoding buffer text and then decoding the result can also fail to
645reproduce the original text. For instance, when you encode Latin-2 645reproduce the original text. For instance, if you encode Latin-2
646characters with @code{utf-8} and decode the result using the same 646characters with @code{utf-8} and decode the result using the same
647coding system, you'll get Unicode characters (of charset 647coding system, you'll get Unicode characters (of charset
648@code{mule-unicode-0100-24ff}). When you encode Unicode characters 648@code{mule-unicode-0100-24ff}). If you encode Unicode characters with
649with @code{iso-latin-2} and decode them back with the same coding 649@code{iso-latin-2} and decode the result with the same coding system,
650system, you'll get Latin-2 characters. 650you'll get Latin-2 characters.
651 651
652@cindex end of line conversion 652@cindex end of line conversion
653 @dfn{End of line conversion} handles three different conventions used 653 @dfn{End of line conversion} handles three different conventions used
diff --git a/mac/ChangeLog b/mac/ChangeLog
index 8b12032ce5c..9a1ded737ff 100644
--- a/mac/ChangeLog
+++ b/mac/ChangeLog
@@ -1,3 +1,11 @@
12005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings
4 (CFBundleShortVersionString, CFBundleGetInfoString): Fix version
5 number and copyright.
6
7 * Emacs.r (DITL, vers): Likewise.
8
12005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 92005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2 10
3 * Emacs.app/Contents/Info.plist (CFBundleIdentifier): Change to 11 * Emacs.app/Contents/Info.plist (CFBundleIdentifier): Change to
diff --git a/mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings b/mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings
index b111726765b..8aa3d82c261 100644
--- a/mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings
+++ b/mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings
@@ -1,5 +1,5 @@
1/* Localized versions of Info.plist keys */ 1/* Localized versions of Info.plist keys */
2 2
3CFBundleName = "Emacs"; 3CFBundleName = "Emacs";
4CFBundleShortVersionString = "Emacs version 21"; 4CFBundleShortVersionString = "22.0.50";
5CFBundleGetInfoString = "Emacs version 21, Copyright 2002 FSF."; 5CFBundleGetInfoString = "22.0.50, Copyright (C) 2005 Free Software Foundation, Inc.";
diff --git a/mac/src/Emacs.r b/mac/src/Emacs.r
index 1403a24721c..804e55f700b 100644
--- a/mac/src/Emacs.r
+++ b/mac/src/Emacs.r
@@ -141,7 +141,7 @@ resource 'DITL' (128, purgeable) {
141 {10, 60, 72, 278}, 141 {10, 60, 72, 278},
142 StaticText { 142 StaticText {
143 disabled, 143 disabled,
144 "GNU Emacs 21 for Mac OS" 144 "GNU Emacs 22 for Mac OS"
145 } 145 }
146 } 146 }
147}; 147};
@@ -215,14 +215,14 @@ resource 'FREF' (129) {
215}; 215};
216 216
217resource 'vers' (1) { 217resource 'vers' (1) {
218 0x1, 218 0x22, /* Major revision in BCD */
219 0x0, 219 0x0, /* Minor revision in BCD */
220 development, 220 development, /* development, alpha, beta, or final (release) */
221 0x0, 221 50, /* Non-final release # */
222 0, 222 0, /* Region code */
223 "d6", 223 "22.0.50", /* Short version number */
224 "GNU Emacs 21.1 for Mac OS\n\0xa9 2" 224 "22.0.50, Copyright \0xa9 2005 "
225 "000 Free Software Foundation" 225 "Free Software Foundation, Inc." /* Long version number */
226}; 226};
227 227
228data 'EMAx' (0, "Owner resource") { 228data 'EMAx' (0, "Owner resource") {
diff --git a/man/ChangeLog b/man/ChangeLog
index 4a51f051431..f91aba65fed 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,3 +1,29 @@
12005-04-06 Kim F. Storm <storm@cua.dk>
2
3 * cmdargs.texi (Initial Options): Add --bare-bones alias for -Q.
4
52005-04-04 Luc Teirlinck <teirllm@auburn.edu>
6
7 * dired.texi (Dired Visiting): `dired-view-command-alist' has been
8 deleted.
9 (Marks vs Flags): Add some convenient key bindings.
10 (Hiding Subdirectories): Delete redundant and inaccurate sentence.
11 (Misc Dired Features): Correct and expand description of `w' command.
12
13 * frames.texi (XTerm Mouse): Delete apparently false info.
14 The GNU/Linux console currently does not appear to support
15 `xterm-mouse-mode'.
16
172005-04-04 Jay Belanger <belanger@truman.edu>
18
19 * calc.texi: Change Calc version number.
20 (Customizable variables): Fix description of calc-language-alist.
21 (Copying): Put in version 2 of GPL.
22
232005-04-03 Glenn Morris <gmorris@ast.cam.ac.uk>
24
25 * calendar.texi (Diary): Mention shell utility `calendar'.
26
12005-04-01 Jay Belanger <belanger@truman.edu> 272005-04-01 Jay Belanger <belanger@truman.edu>
2 28
3 * calc.texi (Troubleshooting Commands): Remove comment about 29 * calc.texi (Troubleshooting Commands): Remove comment about
diff --git a/man/calc.texi b/man/calc.texi
index 087cdbe6457..0cd28e5bf8a 100644
--- a/man/calc.texi
+++ b/man/calc.texi
@@ -3,7 +3,7 @@
3@c smallbook 3@c smallbook
4@setfilename ../info/calc 4@setfilename ../info/calc
5@c [title] 5@c [title]
6@settitle GNU Emacs Calc 2.02g Manual 6@settitle GNU Emacs Calc 2.1 Manual
7@setchapternewpage odd 7@setchapternewpage odd
8@comment %**end of header (This is for running Texinfo on a region.) 8@comment %**end of header (This is for running Texinfo on a region.)
9 9
@@ -108,7 +108,7 @@ Software Foundation raise funds for GNU development.''
108@sp 6 108@sp 6
109@center @titlefont{Calc Manual} 109@center @titlefont{Calc Manual}
110@sp 4 110@sp 4
111@center GNU Emacs Calc Version 2.02g 111@center GNU Emacs Calc Version 2.1
112@c [volume] 112@c [volume]
113@sp 1 113@sp 1
114@center March 2005 114@center March 2005
@@ -180,11 +180,13 @@ longer Info tutorial.)
180 180
181@node Copying, Getting Started, Top, Top 181@node Copying, Getting Started, Top, Top
182@unnumbered GNU GENERAL PUBLIC LICENSE 182@unnumbered GNU GENERAL PUBLIC LICENSE
183@center Version 1, February 1989 183@center Version 2, June 1991
184
185@c This file is intended to be included in another file.
184 186
185@display 187@display
186Copyright @copyright{} 1989 Free Software Foundation, Inc. 188Copyright @copyright{} 1989, 1991 Free Software Foundation, Inc.
187675 Mass Ave, Cambridge, MA 02139, USA 18959 Temple Place - Suite 330, Boston, MA 02111-1307, USA
188 190
189Everyone is permitted to copy and distribute verbatim copies 191Everyone is permitted to copy and distribute verbatim copies
190of this license document, but changing it is not allowed. 192of this license document, but changing it is not allowed.
@@ -192,30 +194,33 @@ of this license document, but changing it is not allowed.
192 194
193@unnumberedsec Preamble 195@unnumberedsec Preamble
194 196
195 The license agreements of most software companies try to keep users 197 The licenses for most software are designed to take away your
196at the mercy of those companies. By contrast, our General Public 198freedom to share and change it. By contrast, the GNU General Public
197License is intended to guarantee your freedom to share and change free 199License is intended to guarantee your freedom to share and change free
198software---to make sure the software is free for all its users. The 200software---to make sure the software is free for all its users. This
199General Public License applies to the Free Software Foundation's 201General Public License applies to most of the Free Software
200software and to any other program whose authors commit to using it. 202Foundation's software and to any other program whose authors commit to
201You can use it for your programs, too. 203using it. (Some other Free Software Foundation software is covered by
204the GNU Library General Public License instead.) You can apply it to
205your programs, too.
202 206
203 When we speak of free software, we are referring to freedom, not 207 When we speak of free software, we are referring to freedom, not
204price. Specifically, the General Public License is designed to make 208price. Our General Public Licenses are designed to make sure that you
205sure that you have the freedom to give away or sell copies of free 209have the freedom to distribute copies of free software (and charge for
206software, that you receive source code or can get it if you want it, 210this service if you wish), that you receive source code or can get it
207that you can change the software or use pieces of it in new free 211if you want it, that you can change the software or use pieces of it
208programs; and that you know you can do these things. 212in new free programs; and that you know you can do these things.
209 213
210 To protect your rights, we need to make restrictions that forbid 214 To protect your rights, we need to make restrictions that forbid
211anyone to deny you these rights or to ask you to surrender the rights. 215anyone to deny you these rights or to ask you to surrender the rights.
212These restrictions translate to certain responsibilities for you if you 216These restrictions translate to certain responsibilities for you if you
213distribute copies of the software, or if you modify it. 217distribute copies of the software, or if you modify it.
214 218
215 For example, if you distribute copies of a such a program, whether 219 For example, if you distribute copies of such a program, whether
216gratis or for a fee, you must give the recipients all the rights that 220gratis or for a fee, you must give the recipients all the rights that
217you have. You must make sure that they, too, receive or can get the 221you have. You must make sure that they, too, receive or can get the
218source code. And you must tell them their rights. 222source code. And you must show them these terms so they know their
223rights.
219 224
220 We protect your rights with two steps: (1) copyright the software, and 225 We protect your rights with two steps: (1) copyright the software, and
221(2) offer you this license which gives you legal permission to copy, 226(2) offer you this license which gives you legal permission to copy,
@@ -228,128 +233,216 @@ want its recipients to know that what they have is not the original, so
228that any problems introduced by others will not reflect on the original 233that any problems introduced by others will not reflect on the original
229authors' reputations. 234authors' reputations.
230 235
236 Finally, any free program is threatened constantly by software
237patents. We wish to avoid the danger that redistributors of a free
238program will individually obtain patent licenses, in effect making the
239program proprietary. To prevent this, we have made it clear that any
240patent must be licensed for everyone's free use or not licensed at all.
241
231 The precise terms and conditions for copying, distribution and 242 The precise terms and conditions for copying, distribution and
232modification follow. 243modification follow.
233 244
234@iftex 245@iftex
235@unnumberedsec TERMS AND CONDITIONS 246@unnumberedsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
236@end iftex 247@end iftex
237@ifinfo 248@ifinfo
238@center TERMS AND CONDITIONS 249@center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
239@end ifinfo 250@end ifinfo
240 251
241@enumerate 252@enumerate 0
242@item 253@item
243This License Agreement applies to any program or other work which 254This License applies to any program or other work which contains
244contains a notice placed by the copyright holder saying it may be 255a notice placed by the copyright holder saying it may be distributed
245distributed under the terms of this General Public License. The 256under the terms of this General Public License. The ``Program'', below,
246``Program'', below, refers to any such program or work, and a ``work based 257refers to any such program or work, and a ``work based on the Program''
247on the Program'' means either the Program or any work containing the 258means either the Program or any derivative work under copyright law:
248Program or a portion of it, either verbatim or with modifications. Each 259that is to say, a work containing the Program or a portion of it,
249licensee is addressed as ``you''. 260either verbatim or with modifications and/or translated into another
261language. (Hereinafter, translation is included without limitation in
262the term ``modification''.) Each licensee is addressed as ``you''.
263
264Activities other than copying, distribution and modification are not
265covered by this License; they are outside its scope. The act of
266running the Program is not restricted, and the output from the Program
267is covered only if its contents constitute a work based on the
268Program (independent of having been made by running the Program).
269Whether that is true depends on what the Program does.
250 270
251@item 271@item
252You may copy and distribute verbatim copies of the Program's source 272You may copy and distribute verbatim copies of the Program's
253code as you receive it, in any medium, provided that you conspicuously and 273source code as you receive it, in any medium, provided that you
254appropriately publish on each copy an appropriate copyright notice and 274conspicuously and appropriately publish on each copy an appropriate
255disclaimer of warranty; keep intact all the notices that refer to this 275copyright notice and disclaimer of warranty; keep intact all the
256General Public License and to the absence of any warranty; and give any 276notices that refer to this License and to the absence of any warranty;
257other recipients of the Program a copy of this General Public License 277and give any other recipients of the Program a copy of this License
258along with the Program. You may charge a fee for the physical act of 278along with the Program.
259transferring a copy.
260 279
261@item 280You may charge a fee for the physical act of transferring a copy, and
262You may modify your copy or copies of the Program or any portion of 281you may at your option offer warranty protection in exchange for a fee.
263it, and copy and distribute such modifications under the terms of Paragraph
2641 above, provided that you also do the following:
265 282
266@itemize @bullet
267@item 283@item
268cause the modified files to carry prominent notices stating that 284You may modify your copy or copies of the Program or any portion
269you changed the files and the date of any change; and 285of it, thus forming a work based on the Program, and copy and
286distribute such modifications or work under the terms of Section 1
287above, provided that you also meet all of these conditions:
270 288
289@enumerate a
271@item 290@item
272cause the whole of any work that you distribute or publish, that 291You must cause the modified files to carry prominent notices
273in whole or in part contains the Program or any part thereof, either 292stating that you changed the files and the date of any change.
274with or without modifications, to be licensed at no charge to all
275third parties under the terms of this General Public License (except
276that you may choose to grant warranty protection to some or all
277third parties, at your option).
278 293
279@item 294@item
280If the modified program normally reads commands interactively when 295You must cause any work that you distribute or publish, that in
281run, you must cause it, when started running for such interactive use 296whole or in part contains or is derived from the Program or any
282in the simplest and most usual way, to print or display an 297part thereof, to be licensed as a whole at no charge to all third
283announcement including an appropriate copyright notice and a notice 298parties under the terms of this License.
284that there is no warranty (or else, saying that you provide a
285warranty) and that users may redistribute the program under these
286conditions, and telling the user how to view a copy of this General
287Public License.
288 299
289@item 300@item
290You may charge a fee for the physical act of transferring a 301If the modified program normally reads commands interactively
291copy, and you may at your option offer warranty protection in 302when run, you must cause it, when started running for such
292exchange for a fee. 303interactive use in the most ordinary way, to print or display an
293@end itemize 304announcement including an appropriate copyright notice and a
305notice that there is no warranty (or else, saying that you provide
306a warranty) and that users may redistribute the program under
307these conditions, and telling the user how to view a copy of this
308License. (Exception: if the Program itself is interactive but
309does not normally print such an announcement, your work based on
310the Program is not required to print an announcement.)
311@end enumerate
294 312
295Mere aggregation of another independent work with the Program (or its 313These requirements apply to the modified work as a whole. If
296derivative) on a volume of a storage or distribution medium does not bring 314identifiable sections of that work are not derived from the Program,
297the other work under the scope of these terms. 315and can be reasonably considered independent and separate works in
316themselves, then this License, and its terms, do not apply to those
317sections when you distribute them as separate works. But when you
318distribute the same sections as part of a whole which is a work based
319on the Program, the distribution of the whole must be on the terms of
320this License, whose permissions for other licensees extend to the
321entire whole, and thus to each and every part regardless of who wrote it.
322
323Thus, it is not the intent of this section to claim rights or contest
324your rights to work written entirely by you; rather, the intent is to
325exercise the right to control the distribution of derivative or
326collective works based on the Program.
327
328In addition, mere aggregation of another work not based on the Program
329with the Program (or with a work based on the Program) on a volume of
330a storage or distribution medium does not bring the other work under
331the scope of this License.
298 332
299@item 333@item
300You may copy and distribute the Program (or a portion or derivative of 334You may copy and distribute the Program (or a work based on it,
301it, under Paragraph 2) in object code or executable form under the terms of 335under Section 2) in object code or executable form under the terms of
302Paragraphs 1 and 2 above provided that you also do one of the following: 336Sections 1 and 2 above provided that you also do one of the following:
303 337
304@itemize @bullet 338@enumerate a
305@item 339@item
306accompany it with the complete corresponding machine-readable 340Accompany it with the complete corresponding machine-readable
307source code, which must be distributed under the terms of 341source code, which must be distributed under the terms of Sections
308Paragraphs 1 and 2 above; or, 3421 and 2 above on a medium customarily used for software interchange; or,
309 343
310@item 344@item
311accompany it with a written offer, valid for at least three 345Accompany it with a written offer, valid for at least three
312years, to give any third party free (except for a nominal charge 346years, to give any third party, for a charge no more than your
313for the cost of distribution) a complete machine-readable copy of the 347cost of physically performing source distribution, a complete
314corresponding source code, to be distributed under the terms of 348machine-readable copy of the corresponding source code, to be
315Paragraphs 1 and 2 above; or, 349distributed under the terms of Sections 1 and 2 above on a medium
350customarily used for software interchange; or,
316 351
317@item 352@item
318accompany it with the information you received as to where the 353Accompany it with the information you received as to the offer
319corresponding source code may be obtained. (This alternative is 354to distribute corresponding source code. (This alternative is
320allowed only for noncommercial distribution and only if you 355allowed only for noncommercial distribution and only if you
321received the program in object code or executable form alone.) 356received the program in object code or executable form with such
322@end itemize 357an offer, in accord with Subsection b above.)
358@end enumerate
323 359
324Source code for a work means the preferred form of the work for making 360The source code for a work means the preferred form of the work for
325modifications to it. For an executable file, complete source code means 361making modifications to it. For an executable work, complete source
326all the source code for all modules it contains; but, as a special 362code means all the source code for all modules it contains, plus any
327exception, it need not include source code for modules which are standard 363associated interface definition files, plus the scripts used to
328libraries that accompany the operating system on which the executable 364control compilation and installation of the executable. However, as a
329file runs, or for standard header files or definitions files that 365special exception, the source code distributed need not include
330accompany that operating system. 366anything that is normally distributed (in either source or binary
367form) with the major components (compiler, kernel, and so on) of the
368operating system on which the executable runs, unless that component
369itself accompanies the executable.
370
371If distribution of executable or object code is made by offering
372access to copy from a designated place, then offering equivalent
373access to copy the source code from the same place counts as
374distribution of the source code, even though third parties are not
375compelled to copy the source along with the object code.
331 376
332@item 377@item
333You may not copy, modify, sublicense, distribute or transfer the 378You may not copy, modify, sublicense, or distribute the Program
334Program except as expressly provided under this General Public License. 379except as expressly provided under this License. Any attempt
335Any attempt otherwise to copy, modify, sublicense, distribute or transfer 380otherwise to copy, modify, sublicense or distribute the Program is
336the Program is void, and will automatically terminate your rights to use 381void, and will automatically terminate your rights under this License.
337the Program under this License. However, parties who have received 382However, parties who have received copies, or rights, from you under
338copies, or rights to use copies, from you under this General Public 383this License will not have their licenses terminated so long as such
339License will not have their licenses terminated so long as such parties 384parties remain in full compliance.
340remain in full compliance.
341 385
342@item 386@item
343By copying, distributing or modifying the Program (or any work based 387You are not required to accept this License, since you have not
344on the Program) you indicate your acceptance of this license to do so, 388signed it. However, nothing else grants you permission to modify or
345and all its terms and conditions. 389distribute the Program or its derivative works. These actions are
390prohibited by law if you do not accept this License. Therefore, by
391modifying or distributing the Program (or any work based on the
392Program), you indicate your acceptance of this License to do so, and
393all its terms and conditions for copying, distributing or modifying
394the Program or works based on it.
346 395
347@item 396@item
348Each time you redistribute the Program (or any work based on the 397Each time you redistribute the Program (or any work based on the
349Program), the recipient automatically receives a license from the original 398Program), the recipient automatically receives a license from the
350licensor to copy, distribute or modify the Program subject to these 399original licensor to copy, distribute or modify the Program subject to
351terms and conditions. You may not impose any further restrictions on the 400these terms and conditions. You may not impose any further
352recipients' exercise of the rights granted herein. 401restrictions on the recipients' exercise of the rights granted herein.
402You are not responsible for enforcing compliance by third parties to
403this License.
404
405@item
406If, as a consequence of a court judgment or allegation of patent
407infringement or for any other reason (not limited to patent issues),
408conditions are imposed on you (whether by court order, agreement or
409otherwise) that contradict the conditions of this License, they do not
410excuse you from the conditions of this License. If you cannot
411distribute so as to satisfy simultaneously your obligations under this
412License and any other pertinent obligations, then as a consequence you
413may not distribute the Program at all. For example, if a patent
414license would not permit royalty-free redistribution of the Program by
415all those who receive copies directly or indirectly through you, then
416the only way you could satisfy both it and this License would be to
417refrain entirely from distribution of the Program.
418
419If any portion of this section is held invalid or unenforceable under
420any particular circumstance, the balance of the section is intended to
421apply and the section as a whole is intended to apply in other
422circumstances.
423
424It is not the purpose of this section to induce you to infringe any
425patents or other property right claims or to contest validity of any
426such claims; this section has the sole purpose of protecting the
427integrity of the free software distribution system, which is
428implemented by public license practices. Many people have made
429generous contributions to the wide range of software distributed
430through that system in reliance on consistent application of that
431system; it is up to the author/donor to decide if he or she is willing
432to distribute software through any other system and a licensee cannot
433impose that choice.
434
435This section is intended to make thoroughly clear what is believed to
436be a consequence of the rest of this License.
437
438@item
439If the distribution and/or use of the Program is restricted in
440certain countries either by patents or by copyrighted interfaces, the
441original copyright holder who places the Program under this License
442may add an explicit geographical distribution limitation excluding
443those countries, so that distribution is permitted only in or among
444countries not thus excluded. In such case, this License incorporates
445the limitation as if written in the body of this License.
353 446
354@item 447@item
355The Free Software Foundation may publish revised and/or new versions 448The Free Software Foundation may publish revised and/or new versions
@@ -358,11 +451,11 @@ be similar in spirit to the present version, but may differ in detail to
358address new problems or concerns. 451address new problems or concerns.
359 452
360Each version is given a distinguishing version number. If the Program 453Each version is given a distinguishing version number. If the Program
361specifies a version number of the license which applies to it and ``any 454specifies a version number of this License which applies to it and ``any
362later version'', you have the option of following the terms and conditions 455later version'', you have the option of following the terms and conditions
363either of that version or of any later version published by the Free 456either of that version or of any later version published by the Free
364Software Foundation. If the Program does not specify a version number of 457Software Foundation. If the Program does not specify a version number of
365the license, you may choose any version ever published by the Free Software 458this License, you may choose any version ever published by the Free Software
366Foundation. 459Foundation.
367 460
368@item 461@item
@@ -393,17 +486,91 @@ PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
393REPAIR OR CORRECTION. 486REPAIR OR CORRECTION.
394 487
395@item 488@item
396IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL 489IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
397ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 490WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
398REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, 491REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
399INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES 492INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
400ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT 493OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
401LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES 494TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
402SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE 495YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
403WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN 496PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
404ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 497POSSIBILITY OF SUCH DAMAGES.
405@end enumerate 498@end enumerate
406 499
500@iftex
501@heading END OF TERMS AND CONDITIONS
502@end iftex
503@ifinfo
504@center END OF TERMS AND CONDITIONS
505@end ifinfo
506
507@page
508@unnumberedsec Appendix: How to Apply These Terms to Your New Programs
509
510 If you develop a new program, and you want it to be of the greatest
511possible use to the public, the best way to achieve this is to make it
512free software which everyone can redistribute and change under these terms.
513
514 To do so, attach the following notices to the program. It is safest
515to attach them to the start of each source file to most effectively
516convey the exclusion of warranty; and each file should have at least
517the ``copyright'' line and a pointer to where the full notice is found.
518
519@smallexample
520@var{one line to give the program's name and a brief idea of what it does.}
521Copyright (C) @var{yyyy} @var{name of author}
522
523This program is free software; you can redistribute it and/or modify
524it under the terms of the GNU General Public License as published by
525the Free Software Foundation; either version 2 of the License, or
526(at your option) any later version.
527
528This program is distributed in the hope that it will be useful,
529but WITHOUT ANY WARRANTY; without even the implied warranty of
530MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
531GNU General Public License for more details.
532
533You should have received a copy of the GNU General Public License
534along with this program; if not, write to the Free Software
535Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
536@end smallexample
537
538Also add information on how to contact you by electronic and paper mail.
539
540If the program is interactive, make it output a short notice like this
541when it starts in an interactive mode:
542
543@smallexample
544Gnomovision version 69, Copyright (C) 19@var{yy} @var{name of author}
545Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
546This is free software, and you are welcome to redistribute it
547under certain conditions; type `show c' for details.
548@end smallexample
549
550The hypothetical commands @samp{show w} and @samp{show c} should show
551the appropriate parts of the General Public License. Of course, the
552commands you use may be called something other than @samp{show w} and
553@samp{show c}; they could even be mouse-clicks or menu items---whatever
554suits your program.
555
556You should also get your employer (if you work as a programmer) or your
557school, if any, to sign a ``copyright disclaimer'' for the program, if
558necessary. Here is a sample; alter the names:
559
560@example
561Yoyodyne, Inc., hereby disclaims all copyright interest in the program
562`Gnomovision' (which makes passes at compilers) written by James Hacker.
563
564@var{signature of Ty Coon}, 1 April 1989
565Ty Coon, President of Vice
566@end example
567
568This General Public License does not permit incorporating your program into
569proprietary programs. If your program is a subroutine library, you may
570consider it more useful to permit linking proprietary applications with the
571library. If this is what you want to do, use the GNU Library General
572Public License instead of this License.
573
407@node Getting Started, Tutorial, Copying, Top 574@node Getting Started, Tutorial, Copying, Top
408@chapter Getting Started 575@chapter Getting Started
409@noindent 576@noindent
@@ -34677,10 +34844,10 @@ enabled, it will try to use the current major mode to
34677determine what language should be used. (This can be overridden using 34844determine what language should be used. (This can be overridden using
34678Calc's mode changing commands, @xref{Mode Settings in Embedded Mode}.) 34845Calc's mode changing commands, @xref{Mode Settings in Embedded Mode}.)
34679The variable @code{calc-language-alist} consists of a list of pairs of 34846The variable @code{calc-language-alist} consists of a list of pairs of
34680the form @code{(@var{KEY} . @var{VALUE})}; for example, 34847the form @code{(@var{MAJOR-MODE} . @var{LANGUAGE})}; for example,
34681@code{(latex-mode . latex)} is one such pair. If Calc embedded is 34848@code{(latex-mode . latex)} is one such pair. If Calc embedded is
34682activated in a buffer whose major mode is @var{KEY}, it will set itself 34849activated in a buffer whose major mode is @var{MAJOR-MODE}, it will set itself
34683to use the language @var{VALUE}. 34850to use the language @var{LANGUAGE}.
34684 34851
34685The default value of @code{calc-language-alist} is 34852The default value of @code{calc-language-alist} is
34686@example 34853@example
diff --git a/man/calendar.texi b/man/calendar.texi
index 723fa7ce3c4..cf02377f1d9 100644
--- a/man/calendar.texi
+++ b/man/calendar.texi
@@ -942,7 +942,8 @@ date.
942 942
943 The name of the diary file is specified by the variable 943 The name of the diary file is specified by the variable
944@code{diary-file}; @file{~/diary} is the default. A sample diary file 944@code{diary-file}; @file{~/diary} is the default. A sample diary file
945is: 945is (note that the file format is essentially the same as that used by
946the external shell utility @samp{calendar}):
946 947
947@example 948@example
94812/22/1988 Twentieth wedding anniversary!! 94912/22/1988 Twentieth wedding anniversary!!
diff --git a/man/cmdargs.texi b/man/cmdargs.texi
index d49ffba6103..8e84978c517 100644
--- a/man/cmdargs.texi
+++ b/man/cmdargs.texi
@@ -268,6 +268,8 @@ option and @samp{-Q} are the only options that block it.
268 268
269@item -Q 269@item -Q
270@opindex -Q 270@opindex -Q
271@itemx --bare-bones
272@opindex --bare-bones
271Start emacs with minimum customizations and window decorations. 273Start emacs with minimum customizations and window decorations.
272This is like using @samp{-q} and @samp{--no-site-file}, but in 274This is like using @samp{-q} and @samp{--no-site-file}, but in
273addition it also disables the menu-bar, the tool-bar, the scroll-bars, 275addition it also disables the menu-bar, the tool-bar, the scroll-bars,
diff --git a/man/dired.texi b/man/dired.texi
index b50ac82ab0b..dfd809c7607 100644
--- a/man/dired.texi
+++ b/man/dired.texi
@@ -289,15 +289,11 @@ to display the file, like the @kbd{o} command.
289@item v 289@item v
290@kindex v @r{(Dired)} 290@kindex v @r{(Dired)}
291@findex dired-view-file 291@findex dired-view-file
292View the file described on the current line, using either an external 292View the file described on the current line, using @kbd{M-x view-file}
293viewing program or @kbd{M-x view-file} (@code{dired-view-file}). 293(@code{dired-view-file}). Viewing a file with @code{view-file} is
294 294like visiting it, but is slanted toward moving around in the file
295@vindex dired-view-command-alist
296External viewers are used for certain file types under the control of
297@code{dired-view-command-alist}. Viewing a file with @code{view-file}
298is like visiting it, but is slanted toward moving around in the file
299conveniently and does not allow changing the file. @xref{Misc File 295conveniently and does not allow changing the file. @xref{Misc File
300Ops,View File, Miscellaneous File Operations}. 296Ops, View File, Miscellaneous File Operations}.
301 297
302@item ^ 298@item ^
303@kindex ^ @r{(Dired)} 299@kindex ^ @r{(Dired)}
@@ -376,13 +372,17 @@ Move point to previous line and remove any mark on that line
376(@code{dired-unmark-backward}). 372(@code{dired-unmark-backward}).
377 373
378@item * ! 374@item * !
375@itemx U
379@kindex * ! @r{(Dired)} 376@kindex * ! @r{(Dired)}
377@kindex U @r{(Dired)}
380@findex dired-unmark-all-marks 378@findex dired-unmark-all-marks
381Remove all marks from all the files in this Dired buffer 379Remove all marks from all the files in this Dired buffer
382(@code{dired-unmark-all-marks}). 380(@code{dired-unmark-all-marks}).
383 381
384@item * ? @var{markchar} 382@item * ? @var{markchar}
383@itemx M-@key{DEL}
385@kindex * ? @r{(Dired)} 384@kindex * ? @r{(Dired)}
385@kindex M-DEL @r{(Dired)}
386@findex dired-unmark-all-files 386@findex dired-unmark-all-files
387Remove all marks that use the character @var{markchar} 387Remove all marks that use the character @var{markchar}
388(@code{dired-unmark-all-files}). The argument is a single 388(@code{dired-unmark-all-files}). The argument is a single
@@ -396,17 +396,23 @@ asking whether to remove its mark. You can answer @kbd{y} meaning yes,
396files without asking about them. 396files without asking about them.
397 397
398@item * C-n 398@item * C-n
399@itemx M-@}
399@findex dired-next-marked-file 400@findex dired-next-marked-file
400@kindex * C-n @r{(Dired)} 401@kindex * C-n @r{(Dired)}
402@kindex M-@} @r{(Dired)}
401Move down to the next marked file (@code{dired-next-marked-file}) 403Move down to the next marked file (@code{dired-next-marked-file})
402A file is ``marked'' if it has any kind of mark. 404A file is ``marked'' if it has any kind of mark.
403 405
404@item * C-p 406@item * C-p
407@itemx M-@{
405@findex dired-prev-marked-file 408@findex dired-prev-marked-file
406@kindex * C-p @r{(Dired)} 409@kindex * C-p @r{(Dired)}
410@kindex M-@{ @r{(Dired)}
407Move up to the previous marked file (@code{dired-prev-marked-file}) 411Move up to the previous marked file (@code{dired-prev-marked-file})
408 412
409@item * t 413@item t
414@itemx * t
415@kindex t @r{(Dired)}
410@kindex * t @r{(Dired)} 416@kindex * t @r{(Dired)}
411@findex dired-toggle-marks 417@findex dired-toggle-marks
412@cindex toggling marks (in Dired) 418@cindex toggling marks (in Dired)
@@ -968,9 +974,6 @@ ignore files in hidden directories even if they are marked. Thus you
968can use hiding to temporarily exclude subdirectories from operations 974can use hiding to temporarily exclude subdirectories from operations
969without having to remove the markers. 975without having to remove the markers.
970 976
971 The subdirectory hiding commands toggle; that is, they hide what was
972visible, and show what was hidden.
973
974@node Dired Updating 977@node Dired Updating
975@section Updating the Dired Buffer 978@section Updating the Dired Buffer
976@cindex updating Dired buffer 979@cindex updating Dired buffer
@@ -1145,18 +1148,18 @@ C-c}.
1145@findex dired-copy-filename-as-kill 1148@findex dired-copy-filename-as-kill
1146 The @kbd{w} command (@code{dired-copy-filename-as-kill}) puts the 1149 The @kbd{w} command (@code{dired-copy-filename-as-kill}) puts the
1147names of the marked (or next @var{n}) files into the kill ring, as if 1150names of the marked (or next @var{n}) files into the kill ring, as if
1148you had killed them with @kbd{C-w}. 1151you had killed them with @kbd{C-w}. The names are separated by a space.
1149 1152
1150 The main purpose of this command is so that you can yank the file 1153 The main purpose of this command is so that you can yank the file
1151names into arguments for other Emacs commands. It also displays what 1154names into arguments for other Emacs commands. It also displays what
1152was pushed onto the kill ring, so you can use it to display the list 1155was pushed onto the kill ring, so you can use it to display the list
1153of currently marked files in the echo area. With a zero prefix 1156of currently marked files in the echo area. With a zero prefix
1154argument @var{n}=0, this uses the absolute file name of each marked 1157argument, this uses the absolute file name of each marked file. With
1155file. With just @kbd{C-u} as the prefix argument, it uses the 1158just @kbd{C-u} as the prefix argument, it uses file names relative to
1156relative file name of each marked file. As a special case, if no 1159the Dired buffer's default directory. (This can still contain slashes
1157prefix argument is given and point is on a directory headerline, 1160if in a subdirectory.) As a special case, if point is on a directory
1158@kbd{w} gives you the name of that directory without looking for 1161headerline, @kbd{w} gives you the absolute name of that directory.
1159marked files. 1162Any prefix argument or marked files are ignored in this case.
1160 1163
1161 On the X window system, Emacs supports the ``drag and drop'' 1164 On the X window system, Emacs supports the ``drag and drop''
1162protocol. You can drag a file object from another program, and drop 1165protocol. You can drag a file object from another program, and drop
diff --git a/man/frames.texi b/man/frames.texi
index dee29afe050..d09fdca85d7 100644
--- a/man/frames.texi
+++ b/man/frames.texi
@@ -1058,9 +1058,7 @@ window. In a terminal emulator which is compatible with @code{xterm},
1058you can use @kbd{M-x xterm-mouse-mode} to enable simple use of the 1058you can use @kbd{M-x xterm-mouse-mode} to enable simple use of the
1059mouse---only single clicks are supported. The normal @code{xterm} mouse 1059mouse---only single clicks are supported. The normal @code{xterm} mouse
1060functionality is still available by holding down the @kbd{SHIFT} key 1060functionality is still available by holding down the @kbd{SHIFT} key
1061when you press the mouse button. The Linux console supports this 1061when you press the mouse button.
1062mode if it has support for the mouse enabled, e.g.@: using the
1063@command{gpm} daemon.
1064 1062
1065@ignore 1063@ignore
1066 arch-tag: 7dcf3a31-a43b-45d4-a900-445b10d77e49 1064 arch-tag: 7dcf3a31-a43b-45d4-a900-445b10d77e49
diff --git a/src/ChangeLog b/src/ChangeLog
index a7c0dfdb8fa..170838bef49 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,37 @@
12005-04-09 Kim F. Storm <storm@cua.dk>
2
3 * lread.c (readevalloop): Add args START and END as region in
4 current buffer to read. Callers changed.
5 When specified, narrow to this region only when reading,
6 not during eval. Track next point to read from during eval.
7 Also restore point to "real" buffer position before eval.
8 (Feval_region): Don't save excursion and restriction here, and
9 don't narrow to region. Just pass region to readevalloop.
10 Note: Point is now preserved even when PRINTFLAG is nil.
11
122005-04-08 Kim F. Storm <storm@cua.dk>
13
14 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
15
162005-04-06 Kim F. Storm <storm@cua.dk>
17
18 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
19
202005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21
22 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
23 (Fmac_get_preference): Doc fix.
24
25 * macfns.c (Fx_create_frame, x_create_tip_frame): Add
26 "fontset-mac" to fallback font/fontsets.
27
282005-04-04 Kim F. Storm <storm@cua.dk>
29
30 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
31
32 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
33 Call it again after autoload.
34
12005-04-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 352005-04-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
2 36
3 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling 37 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
@@ -2853,7 +2887,7 @@
2853 2887
2854 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL. 2888 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
2855 2889
28562004-10-21 K,Aa(Broly L$,1 q(Brentey <lorentey@elte.hu> 28902004-10-21 K,Ba(Broly L,Bu(Brentey <lorentey@elte.hu>
2857 2891
2858 * xterm.h (x_output): New member `xic_base_fontname'. 2892 * xterm.h (x_output): New member `xic_base_fontname'.
2859 (FRAME_XIC_BASE_FONTNAME): New macro. 2893 (FRAME_XIC_BASE_FONTNAME): New macro.
@@ -4134,7 +4168,7 @@
4134 * keyboard.c (cmd_error): Don't call any_kboard_state 4168 * keyboard.c (cmd_error): Don't call any_kboard_state
4135 if inside a recursive edit level. 4169 if inside a recursive edit level.
4136 4170
41372004-06-13 Lorentey K,Aa(Broly <lorentey@elte.hu> 41712004-06-13 K,Ba(Broly L,Bu(Brentey <lorentey@elte.hu>
4138 4172
4139 * keyboard.c (command_loop): Call any_kboard_state before 4173 * keyboard.c (command_loop): Call any_kboard_state before
4140 command_loop_2 when at top level. 4174 command_loop_2 when at top level.
diff --git a/src/ChangeLog.6 b/src/ChangeLog.6
index 52e48cac275..2da83619eb4 100644
--- a/src/ChangeLog.6
+++ b/src/ChangeLog.6
@@ -1079,7 +1079,7 @@
1079 scroll_bar_up_arrow, scroll_bar_down_arrow. 1079 scroll_bar_up_arrow, scroll_bar_down_arrow.
1080 (win32_scroll_bar_click): New enum constant. 1080 (win32_scroll_bar_click): New enum constant.
1081 1081
10821996-05-03 Andrw Innes <andrewi@harlequin.co.uk> 10821996-05-03 Andrew Innes <andrewi@harlequin.co.uk>
1083 1083
1084 * makefile.nt (SUBSYSTEM) [NTGUI]: Remove conditional. 1084 * makefile.nt (SUBSYSTEM) [NTGUI]: Remove conditional.
1085 (LINK_FLAGS): Explicitly set base address, and stack and heap sizes. 1085 (LINK_FLAGS): Explicitly set base address, and stack and heap sizes.
@@ -4817,7 +4817,7 @@
4817 (Fmemory_use_counts): New function. 4817 (Fmemory_use_counts): New function.
4818 (syms_of_alloc): defsubr it. 4818 (syms_of_alloc): defsubr it.
4819 4819
48201995-07-28 Gvran Uddeborg <uddeborg@carmen.se> 48201995-07-28 Göran Uddeborg <uddeborg@carmen.se>
4821 4821
4822 * s/isc4-1.h: ISC 4.1 has termios. 4822 * s/isc4-1.h: ISC 4.1 has termios.
4823 4823
diff --git a/src/alloc.c b/src/alloc.c
index aee09c3f16c..1aa07b01da2 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -4644,6 +4644,8 @@ returns nil, because real GC can't be done. */)
4644 if (pure_bytes_used_before_overflow) 4644 if (pure_bytes_used_before_overflow)
4645 return Qnil; 4645 return Qnil;
4646 4646
4647 CHECK_CONS_LIST ();
4648
4647 /* Don't keep undo information around forever. 4649 /* Don't keep undo information around forever.
4648 Do this early on, so it is no problem if the user quits. */ 4650 Do this early on, so it is no problem if the user quits. */
4649 { 4651 {
@@ -4837,6 +4839,8 @@ returns nil, because real GC can't be done. */)
4837 4839
4838 UNBLOCK_INPUT; 4840 UNBLOCK_INPUT;
4839 4841
4842 CHECK_CONS_LIST ();
4843
4840 /* clear_marks (); */ 4844 /* clear_marks (); */
4841 gc_in_progress = 0; 4845 gc_in_progress = 0;
4842 4846
diff --git a/src/emacs.c b/src/emacs.c
index feac88d71ae..1ddde867d0b 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -1814,6 +1814,8 @@ struct standard_args standard_args[] =
1814 { "-d", "--display", 60, 1 }, 1814 { "-d", "--display", 60, 1 },
1815 { "-display", 0, 60, 1 }, 1815 { "-display", 0, 60, 1 },
1816 /* Now for the options handled in startup.el. */ 1816 /* Now for the options handled in startup.el. */
1817 { "-Q", "--bare-bones", 55, 0 },
1818 { "-bare-bones", 0, 55, 0 },
1817 { "-q", "--no-init-file", 50, 0 }, 1819 { "-q", "--no-init-file", 50, 0 },
1818 { "-no-init-file", 0, 50, 0 }, 1820 { "-no-init-file", 0, 50, 0 },
1819 { "-no-site-file", "--no-site-file", 40, 0 }, 1821 { "-no-site-file", "--no-site-file", 40, 0 },
diff --git a/src/eval.c b/src/eval.c
index bf4fec4f8a1..8700ca222ce 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -2742,6 +2742,8 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */)
2742 if (debug_on_next_call) 2742 if (debug_on_next_call)
2743 do_debug_on_call (Qlambda); 2743 do_debug_on_call (Qlambda);
2744 2744
2745 CHECK_CONS_LIST ();
2746
2745 retry: 2747 retry:
2746 2748
2747 fun = args[0]; 2749 fun = args[0];
@@ -2750,9 +2752,7 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */)
2750 2752
2751 if (SUBRP (fun)) 2753 if (SUBRP (fun))
2752 { 2754 {
2753 CHECK_CONS_LIST (); 2755 if (numargs < XSUBR (fun)->min_args
2754
2755 if (numargs < XSUBR (fun)->min_args
2756 || (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < numargs)) 2756 || (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < numargs))
2757 { 2757 {
2758 XSETFASTINT (lisp_numargs, numargs); 2758 XSETFASTINT (lisp_numargs, numargs);
@@ -2844,6 +2844,7 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */)
2844 else if (EQ (funcar, Qautoload)) 2844 else if (EQ (funcar, Qautoload))
2845 { 2845 {
2846 do_autoload (fun, args[0]); 2846 do_autoload (fun, args[0]);
2847 CHECK_CONS_LIST ();
2847 goto retry; 2848 goto retry;
2848 } 2849 }
2849 else 2850 else
diff --git a/src/lread.c b/src/lread.c
index 709db3bf29e..9b0b5b90ec6 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -218,6 +218,7 @@ static int read_emacs_mule_char P_ ((int, int (*) (int, Lisp_Object),
218 218
219static void readevalloop P_ ((Lisp_Object, FILE*, Lisp_Object, 219static void readevalloop P_ ((Lisp_Object, FILE*, Lisp_Object,
220 Lisp_Object (*) (), int, 220 Lisp_Object (*) (), int,
221 Lisp_Object, Lisp_Object,
221 Lisp_Object, Lisp_Object)); 222 Lisp_Object, Lisp_Object));
222static Lisp_Object load_unwind P_ ((Lisp_Object)); 223static Lisp_Object load_unwind P_ ((Lisp_Object));
223static Lisp_Object load_descriptor_unwind P_ ((Lisp_Object)); 224static Lisp_Object load_descriptor_unwind P_ ((Lisp_Object));
@@ -1097,14 +1098,15 @@ Return t if file exists. */)
1097 = Fcons (make_number (fileno (stream)), load_descriptor_list); 1098 = Fcons (make_number (fileno (stream)), load_descriptor_list);
1098 load_in_progress++; 1099 load_in_progress++;
1099 if (! version || version >= 22) 1100 if (! version || version >= 22)
1100 readevalloop (Qget_file_char, stream, file, Feval, 0, Qnil, Qnil); 1101 readevalloop (Qget_file_char, stream, file, Feval,
1102 0, Qnil, Qnil, Qnil, Qnil);
1101 else 1103 else
1102 { 1104 {
1103 /* We can't handle a file which was compiled with 1105 /* We can't handle a file which was compiled with
1104 byte-compile-dynamic by older version of Emacs. */ 1106 byte-compile-dynamic by older version of Emacs. */
1105 specbind (Qload_force_doc_strings, Qt); 1107 specbind (Qload_force_doc_strings, Qt);
1106 readevalloop (Qget_emacs_mule_file_char, stream, file, Feval, 0, 1108 readevalloop (Qget_emacs_mule_file_char, stream, file, Feval,
1107 Qnil, Qnil); 1109 0, Qnil, Qnil, Qnil, Qnil);
1108 } 1110 }
1109 unbind_to (count, Qnil); 1111 unbind_to (count, Qnil);
1110 1112
@@ -1483,16 +1485,19 @@ end_of_file_error ()
1483 1485
1484/* UNIBYTE specifies how to set load_convert_to_unibyte 1486/* UNIBYTE specifies how to set load_convert_to_unibyte
1485 for this invocation. 1487 for this invocation.
1486 READFUN, if non-nil, is used instead of `read'. */ 1488 READFUN, if non-nil, is used instead of `read'.
1489 START, END is region in current buffer (from eval-region). */
1487 1490
1488static void 1491static void
1489readevalloop (readcharfun, stream, sourcename, evalfun, printflag, unibyte, readfun) 1492readevalloop (readcharfun, stream, sourcename, evalfun,
1493 printflag, unibyte, readfun, start, end)
1490 Lisp_Object readcharfun; 1494 Lisp_Object readcharfun;
1491 FILE *stream; 1495 FILE *stream;
1492 Lisp_Object sourcename; 1496 Lisp_Object sourcename;
1493 Lisp_Object (*evalfun) (); 1497 Lisp_Object (*evalfun) ();
1494 int printflag; 1498 int printflag;
1495 Lisp_Object unibyte, readfun; 1499 Lisp_Object unibyte, readfun;
1500 Lisp_Object start, end;
1496{ 1501{
1497 register int c; 1502 register int c;
1498 register Lisp_Object val; 1503 register Lisp_Object val;
@@ -1518,28 +1523,41 @@ readevalloop (readcharfun, stream, sourcename, evalfun, printflag, unibyte, read
1518 continue_reading_p = 1; 1523 continue_reading_p = 1;
1519 while (continue_reading_p) 1524 while (continue_reading_p)
1520 { 1525 {
1526 int count1 = SPECPDL_INDEX ();
1527
1521 if (b != 0 && NILP (b->name)) 1528 if (b != 0 && NILP (b->name))
1522 error ("Reading from killed buffer"); 1529 error ("Reading from killed buffer");
1523 1530
1531 if (!NILP (start))
1532 {
1533 record_unwind_protect (save_excursion_restore, save_excursion_save ());
1534 record_unwind_protect (save_restriction_restore, save_restriction_save ());
1535 Fgoto_char (start);
1536 Fnarrow_to_region (make_number (BEGV), end);
1537 }
1538
1524 instream = stream; 1539 instream = stream;
1540 read_next:
1525 c = READCHAR; 1541 c = READCHAR;
1526 if (c == ';') 1542 if (c == ';')
1527 { 1543 {
1528 while ((c = READCHAR) != '\n' && c != -1); 1544 while ((c = READCHAR) != '\n' && c != -1);
1529 continue; 1545 goto read_next;
1546 }
1547 if (c < 0)
1548 {
1549 unbind_to (count1, Qnil);
1550 break;
1530 } 1551 }
1531 if (c < 0) break;
1532 1552
1533 /* Ignore whitespace here, so we can detect eof. */ 1553 /* Ignore whitespace here, so we can detect eof. */
1534 if (c == ' ' || c == '\t' || c == '\n' || c == '\f' || c == '\r') 1554 if (c == ' ' || c == '\t' || c == '\n' || c == '\f' || c == '\r')
1535 continue; 1555 goto read_next;
1536 1556
1537 if (!NILP (Vpurify_flag) && c == '(') 1557 if (!NILP (Vpurify_flag) && c == '(')
1538 { 1558 {
1539 int count1 = SPECPDL_INDEX ();
1540 record_unwind_protect (unreadpure, Qnil); 1559 record_unwind_protect (unreadpure, Qnil);
1541 val = read_list (-1, readcharfun); 1560 val = read_list (-1, readcharfun);
1542 unbind_to (count1, Qnil);
1543 } 1561 }
1544 else 1562 else
1545 { 1563 {
@@ -1565,6 +1583,10 @@ readevalloop (readcharfun, stream, sourcename, evalfun, printflag, unibyte, read
1565 val = read_internal_start (readcharfun, Qnil, Qnil); 1583 val = read_internal_start (readcharfun, Qnil, Qnil);
1566 } 1584 }
1567 1585
1586 if (!NILP (start) && continue_reading_p)
1587 start = Fpoint_marker ();
1588 unbind_to (count1, Qnil);
1589
1568 val = (*evalfun) (val); 1590 val = (*evalfun) (val);
1569 1591
1570 if (printflag) 1592 if (printflag)
@@ -1623,7 +1645,8 @@ This function preserves the position of point. */)
1623 specbind (Qstandard_output, tem); 1645 specbind (Qstandard_output, tem);
1624 record_unwind_protect (save_excursion_restore, save_excursion_save ()); 1646 record_unwind_protect (save_excursion_restore, save_excursion_save ());
1625 BUF_SET_PT (XBUFFER (buf), BUF_BEGV (XBUFFER (buf))); 1647 BUF_SET_PT (XBUFFER (buf), BUF_BEGV (XBUFFER (buf)));
1626 readevalloop (buf, 0, filename, Feval, !NILP (printflag), unibyte, Qnil); 1648 readevalloop (buf, 0, filename, Feval,
1649 !NILP (printflag), unibyte, Qnil, Qnil, Qnil);
1627 unbind_to (count, Qnil); 1650 unbind_to (count, Qnil);
1628 1651
1629 return Qnil; 1652 return Qnil;
@@ -1655,15 +1678,10 @@ This function does not move point. */)
1655 tem = printflag; 1678 tem = printflag;
1656 specbind (Qstandard_output, tem); 1679 specbind (Qstandard_output, tem);
1657 1680
1658 if (NILP (printflag)) 1681 /* readevalloop calls functions which check the type of start and end. */
1659 record_unwind_protect (save_excursion_restore, save_excursion_save ());
1660 record_unwind_protect (save_restriction_restore, save_restriction_save ());
1661
1662 /* This both uses start and checks its type. */
1663 Fgoto_char (start);
1664 Fnarrow_to_region (make_number (BEGV), end);
1665 readevalloop (cbuf, 0, XBUFFER (cbuf)->filename, Feval, 1682 readevalloop (cbuf, 0, XBUFFER (cbuf)->filename, Feval,
1666 !NILP (printflag), Qnil, read_function); 1683 !NILP (printflag), Qnil, read_function,
1684 start, end);
1667 1685
1668 return unbind_to (count, Qnil); 1686 return unbind_to (count, Qnil);
1669} 1687}
diff --git a/src/mac.c b/src/mac.c
index f5fc62b2200..da6a61633dc 100644
--- a/src/mac.c
+++ b/src/mac.c
@@ -364,13 +364,13 @@ cfnumber_to_lisp (number)
364 364
365 365
366/* CFDate to a list of three integers as in a return value of 366/* CFDate to a list of three integers as in a return value of
367 `current-time'xo. */ 367 `current-time'. */
368 368
369Lisp_Object 369Lisp_Object
370cfdate_to_lisp (date) 370cfdate_to_lisp (date)
371 CFDateRef date; 371 CFDateRef date;
372{ 372{
373 static CFGregorianDate epoch_gdate = {1970, 1, 1, 0, 0, 0.0}; 373 static const CFGregorianDate epoch_gdate = {1970, 1, 1, 0, 0, 0.0};
374 static CFAbsoluteTime epoch = 0.0, sec; 374 static CFAbsoluteTime epoch = 0.0, sec;
375 int high, low; 375 int high, low;
376 376
@@ -668,7 +668,7 @@ parse_resource_name (p)
668 return Qnil; 668 return Qnil;
669 669
670 result = Fcons (component, result); 670 result = Fcons (component, result);
671 while (binding = parse_binding (p)) 671 while ((binding = parse_binding (p)) != '\0')
672 { 672 {
673 if (binding == '*') 673 if (binding == '*')
674 result = Fcons (LOOSE_BINDING, result); 674 result = Fcons (LOOSE_BINDING, result);
@@ -3662,7 +3662,7 @@ corresponding Lisp object as follows:
3662 CFDate List of three integers date 3662 CFDate List of three integers date
3663 (cf. `current-time') 3663 (cf. `current-time')
3664 CFData Unibyte string data 3664 CFData Unibyte string data
3665 CFArray Array array 3665 CFArray Vector array
3666 CFDictionary Alist or hash table dictionary 3666 CFDictionary Alist or hash table dictionary
3667 (depending on HASH-BOUND) 3667 (depending on HASH-BOUND)
3668 3668
@@ -4174,26 +4174,13 @@ syms_of_mac ()
4174 staticpro (&QCLIPBOARD); 4174 staticpro (&QCLIPBOARD);
4175 4175
4176#if TARGET_API_MAC_CARBON 4176#if TARGET_API_MAC_CARBON
4177 Qstring = intern ("string"); 4177 Qstring = intern ("string"); staticpro (&Qstring);
4178 staticpro (&Qstring); 4178 Qnumber = intern ("number"); staticpro (&Qnumber);
4179 4179 Qboolean = intern ("boolean"); staticpro (&Qboolean);
4180 Qnumber = intern ("number"); 4180 Qdate = intern ("date"); staticpro (&Qdate);
4181 staticpro (&Qnumber); 4181 Qdata = intern ("data"); staticpro (&Qdata);
4182 4182 Qarray = intern ("array"); staticpro (&Qarray);
4183 Qboolean = intern ("boolean"); 4183 Qdictionary = intern ("dictionary"); staticpro (&Qdictionary);
4184 staticpro (&Qboolean);
4185
4186 Qdate = intern ("date");
4187 staticpro (&Qdate);
4188
4189 Qdata = intern ("data");
4190 staticpro (&Qdata);
4191
4192 Qarray = intern ("array");
4193 staticpro (&Qarray);
4194
4195 Qdictionary = intern ("dictionary");
4196 staticpro (&Qdictionary);
4197 4184
4198 Qxml = intern ("xml"); 4185 Qxml = intern ("xml");
4199 staticpro (&Qxml); 4186 staticpro (&Qxml);
diff --git a/src/macfns.c b/src/macfns.c
index fa37a1b298b..78365ce3c0c 100644
--- a/src/macfns.c
+++ b/src/macfns.c
@@ -2632,6 +2632,8 @@ This function is an internal primitive--use `make-frame' instead. */)
2632 font = x_new_font (f, "-ETL-fixed-medium-r-*--*-160-*-*-*-*-iso8859-1"); 2632 font = x_new_font (f, "-ETL-fixed-medium-r-*--*-160-*-*-*-*-iso8859-1");
2633 /* If those didn't work, look for something which will at least work. */ 2633 /* If those didn't work, look for something which will at least work. */
2634 if (! STRINGP (font)) 2634 if (! STRINGP (font))
2635 font = x_new_fontset (f, "fontset-mac");
2636 if (! STRINGP (font))
2635 font = x_new_font (f, "-*-monaco-*-12-*-mac-roman"); 2637 font = x_new_font (f, "-*-monaco-*-12-*-mac-roman");
2636 if (! STRINGP (font)) 2638 if (! STRINGP (font))
2637 font = x_new_font (f, "-*-courier-*-10-*-mac-roman"); 2639 font = x_new_font (f, "-*-courier-*-10-*-mac-roman");
@@ -3732,6 +3734,8 @@ x_create_tip_frame (dpyinfo, parms, text)
3732 font = x_new_font (f, "-ETL-fixed-medium-r-*--*-160-*-*-*-*-iso8859-1"); 3734 font = x_new_font (f, "-ETL-fixed-medium-r-*--*-160-*-*-*-*-iso8859-1");
3733 /* If those didn't work, look for something which will at least work. */ 3735 /* If those didn't work, look for something which will at least work. */
3734 if (! STRINGP (font)) 3736 if (! STRINGP (font))
3737 font = x_new_fontset (f, "fontset-mac");
3738 if (! STRINGP (font))
3735 font = x_new_font (f, "-*-monaco-*-12-*-mac-roman"); 3739 font = x_new_font (f, "-*-monaco-*-12-*-mac-roman");
3736 if (! STRINGP (font)) 3740 if (! STRINGP (font))
3737 font = x_new_font (f, "-*-courier-*-10-*-mac-roman"); 3741 font = x_new_font (f, "-*-courier-*-10-*-mac-roman");
diff --git a/src/xdisp.c b/src/xdisp.c
index 9fe8ac9a0ed..13ef9b00abf 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -22757,7 +22757,7 @@ See also `overlay-arrow-string'. */);
22757 DEFVAR_LISP ("overlay-arrow-string", &Voverlay_arrow_string, 22757 DEFVAR_LISP ("overlay-arrow-string", &Voverlay_arrow_string,
22758 doc: /* String to display as an arrow in non-window frames. 22758 doc: /* String to display as an arrow in non-window frames.
22759See also `overlay-arrow-position'. */); 22759See also `overlay-arrow-position'. */);
22760 Voverlay_arrow_string = Qnil; 22760 Voverlay_arrow_string = build_string ("=>");
22761 22761
22762 DEFVAR_LISP ("overlay-arrow-variable-list", &Voverlay_arrow_variable_list, 22762 DEFVAR_LISP ("overlay-arrow-variable-list", &Voverlay_arrow_variable_list,
22763 doc: /* List of variables (symbols) which hold markers for overlay arrows. 22763 doc: /* List of variables (symbols) which hold markers for overlay arrows.