aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChong Yidong2010-07-10 15:01:01 -0400
committerChong Yidong2010-07-10 15:01:01 -0400
commit7ac1c664547ca88fd6c0ff65ef5e780b1c5efcb0 (patch)
tree301c219611060db34a983f5b7dba58cf1fa93b69
parent481044622937b001ee07a6f8c3f81c1e73ef9eaf (diff)
parent2ec1b5ee3464999a18b8197101e8bf08a3c564a8 (diff)
downloademacs-7ac1c664547ca88fd6c0ff65ef5e780b1c5efcb0.tar.gz
emacs-7ac1c664547ca88fd6c0ff65ef5e780b1c5efcb0.zip
Merge changes from emacs-23 branch.
-rw-r--r--ChangeLog4
-rw-r--r--doc/emacs/ChangeLog10
-rw-r--r--doc/emacs/abbrevs.texi4
-rw-r--r--doc/emacs/basic.texi10
-rw-r--r--doc/emacs/buffers.texi9
-rw-r--r--doc/emacs/building.texi15
-rw-r--r--doc/emacs/calendar.texi16
-rw-r--r--doc/emacs/custom.texi40
-rw-r--r--doc/emacs/dired.texi12
-rw-r--r--doc/emacs/display.texi4
-rw-r--r--doc/emacs/emacs.texi456
-rw-r--r--doc/emacs/emerge-xtra.texi23
-rw-r--r--doc/emacs/files.texi11
-rw-r--r--doc/emacs/fortran-xtra.texi15
-rw-r--r--doc/emacs/frames.texi7
-rw-r--r--doc/emacs/help.texi15
-rw-r--r--doc/emacs/killing.texi9
-rw-r--r--doc/emacs/maintaining.texi18
-rw-r--r--doc/emacs/mark.texi13
-rw-r--r--doc/emacs/mini.texi7
-rw-r--r--doc/emacs/misc.texi16
-rw-r--r--doc/emacs/msdog.texi7
-rw-r--r--doc/emacs/mule.texi2
-rw-r--r--doc/emacs/programs.texi12
-rw-r--r--doc/emacs/rmail.texi11
-rw-r--r--doc/emacs/screen.texi11
-rw-r--r--doc/emacs/search.texi31
-rw-r--r--doc/emacs/sending.texi5
-rw-r--r--doc/emacs/text.texi38
-rw-r--r--doc/emacs/trouble.texi8
-rw-r--r--doc/emacs/vc1-xtra.texi4
-rw-r--r--doc/emacs/xresources.texi13
-rw-r--r--doc/lispintro/ChangeLog4
-rw-r--r--doc/lispintro/emacs-lisp-intro.texi2
-rw-r--r--doc/lispref/ChangeLog25
-rw-r--r--doc/lispref/abbrevs.texi8
-rw-r--r--doc/lispref/commands.texi68
-rw-r--r--doc/lispref/compile.texi4
-rw-r--r--doc/lispref/debugging.texi4
-rw-r--r--doc/lispref/display.texi2
-rw-r--r--doc/lispref/edebug.texi48
-rw-r--r--doc/lispref/elisp.texi156
-rw-r--r--doc/lispref/errors.texi4
-rw-r--r--doc/lispref/eval.texi2
-rw-r--r--doc/lispref/files.texi11
-rw-r--r--doc/lispref/frames.texi32
-rw-r--r--doc/lispref/functions.texi5
-rw-r--r--doc/lispref/internals.texi8
-rw-r--r--doc/lispref/keymaps.texi35
-rw-r--r--doc/lispref/loading.texi9
-rw-r--r--doc/lispref/minibuf.texi11
-rw-r--r--doc/lispref/modes.texi2
-rw-r--r--doc/lispref/numbers.texi4
-rw-r--r--doc/lispref/os.texi11
-rw-r--r--doc/lispref/processes.texi7
-rw-r--r--doc/lispref/searching.texi13
-rw-r--r--doc/lispref/sequences.texi17
-rw-r--r--doc/lispref/strings.texi5
-rw-r--r--doc/lispref/syntax.texi5
-rw-r--r--doc/lispref/text.texi34
-rw-r--r--doc/lispref/tips.texi5
-rw-r--r--doc/lispref/vol1.texi156
-rw-r--r--doc/lispref/vol2.texi156
-rw-r--r--doc/lispref/windows.texi4
-rw-r--r--doc/misc/ChangeLog29
-rw-r--r--doc/misc/ada-mode.texi6
-rw-r--r--doc/misc/auth.texi2
-rw-r--r--doc/misc/autotype.texi12
-rw-r--r--doc/misc/calc.texi2
-rw-r--r--doc/misc/cc-mode.texi4
-rw-r--r--doc/misc/cl.texi2
-rw-r--r--doc/misc/dired-x.texi6
-rw-r--r--doc/misc/ebrowse.texi104
-rw-r--r--doc/misc/ede.texi30
-rw-r--r--doc/misc/edt.texi2
-rw-r--r--doc/misc/eieio.texi6
-rw-r--r--doc/misc/emacs-mime.texi2
-rw-r--r--doc/misc/epa.texi18
-rw-r--r--doc/misc/erc.texi5
-rw-r--r--doc/misc/eshell.texi6
-rw-r--r--doc/misc/eudc.texi2
-rw-r--r--doc/misc/faq.texi2
-rw-r--r--doc/misc/flymake.texi8
-rw-r--r--doc/misc/forms.texi6
-rw-r--r--doc/misc/gnus-faq.texi46
-rw-r--r--doc/misc/gnus.texi2
-rw-r--r--doc/misc/idlwave.texi2
-rw-r--r--doc/misc/info.texi2
-rw-r--r--doc/misc/mairix-el.texi2
-rw-r--r--doc/misc/message.texi3
-rw-r--r--doc/misc/mh-e.texi8
-rw-r--r--doc/misc/newsticker.texi2
-rw-r--r--doc/misc/nxml-mode.texi4
-rw-r--r--doc/misc/org.texi22
-rw-r--r--doc/misc/pcl-cvs.texi2
-rw-r--r--doc/misc/pgg.texi10
-rw-r--r--doc/misc/rcirc.texi5
-rw-r--r--doc/misc/reftex.texi5
-rw-r--r--doc/misc/remember.texi2
-rw-r--r--doc/misc/sasl.texi6
-rw-r--r--doc/misc/sc.texi32
-rw-r--r--doc/misc/sem-user.texi8
-rw-r--r--doc/misc/semantic.texi6
-rw-r--r--doc/misc/ses.texi6
-rw-r--r--doc/misc/sieve.texi10
-rw-r--r--doc/misc/smtpmail.texi20
-rw-r--r--doc/misc/speedbar.texi4
-rw-r--r--doc/misc/tramp.texi4
-rw-r--r--doc/misc/url.texi2
-rw-r--r--doc/misc/vip.texi102
-rw-r--r--doc/misc/viper.texi40
-rw-r--r--doc/misc/widget.texi100
-rw-r--r--doc/misc/woman.texi4
-rw-r--r--etc/ChangeLog4
-rw-r--r--etc/PROBLEMS15
-rw-r--r--info/dir117
-rw-r--r--lisp/ChangeLog137
-rw-r--r--lisp/arc-mode.el9
-rw-r--r--lisp/bs.el2
-rw-r--r--lisp/comint.el8
-rw-r--r--lisp/descr-text.el2
-rw-r--r--lisp/dnd.el7
-rw-r--r--lisp/emacs-lisp/cl-loaddefs.el2
-rw-r--r--lisp/emacs-lisp/rx.el3
-rw-r--r--lisp/emulation/cua-base.el2
-rw-r--r--lisp/emulation/pc-select.el2
-rw-r--r--lisp/generic-x.el3
-rw-r--r--lisp/help.el5
-rw-r--r--lisp/hl-line.el6
-rw-r--r--lisp/htmlfontify.el2
-rw-r--r--lisp/mouse.el1
-rw-r--r--lisp/net/zeroconf.el27
-rw-r--r--lisp/play/zone.el6
-rw-r--r--lisp/progmodes/cc-mode.el7
-rw-r--r--lisp/progmodes/idlwave.el2
-rw-r--r--lisp/progmodes/js.el9
-rw-r--r--lisp/progmodes/python.el18
-rw-r--r--lisp/subr.el11
-rw-r--r--lisp/url/ChangeLog2
-rw-r--r--lisp/vc/vc-annotate.el13
-rw-r--r--lisp/vc/vc-dir.el36
-rw-r--r--lisp/vc/vc-git.el30
-rw-r--r--lisp/vc/vc.el9
-rw-r--r--lisp/wid-edit.el11
-rw-r--r--lisp/x-dnd.el4
-rw-r--r--lisp/xml.el26
-rw-r--r--src/ChangeLog74
-rw-r--r--src/alloc.c2
-rw-r--r--src/dispextern.h8
-rw-r--r--src/frame.c14
-rw-r--r--src/fringe.c281
-rw-r--r--src/image.c4
-rw-r--r--src/keyboard.c49
-rw-r--r--src/keymap.c10
-rw-r--r--src/lread.c22
-rw-r--r--src/nsterm.m15
-rw-r--r--src/w32fns.c10
-rw-r--r--src/w32term.c17
-rw-r--r--src/xdisp.c1
-rw-r--r--src/xfaces.c1
-rw-r--r--src/xfns.c6
-rw-r--r--src/xmenu.c8
-rw-r--r--src/xterm.c17
163 files changed, 2006 insertions, 1499 deletions
diff --git a/ChangeLog b/ChangeLog
index 13b2fff124a..758ba0f29a2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -55,6 +55,10 @@
55 55
56 * config.bat: Remove white space around "+" in COPY commands. 56 * config.bat: Remove white space around "+" in COPY commands.
57 57
582010-06-23 Glenn Morris <rgm@gnu.org>
59
60 * info/dir: Start descriptions in column 32, per Texinfo convention.
61
582010-06-16 Chong Yidong <cyd@stupidchicken.com> 622010-06-16 Chong Yidong <cyd@stupidchicken.com>
59 63
60 * INSTALL: Update font information (Bug#6389). 64 * INSTALL: Update font information (Bug#6389).
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index e954fe496c4..487663109bd 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,3 +1,13 @@
12010-06-23 Glenn Morris <rgm@gnu.org>
2
3 * abbrevs.texi, basic.texi, buffers.texi, building.texi, calendar.texi:
4 * custom.texi, dired.texi, display.texi, emacs.texi, emerge-xtra.texi:
5 * files.texi, fortran-xtra.texi, frames.texi, help.texi, killing.texi:
6 * maintaining.texi, mark.texi, mini.texi, misc.texi, msdog.texi:
7 * mule.texi, programs.texi, rmail.texi, screen.texi, search.texi:
8 * sending.texi, text.texi, trouble.texi, vc1-xtra.texi, xresources.texi:
9 Untabify Texinfo files.
10
12010-06-10 Glenn Morris <rgm@gnu.org> 112010-06-10 Glenn Morris <rgm@gnu.org>
2 12
3 * basic.texi (Inserting Text): Minor clarification. (Bug#6374) 13 * basic.texi (Inserting Text): Minor clarification. (Bug#6374)
diff --git a/doc/emacs/abbrevs.texi b/doc/emacs/abbrevs.texi
index 7a291742386..9039ca662a0 100644
--- a/doc/emacs/abbrevs.texi
+++ b/doc/emacs/abbrevs.texi
@@ -235,9 +235,9 @@ Edit a list of abbrevs; you can add, alter or remove definitions.
235@example 235@example
236@var{various other tables@dots{}} 236@var{various other tables@dots{}}
237(lisp-mode-abbrev-table) 237(lisp-mode-abbrev-table)
238"dk" 0 "define-key" 238"dk" 0 "define-key"
239(global-abbrev-table) 239(global-abbrev-table)
240"dfn" 0 "definition" 240"dfn" 0 "definition"
241@end example 241@end example
242 242
243@noindent 243@noindent
diff --git a/doc/emacs/basic.texi b/doc/emacs/basic.texi
index b5a194f1ccf..a4751e7f99d 100644
--- a/doc/emacs/basic.texi
+++ b/doc/emacs/basic.texi
@@ -17,15 +17,15 @@ suggest you first run the Emacs learn-by-doing tutorial, by typing
17 17
18* Inserting Text:: Inserting text by simply typing it. 18* Inserting Text:: Inserting text by simply typing it.
19* Moving Point:: Moving the cursor to the place where you want to 19* Moving Point:: Moving the cursor to the place where you want to
20 change something. 20 change something.
21* Erasing:: Deleting and killing text. 21* Erasing:: Deleting and killing text.
22* Basic Undo:: Undoing recent changes in the text. 22* Basic Undo:: Undoing recent changes in the text.
23* Files: Basic Files. Visiting, creating, and saving files. 23* Files: Basic Files. Visiting, creating, and saving files.
24* Help: Basic Help. Asking what a character does. 24* Help: Basic Help. Asking what a character does.
25* Blank Lines:: Making and deleting blank lines. 25* Blank Lines:: Making and deleting blank lines.
26* Continuation Lines:: How Emacs displays lines too wide for the screen. 26* Continuation Lines:: How Emacs displays lines too wide for the screen.
27* Position Info:: What page, line, row, or column is point on? 27* Position Info:: What page, line, row, or column is point on?
28* Arguments:: Numeric arguments for repeating a command N times. 28* Arguments:: Numeric arguments for repeating a command N times.
29* Repeating:: Repeating the previous command quickly. 29* Repeating:: Repeating the previous command quickly.
30@end menu 30@end menu
31 31
diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi
index 499556401fc..ca9279a9df4 100644
--- a/doc/emacs/buffers.texi
+++ b/doc/emacs/buffers.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Buffers, Windows, Files, Top 6@node Buffers, Windows, Files, Top
6@chapter Using Multiple Buffers 7@chapter Using Multiple Buffers
@@ -49,10 +50,10 @@ using that data type. For 32-bit machines, the largest buffer size is
49@menu 50@menu
50* Select Buffer:: Creating a new buffer or reselecting an old one. 51* Select Buffer:: Creating a new buffer or reselecting an old one.
51* List Buffers:: Getting a list of buffers that exist. 52* List Buffers:: Getting a list of buffers that exist.
52* Misc Buffer:: Renaming; changing read-onlyness; copying text. 53* Misc Buffer:: Renaming; changing read-onlyness; copying text.
53* Kill Buffer:: Killing buffers you no longer need. 54* Kill Buffer:: Killing buffers you no longer need.
54* Several Buffers:: How to go through the list of all buffers 55* Several Buffers:: How to go through the list of all buffers
55 and operate variously on several of them. 56 and operate variously on several of them.
56* Indirect Buffers:: An indirect buffer shares the text of another buffer. 57* Indirect Buffers:: An indirect buffer shares the text of another buffer.
57* Buffer Convenience:: Convenience and customization features for 58* Buffer Convenience:: Convenience and customization features for
58 buffer handling. 59 buffer handling.
diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi
index 9a1ec894815..dca76407e23 100644
--- a/doc/emacs/building.texi
+++ b/doc/emacs/building.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Building, Maintaining, Programs, Top 6@node Building, Maintaining, Programs, Top
6@chapter Compiling and Testing Programs 7@chapter Compiling and Testing Programs
@@ -20,14 +21,14 @@ in the larger process of compiling and testing programs.
20 for use in the compilation buffer. 21 for use in the compilation buffer.
21* Grep Searching:: Searching with grep. 22* Grep Searching:: Searching with grep.
22* Flymake:: Finding syntax errors on the fly. 23* Flymake:: Finding syntax errors on the fly.
23* Debuggers:: Running symbolic debuggers for non-Lisp programs. 24* Debuggers:: Running symbolic debuggers for non-Lisp programs.
24* Executing Lisp:: Various modes for editing Lisp programs, 25* Executing Lisp:: Various modes for editing Lisp programs,
25 with different facilities for running 26 with different facilities for running
26 the Lisp programs. 27 the Lisp programs.
27* Libraries: Lisp Libraries. Creating Lisp programs to run in Emacs. 28* Libraries: Lisp Libraries. Creating Lisp programs to run in Emacs.
28* Eval: Lisp Eval. Executing a single Lisp expression in Emacs. 29* Eval: Lisp Eval. Executing a single Lisp expression in Emacs.
29* Interaction: Lisp Interaction. Executing Lisp in an Emacs buffer. 30* Interaction: Lisp Interaction. Executing Lisp in an Emacs buffer.
30* External Lisp:: Communicating through Emacs with a separate Lisp. 31* External Lisp:: Communicating through Emacs with a separate Lisp.
31@end menu 32@end menu
32 33
33@node Compilation 34@node Compilation
@@ -471,10 +472,10 @@ Lisp programs. @xref{Debugging,, The Lisp Debugger, elisp, the Emacs
471Lisp Reference Manual}, for information on the Emacs Lisp debugger. 472Lisp Reference Manual}, for information on the Emacs Lisp debugger.
472 473
473@menu 474@menu
474* Starting GUD:: How to start a debugger subprocess. 475* Starting GUD:: How to start a debugger subprocess.
475* Debugger Operation:: Connection between the debugger and source buffers. 476* Debugger Operation:: Connection between the debugger and source buffers.
476* Commands of GUD:: Key bindings for common commands. 477* Commands of GUD:: Key bindings for common commands.
477* GUD Customization:: Defining your own commands for GUD. 478* GUD Customization:: Defining your own commands for GUD.
478* GDB Graphical Interface:: An enhanced mode that uses GDB features to 479* GDB Graphical Interface:: An enhanced mode that uses GDB features to
479 implement a graphical debugging environment through 480 implement a graphical debugging environment through
480 Emacs. 481 Emacs.
diff --git a/doc/emacs/calendar.texi b/doc/emacs/calendar.texi
index ae4333cefbb..5698fd5ff58 100644
--- a/doc/emacs/calendar.texi
+++ b/doc/emacs/calendar.texi
@@ -42,7 +42,7 @@ about more specialized features.
42* Lunar Phases:: Displaying phases of the moon. 42* Lunar Phases:: Displaying phases of the moon.
43* Other Calendars:: Converting dates to other calendar systems. 43* Other Calendars:: Converting dates to other calendar systems.
44* Diary:: Displaying events from your diary. 44* Diary:: Displaying events from your diary.
45* Appointments:: Reminders when it's time to do something. 45* Appointments:: Reminders when it's time to do something.
46* Importing Diary:: Converting diary events to/from other formats. 46* Importing Diary:: Converting diary events to/from other formats.
47* Daylight Saving:: How to specify when daylight saving time is active. 47* Daylight Saving:: How to specify when daylight saving time is active.
48* Time Intervals:: Keeping track of time intervals. 48* Time Intervals:: Keeping track of time intervals.
@@ -674,11 +674,11 @@ Gregorian calendar did not exist.
674and from several other calendars. 674and from several other calendars.
675 675
676@menu 676@menu
677* Calendar Systems:: The calendars Emacs understands 677* Calendar Systems:: The calendars Emacs understands
678 (aside from Gregorian). 678 (aside from Gregorian).
679* To Other Calendar:: Converting the selected date to various calendars. 679* To Other Calendar:: Converting the selected date to various calendars.
680* From Other Calendar:: Moving to a date specified in another calendar. 680* From Other Calendar:: Moving to a date specified in another calendar.
681* Mayan Calendar:: Moving to a date specified in a Mayan calendar. 681* Mayan Calendar:: Moving to a date specified in a Mayan calendar.
682@end menu 682@end menu
683 683
684@node Calendar Systems 684@node Calendar Systems
@@ -1040,8 +1040,8 @@ entries.
1040@menu 1040@menu
1041* Displaying the Diary:: Viewing diary entries and associated calendar dates. 1041* Displaying the Diary:: Viewing diary entries and associated calendar dates.
1042* Format of Diary File:: Entering events in your diary. 1042* Format of Diary File:: Entering events in your diary.
1043* Date Formats:: Various ways you can specify dates. 1043* Date Formats:: Various ways you can specify dates.
1044* Adding to Diary:: Commands to create diary entries. 1044* Adding to Diary:: Commands to create diary entries.
1045* Special Diary Entries:: Anniversaries, blocks of dates, cyclic entries, etc. 1045* Special Diary Entries:: Anniversaries, blocks of dates, cyclic entries, etc.
1046@end menu 1046@end menu
1047 1047
diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi
index a8bba419c25..18fdb581210 100644
--- a/doc/emacs/custom.texi
+++ b/doc/emacs/custom.texi
@@ -24,18 +24,18 @@ Reference Manual}.
24@end ifnottex 24@end ifnottex
25 25
26@menu 26@menu
27* Minor Modes:: Each minor mode is a feature you can turn on 27* Minor Modes:: Each minor mode is a feature you can turn on
28 independently of any others. 28 independently of any others.
29* Easy Customization:: Convenient way to browse and change settings. 29* Easy Customization:: Convenient way to browse and change settings.
30* Variables:: Many Emacs commands examine Emacs variables 30* Variables:: Many Emacs commands examine Emacs variables
31 to decide what to do; by setting variables, 31 to decide what to do; by setting variables,
32 you can control their functioning. 32 you can control their functioning.
33* Key Bindings:: The keymaps say what command each key runs. 33* Key Bindings:: The keymaps say what command each key runs.
34 By changing them, you can "redefine keys". 34 By changing them, you can "redefine keys".
35* Syntax:: The syntax table controls how words and 35* Syntax:: The syntax table controls how words and
36 expressions are parsed. 36 expressions are parsed.
37* Init File:: How to write common customizations in the 37* Init File:: How to write common customizations in the
38 @file{.emacs} file. 38 @file{.emacs} file.
39@end menu 39@end menu
40 40
41@node Minor Modes 41@node Minor Modes
@@ -794,10 +794,10 @@ check the variable's documentation string to see kind of value it
794expects (@pxref{Examining}). 794expects (@pxref{Examining}).
795 795
796@menu 796@menu
797* Examining:: Examining or setting one variable's value. 797* Examining:: Examining or setting one variable's value.
798* Hooks:: Hook variables let you specify programs for parts 798* Hooks:: Hook variables let you specify programs for parts
799 of Emacs to run on particular occasions. 799 of Emacs to run on particular occasions.
800* Locals:: Per-buffer values of variables. 800* Locals:: Per-buffer values of variables.
801* File Variables:: How files can specify variable values. 801* File Variables:: How files can specify variable values.
802* Directory Variables:: How variable values can be specified by directory. 802* Directory Variables:: How variable values can be specified by directory.
803@end menu 803@end menu
@@ -943,12 +943,12 @@ lambda expression.
943@end group 943@end group
944@group 944@group
945 (c-cleanup-list . (scope-operator 945 (c-cleanup-list . (scope-operator
946 empty-defun-braces 946 empty-defun-braces
947 defun-close-semi)) 947 defun-close-semi))
948@end group 948@end group
949@group 949@group
950 (c-offsets-alist . ((arglist-close . c-lineup-arglist) 950 (c-offsets-alist . ((arglist-close . c-lineup-arglist)
951 (substatement-open . 0))))) 951 (substatement-open . 0)))))
952@end group 952@end group
953 953
954@group 954@group
@@ -2175,10 +2175,10 @@ Manual}.
2175@end ifnottex 2175@end ifnottex
2176 2176
2177@menu 2177@menu
2178* Init Syntax:: Syntax of constants in Emacs Lisp. 2178* Init Syntax:: Syntax of constants in Emacs Lisp.
2179* Init Examples:: How to do some things with an init file. 2179* Init Examples:: How to do some things with an init file.
2180* Terminal Init:: Each terminal type can have an init file. 2180* Terminal Init:: Each terminal type can have an init file.
2181* Find Init:: How Emacs finds the init file. 2181* Find Init:: How Emacs finds the init file.
2182* Init Non-ASCII:: Using non-@acronym{ASCII} characters in an init file. 2182* Init Non-ASCII:: Using non-@acronym{ASCII} characters in an init file.
2183@end menu 2183@end menu
2184 2184
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index 4a1299c66a6..c8b4264d486 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -36,20 +36,20 @@ you to operate on the listed files. @xref{Directories}.
36* Deletion: Dired Deletion. Deleting files with Dired. 36* Deletion: Dired Deletion. Deleting files with Dired.
37* Flagging Many Files:: Flagging files based on their names. 37* Flagging Many Files:: Flagging files based on their names.
38* Visit: Dired Visiting. Other file operations through Dired. 38* Visit: Dired Visiting. Other file operations through Dired.
39* Marks vs Flags:: Flagging for deletion vs marking. 39* Marks vs Flags:: Flagging for deletion vs marking.
40* Operating on Files:: How to copy, rename, print, compress, etc. 40* Operating on Files:: How to copy, rename, print, compress, etc.
41 either one file or several files. 41 either one file or several files.
42* Shell Commands in Dired:: Running a shell command on the marked files. 42* Shell Commands in Dired:: Running a shell command on the marked files.
43* Transforming File Names:: Using patterns to rename multiple files. 43* Transforming File Names:: Using patterns to rename multiple files.
44* Comparison in Dired:: Running `diff' by way of Dired. 44* Comparison in Dired:: Running `diff' by way of Dired.
45* Subdirectories in Dired:: Adding subdirectories to the Dired buffer. 45* Subdirectories in Dired:: Adding subdirectories to the Dired buffer.
46@ifnottex 46@ifnottex
47* Subdir Switches:: Subdirectory switches in Dired. 47* Subdir Switches:: Subdirectory switches in Dired.
48@end ifnottex 48@end ifnottex
49* Subdirectory Motion:: Moving across subdirectories, and up and down. 49* Subdirectory Motion:: Moving across subdirectories, and up and down.
50* Hiding Subdirectories:: Making subdirectories visible or invisible. 50* Hiding Subdirectories:: Making subdirectories visible or invisible.
51* Updating: Dired Updating. Discarding lines for files of no interest. 51* Updating: Dired Updating. Discarding lines for files of no interest.
52* Find: Dired and Find. Using `find' to choose the files for Dired. 52* Find: Dired and Find. Using `find' to choose the files for Dired.
53* Wdired:: Operating on files by editing the Dired buffer. 53* Wdired:: Operating on files by editing the Dired buffer.
54* Image-Dired:: Viewing image thumbnails in Dired. 54* Image-Dired:: Viewing image thumbnails in Dired.
55* Misc: Misc Dired Features. Various other features. 55* Misc: Misc Dired Features. Various other features.
diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi
index 3d3a1e03e46..3b5e7b0b955 100644
--- a/doc/emacs/display.texi
+++ b/doc/emacs/display.texi
@@ -13,11 +13,11 @@ commands and variables allow you to specify which part of the text you
13want to see, and how to display it. 13want to see, and how to display it.
14 14
15@menu 15@menu
16* Scrolling:: Commands to move text up and down in a window. 16* Scrolling:: Commands to move text up and down in a window.
17* Auto Scrolling:: Redisplay scrolls text automatically when needed. 17* Auto Scrolling:: Redisplay scrolls text automatically when needed.
18* Horizontal Scrolling:: Moving text left and right in a window. 18* Horizontal Scrolling:: Moving text left and right in a window.
19* Follow Mode:: Follow mode lets two windows scroll as one. 19* Follow Mode:: Follow mode lets two windows scroll as one.
20* Faces:: How to change the display style using faces. 20* Faces:: How to change the display style using faces.
21* Standard Faces:: Emacs' predefined faces. 21* Standard Faces:: Emacs' predefined faces.
22* Temporary Face Changes:: Commands to temporarily modify the default text face 22* Temporary Face Changes:: Commands to temporarily modify the default text face
23* Font Lock:: Minor mode for syntactic highlighting using faces. 23* Font Lock:: Minor mode for syntactic highlighting using faces.
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi
index 6eaee237510..4de9ee4a57a 100644
--- a/doc/emacs/emacs.texi
+++ b/doc/emacs/emacs.texi
@@ -33,7 +33,7 @@ developing GNU and promoting software freedom.''
33 33
34@dircategory Emacs 34@dircategory Emacs
35@direntry 35@direntry
36* Emacs: (emacs). The extensible self-documenting text editor. 36* Emacs: (emacs). The extensible self-documenting text editor.
37@end direntry 37@end direntry
38 38
39@c in general, keep the following line commented out, unless doing a 39@c in general, keep the following line commented out, unless doing a
@@ -134,13 +134,13 @@ and Sending Mail and Registers and Minibuffer.
134@end ignore 134@end ignore
135 135
136@menu 136@menu
137* Distrib:: How to get the latest Emacs distribution. 137* Distrib:: How to get the latest Emacs distribution.
138* Intro:: An introduction to Emacs concepts. 138* Intro:: An introduction to Emacs concepts.
139@c Note that in the printed manual, the glossary and indices come last. 139@c Note that in the printed manual, the glossary and indices come last.
140* Glossary:: Terms used in this manual. 140* Glossary:: Terms used in this manual.
141 141
142Indexes (each index contains a large menu) 142Indexes (each index contains a large menu)
143* Key Index:: An item for each standard Emacs key sequence. 143* Key Index:: An item for each standard Emacs key sequence.
144* Option Index:: An item for every command-line option. 144* Option Index:: An item for every command-line option.
145* Command Index:: An item for each command name. 145* Command Index:: An item for each command name.
146* Variable Index:: An item for each documented variable. 146* Variable Index:: An item for each documented variable.
@@ -149,100 +149,100 @@ Indexes (each index contains a large menu)
149* Acknowledgments:: Major contributors to GNU Emacs. 149* Acknowledgments:: Major contributors to GNU Emacs.
150 150
151Important General Concepts 151Important General Concepts
152* Screen:: How to interpret what you see on the screen. 152* Screen:: How to interpret what you see on the screen.
153* User Input:: Kinds of input events (characters, buttons, 153* User Input:: Kinds of input events (characters, buttons,
154 function keys). 154 function keys).
155* Keys:: Key sequences: what you type to request one 155* Keys:: Key sequences: what you type to request one
156 editing action. 156 editing action.
157* Commands:: Named functions run by key sequences to do editing. 157* Commands:: Named functions run by key sequences to do editing.
158* Entering Emacs:: Starting Emacs from the shell. 158* Entering Emacs:: Starting Emacs from the shell.
159* Exiting:: Stopping or killing Emacs. 159* Exiting:: Stopping or killing Emacs.
160 160
161Fundamental Editing Commands 161Fundamental Editing Commands
162* Basic:: The most basic editing commands. 162* Basic:: The most basic editing commands.
163* Minibuffer:: Entering arguments that are prompted for. 163* Minibuffer:: Entering arguments that are prompted for.
164* M-x:: Invoking commands by their names. 164* M-x:: Invoking commands by their names.
165* Help:: Commands for asking Emacs about its commands. 165* Help:: Commands for asking Emacs about its commands.
166 166
167Important Text-Changing Commands 167Important Text-Changing Commands
168* Mark:: The mark: how to delimit a ``region'' of text. 168* Mark:: The mark: how to delimit a ``region'' of text.
169* Killing:: Killing (cutting) text. 169* Killing:: Killing (cutting) text.
170* Yanking:: Recovering killed text. Moving text. (Pasting.) 170* Yanking:: Recovering killed text. Moving text. (Pasting.)
171* Accumulating Text:: Other ways of copying text. 171* Accumulating Text:: Other ways of copying text.
172* Rectangles:: Operating on the text inside a rectangle on the screen. 172* Rectangles:: Operating on the text inside a rectangle on the screen.
173* CUA Bindings:: Using @kbd{C-x}, @kbd{C-c}, @kbd{C-v} for copy 173* CUA Bindings:: Using @kbd{C-x}, @kbd{C-c}, @kbd{C-v} for copy
174 and paste, with enhanced rectangle support. 174 and paste, with enhanced rectangle support.
175* Registers:: Saving a text string or a location in the buffer. 175* Registers:: Saving a text string or a location in the buffer.
176* Display:: Controlling what text is displayed. 176* Display:: Controlling what text is displayed.
177* Search:: Finding or replacing occurrences of a string. 177* Search:: Finding or replacing occurrences of a string.
178* Fixit:: Commands especially useful for fixing typos. 178* Fixit:: Commands especially useful for fixing typos.
179* Keyboard Macros:: A keyboard macro records a sequence of 179* Keyboard Macros:: A keyboard macro records a sequence of
180 keystrokes to be replayed with a single command. 180 keystrokes to be replayed with a single command.
181 181
182Major Structures of Emacs 182Major Structures of Emacs
183* Files:: All about handling files. 183* Files:: All about handling files.
184* Buffers:: Multiple buffers; editing several files at once. 184* Buffers:: Multiple buffers; editing several files at once.
185* Windows:: Viewing two pieces of text at once. 185* Windows:: Viewing two pieces of text at once.
186* Frames:: Running the same Emacs session in multiple X windows. 186* Frames:: Running the same Emacs session in multiple X windows.
187* International:: Using non-@acronym{ASCII} character sets. 187* International:: Using non-@acronym{ASCII} character sets.
188 188
189Advanced Features 189Advanced Features
190* Major Modes:: Text mode vs. Lisp mode vs. C mode... 190* Major Modes:: Text mode vs. Lisp mode vs. C mode...
191* Indentation:: Editing the white space at the beginnings of lines. 191* Indentation:: Editing the white space at the beginnings of lines.
192* Text:: Commands and modes for editing English. 192* Text:: Commands and modes for editing English.
193* Programs:: Commands and modes for editing programs. 193* Programs:: Commands and modes for editing programs.
194* Building:: Compiling, running and debugging programs. 194* Building:: Compiling, running and debugging programs.
195* Maintaining:: Features for maintaining large programs. 195* Maintaining:: Features for maintaining large programs.
196* Abbrevs:: How to define text abbreviations to reduce 196* Abbrevs:: How to define text abbreviations to reduce
197 the number of characters you must type. 197 the number of characters you must type.
198@c AFAICS, the tex stuff generates its own index and does not use this one. 198@c AFAICS, the tex stuff generates its own index and does not use this one.
199@ifnottex 199@ifnottex
200* Picture Mode:: Editing pictures made up of characters using 200* Picture Mode:: Editing pictures made up of characters using
201 the quarter-plane screen model. 201 the quarter-plane screen model.
202@end ifnottex 202@end ifnottex
203* Sending Mail:: Sending mail in Emacs. 203* Sending Mail:: Sending mail in Emacs.
204* Rmail:: Reading mail in Emacs. 204* Rmail:: Reading mail in Emacs.
205* Dired:: You can ``edit'' a directory to manage files in it. 205* Dired:: You can ``edit'' a directory to manage files in it.
206* Calendar/Diary:: The calendar and diary facilities. 206* Calendar/Diary:: The calendar and diary facilities.
207* Document View:: Viewing PDF, PS and DVI files. 207* Document View:: Viewing PDF, PS and DVI files.
208* Gnus:: How to read netnews with Emacs. 208* Gnus:: How to read netnews with Emacs.
209* Shell:: Executing shell commands from Emacs. 209* Shell:: Executing shell commands from Emacs.
210* Emacs Server:: Using Emacs as an editing server for @code{mail}, etc. 210* Emacs Server:: Using Emacs as an editing server for @code{mail}, etc.
211* Printing:: Printing hardcopies of buffers or regions. 211* Printing:: Printing hardcopies of buffers or regions.
212* Sorting:: Sorting lines, paragraphs or pages within Emacs. 212* Sorting:: Sorting lines, paragraphs or pages within Emacs.
213* Narrowing:: Restricting display and editing to a portion 213* Narrowing:: Restricting display and editing to a portion
214 of the buffer. 214 of the buffer.
215* Two-Column:: Splitting apart columns to edit them 215* Two-Column:: Splitting apart columns to edit them
216 in side-by-side windows. 216 in side-by-side windows.
217* Editing Binary Files::Using Hexl mode to edit binary files. 217* Editing Binary Files::Using Hexl mode to edit binary files.
218* Saving Emacs Sessions:: Saving Emacs state from one session to the next. 218* Saving Emacs Sessions:: Saving Emacs state from one session to the next.
219* Recursive Edit:: A command can allow you to do editing 219* Recursive Edit:: A command can allow you to do editing
220 "within the command". This is called a 220 "within the command". This is called a
221 "recursive editing level". 221 "recursive editing level".
222* Emulation:: Emulating some other editors with Emacs. 222* Emulation:: Emulating some other editors with Emacs.
223* Hyperlinking:: Following links in buffers. 223* Hyperlinking:: Following links in buffers.
224* Dissociated Press:: Dissociating text for fun. 224* Dissociated Press:: Dissociating text for fun.
225* Amusements:: Various games and hacks. 225* Amusements:: Various games and hacks.
226* Customization:: Modifying the behavior of Emacs. 226* Customization:: Modifying the behavior of Emacs.
227 227
228Recovery from Problems 228Recovery from Problems
229* Quitting:: Quitting and aborting. 229* Quitting:: Quitting and aborting.
230* Lossage:: What to do if Emacs is hung or malfunctioning. 230* Lossage:: What to do if Emacs is hung or malfunctioning.
231* Bugs:: How and when to report a bug. 231* Bugs:: How and when to report a bug.
232* Contributing:: How to contribute improvements to Emacs. 232* Contributing:: How to contribute improvements to Emacs.
233* Service:: How to get help for your own Emacs needs. 233* Service:: How to get help for your own Emacs needs.
234 234
235Appendices 235Appendices
236* Copying:: The GNU General Public License gives you permission 236* Copying:: The GNU General Public License gives you permission
237 to redistribute GNU Emacs on certain terms; 237 to redistribute GNU Emacs on certain terms;
238 it also explains that there is no warranty. 238 it also explains that there is no warranty.
239* GNU Free Documentation License:: The license for this documentation. 239* GNU Free Documentation License:: The license for this documentation.
240* Emacs Invocation:: Hairy startup options. 240* Emacs Invocation:: Hairy startup options.
241* X Resources:: X resources for customizing Emacs. 241* X Resources:: X resources for customizing Emacs.
242* Antinews:: Information about Emacs version 22. 242* Antinews:: Information about Emacs version 22.
243* Mac OS / GNUstep:: Using Emacs under Mac OS and GNUstep. 243* Mac OS / GNUstep:: Using Emacs under Mac OS and GNUstep.
244* Microsoft Windows:: Using Emacs on Microsoft Windows and MS-DOS. 244* Microsoft Windows:: Using Emacs on Microsoft Windows and MS-DOS.
245* Manifesto:: What's GNU? Gnu's Not Unix! 245* Manifesto:: What's GNU? Gnu's Not Unix!
246 246
247@c Do NOT modify the following 3 lines! They must have this form to 247@c Do NOT modify the following 3 lines! They must have this form to
248@c be correctly identified by `texinfo-multiple-files-update'. In 248@c be correctly identified by `texinfo-multiple-files-update'. In
@@ -258,9 +258,9 @@ already listed, mentioned here so you can get to them in one step:
258 258
259The Organization of the Screen 259The Organization of the Screen
260 260
261* Point:: The place in the text where editing commands operate. 261* Point:: The place in the text where editing commands operate.
262* Echo Area:: Short messages appear at the bottom of the screen. 262* Echo Area:: Short messages appear at the bottom of the screen.
263* Mode Line:: Interpreting the mode line. 263* Mode Line:: Interpreting the mode line.
264* Menu Bar:: How to use the menu bar. 264* Menu Bar:: How to use the menu bar.
265 265
266Basic Editing Commands 266Basic Editing Commands
@@ -268,23 +268,23 @@ Basic Editing Commands
268* Inserting Text:: Inserting text by simply typing it. 268* Inserting Text:: Inserting text by simply typing it.
269* Moving Point:: Moving the cursor to the place where you want to 269* Moving Point:: Moving the cursor to the place where you want to
270 change something. 270 change something.
271* Erasing:: Deleting and killing text. 271* Erasing:: Deleting and killing text.
272* Basic Undo:: Undoing recent changes in the text. 272* Basic Undo:: Undoing recent changes in the text.
273* Basic Files:: Visiting, creating, and saving files. 273* Basic Files:: Visiting, creating, and saving files.
274* Basic Help:: Asking what a character does. 274* Basic Help:: Asking what a character does.
275* Blank Lines:: Making and deleting blank lines. 275* Blank Lines:: Making and deleting blank lines.
276* Continuation Lines:: How Emacs displays lines too wide for the screen. 276* Continuation Lines:: How Emacs displays lines too wide for the screen.
277* Position Info:: What page, line, row, or column is point on? 277* Position Info:: What page, line, row, or column is point on?
278* Arguments:: Numeric arguments for repeating a command N times. 278* Arguments:: Numeric arguments for repeating a command N times.
279* Repeating:: Repeating the previous command quickly. 279* Repeating:: Repeating the previous command quickly.
280 280
281The Minibuffer 281The Minibuffer
282 282
283* Minibuffer File:: Entering file names with the minibuffer. 283* Minibuffer File:: Entering file names with the minibuffer.
284* Minibuffer Edit:: How to edit in the minibuffer. 284* Minibuffer Edit:: How to edit in the minibuffer.
285* Completion:: An abbreviation facility for minibuffer input. 285* Completion:: An abbreviation facility for minibuffer input.
286* Minibuffer History:: Reusing recent minibuffer arguments. 286* Minibuffer History:: Reusing recent minibuffer arguments.
287* Repetition:: Re-executing commands that used the minibuffer. 287* Repetition:: Re-executing commands that used the minibuffer.
288* Passwords:: Entering passwords in the echo area. 288* Passwords:: Entering passwords in the echo area.
289 289
290Completion 290Completion
@@ -296,59 +296,59 @@ Completion
296 296
297Help 297Help
298 298
299* Help Summary:: Brief list of all Help commands. 299* Help Summary:: Brief list of all Help commands.
300* Key Help:: Asking what a key does in Emacs. 300* Key Help:: Asking what a key does in Emacs.
301* Name Help:: Asking about a command, variable or function name. 301* Name Help:: Asking about a command, variable or function name.
302* Apropos:: Asking what pertains to a given topic. 302* Apropos:: Asking what pertains to a given topic.
303* Help Mode:: Special features of Help mode and Help buffers. 303* Help Mode:: Special features of Help mode and Help buffers.
304* Library Keywords:: Finding Lisp libraries by keywords (topics). 304* Library Keywords:: Finding Lisp libraries by keywords (topics).
305* Language Help:: Help relating to international language support. 305* Language Help:: Help relating to international language support.
306* Misc Help:: Other help commands. 306* Misc Help:: Other help commands.
307* Help Files:: Commands to display pre-written help files. 307* Help Files:: Commands to display pre-written help files.
308* Help Echo:: Help on active text and tooltips (`balloon help'). 308* Help Echo:: Help on active text and tooltips (`balloon help').
309 309
310The Mark and the Region 310The Mark and the Region
311 311
312* Setting Mark:: Commands to set the mark. 312* Setting Mark:: Commands to set the mark.
313* Marking Objects:: Commands to put region around textual units. 313* Marking Objects:: Commands to put region around textual units.
314* Using Region:: Summary of ways to operate on contents of the region. 314* Using Region:: Summary of ways to operate on contents of the region.
315* Mark Ring:: Previous mark positions saved so you can go back there. 315* Mark Ring:: Previous mark positions saved so you can go back there.
316* Global Mark Ring:: Previous mark positions in various buffers. 316* Global Mark Ring:: Previous mark positions in various buffers.
317* Shift Selection:: Using shifted cursor motion keys. 317* Shift Selection:: Using shifted cursor motion keys.
318* Persistent Mark:: Keeping the mark active all the time. 318* Persistent Mark:: Keeping the mark active all the time.
319 319
320Killing and Moving Text 320Killing and Moving Text
321 321
322* Deletion:: Commands for deleting small amounts of text and 322* Deletion:: Commands for deleting small amounts of text and
323 blank areas. 323 blank areas.
324* Killing by Lines:: How to kill entire lines of text at one time. 324* Killing by Lines:: How to kill entire lines of text at one time.
325* Other Kill Commands:: Commands to kill large regions of text and 325* Other Kill Commands:: Commands to kill large regions of text and
326 syntactic units such as words and sentences. 326 syntactic units such as words and sentences.
327* Kill Options:: Options that affect killing. 327* Kill Options:: Options that affect killing.
328 328
329Yanking 329Yanking
330 330
331* Kill Ring:: Where killed text is stored. Basic yanking. 331* Kill Ring:: Where killed text is stored. Basic yanking.
332* Appending Kills:: Several kills in a row all yank together. 332* Appending Kills:: Several kills in a row all yank together.
333* Earlier Kills:: Yanking something killed some time ago. 333* Earlier Kills:: Yanking something killed some time ago.
334 334
335Registers 335Registers
336 336
337* RegPos:: Saving positions in registers. 337* RegPos:: Saving positions in registers.
338* RegText:: Saving text in registers. 338* RegText:: Saving text in registers.
339* RegRect:: Saving rectangles in registers. 339* RegRect:: Saving rectangles in registers.
340* RegConfig:: Saving window configurations in registers. 340* RegConfig:: Saving window configurations in registers.
341* RegNumbers:: Numbers in registers. 341* RegNumbers:: Numbers in registers.
342* RegFiles:: File names in registers. 342* RegFiles:: File names in registers.
343* Bookmarks:: Bookmarks are like registers, but persistent. 343* Bookmarks:: Bookmarks are like registers, but persistent.
344 344
345Controlling the Display 345Controlling the Display
346 346
347* Scrolling:: Commands to move text up and down in a window. 347* Scrolling:: Commands to move text up and down in a window.
348* Auto Scrolling:: Redisplay scrolls text automatically when needed. 348* Auto Scrolling:: Redisplay scrolls text automatically when needed.
349* Horizontal Scrolling:: Moving text left and right in a window. 349* Horizontal Scrolling:: Moving text left and right in a window.
350* Follow Mode:: Follow mode lets two windows scroll as one. 350* Follow Mode:: Follow mode lets two windows scroll as one.
351* Faces:: How to change the display style using faces. 351* Faces:: How to change the display style using faces.
352* Standard Faces:: Emacs' predefined faces. 352* Standard Faces:: Emacs' predefined faces.
353* Temporary Face Changes:: Commands to temporarily modify the default text face 353* Temporary Face Changes:: Commands to temporarily modify the default text face
354* Font Lock:: Minor mode for syntactic highlighting using faces. 354* Font Lock:: Minor mode for syntactic highlighting using faces.
@@ -367,15 +367,15 @@ Controlling the Display
367 367
368Searching and Replacement 368Searching and Replacement
369 369
370* Incremental Search:: Search happens as you type the string. 370* Incremental Search:: Search happens as you type the string.
371* Nonincremental Search:: Specify entire string and then search. 371* Nonincremental Search:: Specify entire string and then search.
372* Word Search:: Search for sequence of words. 372* Word Search:: Search for sequence of words.
373* Regexp Search:: Search for match for a regexp. 373* Regexp Search:: Search for match for a regexp.
374* Regexps:: Syntax of regular expressions. 374* Regexps:: Syntax of regular expressions.
375* Regexp Backslash:: Regular expression constructs starting with `\'. 375* Regexp Backslash:: Regular expression constructs starting with `\'.
376* Regexp Example:: A complex regular expression explained. 376* Regexp Example:: A complex regular expression explained.
377* Search Case:: To ignore case while searching, or not. 377* Search Case:: To ignore case while searching, or not.
378* Replace:: Search, and replace some or all matches. 378* Replace:: Search, and replace some or all matches.
379* Other Repeating Search:: Operating on all matches for some regexp. 379* Other Repeating Search:: Operating on all matches for some regexp.
380 380
381Incremental Search 381Incremental Search
@@ -393,16 +393,16 @@ Incremental Search
393Replacement Commands 393Replacement Commands
394 394
395* Unconditional Replace:: Replacing all matches for a string. 395* Unconditional Replace:: Replacing all matches for a string.
396* Regexp Replace:: Replacing all matches for a regexp. 396* Regexp Replace:: Replacing all matches for a regexp.
397* Replacement and Case:: How replacements preserve case of letters. 397* Replacement and Case:: How replacements preserve case of letters.
398* Query Replace:: How to use querying. 398* Query Replace:: How to use querying.
399 399
400Commands for Fixing Typos 400Commands for Fixing Typos
401 401
402* Undo:: The Undo commands. 402* Undo:: The Undo commands.
403* Transpose:: Exchanging two characters, words, lines, lists... 403* Transpose:: Exchanging two characters, words, lines, lists...
404* Fixing Case:: Correcting case of last word entered. 404* Fixing Case:: Correcting case of last word entered.
405* Spelling:: Apply spelling checker to a word, or a whole file. 405* Spelling:: Apply spelling checker to a word, or a whole file.
406 406
407Keyboard Macros 407Keyboard Macros
408 408
@@ -448,9 +448,9 @@ Saving Files
448 448
449Backup Files 449Backup Files
450 450
451* Backup Names:: How backup files are named. 451* Backup Names:: How backup files are named.
452* Backup Deletion:: Emacs deletes excess numbered backups. 452* Backup Deletion:: Emacs deletes excess numbered backups.
453* Backup Copying:: Backups can be made by copying or renaming. 453* Backup Copying:: Backups can be made by copying or renaming.
454 454
455Auto Reverting Non-File Buffers 455Auto Reverting Non-File Buffers
456 456
@@ -463,16 +463,16 @@ Auto-Saving: Protection Against Disasters
463* Auto Save Files:: The file where auto-saved changes are 463* Auto Save Files:: The file where auto-saved changes are
464 actually made until you save the file. 464 actually made until you save the file.
465* Auto Save Control:: Controlling when and how often to auto-save. 465* Auto Save Control:: Controlling when and how often to auto-save.
466* Recover:: Recovering text from auto-save files. 466* Recover:: Recovering text from auto-save files.
467 467
468Using Multiple Buffers 468Using Multiple Buffers
469 469
470* Select Buffer:: Creating a new buffer or reselecting an old one. 470* Select Buffer:: Creating a new buffer or reselecting an old one.
471* List Buffers:: Getting a list of buffers that exist. 471* List Buffers:: Getting a list of buffers that exist.
472* Misc Buffer:: Renaming; changing read-onlyness; copying text. 472* Misc Buffer:: Renaming; changing read-onlyness; copying text.
473* Kill Buffer:: Killing buffers you no longer need. 473* Kill Buffer:: Killing buffers you no longer need.
474* Several Buffers:: How to go through the list of all buffers 474* Several Buffers:: How to go through the list of all buffers
475 and operate variously on several of them. 475 and operate variously on several of them.
476* Indirect Buffers:: An indirect buffer shares the text of another buffer. 476* Indirect Buffers:: An indirect buffer shares the text of another buffer.
477* Buffer Convenience:: Convenience and customization features for 477* Buffer Convenience:: Convenience and customization features for
478 buffer handling. 478 buffer handling.
@@ -507,10 +507,10 @@ Frames and Graphical Displays
507* Multiple Displays:: How one Emacs job can talk to several displays. 507* Multiple Displays:: How one Emacs job can talk to several displays.
508* Special Buffer Frames:: You can make certain buffers have their own frames. 508* Special Buffer Frames:: You can make certain buffers have their own frames.
509* Frame Parameters:: Changing the colors and other modes of frames. 509* Frame Parameters:: Changing the colors and other modes of frames.
510* Scroll Bars:: How to enable and disable scroll bars; how to use them. 510* Scroll Bars:: How to enable and disable scroll bars; how to use them.
511* Wheeled Mice:: Using mouse wheels for scrolling. 511* Wheeled Mice:: Using mouse wheels for scrolling.
512* Drag and Drop:: Using drag and drop to open files and insert text. 512* Drag and Drop:: Using drag and drop to open files and insert text.
513* Menu Bars:: Enabling and disabling the menu bar. 513* Menu Bars:: Enabling and disabling the menu bar.
514* Tool Bars:: Enabling and disabling the tool bar. 514* Tool Bars:: Enabling and disabling the tool bar.
515* Dialog Boxes:: Controlling use of dialog boxes. 515* Dialog Boxes:: Controlling use of dialog boxes.
516* Tooltips:: Displaying information at the current mouse position. 516* Tooltips:: Displaying information at the current mouse position.
@@ -559,31 +559,31 @@ Major Modes
559Indentation 559Indentation
560 560
561* Indentation Commands:: Various commands and techniques for indentation. 561* Indentation Commands:: Various commands and techniques for indentation.
562* Tab Stops:: You can set arbitrary "tab stops" and then 562* Tab Stops:: You can set arbitrary "tab stops" and then
563 indent to the next tab stop when you want to. 563 indent to the next tab stop when you want to.
564* Just Spaces:: You can request indentation using just spaces. 564* Just Spaces:: You can request indentation using just spaces.
565 565
566Commands for Human Languages 566Commands for Human Languages
567 567
568* Words:: Moving over and killing words. 568* Words:: Moving over and killing words.
569* Sentences:: Moving over and killing sentences. 569* Sentences:: Moving over and killing sentences.
570* Paragraphs:: Moving over paragraphs. 570* Paragraphs:: Moving over paragraphs.
571* Pages:: Moving over pages. 571* Pages:: Moving over pages.
572* Filling:: Filling or justifying text. 572* Filling:: Filling or justifying text.
573* Case:: Changing the case of text. 573* Case:: Changing the case of text.
574* Text Mode:: The major modes for editing text files. 574* Text Mode:: The major modes for editing text files.
575* Outline Mode:: Editing outlines. 575* Outline Mode:: Editing outlines.
576* TeX Mode:: Editing input to the formatter TeX. 576* TeX Mode:: Editing input to the formatter TeX.
577* HTML Mode:: Editing HTML and SGML files. 577* HTML Mode:: Editing HTML and SGML files.
578* Nroff Mode:: Editing input to the formatter nroff. 578* Nroff Mode:: Editing input to the formatter nroff.
579* Formatted Text:: Editing formatted text directly in WYSIWYG fashion. 579* Formatted Text:: Editing formatted text directly in WYSIWYG fashion.
580* Text Based Tables:: Editing text-based tables in WYSIWYG fashion. 580* Text Based Tables:: Editing text-based tables in WYSIWYG fashion.
581 581
582Filling Text 582Filling Text
583 583
584* Auto Fill:: Auto Fill mode breaks long lines automatically. 584* Auto Fill:: Auto Fill mode breaks long lines automatically.
585* Fill Commands:: Commands to refill paragraphs and center lines. 585* Fill Commands:: Commands to refill paragraphs and center lines.
586* Fill Prefix:: Filling paragraphs that are indented 586* Fill Prefix:: Filling paragraphs that are indented
587 or in a comment, etc. 587 or in a comment, etc.
588* Adaptive Fill:: How Emacs can determine the fill prefix automatically. 588* Adaptive Fill:: How Emacs can determine the fill prefix automatically.
589* Refill:: Keeping paragraphs filled. 589* Refill:: Keeping paragraphs filled.
@@ -592,7 +592,7 @@ Filling Text
592Outline Mode 592Outline Mode
593 593
594* Outline Format:: What the text of an outline looks like. 594* Outline Format:: What the text of an outline looks like.
595* Outline Motion:: Special commands for moving through 595* Outline Motion:: Special commands for moving through
596 outlines. 596 outlines.
597* Outline Visibility:: Commands to control what is visible. 597* Outline Visibility:: Commands to control what is visible.
598* Outline Views:: Outlines and multiple views. 598* Outline Views:: Outlines and multiple views.
@@ -644,7 +644,7 @@ Editing Programs
644 of a program. 644 of a program.
645* Program Indent:: Adjusting indentation to show the nesting. 645* Program Indent:: Adjusting indentation to show the nesting.
646* Parentheses:: Commands that operate on parentheses. 646* Parentheses:: Commands that operate on parentheses.
647* Comments:: Inserting, killing, and aligning comments. 647* Comments:: Inserting, killing, and aligning comments.
648* Documentation:: Getting documentation of functions you plan to call. 648* Documentation:: Getting documentation of functions you plan to call.
649* Hideshow:: Displaying blocks selectively. 649* Hideshow:: Displaying blocks selectively.
650* Symbol Completion:: Completion on symbol names of your program or language. 650* Symbol Completion:: Completion on symbol names of your program or language.
@@ -666,18 +666,18 @@ Top-Level Definitions, or Defuns
666 666
667Indentation for Programs 667Indentation for Programs
668 668
669* Basic Indent:: Indenting a single line. 669* Basic Indent:: Indenting a single line.
670* Multi-line Indent:: Commands to reindent many lines at once. 670* Multi-line Indent:: Commands to reindent many lines at once.
671* Lisp Indent:: Specifying how each Lisp function should be indented. 671* Lisp Indent:: Specifying how each Lisp function should be indented.
672* C Indent:: Extra features for indenting C and related modes. 672* C Indent:: Extra features for indenting C and related modes.
673* Custom C Indent:: Controlling indentation style for C and related modes. 673* Custom C Indent:: Controlling indentation style for C and related modes.
674 674
675Commands for Editing with Parentheses 675Commands for Editing with Parentheses
676 676
677* Expressions:: Expressions with balanced parentheses. 677* Expressions:: Expressions with balanced parentheses.
678* Moving by Parens:: Commands for moving up, down and across 678* Moving by Parens:: Commands for moving up, down and across
679 in the structure of parentheses. 679 in the structure of parentheses.
680* Matching:: Insertion of a close-delimiter flashes matching open. 680* Matching:: Insertion of a close-delimiter flashes matching open.
681 681
682Manipulating Comments 682Manipulating Comments
683 683
@@ -702,12 +702,12 @@ C and Related Modes
702 702
703Fortran Mode 703Fortran Mode
704 704
705* Fortran Motion:: Moving point by statements or subprograms. 705* Fortran Motion:: Moving point by statements or subprograms.
706* Fortran Indent:: Indentation commands for Fortran. 706* Fortran Indent:: Indentation commands for Fortran.
707* Fortran Comments:: Inserting and aligning comments. 707* Fortran Comments:: Inserting and aligning comments.
708* Fortran Autofill:: Auto fill support for Fortran. 708* Fortran Autofill:: Auto fill support for Fortran.
709* Fortran Columns:: Measuring columns for valid Fortran. 709* Fortran Columns:: Measuring columns for valid Fortran.
710* Fortran Abbrev:: Built-in abbrevs for Fortran keywords. 710* Fortran Abbrev:: Built-in abbrevs for Fortran keywords.
711 711
712Fortran Indentation 712Fortran Indentation
713 713
@@ -719,28 +719,28 @@ Fortran Indentation
719 719
720Compiling and Testing Programs 720Compiling and Testing Programs
721 721
722* Compilation:: Compiling programs in languages other 722* Compilation:: Compiling programs in languages other
723 than Lisp (C, Pascal, etc.). 723 than Lisp (C, Pascal, etc.).
724* Compilation Mode:: The mode for visiting compiler errors. 724* Compilation Mode:: The mode for visiting compiler errors.
725* Compilation Shell:: Customizing your shell properly 725* Compilation Shell:: Customizing your shell properly
726 for use in the compilation buffer. 726 for use in the compilation buffer.
727* Grep Searching:: Searching with grep. 727* Grep Searching:: Searching with grep.
728* Flymake:: Finding syntax errors on the fly. 728* Flymake:: Finding syntax errors on the fly.
729* Debuggers:: Running symbolic debuggers for non-Lisp programs. 729* Debuggers:: Running symbolic debuggers for non-Lisp programs.
730* Executing Lisp:: Various modes for editing Lisp programs, 730* Executing Lisp:: Various modes for editing Lisp programs,
731 with different facilities for running 731 with different facilities for running
732 the Lisp programs. 732 the Lisp programs.
733* Lisp Libraries:: Creating Lisp programs to run in Emacs. 733* Lisp Libraries:: Creating Lisp programs to run in Emacs.
734* Lisp Eval:: Executing a single Lisp expression in Emacs. 734* Lisp Eval:: Executing a single Lisp expression in Emacs.
735* Lisp Interaction:: Executing Lisp in an Emacs buffer. 735* Lisp Interaction:: Executing Lisp in an Emacs buffer.
736* External Lisp:: Communicating through Emacs with a separate Lisp. 736* External Lisp:: Communicating through Emacs with a separate Lisp.
737 737
738Running Debuggers Under Emacs 738Running Debuggers Under Emacs
739 739
740* Starting GUD:: How to start a debugger subprocess. 740* Starting GUD:: How to start a debugger subprocess.
741* Debugger Operation:: Connection between the debugger and source buffers. 741* Debugger Operation:: Connection between the debugger and source buffers.
742* Commands of GUD:: Key bindings for common commands. 742* Commands of GUD:: Key bindings for common commands.
743* GUD Customization:: Defining your own commands for GUD. 743* GUD Customization:: Defining your own commands for GUD.
744* GDB Graphical Interface:: An enhanced mode that uses GDB features to 744* GDB Graphical Interface:: An enhanced mode that uses GDB features to
745 implement a graphical debugging environment through 745 implement a graphical debugging environment through
746 Emacs. 746 Emacs.
@@ -761,9 +761,9 @@ GDB Graphical Interface
761Maintaining Large Programs 761Maintaining Large Programs
762 762
763* Version Control:: Using version control systems. 763* Version Control:: Using version control systems.
764* Change Log:: Maintaining a change history for your program. 764* Change Log:: Maintaining a change history for your program.
765* Tags:: Go directly to any function in your program in one 765* Tags:: Go directly to any function in your program in one
766 command. Tags remembers which file it is in. 766 command. Tags remembers which file it is in.
767* EDE:: An integrated development environment for Emacs. 767* EDE:: An integrated development environment for Emacs.
768* Emerge:: A convenient way of merging two versions of a program. 768* Emerge:: A convenient way of merging two versions of a program.
769 769
@@ -844,25 +844,25 @@ Change Logs
844 844
845Tags Tables 845Tags Tables
846 846
847* Tag Syntax:: Tag syntax for various types of code and text files. 847* Tag Syntax:: Tag syntax for various types of code and text files.
848* Create Tags Table:: Creating a tags table with @code{etags}. 848* Create Tags Table:: Creating a tags table with @code{etags}.
849* Etags Regexps:: Create arbitrary tags using regular expressions. 849* Etags Regexps:: Create arbitrary tags using regular expressions.
850* Select Tags Table:: How to visit a tags table. 850* Select Tags Table:: How to visit a tags table.
851* Find Tag:: Commands to find the definition of a specific tag. 851* Find Tag:: Commands to find the definition of a specific tag.
852* Tags Search:: Using a tags table for searching and replacing. 852* Tags Search:: Using a tags table for searching and replacing.
853* List Tags:: Listing and finding tags defined in a file. 853* List Tags:: Listing and finding tags defined in a file.
854 854
855Merging Files with Emerge 855Merging Files with Emerge
856 856
857* Overview of Emerge:: How to start Emerge. Basic concepts. 857* Overview of Emerge:: How to start Emerge. Basic concepts.
858* Submodes of Emerge:: Fast mode vs. Edit mode. 858* Submodes of Emerge:: Fast mode vs. Edit mode.
859 Skip Prefers mode and Auto Advance mode. 859 Skip Prefers mode and Auto Advance mode.
860* State of Difference:: You do the merge by specifying state A or B 860* State of Difference:: You do the merge by specifying state A or B
861 for each difference. 861 for each difference.
862* Merge Commands:: Commands for selecting a difference, 862* Merge Commands:: Commands for selecting a difference,
863 changing states of differences, etc. 863 changing states of differences, etc.
864* Exiting Emerge:: What to do when you've finished the merge. 864* Exiting Emerge:: What to do when you've finished the merge.
865* Combining in Emerge:: How to keep both alternatives for a difference. 865* Combining in Emerge:: How to keep both alternatives for a difference.
866* Fine Points of Emerge:: Miscellaneous issues. 866* Fine Points of Emerge:: Miscellaneous issues.
867 867
868Abbrevs 868Abbrevs
@@ -887,10 +887,10 @@ Editing Pictures
887 887
888Sending Mail 888Sending Mail
889 889
890* Mail Format:: Format of the mail being composed. 890* Mail Format:: Format of the mail being composed.
891* Mail Headers:: Details of some standard mail header fields. 891* Mail Headers:: Details of some standard mail header fields.
892* Mail Aliases:: Abbreviating and grouping mail addresses. 892* Mail Aliases:: Abbreviating and grouping mail addresses.
893* Mail Commands:: Special commands for editing mail being composed. 893* Mail Commands:: Special commands for editing mail being composed.
894* Mail Signature:: Adding a signature to every message. 894* Mail Signature:: Adding a signature to every message.
895* Mail Amusements:: Distracting the NSA; adding fortune messages. 895* Mail Amusements:: Distracting the NSA; adding fortune messages.
896* Mail Methods:: Using alternative mail-composition methods. 896* Mail Methods:: Using alternative mail-composition methods.
@@ -928,28 +928,28 @@ Reading Mail with Rmail
928 928
929Summaries 929Summaries
930 930
931* Rmail Make Summary:: Making various sorts of summaries. 931* Rmail Make Summary:: Making various sorts of summaries.
932* Rmail Summary Edit:: Manipulating messages from the summary. 932* Rmail Summary Edit:: Manipulating messages from the summary.
933 933
934Dired, the Directory Editor 934Dired, the Directory Editor
935 935
936* Dired Enter:: How to invoke Dired. 936* Dired Enter:: How to invoke Dired.
937* Dired Navigation:: Special motion commands in the Dired buffer. 937* Dired Navigation:: Special motion commands in the Dired buffer.
938* Dired Deletion:: Deleting files with Dired. 938* Dired Deletion:: Deleting files with Dired.
939* Flagging Many Files:: Flagging files based on their names. 939* Flagging Many Files:: Flagging files based on their names.
940* Dired Visiting:: Other file operations through Dired. 940* Dired Visiting:: Other file operations through Dired.
941* Marks vs Flags:: Flagging for deletion vs marking. 941* Marks vs Flags:: Flagging for deletion vs marking.
942* Operating on Files:: How to copy, rename, print, compress, etc. 942* Operating on Files:: How to copy, rename, print, compress, etc.
943 either one file or several files. 943 either one file or several files.
944* Shell Commands in Dired:: Running a shell command on the marked files. 944* Shell Commands in Dired:: Running a shell command on the marked files.
945* Transforming File Names:: Using patterns to rename multiple files. 945* Transforming File Names:: Using patterns to rename multiple files.
946* Comparison in Dired:: Running `diff' by way of Dired. 946* Comparison in Dired:: Running `diff' by way of Dired.
947* Subdirectories in Dired:: Adding subdirectories to the Dired buffer. 947* Subdirectories in Dired:: Adding subdirectories to the Dired buffer.
948* Subdir Switches:: Subdirectory switches in Dired. 948* Subdir Switches:: Subdirectory switches in Dired.
949* Subdirectory Motion:: Moving across subdirectories, and up and down. 949* Subdirectory Motion:: Moving across subdirectories, and up and down.
950* Hiding Subdirectories:: Making subdirectories visible or invisible. 950* Hiding Subdirectories:: Making subdirectories visible or invisible.
951* Dired Updating:: Discarding lines for files of no interest. 951* Dired Updating:: Discarding lines for files of no interest.
952* Dired and Find:: Using `find' to choose the files for Dired. 952* Dired and Find:: Using `find' to choose the files for Dired.
953* Wdired:: Operating on files by editing the Dired buffer. 953* Wdired:: Operating on files by editing the Dired buffer.
954* Image-Dired:: Viewing image thumbnails in Dired. 954* Image-Dired:: Viewing image thumbnails in Dired.
955* Misc Dired Features:: Various other features. 955* Misc Dired Features:: Various other features.
@@ -966,7 +966,7 @@ The Calendar and the Diary
966* Lunar Phases:: Displaying phases of the moon. 966* Lunar Phases:: Displaying phases of the moon.
967* Other Calendars:: Converting dates to other calendar systems. 967* Other Calendars:: Converting dates to other calendar systems.
968* Diary:: Displaying events from your diary. 968* Diary:: Displaying events from your diary.
969* Appointments:: Reminders when it's time to do something. 969* Appointments:: Reminders when it's time to do something.
970* Importing Diary:: Converting diary events to/from other formats. 970* Importing Diary:: Converting diary events to/from other formats.
971* Daylight Saving:: How to specify when daylight saving time is active. 971* Daylight Saving:: How to specify when daylight saving time is active.
972* Time Intervals:: Keeping track of time intervals. 972* Time Intervals:: Keeping track of time intervals.
@@ -976,23 +976,23 @@ Movement in the Calendar
976 976
977* Calendar Unit Motion:: Moving by days, weeks, months, and years. 977* Calendar Unit Motion:: Moving by days, weeks, months, and years.
978* Move to Beginning or End:: Moving to start/end of weeks, months, and years. 978* Move to Beginning or End:: Moving to start/end of weeks, months, and years.
979* Specified Dates:: Moving to the current date or another 979* Specified Dates:: Moving to the current date or another
980 specific date. 980 specific date.
981 981
982Conversion To and From Other Calendars 982Conversion To and From Other Calendars
983 983
984* Calendar Systems:: The calendars Emacs understands 984* Calendar Systems:: The calendars Emacs understands
985 (aside from Gregorian). 985 (aside from Gregorian).
986* To Other Calendar:: Converting the selected date to various calendars. 986* To Other Calendar:: Converting the selected date to various calendars.
987* From Other Calendar:: Moving to a date specified in another calendar. 987* From Other Calendar:: Moving to a date specified in another calendar.
988* Mayan Calendar:: Moving to a date specified in a Mayan calendar. 988* Mayan Calendar:: Moving to a date specified in a Mayan calendar.
989 989
990The Diary 990The Diary
991 991
992* Displaying the Diary:: Viewing diary entries and associated calendar dates. 992* Displaying the Diary:: Viewing diary entries and associated calendar dates.
993* Format of Diary File:: Entering events in your diary. 993* Format of Diary File:: Entering events in your diary.
994* Date Formats:: Various ways you can specify dates. 994* Date Formats:: Various ways you can specify dates.
995* Adding to Diary:: Commands to create diary entries. 995* Adding to Diary:: Commands to create diary entries.
996* Special Diary Entries:: Anniversaries, blocks of dates, cyclic entries, etc. 996* Special Diary Entries:: Anniversaries, blocks of dates, cyclic entries, etc.
997 997
998Customizing the Calendar and Diary 998Customizing the Calendar and Diary
@@ -1009,22 +1009,22 @@ Customizing the Calendar and Diary
1009 1009
1010Document Viewing 1010Document Viewing
1011 1011
1012* Navigation:: Navigation inside DocView buffers. 1012* Navigation:: Navigation inside DocView buffers.
1013* Searching:: Searching inside documents. 1013* Searching:: Searching inside documents.
1014* Slicing:: Specifying which part of pages should be displayed. 1014* Slicing:: Specifying which part of pages should be displayed.
1015* Conversion:: Influencing and triggering conversion. 1015* Conversion:: Influencing and triggering conversion.
1016 1016
1017Gnus 1017Gnus
1018 1018
1019* Buffers of Gnus:: The group, summary, and article buffers. 1019* Buffers of Gnus:: The group, summary, and article buffers.
1020* Gnus Startup:: What you should know about starting Gnus. 1020* Gnus Startup:: What you should know about starting Gnus.
1021* Summary of Gnus:: A short description of the basic Gnus commands. 1021* Summary of Gnus:: A short description of the basic Gnus commands.
1022 1022
1023Running Shell Commands from Emacs 1023Running Shell Commands from Emacs
1024 1024
1025* Single Shell:: How to run one shell command and return. 1025* Single Shell:: How to run one shell command and return.
1026* Interactive Shell:: Permanent shell taking input via Emacs. 1026* Interactive Shell:: Permanent shell taking input via Emacs.
1027* Shell Mode:: Special Emacs commands used with permanent shell. 1027* Shell Mode:: Special Emacs commands used with permanent shell.
1028* Shell Prompts:: Two ways to recognize shell prompts. 1028* Shell Prompts:: Two ways to recognize shell prompts.
1029* Shell History:: Repeating previous commands in a shell buffer. 1029* Shell History:: Repeating previous commands in a shell buffer.
1030* Directory Tracking:: Keeping track when the subshell changes directory. 1030* Directory Tracking:: Keeping track when the subshell changes directory.
@@ -1032,7 +1032,7 @@ Running Shell Commands from Emacs
1032* Terminal emulator:: An Emacs window as a terminal emulator. 1032* Terminal emulator:: An Emacs window as a terminal emulator.
1033* Term Mode:: Special Emacs commands used in Term mode. 1033* Term Mode:: Special Emacs commands used in Term mode.
1034* Paging in Term:: Paging in the terminal emulator. 1034* Paging in Term:: Paging in the terminal emulator.
1035* Remote Host:: Connecting to another computer. 1035* Remote Host:: Connecting to another computer.
1036* Serial Terminal:: Connecting to a serial port. 1036* Serial Terminal:: Connecting to a serial port.
1037 1037
1038Shell Command History 1038Shell Command History
@@ -1048,7 +1048,7 @@ Using Emacs as a Server
1048 1048
1049Printing Hard Copies 1049Printing Hard Copies
1050 1050
1051* PostScript:: Printing buffers or regions as PostScript. 1051* PostScript:: Printing buffers or regions as PostScript.
1052* PostScript Variables:: Customizing the PostScript printing commands. 1052* PostScript Variables:: Customizing the PostScript printing commands.
1053* Printing Package:: An optional advanced printing interface. 1053* Printing Package:: An optional advanced printing interface.
1054 1054
@@ -1060,18 +1060,18 @@ Hyperlinking and Navigation Features
1060 1060
1061Customization 1061Customization
1062 1062
1063* Minor Modes:: Each minor mode is a feature you can turn on 1063* Minor Modes:: Each minor mode is a feature you can turn on
1064 independently of any others. 1064 independently of any others.
1065* Easy Customization:: Convenient way to browse and change settings. 1065* Easy Customization:: Convenient way to browse and change settings.
1066* Variables:: Many Emacs commands examine Emacs variables 1066* Variables:: Many Emacs commands examine Emacs variables
1067 to decide what to do; by setting variables, 1067 to decide what to do; by setting variables,
1068 you can control their functioning. 1068 you can control their functioning.
1069* Key Bindings:: The keymaps say what command each key runs. 1069* Key Bindings:: The keymaps say what command each key runs.
1070 By changing them, you can "redefine keys". 1070 By changing them, you can "redefine keys".
1071* Syntax:: The syntax table controls how words and 1071* Syntax:: The syntax table controls how words and
1072 expressions are parsed. 1072 expressions are parsed.
1073* Init File:: How to write common customizations in the 1073* Init File:: How to write common customizations in the
1074 @file{.emacs} file. 1074 @file{.emacs} file.
1075 1075
1076Easy Customization Interface 1076Easy Customization Interface
1077 1077
@@ -1087,10 +1087,10 @@ Easy Customization Interface
1087 1087
1088Variables 1088Variables
1089 1089
1090* Examining:: Examining or setting one variable's value. 1090* Examining:: Examining or setting one variable's value.
1091* Hooks:: Hook variables let you specify programs for parts 1091* Hooks:: Hook variables let you specify programs for parts
1092 of Emacs to run on particular occasions. 1092 of Emacs to run on particular occasions.
1093* Locals:: Per-buffer values of variables. 1093* Locals:: Per-buffer values of variables.
1094* File Variables:: How files can specify variable values. 1094* File Variables:: How files can specify variable values.
1095* Directory Variables:: How variable values can be specified by directory. 1095* Directory Variables:: How variable values can be specified by directory.
1096 1096
@@ -1117,10 +1117,10 @@ Customizing Key Bindings
1117 1117
1118The Init File, @file{~/.emacs} 1118The Init File, @file{~/.emacs}
1119 1119
1120* Init Syntax:: Syntax of constants in Emacs Lisp. 1120* Init Syntax:: Syntax of constants in Emacs Lisp.
1121* Init Examples:: How to do some things with an init file. 1121* Init Examples:: How to do some things with an init file.
1122* Terminal Init:: Each terminal type can have an init file. 1122* Terminal Init:: Each terminal type can have an init file.
1123* Find Init:: How Emacs finds the init file. 1123* Find Init:: How Emacs finds the init file.
1124* Init Non-ASCII:: Using non-@acronym{ASCII} characters in an init file. 1124* Init Non-ASCII:: Using non-@acronym{ASCII} characters in an init file.
1125 1125
1126Dealing with Emacs Trouble 1126Dealing with Emacs Trouble
@@ -1138,31 +1138,31 @@ Dealing with Emacs Trouble
1138Reporting Bugs 1138Reporting Bugs
1139 1139
1140* Bug Criteria:: Have you really found a bug? 1140* Bug Criteria:: Have you really found a bug?
1141* Understanding Bug Reporting:: How to report a bug effectively. 1141* Understanding Bug Reporting:: How to report a bug effectively.
1142* Checklist:: Steps to follow for a good bug report. 1142* Checklist:: Steps to follow for a good bug report.
1143* Sending Patches:: How to send a patch for GNU Emacs. 1143* Sending Patches:: How to send a patch for GNU Emacs.
1144 1144
1145Command Line Arguments for Emacs Invocation 1145Command Line Arguments for Emacs Invocation
1146 1146
1147* Action Arguments:: Arguments to visit files, load libraries, 1147* Action Arguments:: Arguments to visit files, load libraries,
1148 and call functions. 1148 and call functions.
1149* Initial Options:: Arguments that take effect while starting Emacs. 1149* Initial Options:: Arguments that take effect while starting Emacs.
1150* Command Example:: Examples of using command line arguments. 1150* Command Example:: Examples of using command line arguments.
1151* Resume Arguments:: Specifying arguments when you resume a running Emacs. 1151* Resume Arguments:: Specifying arguments when you resume a running Emacs.
1152* Environment:: Environment variables that Emacs uses. 1152* Environment:: Environment variables that Emacs uses.
1153* Display X:: Changing the default display and using remote login. 1153* Display X:: Changing the default display and using remote login.
1154* Font X:: Choosing a font for text, under X. 1154* Font X:: Choosing a font for text, under X.
1155* Colors:: Choosing display colors. 1155* Colors:: Choosing display colors.
1156* Window Size X:: Start-up window size, under X. 1156* Window Size X:: Start-up window size, under X.
1157* Borders X:: Internal and external borders, under X. 1157* Borders X:: Internal and external borders, under X.
1158* Title X:: Specifying the initial frame's title. 1158* Title X:: Specifying the initial frame's title.
1159* Icons X:: Choosing what sort of icon to use, under X. 1159* Icons X:: Choosing what sort of icon to use, under X.
1160* Misc X:: Other display options. 1160* Misc X:: Other display options.
1161 1161
1162Environment Variables 1162Environment Variables
1163 1163
1164* General Variables:: Environment variables that all versions of Emacs use. 1164* General Variables:: Environment variables that all versions of Emacs use.
1165* Misc Variables:: Certain system-specific variables. 1165* Misc Variables:: Certain system-specific variables.
1166* MS-Windows Registry:: An alternative to the environment on MS-Windows. 1166* MS-Windows Registry:: An alternative to the environment on MS-Windows.
1167 1167
1168X Options and Resources 1168X Options and Resources
diff --git a/doc/emacs/emerge-xtra.texi b/doc/emacs/emerge-xtra.texi
index 762e2fc8727..f502d3f4728 100644
--- a/doc/emacs/emerge-xtra.texi
+++ b/doc/emacs/emerge-xtra.texi
@@ -1,5 +1,6 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 2@c Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010
3@c Free Software Foundation, Inc.
3@c See file emacs.texi for copying conditions. 4@c See file emacs.texi for copying conditions.
4@c 5@c
5@c This file is included either in emacs-xtra.texi (when producing the 6@c This file is included either in emacs-xtra.texi (when producing the
@@ -22,16 +23,16 @@ easier. For other ways to compare files, see
22and @ref{Top, Ediff,, ediff, The Ediff Manual}. 23and @ref{Top, Ediff,, ediff, The Ediff Manual}.
23 24
24@menu 25@menu
25* Overview of Emerge:: How to start Emerge. Basic concepts. 26* Overview of Emerge:: How to start Emerge. Basic concepts.
26* Submodes of Emerge:: Fast mode vs. Edit mode. 27* Submodes of Emerge:: Fast mode vs. Edit mode.
27 Skip Prefers mode and Auto Advance mode. 28 Skip Prefers mode and Auto Advance mode.
28* State of Difference:: You do the merge by specifying state A or B 29* State of Difference:: You do the merge by specifying state A or B
29 for each difference. 30 for each difference.
30* Merge Commands:: Commands for selecting a difference, 31* Merge Commands:: Commands for selecting a difference,
31 changing states of differences, etc. 32 changing states of differences, etc.
32* Exiting Emerge:: What to do when you've finished the merge. 33* Exiting Emerge:: What to do when you've finished the merge.
33* Combining in Emerge:: How to keep both alternatives for a difference. 34* Combining in Emerge:: How to keep both alternatives for a difference.
34* Fine Points of Emerge:: Miscellaneous issues. 35* Fine Points of Emerge:: Miscellaneous issues.
35@end menu 36@end menu
36 37
37@node Overview of Emerge 38@node Overview of Emerge
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi
index d6a7692d3ab..4701c1a7a89 100644
--- a/doc/emacs/files.texi
+++ b/doc/emacs/files.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1999, 2000, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1999, 2000,
3@c 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Files, Buffers, Keyboard Macros, Top 6@node Files, Buffers, Keyboard Macros, Top
6@chapter File Handling 7@chapter File Handling
@@ -553,9 +554,9 @@ makes a backup from the previous contents, and arranges to make
553another from the newly saved contents if you save again. 554another from the newly saved contents if you save again.
554 555
555@menu 556@menu
556* Names: Backup Names. How backup files are named. 557* Names: Backup Names. How backup files are named.
557* Deletion: Backup Deletion. Emacs deletes excess numbered backups. 558* Deletion: Backup Deletion. Emacs deletes excess numbered backups.
558* Copying: Backup Copying. Backups can be made by copying or renaming. 559* Copying: Backup Copying. Backups can be made by copying or renaming.
559@end menu 560@end menu
560 561
561@node Backup Names 562@node Backup Names
@@ -994,7 +995,7 @@ execution of commands you have been typing.
994* Files: Auto Save Files. The file where auto-saved changes are 995* Files: Auto Save Files. The file where auto-saved changes are
995 actually made until you save the file. 996 actually made until you save the file.
996* Control: Auto Save Control. Controlling when and how often to auto-save. 997* Control: Auto Save Control. Controlling when and how often to auto-save.
997* Recover:: Recovering text from auto-save files. 998* Recover:: Recovering text from auto-save files.
998@end menu 999@end menu
999 1000
1000@node Auto Save Files 1001@node Auto Save Files
diff --git a/doc/emacs/fortran-xtra.texi b/doc/emacs/fortran-xtra.texi
index f91297d4dd8..d875ed46812 100644
--- a/doc/emacs/fortran-xtra.texi
+++ b/doc/emacs/fortran-xtra.texi
@@ -1,5 +1,6 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 2@c Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010
3@c Free Software Foundation, Inc.
3@c See file emacs.texi for copying conditions. 4@c See file emacs.texi for copying conditions.
4@c 5@c
5@c This file is included either in emacs-xtra.texi (when producing the 6@c This file is included either in emacs-xtra.texi (when producing the
@@ -57,12 +58,12 @@ command runs the hook @code{fortran-mode-hook}.
57@end ifnottex 58@end ifnottex
58 59
59@menu 60@menu
60* Motion: Fortran Motion. Moving point by statements or subprograms. 61* Motion: Fortran Motion. Moving point by statements or subprograms.
61* Indent: Fortran Indent. Indentation commands for Fortran. 62* Indent: Fortran Indent. Indentation commands for Fortran.
62* Comments: Fortran Comments. Inserting and aligning comments. 63* Comments: Fortran Comments. Inserting and aligning comments.
63* Autofill: Fortran Autofill. Auto fill support for Fortran. 64* Autofill: Fortran Autofill. Auto fill support for Fortran.
64* Columns: Fortran Columns. Measuring columns for valid Fortran. 65* Columns: Fortran Columns. Measuring columns for valid Fortran.
65* Abbrev: Fortran Abbrev. Built-in abbrevs for Fortran keywords. 66* Abbrev: Fortran Abbrev. Built-in abbrevs for Fortran keywords.
66@end menu 67@end menu
67 68
68@node Fortran Motion 69@node Fortran Motion
diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi
index cde901acf75..fbc21f17884 100644
--- a/doc/emacs/frames.texi
+++ b/doc/emacs/frames.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1999, 2000, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1999, 2000,
3@c 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Frames, International, Windows, Top 6@node Frames, International, Windows, Top
6@chapter Frames and Graphical Displays 7@chapter Frames and Graphical Displays
@@ -44,10 +45,10 @@ so that you can use many of the features described in this chapter.
44* Multiple Displays:: How one Emacs job can talk to several displays. 45* Multiple Displays:: How one Emacs job can talk to several displays.
45* Special Buffer Frames:: You can make certain buffers have their own frames. 46* Special Buffer Frames:: You can make certain buffers have their own frames.
46* Frame Parameters:: Changing the colors and other modes of frames. 47* Frame Parameters:: Changing the colors and other modes of frames.
47* Scroll Bars:: How to enable and disable scroll bars; how to use them. 48* Scroll Bars:: How to enable and disable scroll bars; how to use them.
48* Wheeled Mice:: Using mouse wheels for scrolling. 49* Wheeled Mice:: Using mouse wheels for scrolling.
49* Drag and Drop:: Using drag and drop to open files and insert text. 50* Drag and Drop:: Using drag and drop to open files and insert text.
50* Menu Bars:: Enabling and disabling the menu bar. 51* Menu Bars:: Enabling and disabling the menu bar.
51* Tool Bars:: Enabling and disabling the tool bar. 52* Tool Bars:: Enabling and disabling the tool bar.
52* Dialog Boxes:: Controlling use of dialog boxes. 53* Dialog Boxes:: Controlling use of dialog boxes.
53* Tooltips:: Displaying information at the current mouse position. 54* Tooltips:: Displaying information at the current mouse position.
diff --git a/doc/emacs/help.texi b/doc/emacs/help.texi
index ac3539881d8..3e298bb0f96 100644
--- a/doc/emacs/help.texi
+++ b/doc/emacs/help.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Help, Mark, M-x, Top 6@node Help, Mark, M-x, Top
6@chapter Help 7@chapter Help
@@ -69,14 +70,14 @@ This displays the available Emacs packages based on keywords.
69@end table 70@end table
70 71
71@menu 72@menu
72* Help Summary:: Brief list of all Help commands. 73* Help Summary:: Brief list of all Help commands.
73* Key Help:: Asking what a key does in Emacs. 74* Key Help:: Asking what a key does in Emacs.
74* Name Help:: Asking about a command, variable or function name. 75* Name Help:: Asking about a command, variable or function name.
75* Apropos:: Asking what pertains to a given topic. 76* Apropos:: Asking what pertains to a given topic.
76* Help Mode:: Special features of Help mode and Help buffers. 77* Help Mode:: Special features of Help mode and Help buffers.
77* Library Keywords:: Finding Lisp libraries by keywords (topics). 78* Library Keywords:: Finding Lisp libraries by keywords (topics).
78* Language Help:: Help relating to international language support. 79* Language Help:: Help relating to international language support.
79* Misc Help:: Other help commands. 80* Misc Help:: Other help commands.
80* Help Files:: Commands to display pre-written help files. 81* Help Files:: Commands to display pre-written help files.
81* Help Echo:: Help on active text and tooltips (`balloon help'). 82* Help Echo:: Help on active text and tooltips (`balloon help').
82@end menu 83@end menu
diff --git a/doc/emacs/killing.texi b/doc/emacs/killing.texi
index 07533a15a84..150f05b5994 100644
--- a/doc/emacs/killing.texi
+++ b/doc/emacs/killing.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5 6
6@node Killing, Yanking, Mark, Top 7@node Killing, Yanking, Mark, Top
@@ -260,9 +261,9 @@ than you killed any text in Emacs, @kbd{C-y} copies the selection
260instead of text killed within Emacs. 261instead of text killed within Emacs.
261 262
262@menu 263@menu
263* Kill Ring:: Where killed text is stored. Basic yanking. 264* Kill Ring:: Where killed text is stored. Basic yanking.
264* Appending Kills:: Several kills in a row all yank together. 265* Appending Kills:: Several kills in a row all yank together.
265* Earlier Kills:: Yanking something killed some time ago. 266* Earlier Kills:: Yanking something killed some time ago.
266@end menu 267@end menu
267 268
268@node Kill Ring 269@node Kill Ring
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi
index 8c417bc12ac..f5a93ec60e7 100644
--- a/doc/emacs/maintaining.texi
+++ b/doc/emacs/maintaining.texi
@@ -11,9 +11,9 @@ programs.
11 11
12@menu 12@menu
13* Version Control:: Using version control systems. 13* Version Control:: Using version control systems.
14* Change Log:: Maintaining a change history for your program. 14* Change Log:: Maintaining a change history for your program.
15* Tags:: Go directly to any function in your program in one 15* Tags:: Go directly to any function in your program in one
16 command. Tags remembers which file it is in. 16 command. Tags remembers which file it is in.
17* EDE:: An integrated development environment for Emacs. 17* EDE:: An integrated development environment for Emacs.
18@ifnottex 18@ifnottex
19* Emerge:: A convenient way of merging two versions of a program. 19* Emerge:: A convenient way of merging two versions of a program.
@@ -1570,13 +1570,13 @@ within that file where the function is defined.
1570@xref{Top,, Ebrowse, ebrowse, Ebrowse User's Manual}. 1570@xref{Top,, Ebrowse, ebrowse, Ebrowse User's Manual}.
1571 1571
1572@menu 1572@menu
1573* Tag Syntax:: Tag syntax for various types of code and text files. 1573* Tag Syntax:: Tag syntax for various types of code and text files.
1574* Create Tags Table:: Creating a tags table with @code{etags}. 1574* Create Tags Table:: Creating a tags table with @code{etags}.
1575* Etags Regexps:: Create arbitrary tags using regular expressions. 1575* Etags Regexps:: Create arbitrary tags using regular expressions.
1576* Select Tags Table:: How to visit a tags table. 1576* Select Tags Table:: How to visit a tags table.
1577* Find Tag:: Commands to find the definition of a specific tag. 1577* Find Tag:: Commands to find the definition of a specific tag.
1578* Tags Search:: Using a tags table for searching and replacing. 1578* Tags Search:: Using a tags table for searching and replacing.
1579* List Tags:: Listing and finding tags defined in a file. 1579* List Tags:: Listing and finding tags defined in a file.
1580@end menu 1580@end menu
1581 1581
1582@node Tag Syntax 1582@node Tag Syntax
diff --git a/doc/emacs/mark.texi b/doc/emacs/mark.texi
index 4d6b38ad713..2ebab1daaeb 100644
--- a/doc/emacs/mark.texi
+++ b/doc/emacs/mark.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002,
3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Mark, Killing, Help, Top 6@node Mark, Killing, Help, Top
6@chapter The Mark and the Region 7@chapter The Mark and the Region
@@ -41,13 +42,13 @@ if the variable @code{highlight-nonselected-windows} is
41non-@code{nil}, each window highlights its own region. 42non-@code{nil}, each window highlights its own region.
42 43
43@menu 44@menu
44* Setting Mark:: Commands to set the mark. 45* Setting Mark:: Commands to set the mark.
45* Marking Objects:: Commands to put region around textual units. 46* Marking Objects:: Commands to put region around textual units.
46* Using Region:: Summary of ways to operate on contents of the region. 47* Using Region:: Summary of ways to operate on contents of the region.
47* Mark Ring:: Previous mark positions saved so you can go back there. 48* Mark Ring:: Previous mark positions saved so you can go back there.
48* Global Mark Ring:: Previous mark positions in various buffers. 49* Global Mark Ring:: Previous mark positions in various buffers.
49* Shift Selection:: Using shifted cursor motion keys. 50* Shift Selection:: Using shifted cursor motion keys.
50* Persistent Mark:: Keeping the mark active all the time. 51* Persistent Mark:: Keeping the mark active all the time.
51@end menu 52@end menu
52 53
53@node Setting Mark 54@node Setting Mark
diff --git a/doc/emacs/mini.texi b/doc/emacs/mini.texi
index 1726a6780d5..3750e1d49e2 100644
--- a/doc/emacs/mini.texi
+++ b/doc/emacs/mini.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Minibuffer, M-x, Basic, Top 6@node Minibuffer, M-x, Basic, Top
6@chapter The Minibuffer 7@chapter The Minibuffer
@@ -43,9 +44,9 @@ is in use, keystrokes do not echo.
43@menu 44@menu
44* Minibuffer File:: Entering file names with the minibuffer. 45* Minibuffer File:: Entering file names with the minibuffer.
45* Minibuffer Edit:: How to edit in the minibuffer. 46* Minibuffer Edit:: How to edit in the minibuffer.
46* Completion:: An abbreviation facility for minibuffer input. 47* Completion:: An abbreviation facility for minibuffer input.
47* Minibuffer History:: Reusing recent minibuffer arguments. 48* Minibuffer History:: Reusing recent minibuffer arguments.
48* Repetition:: Re-executing commands that used the minibuffer. 49* Repetition:: Re-executing commands that used the minibuffer.
49* Passwords:: Entering passwords in the echo area. 50* Passwords:: Entering passwords in the echo area.
50@end menu 51@end menu
51 52
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index 8c89c7b7a27..387e1be715a 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -71,10 +71,10 @@ set or customize the variable @code{doc-view-resolution}.
71(@code{quit-window}). 71(@code{quit-window}).
72 72
73@menu 73@menu
74* Navigation:: Navigation inside DocView buffers. 74* Navigation:: Navigation inside DocView buffers.
75* Searching:: Searching inside documents. 75* Searching:: Searching inside documents.
76* Slicing:: Specifying which part of pages should be displayed. 76* Slicing:: Specifying which part of pages should be displayed.
77* Conversion:: Influencing and triggering conversion. 77* Conversion:: Influencing and triggering conversion.
78@end menu 78@end menu
79 79
80@node Navigation 80@node Navigation
@@ -211,9 +211,9 @@ manual.
211To start Gnus, type @kbd{M-x gnus @key{RET}}. 211To start Gnus, type @kbd{M-x gnus @key{RET}}.
212 212
213@menu 213@menu
214* Buffers of Gnus:: The group, summary, and article buffers. 214* Buffers of Gnus:: The group, summary, and article buffers.
215* Gnus Startup:: What you should know about starting Gnus. 215* Gnus Startup:: What you should know about starting Gnus.
216* Summary of Gnus:: A short description of the basic Gnus commands. 216* Summary of Gnus:: A short description of the basic Gnus commands.
217@end menu 217@end menu
218 218
219@node Buffers of Gnus 219@node Buffers of Gnus
@@ -1757,7 +1757,7 @@ whether to supply @samp{-T} and @samp{-J} options (suitable for
1757not compatible with @code{lpr}. 1757not compatible with @code{lpr}.
1758 1758
1759@menu 1759@menu
1760* PostScript:: Printing buffers or regions as PostScript. 1760* PostScript:: Printing buffers or regions as PostScript.
1761* PostScript Variables:: Customizing the PostScript printing commands. 1761* PostScript Variables:: Customizing the PostScript printing commands.
1762* Printing Package:: An optional advanced printing interface. 1762* Printing Package:: An optional advanced printing interface.
1763@end menu 1763@end menu
diff --git a/doc/emacs/msdog.texi b/doc/emacs/msdog.texi
index 5229d1effa2..a44438bf81f 100644
--- a/doc/emacs/msdog.texi
+++ b/doc/emacs/msdog.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Microsoft Windows, Manifesto, Mac OS / GNUstep, Top 6@node Microsoft Windows, Manifesto, Mac OS / GNUstep, Top
6@appendix Emacs and Microsoft Windows/MS-DOS 7@appendix Emacs and Microsoft Windows/MS-DOS
@@ -761,8 +762,8 @@ printer, put this in your @file{.emacs} file:
761(setq ps-printer-name t) 762(setq ps-printer-name t)
762(setq ps-lpr-command "D:/gs6.01/bin/gswin32c.exe") 763(setq ps-lpr-command "D:/gs6.01/bin/gswin32c.exe")
763(setq ps-lpr-switches '("-q" "-dNOPAUSE" "-dBATCH" 764(setq ps-lpr-switches '("-q" "-dNOPAUSE" "-dBATCH"
764 "-sDEVICE=mswinpr2" 765 "-sDEVICE=mswinpr2"
765 "-sPAPERSIZE=a4")) 766 "-sPAPERSIZE=a4"))
766@end example 767@end example
767 768
768@noindent 769@noindent
diff --git a/doc/emacs/mule.texi b/doc/emacs/mule.texi
index be639f45b0a..9fdef175826 100644
--- a/doc/emacs/mule.texi
+++ b/doc/emacs/mule.texi
@@ -228,7 +228,7 @@ in a buffer whose coding system is @code{utf-8-unix}:
228 character: @`A (192, #o300, #xc0) 228 character: @`A (192, #o300, #xc0)
229preferred charset: unicode (Unicode (ISO10646)) 229preferred charset: unicode (Unicode (ISO10646))
230 code point: 0xC0 230 code point: 0xC0
231 syntax: w which means: word 231 syntax: w which means: word
232 category: j:Japanese l:Latin v:Vietnamese 232 category: j:Japanese l:Latin v:Vietnamese
233 buffer code: #xC3 #x80 233 buffer code: #xC3 #x80
234 file code: not encodable by coding system undecided-unix 234 file code: not encodable by coding system undecided-unix
diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi
index 72541eccc6f..b729df105e7 100644
--- a/doc/emacs/programs.texi
+++ b/doc/emacs/programs.texi
@@ -34,7 +34,7 @@ Highlight program syntax (@pxref{Font Lock}).
34 of a program. 34 of a program.
35* Program Indent:: Adjusting indentation to show the nesting. 35* Program Indent:: Adjusting indentation to show the nesting.
36* Parentheses:: Commands that operate on parentheses. 36* Parentheses:: Commands that operate on parentheses.
37* Comments:: Inserting, killing, and aligning comments. 37* Comments:: Inserting, killing, and aligning comments.
38* Documentation:: Getting documentation of functions you plan to call. 38* Documentation:: Getting documentation of functions you plan to call.
39* Hideshow:: Displaying blocks selectively. 39* Hideshow:: Displaying blocks selectively.
40* Symbol Completion:: Completion on symbol names of your program or language. 40* Symbol Completion:: Completion on symbol names of your program or language.
@@ -354,11 +354,11 @@ single line, a specified number of lines, or all of the lines inside a
354single parenthetical grouping. 354single parenthetical grouping.
355 355
356@menu 356@menu
357* Basic Indent:: Indenting a single line. 357* Basic Indent:: Indenting a single line.
358* Multi-line Indent:: Commands to reindent many lines at once. 358* Multi-line Indent:: Commands to reindent many lines at once.
359* Lisp Indent:: Specifying how each Lisp function should be indented. 359* Lisp Indent:: Specifying how each Lisp function should be indented.
360* C Indent:: Extra features for indenting C and related modes. 360* C Indent:: Extra features for indenting C and related modes.
361* Custom C Indent:: Controlling indentation style for C and related modes. 361* Custom C Indent:: Controlling indentation style for C and related modes.
362@end menu 362@end menu
363 363
364@cindex pretty-printer 364@cindex pretty-printer
@@ -652,7 +652,7 @@ parentheses and unbalanced string quotes in the buffer.
652* Expressions:: Expressions with balanced parentheses. 652* Expressions:: Expressions with balanced parentheses.
653* Moving by Parens:: Commands for moving up, down and across 653* Moving by Parens:: Commands for moving up, down and across
654 in the structure of parentheses. 654 in the structure of parentheses.
655* Matching:: Insertion of a close-delimiter flashes matching open. 655* Matching:: Insertion of a close-delimiter flashes matching open.
656@end menu 656@end menu
657 657
658@node Expressions 658@node Expressions
diff --git a/doc/emacs/rmail.texi b/doc/emacs/rmail.texi
index 8a4ce492ee1..d477ca73c46 100644
--- a/doc/emacs/rmail.texi
+++ b/doc/emacs/rmail.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002,
3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Rmail, Dired, Sending Mail, Top 6@node Rmail, Dired, Sending Mail, Top
6@chapter Reading Mail with Rmail 7@chapter Reading Mail with Rmail
@@ -21,7 +22,7 @@ Rmail mode, which redefines most letters to run commands for managing mail.
21* Deletion: Rmail Deletion. Deleting and expunging messages. 22* Deletion: Rmail Deletion. Deleting and expunging messages.
22* Inbox: Rmail Inbox. How mail gets into the Rmail file. 23* Inbox: Rmail Inbox. How mail gets into the Rmail file.
23* Files: Rmail Files. Using multiple Rmail files. 24* Files: Rmail Files. Using multiple Rmail files.
24* Output: Rmail Output. Copying messages out to files. 25* Output: Rmail Output. Copying messages out to files.
25* Labels: Rmail Labels. Classifying messages by labeling them. 26* Labels: Rmail Labels. Classifying messages by labeling them.
26* Attrs: Rmail Attributes. Certain standard labels, called attributes. 27* Attrs: Rmail Attributes. Certain standard labels, called attributes.
27* Reply: Rmail Reply. Sending replies to messages you are viewing. 28* Reply: Rmail Reply. Sending replies to messages you are viewing.
@@ -31,7 +32,7 @@ Rmail mode, which redefines most letters to run commands for managing mail.
31* Coding: Rmail Coding. How Rmail handles decoding character sets. 32* Coding: Rmail Coding. How Rmail handles decoding character sets.
32* Editing: Rmail Editing. Editing message text and headers in Rmail. 33* Editing: Rmail Editing. Editing message text and headers in Rmail.
33* Digest: Rmail Digest. Extracting the messages from a digest message. 34* Digest: Rmail Digest. Extracting the messages from a digest message.
34* Rot13: Rmail Rot13. Reading messages encoded in the rot13 code. 35* Rot13: Rmail Rot13. Reading messages encoded in the rot13 code.
35* Movemail:: More details of fetching new mail. 36* Movemail:: More details of fetching new mail.
36* Remote Mailboxes:: Retrieving mail from remote mailboxes. 37* Remote Mailboxes:: Retrieving mail from remote mailboxes.
37* Other Mailbox Formats:: Retrieving mail from local mailboxes in 38* Other Mailbox Formats:: Retrieving mail from local mailboxes in
@@ -834,8 +835,8 @@ Rmail buffer's name. Normally only one summary buffer is displayed at a
834time. 835time.
835 836
836@menu 837@menu
837* Rmail Make Summary:: Making various sorts of summaries. 838* Rmail Make Summary:: Making various sorts of summaries.
838* Rmail Summary Edit:: Manipulating messages from the summary. 839* Rmail Summary Edit:: Manipulating messages from the summary.
839@end menu 840@end menu
840 841
841@node Rmail Make Summary 842@node Rmail Make Summary
diff --git a/doc/emacs/screen.texi b/doc/emacs/screen.texi
index 43a32d8680e..88d248a93bf 100644
--- a/doc/emacs/screen.texi
+++ b/doc/emacs/screen.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002,
3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Screen, User Input, Acknowledgments, Top 6@node Screen, User Input, Acknowledgments, Top
6@chapter The Organization of the Screen 7@chapter The Organization of the Screen
@@ -53,10 +54,10 @@ reference. If you use multiple frames on a graphical display,
53selecting a particular frame selects a window in that frame. 54selecting a particular frame selects a window in that frame.
54 55
55@menu 56@menu
56* Point:: The place in the text where editing commands operate. 57* Point:: The place in the text where editing commands operate.
57* Echo Area:: Short messages appear at the bottom of the screen. 58* Echo Area:: Short messages appear at the bottom of the screen.
58* Mode Line:: Interpreting the mode line. 59* Mode Line:: Interpreting the mode line.
59* Menu Bar:: How to use the menu bar. 60* Menu Bar:: How to use the menu bar.
60@end menu 61@end menu
61 62
62@node Point 63@node Point
diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi
index 890dd48df9f..69532e6083d 100644
--- a/doc/emacs/search.texi
+++ b/doc/emacs/search.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2002, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2002,
3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Search, Fixit, Display, Top 6@node Search, Fixit, Display, Top
6@chapter Searching and Replacement 7@chapter Searching and Replacement
@@ -19,16 +20,16 @@ thing, but search for patterns instead of fixed strings.
19 20
20 21
21@menu 22@menu
22* Incremental Search:: Search happens as you type the string. 23* Incremental Search:: Search happens as you type the string.
23* Nonincremental Search:: Specify entire string and then search. 24* Nonincremental Search:: Specify entire string and then search.
24* Word Search:: Search for sequence of words. 25* Word Search:: Search for sequence of words.
25* Regexp Search:: Search for match for a regexp. 26* Regexp Search:: Search for match for a regexp.
26* Regexps:: Syntax of regular expressions. 27* Regexps:: Syntax of regular expressions.
27* Regexp Backslash:: Regular expression constructs starting with `\'. 28* Regexp Backslash:: Regular expression constructs starting with `\'.
28* Regexp Example:: A complex regular expression explained. 29* Regexp Example:: A complex regular expression explained.
29* Search Case:: To ignore case while searching, or not. 30* Search Case:: To ignore case while searching, or not.
30* Replace:: Search, and replace some or all matches. 31* Replace:: Search, and replace some or all matches.
31* Other Repeating Search:: Operating on all matches for some regexp. 32* Other Repeating Search:: Operating on all matches for some regexp.
32@end menu 33@end menu
33 34
34@node Incremental Search 35@node Incremental Search
@@ -983,10 +984,10 @@ is possible to perform several replacements in parallel, using the
983command @code{expand-region-abbrevs} (@pxref{Expanding Abbrevs}). 984command @code{expand-region-abbrevs} (@pxref{Expanding Abbrevs}).
984 985
985@menu 986@menu
986* Unconditional Replace:: Replacing all matches for a string. 987* Unconditional Replace:: Replacing all matches for a string.
987* Regexp Replace:: Replacing all matches for a regexp. 988* Regexp Replace:: Replacing all matches for a regexp.
988* Replacement and Case:: How replacements preserve case of letters. 989* Replacement and Case:: How replacements preserve case of letters.
989* Query Replace:: How to use querying. 990* Query Replace:: How to use querying.
990@end menu 991@end menu
991 992
992@node Unconditional Replace, Regexp Replace, Replace, Replace 993@node Unconditional Replace, Regexp Replace, Replace, Replace
diff --git a/doc/emacs/sending.texi b/doc/emacs/sending.texi
index 59f140e5f8a..95bf5873eb0 100644
--- a/doc/emacs/sending.texi
+++ b/doc/emacs/sending.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2002, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2002,
3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Sending Mail 6@node Sending Mail
6@chapter Sending Mail 7@chapter Sending Mail
@@ -63,7 +64,7 @@ you may need to customize @code{user-mail-address} if the system
63cannot receive mail via SMTP (@pxref{Mail Headers}). 64cannot receive mail via SMTP (@pxref{Mail Headers}).
64 65
65@menu 66@menu
66* Format: Mail Format. Format of a mail message. 67* Format: Mail Format. Format of a mail message.
67* Headers: Mail Headers. Details of some standard mail header fields. 68* Headers: Mail Headers. Details of some standard mail header fields.
68* Aliases: Mail Aliases. Abbreviating and grouping mail addresses. 69* Aliases: Mail Aliases. Abbreviating and grouping mail addresses.
69* Commands: Mail Commands. Special commands for editing mail being composed. 70* Commands: Mail Commands. Special commands for editing mail being composed.
diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi
index c00410e047a..a9faa420967 100644
--- a/doc/emacs/text.texi
+++ b/doc/emacs/text.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Text, Programs, Indentation, Top 6@node Text, Programs, Indentation, Top
6@chapter Commands for Human Languages 7@chapter Commands for Human Languages
@@ -57,17 +58,17 @@ for editing such pictures.
57@inforef{Top,, autotype}. 58@inforef{Top,, autotype}.
58 59
59@menu 60@menu
60* Words:: Moving over and killing words. 61* Words:: Moving over and killing words.
61* Sentences:: Moving over and killing sentences. 62* Sentences:: Moving over and killing sentences.
62* Paragraphs:: Moving over paragraphs. 63* Paragraphs:: Moving over paragraphs.
63* Pages:: Moving over pages. 64* Pages:: Moving over pages.
64* Filling:: Filling or justifying text. 65* Filling:: Filling or justifying text.
65* Case:: Changing the case of text. 66* Case:: Changing the case of text.
66* Text Mode:: The major modes for editing text files. 67* Text Mode:: The major modes for editing text files.
67* Outline Mode:: Editing outlines. 68* Outline Mode:: Editing outlines.
68* TeX Mode:: Editing input to the formatter TeX. 69* TeX Mode:: Editing input to the formatter TeX.
69* HTML Mode:: Editing HTML and SGML files. 70* HTML Mode:: Editing HTML and SGML files.
70* Nroff Mode:: Editing input to the formatter nroff. 71* Nroff Mode:: Editing input to the formatter nroff.
71* Formatted Text:: Editing formatted text directly in WYSIWYG fashion. 72* Formatted Text:: Editing formatted text directly in WYSIWYG fashion.
72* Text Based Tables:: Editing text-based tables in WYSIWYG fashion. 73* Text Based Tables:: Editing text-based tables in WYSIWYG fashion.
73@end menu 74@end menu
@@ -402,13 +403,12 @@ a style of filling for each portion of the text (@pxref{Formatted
402Text}). 403Text}).
403 404
404@menu 405@menu
405* Auto Fill:: Auto Fill mode breaks long lines automatically. 406* Auto Fill:: Auto Fill mode breaks long lines automatically.
406* Fill Commands:: Commands to refill paragraphs and center lines. 407* Fill Commands:: Commands to refill paragraphs and center lines.
407* Fill Prefix:: Filling paragraphs that are indented 408* Fill Prefix:: Filling paragraphs that are indented or in a comment, etc.
408 or in a comment, etc. 409* Adaptive Fill:: How Emacs can determine the fill prefix automatically.
409* Adaptive Fill:: How Emacs can determine the fill prefix automatically. 410* Refill:: Keeping paragraphs filled.
410* Refill:: Keeping paragraphs filled. 411* Longlines:: Editing text with very long lines.
411* Longlines:: Editing text with very long lines.
412@end menu 412@end menu
413 413
414@node Auto Fill 414@node Auto Fill
@@ -978,8 +978,8 @@ major mode's special commands. (The variable
978the hook @code{outline-mode-hook} (@pxref{Hooks}). 978the hook @code{outline-mode-hook} (@pxref{Hooks}).
979 979
980@menu 980@menu
981* Format: Outline Format. What the text of an outline looks like. 981* Format: Outline Format. What the text of an outline looks like.
982* Motion: Outline Motion. Special commands for moving through 982* Motion: Outline Motion. Special commands for moving through
983 outlines. 983 outlines.
984* Visibility: Outline Visibility. Commands to control what is visible. 984* Visibility: Outline Visibility. Commands to control what is visible.
985* Views: Outline Views. Outlines and multiple views. 985* Views: Outline Views. Outlines and multiple views.
diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi
index 69b5b82a056..0390b7da910 100644
--- a/doc/emacs/trouble.texi
+++ b/doc/emacs/trouble.texi
@@ -426,10 +426,10 @@ problem in these two documents might provide you with a solution or a
426work-around, or give you additional information about related issues. 426work-around, or give you additional information about related issues.
427 427
428@menu 428@menu
429* Criteria: Bug Criteria. Have you really found a bug? 429* Criteria: Bug Criteria. Have you really found a bug?
430* Understanding Bug Reporting:: How to report a bug effectively. 430* Understanding Bug Reporting:: How to report a bug effectively.
431* Checklist:: Steps to follow for a good bug report. 431* Checklist:: Steps to follow for a good bug report.
432* Sending Patches:: How to send a patch for GNU Emacs. 432* Sending Patches:: How to send a patch for GNU Emacs.
433@end menu 433@end menu
434 434
435@node Bug Criteria 435@node Bug Criteria
diff --git a/doc/emacs/vc1-xtra.texi b/doc/emacs/vc1-xtra.texi
index d93286befda..5095c3f4764 100644
--- a/doc/emacs/vc1-xtra.texi
+++ b/doc/emacs/vc1-xtra.texi
@@ -220,8 +220,8 @@ a symbolic name for a revision.
220stable version of the system that is ready for distribution to users. 220stable version of the system that is ready for distribution to users.
221 221
222@menu 222@menu
223* Making Revision Tags:: The tag facilities. 223* Making Revision Tags:: The tag facilities.
224* Revision Tag Caveats:: Things to be careful of when using tags. 224* Revision Tag Caveats:: Things to be careful of when using tags.
225@end menu 225@end menu
226 226
227@node Making Revision Tags 227@node Making Revision Tags
diff --git a/doc/emacs/xresources.texi b/doc/emacs/xresources.texi
index bc60ff946af..2a543eeee08 100644
--- a/doc/emacs/xresources.texi
+++ b/doc/emacs/xresources.texi
@@ -435,13 +435,14 @@ Emacs.pane.menubar.faceName: Courier-12
435To specify a font, use fontconfig font names as values to the @code{faceName} 435To specify a font, use fontconfig font names as values to the @code{faceName}
436resource. 436resource.
437 437
438If Emacs is not built with the Xft library, Lucid menus and dialogs can only 438If Emacs is not built with the Xft library, Lucid menus and dialogs
439display old style fonts. If Emacs is built with Xft and you prefer the old 439can only display old style fonts. If Emacs is built with Xft and you
440fonts, you have to specify @samp{none} to @code{faceName}: 440prefer the old fonts, you have to specify @samp{none} to
441@code{faceName}:
441 442
442@example 443@example
443Emacs.pane.menubar.faceName: none 444Emacs.pane.menubar.faceName: none
444Emacs.pane.dialog.faceName: none 445Emacs.pane.dialog.faceName: none
445@end example 446@end example
446 447
447@noindent 448@noindent
@@ -472,7 +473,7 @@ Resources for @emph{non-menubar} toolkit pop-up menus have
472the font @samp{8x16} for the pop-up menu items, write this: 473the font @samp{8x16} for the pop-up menu items, write this:
473 474
474@example 475@example
475Emacs.menu*.font: 8x16 476Emacs.menu*.font: 8x16
476@end example 477@end example
477 478
478@noindent 479@noindent
diff --git a/doc/lispintro/ChangeLog b/doc/lispintro/ChangeLog
index f52240fbdfd..093a7018ca3 100644
--- a/doc/lispintro/ChangeLog
+++ b/doc/lispintro/ChangeLog
@@ -1,3 +1,7 @@
12010-06-23 Glenn Morris <rgm@gnu.org>
2
3 * emacs-lisp-intro.texi: Untabify.
4
12010-05-07 Chong Yidong <cyd@stupidchicken.com> 52010-05-07 Chong Yidong <cyd@stupidchicken.com>
2 6
3 * Version 23.2 released. 7 * Version 23.2 released.
diff --git a/doc/lispintro/emacs-lisp-intro.texi b/doc/lispintro/emacs-lisp-intro.texi
index 0f3a3bc1993..dfba68cc911 100644
--- a/doc/lispintro/emacs-lisp-intro.texi
+++ b/doc/lispintro/emacs-lisp-intro.texi
@@ -17789,7 +17789,7 @@ Incidentally, @code{load-library} is an interactive interface to the
17789This is an interface to the function `load'." 17789This is an interface to the function `load'."
17790 (interactive 17790 (interactive
17791 (list (completing-read "Load library: " 17791 (list (completing-read "Load library: "
17792 (apply-partially 'locate-file-completion-table 17792 (apply-partially 'locate-file-completion-table
17793 load-path 17793 load-path
17794 (get-load-suffixes))))) 17794 (get-load-suffixes)))))
17795 (load library)) 17795 (load library))
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index 9f032af4a0d..ee6ba8ed50b 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -3,6 +3,31 @@
3 * internals.texi (Writing Emacs Primitives): Adapt to ANSI C 3 * internals.texi (Writing Emacs Primitives): Adapt to ANSI C
4 calling sequences, which are now the standard. 4 calling sequences, which are now the standard.
5 5
62010-06-24 Chong Yidong <cyd@stupidchicken.com>
7
8 * text.texi (Undo): Clarify command loop behavior (Bug#2433).
9
10 * commands.texi (Command Overview): Mention undo-boundary call.
11
122010-06-23 Glenn Morris <rgm@gnu.org>
13
14 * abbrevs.texi, commands.texi, compile.texi, debugging.texi:
15 * display.texi, edebug.texi, elisp.texi, eval.texi, files.texi:
16 * frames.texi, functions.texi, internals.texi, keymaps.texi:
17 * loading.texi, minibuf.texi, numbers.texi, os.texi, processes.texi:
18 * searching.texi, sequences.texi, strings.texi, syntax.texi:
19 * text.texi, tips.texi, vol1.texi, vol2.texi, windows.texi:
20 Untabify Texinfo files.
21
222010-06-20 Chong Yidong <cyd@stupidchicken.com>
23
24 * modes.texi (Minor Mode Conventions): Fix typo (Bug#6477).
25
262010-06-19 Chong Yidong <cyd@stupidchicken.com>
27
28 * errors.texi (Standard Errors): Remove unnecessary markup
29 (Bug#6461).
30
62010-06-02 Chong Yidong <cyd@stupidchicken.com> 312010-06-02 Chong Yidong <cyd@stupidchicken.com>
7 32
8 * searching.texi (Regexp Special): Remove obsolete information 33 * searching.texi (Regexp Special): Remove obsolete information
diff --git a/doc/lispref/abbrevs.texi b/doc/lispref/abbrevs.texi
index 1bb33475240..90da5aaa488 100644
--- a/doc/lispref/abbrevs.texi
+++ b/doc/lispref/abbrevs.texi
@@ -376,10 +376,10 @@ definitions of @code{local-abbrev-table} and @code{text-mode-abbrev-table}.
376 (funcall expand)))) 376 (funcall expand))))
377 377
378(add-hook 'foo-mode-hook 378(add-hook 'foo-mode-hook
379 #'(lambda () 379 #'(lambda ()
380 (add-hook 'abbrev-expand-functions 380 (add-hook 'abbrev-expand-functions
381 'foo-mode-abbrev-expand-function 381 'foo-mode-abbrev-expand-function
382 nil t))) 382 nil t)))
383@end smallexample 383@end smallexample
384 384
385@node Standard Abbrev Tables, Abbrev Properties, Abbrev Expansion, Abbrevs 385@node Standard Abbrev Tables, Abbrev Properties, Abbrev Expansion, Abbrevs
diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi
index 463443f8e10..d22cfd955cb 100644
--- a/doc/lispref/commands.texi
+++ b/doc/lispref/commands.texi
@@ -1,7 +1,8 @@
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, 2001, 2002, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001, 2002,
4@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/commands 7@setfilename ../../info/commands
7@node Command Loop, Keymaps, Minibuffers, Top 8@node Command Loop, Keymaps, Minibuffers, Top
@@ -21,7 +22,7 @@ are done, and the subroutines that allow Lisp programs to do them.
21* Distinguish Interactive:: Making a command distinguish interactive calls. 22* Distinguish Interactive:: Making a command distinguish interactive calls.
22* Command Loop Info:: Variables set by the command loop for you to examine. 23* Command Loop Info:: Variables set by the command loop for you to examine.
23* Adjusting Point:: Adjustment of point after a command. 24* Adjusting Point:: Adjustment of point after a command.
24* Input Events:: What input looks like when you read it. 25* Input Events:: What input looks like when you read it.
25* Reading Input:: How to read input events from the keyboard or mouse. 26* Reading Input:: How to read input events from the keyboard or mouse.
26* Special Events:: Events processed immediately and individually. 27* Special Events:: Events processed immediately and individually.
27* Waiting:: Waiting for user input or elapsed time. 28* Waiting:: Waiting for user input or elapsed time.
@@ -52,16 +53,19 @@ function. If the key is @kbd{M-x}, then it reads the name of another
52command, which it then calls. This is done by the command 53command, which it then calls. This is done by the command
53@code{execute-extended-command} (@pxref{Interactive Call}). 54@code{execute-extended-command} (@pxref{Interactive Call}).
54 55
55 To execute a command requires first reading the arguments for it. 56 Prior to executing the command, Emacs runs @code{undo-boundary} to
56This is done by calling @code{command-execute} (@pxref{Interactive 57create an undo boundary. @xref{Maintaining Undo}.
57Call}). For commands written in Lisp, the @code{interactive} 58
58specification says how to read the arguments. This may use the prefix 59 To execute a command, Emacs first reads its arguments by calling
59argument (@pxref{Prefix Command Arguments}) or may read with prompting 60@code{command-execute} (@pxref{Interactive Call}). For commands
60in the minibuffer (@pxref{Minibuffers}). For example, the command 61written in Lisp, the @code{interactive} specification says how to read
61@code{find-file} has an @code{interactive} specification which says to 62the arguments. This may use the prefix argument (@pxref{Prefix
62read a file name using the minibuffer. The command's function body does 63Command Arguments}) or may read with prompting in the minibuffer
63not use the minibuffer; if you call this command from Lisp code as a 64(@pxref{Minibuffers}). For example, the command @code{find-file} has
64function, you must supply the file name string as an ordinary Lisp 65an @code{interactive} specification which says to read a file name
66using the minibuffer. The function body of @code{find-file} does not
67use the minibuffer, so if you call @code{find-file} as a function from
68Lisp code, you must supply the file name string as an ordinary Lisp
65function argument. 69function argument.
66 70
67 If the command is a string or vector (i.e., a keyboard macro) then 71 If the command is a string or vector (i.e., a keyboard macro) then
@@ -968,23 +972,23 @@ the current Emacs session. If a symbol has not yet been so used,
968@end defun 972@end defun
969 973
970@menu 974@menu
971* Keyboard Events:: Ordinary characters--keys with symbols on them. 975* Keyboard Events:: Ordinary characters--keys with symbols on them.
972* Function Keys:: Function keys--keys with names, not symbols. 976* Function Keys:: Function keys--keys with names, not symbols.
973* Mouse Events:: Overview of mouse events. 977* Mouse Events:: Overview of mouse events.
974* Click Events:: Pushing and releasing a mouse button. 978* Click Events:: Pushing and releasing a mouse button.
975* Drag Events:: Moving the mouse before releasing the button. 979* Drag Events:: Moving the mouse before releasing the button.
976* Button-Down Events:: A button was pushed and not yet released. 980* Button-Down Events:: A button was pushed and not yet released.
977* Repeat Events:: Double and triple click (or drag, or down). 981* Repeat Events:: Double and triple click (or drag, or down).
978* Motion Events:: Just moving the mouse, not pushing a button. 982* Motion Events:: Just moving the mouse, not pushing a button.
979* Focus Events:: Moving the mouse between frames. 983* Focus Events:: Moving the mouse between frames.
980* Misc Events:: Other events the system can generate. 984* Misc Events:: Other events the system can generate.
981* Event Examples:: Examples of the lists for mouse events. 985* Event Examples:: Examples of the lists for mouse events.
982* Classifying Events:: Finding the modifier keys in an event symbol. 986* Classifying Events:: Finding the modifier keys in an event symbol.
983 Event types. 987 Event types.
984* Accessing Mouse:: Functions to extract info from mouse events. 988* Accessing Mouse:: Functions to extract info from mouse events.
985* Accessing Scroll:: Functions to get info from scroll bar events. 989* Accessing Scroll:: Functions to get info from scroll bar events.
986* Strings of Events:: Special considerations for putting 990* Strings of Events:: Special considerations for putting
987 keyboard character events in a string. 991 keyboard character events in a string.
988@end menu 992@end menu
989 993
990@node Keyboard Events 994@node Keyboard Events
@@ -2158,12 +2162,12 @@ debugging terminal input.
2158 For higher-level input facilities, see @ref{Minibuffers}. 2162 For higher-level input facilities, see @ref{Minibuffers}.
2159 2163
2160@menu 2164@menu
2161* Key Sequence Input:: How to read one key sequence. 2165* Key Sequence Input:: How to read one key sequence.
2162* Reading One Event:: How to read just one event. 2166* Reading One Event:: How to read just one event.
2163* Event Mod:: How Emacs modifies events as they are read. 2167* Event Mod:: How Emacs modifies events as they are read.
2164* Invoking the Input Method:: How reading an event uses the input method. 2168* Invoking the Input Method:: How reading an event uses the input method.
2165* Quoted Character Input:: Asking the user to specify a character. 2169* Quoted Character Input:: Asking the user to specify a character.
2166* Event Input Misc:: How to reread or throw away input events. 2170* Event Input Misc:: How to reread or throw away input events.
2167@end menu 2171@end menu
2168 2172
2169@node Key Sequence Input 2173@node Key Sequence Input
@@ -2889,9 +2893,9 @@ normal quitting is permitted after the first character of input.
2889 (while (not done) 2893 (while (not done)
2890 (let ((inhibit-quit first) 2894 (let ((inhibit-quit first)
2891 @dots{}) 2895 @dots{})
2892 (and prompt (message "%s-" prompt)) 2896 (and prompt (message "%s-" prompt))
2893 (setq char (read-event)) 2897 (setq char (read-event))
2894 (if inhibit-quit (setq quit-flag nil))) 2898 (if inhibit-quit (setq quit-flag nil)))
2895 @r{@dots{}set the variable @code{code}@dots{}}) 2899 @r{@dots{}set the variable @code{code}@dots{}})
2896 code)) 2900 code))
2897@end example 2901@end example
diff --git a/doc/lispref/compile.texi b/doc/lispref/compile.texi
index b2ab9d67e59..1c28664e7c3 100644
--- a/doc/lispref/compile.texi
+++ b/doc/lispref/compile.texi
@@ -47,9 +47,9 @@ byte compilation.
47* Compilation Functions:: Byte compilation functions. 47* Compilation Functions:: Byte compilation functions.
48* Docs and Compilation:: Dynamic loading of documentation strings. 48* Docs and Compilation:: Dynamic loading of documentation strings.
49* Dynamic Loading:: Dynamic loading of individual functions. 49* Dynamic Loading:: Dynamic loading of individual functions.
50* Eval During Compile:: Code to be evaluated when you compile. 50* Eval During Compile:: Code to be evaluated when you compile.
51* Compiler Errors:: Handling compiler error messages. 51* Compiler Errors:: Handling compiler error messages.
52* Byte-Code Objects:: The data type used for byte-compiled functions. 52* Byte-Code Objects:: The data type used for byte-compiled functions.
53* Disassembly:: Disassembling byte-code; how to read byte-code. 53* Disassembly:: Disassembling byte-code; how to read byte-code.
54@end menu 54@end menu
55 55
diff --git a/doc/lispref/debugging.texi b/doc/lispref/debugging.texi
index 669c07d5a0e..3d77a5fe0d5 100644
--- a/doc/lispref/debugging.texi
+++ b/doc/lispref/debugging.texi
@@ -28,7 +28,7 @@ compiler, you need to know how to examine the compiler's input buffer.
28 28
29@menu 29@menu
30* Debugger:: How the Emacs Lisp debugger is implemented. 30* Debugger:: How the Emacs Lisp debugger is implemented.
31* Edebug:: A source-level Emacs Lisp debugger. 31* Edebug:: A source-level Emacs Lisp debugger.
32* Syntax Errors:: How to find syntax errors. 32* Syntax Errors:: How to find syntax errors.
33* Test Coverage:: Ensuring you have tested all branches in your code. 33* Test Coverage:: Ensuring you have tested all branches in your code.
34* Compilation Errors:: How to find errors that show up in byte compilation. 34* Compilation Errors:: How to find errors that show up in byte compilation.
@@ -58,7 +58,7 @@ debugger recursively. @xref{Recursive Editing}.
58 58
59@menu 59@menu
60* Error Debugging:: Entering the debugger when an error happens. 60* Error Debugging:: Entering the debugger when an error happens.
61* Infinite Loops:: Stopping and debugging a program that doesn't exit. 61* Infinite Loops:: Stopping and debugging a program that doesn't exit.
62* Function Debugging:: Entering it when a certain function is called. 62* Function Debugging:: Entering it when a certain function is called.
63* Explicit Debug:: Entering it at a certain point in the program. 63* Explicit Debug:: Entering it at a certain point in the program.
64* Using Debugger:: What the debugger does; what you see while in it. 64* Using Debugger:: What the debugger does; what you see while in it.
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index 622de2cd3cf..9f07fb42ef4 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -1181,7 +1181,7 @@ inside the overlay or outside, and likewise for the end of the overlay.
1181@menu 1181@menu
1182* Managing Overlays:: Creating and moving overlays. 1182* Managing Overlays:: Creating and moving overlays.
1183* Overlay Properties:: How to read and set properties. 1183* Overlay Properties:: How to read and set properties.
1184 What properties do to the screen display. 1184 What properties do to the screen display.
1185* Finding Overlays:: Searching for overlays. 1185* Finding Overlays:: Searching for overlays.
1186@end menu 1186@end menu
1187 1187
diff --git a/doc/lispref/edebug.texi b/doc/lispref/edebug.texi
index fba83980cd1..3733a8fb105 100644
--- a/doc/lispref/edebug.texi
+++ b/doc/lispref/edebug.texi
@@ -59,24 +59,24 @@ The first three sections below should tell you enough about Edebug to
59start using it. 59start using it.
60 60
61@menu 61@menu
62* Using Edebug:: Introduction to use of Edebug. 62* Using Edebug:: Introduction to use of Edebug.
63* Instrumenting:: You must instrument your code 63* Instrumenting:: You must instrument your code
64 in order to debug it with Edebug. 64 in order to debug it with Edebug.
65* Modes: Edebug Execution Modes. Execution modes, stopping more or less often. 65* Modes: Edebug Execution Modes. Execution modes, stopping more or less often.
66* Jumping:: Commands to jump to a specified place. 66* Jumping:: Commands to jump to a specified place.
67* Misc: Edebug Misc. Miscellaneous commands. 67* Misc: Edebug Misc. Miscellaneous commands.
68* Breaks:: Setting breakpoints to make the program stop. 68* Breaks:: Setting breakpoints to make the program stop.
69* Trapping Errors:: Trapping errors with Edebug. 69* Trapping Errors:: Trapping errors with Edebug.
70* Views: Edebug Views. Views inside and outside of Edebug. 70* Views: Edebug Views. Views inside and outside of Edebug.
71* Eval: Edebug Eval. Evaluating expressions within Edebug. 71* Eval: Edebug Eval. Evaluating expressions within Edebug.
72* Eval List:: Expressions whose values are displayed 72* Eval List:: Expressions whose values are displayed
73 each time you enter Edebug. 73 each time you enter Edebug.
74* Printing in Edebug:: Customization of printing. 74* Printing in Edebug:: Customization of printing.
75* Trace Buffer:: How to produce trace output in a buffer. 75* Trace Buffer:: How to produce trace output in a buffer.
76* Coverage Testing:: How to test evaluation coverage. 76* Coverage Testing:: How to test evaluation coverage.
77* The Outside Context:: Data that Edebug saves and restores. 77* The Outside Context:: Data that Edebug saves and restores.
78* Edebug and Macros:: Specifying how to handle macro calls. 78* Edebug and Macros:: Specifying how to handle macro calls.
79* Options: Edebug Options. Option variables for customizing Edebug. 79* Options: Edebug Options. Option variables for customizing Edebug.
80@end menu 80@end menu
81 81
82@node Using Edebug 82@node Using Edebug
@@ -429,8 +429,8 @@ breakpoints, the global break condition, and source breakpoints.
429 429
430@menu 430@menu
431* Breakpoints:: Breakpoints at stop points. 431* Breakpoints:: Breakpoints at stop points.
432* Global Break Condition:: Breaking on an event. 432* Global Break Condition:: Breaking on an event.
433* Source Breakpoints:: Embedding breakpoints in source code. 433* Source Breakpoints:: Embedding breakpoints in source code.
434@end menu 434@end menu
435 435
436@node Breakpoints 436@node Breakpoints
@@ -940,9 +940,9 @@ explains precisely what context Edebug restores, and how Edebug fails to
940be completely transparent. 940be completely transparent.
941 941
942@menu 942@menu
943* Checking Whether to Stop:: When Edebug decides what to do. 943* Checking Whether to Stop:: When Edebug decides what to do.
944* Edebug Display Update:: When Edebug updates the display. 944* Edebug Display Update:: When Edebug updates the display.
945* Edebug Recursive Edit:: When Edebug stops execution. 945* Edebug Recursive Edit:: When Edebug stops execution.
946@end menu 946@end menu
947 947
948@node Checking Whether to Stop 948@node Checking Whether to Stop
@@ -1074,9 +1074,9 @@ extra care is needed. This subsection explains the details.
1074 1074
1075@menu 1075@menu
1076* Instrumenting Macro Calls:: The basic problem. 1076* Instrumenting Macro Calls:: The basic problem.
1077* Specification List:: How to specify complex patterns of evaluation. 1077* Specification List:: How to specify complex patterns of evaluation.
1078* Backtracking:: What Edebug does when matching fails. 1078* Backtracking:: What Edebug does when matching fails.
1079* Specification Examples:: To help understand specifications. 1079* Specification Examples:: To help understand specifications.
1080@end menu 1080@end menu
1081 1081
1082@node Instrumenting Macro Calls 1082@node Instrumenting Macro Calls
diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi
index 0f746187212..4c5471cf169 100644
--- a/doc/lispref/elisp.texi
+++ b/doc/lispref/elisp.texi
@@ -143,7 +143,7 @@ Cover art by Etienne Suvasa.
143 files are made. 143 files are made.
144* Buffers:: Creating and using buffer objects. 144* Buffers:: Creating and using buffer objects.
145* Windows:: Manipulating windows and displaying buffers. 145* Windows:: Manipulating windows and displaying buffers.
146* Frames:: Making multiple system-level windows. 146* Frames:: Making multiple system-level windows.
147* Positions:: Buffer positions and motion functions. 147* Positions:: Buffer positions and motion functions.
148* Markers:: Markers represent positions and update 148* Markers:: Markers represent positions and update
149 automatically when the text is changed. 149 automatically when the text is changed.
@@ -155,7 +155,7 @@ Cover art by Etienne Suvasa.
155* Abbrevs:: How Abbrev mode works, and its data structures. 155* Abbrevs:: How Abbrev mode works, and its data structures.
156 156
157* Processes:: Running and communicating with subprocesses. 157* Processes:: Running and communicating with subprocesses.
158* Display:: Features for controlling the screen display. 158* Display:: Features for controlling the screen display.
159* System Interface:: Getting the user id, system type, environment 159* System Interface:: Getting the user id, system type, environment
160 variables, and other such things. 160 variables, and other such things.
161 161
@@ -291,10 +291,10 @@ Editing Types
291Numbers 291Numbers
292 292
293* Integer Basics:: Representation and range of integers. 293* Integer Basics:: Representation and range of integers.
294* Float Basics:: Representation and range of floating point. 294* Float Basics:: Representation and range of floating point.
295* Predicates on Numbers:: Testing for numbers. 295* Predicates on Numbers:: Testing for numbers.
296* Comparison of Numbers:: Equality and inequality predicates. 296* Comparison of Numbers:: Equality and inequality predicates.
297* Numeric Conversions:: Converting float to integer and vice versa. 297* Numeric Conversions:: Converting float to integer and vice versa.
298* Arithmetic Operations:: How to add, subtract, multiply and divide. 298* Arithmetic Operations:: How to add, subtract, multiply and divide.
299* Rounding Operations:: Explicitly rounding floating point numbers. 299* Rounding Operations:: Explicitly rounding floating point numbers.
300* Bitwise Operations:: Logical and, or, not, shifting. 300* Bitwise Operations:: Logical and, or, not, shifting.
@@ -311,7 +311,7 @@ Strings and Characters
311* String Conversion:: Converting to and from characters and strings. 311* String Conversion:: Converting to and from characters and strings.
312* Formatting Strings:: @code{format}: Emacs's analogue of @code{printf}. 312* Formatting Strings:: @code{format}: Emacs's analogue of @code{printf}.
313* Case Conversion:: Case conversion functions. 313* Case Conversion:: Case conversion functions.
314* Case Tables:: Customizing case conversion. 314* Case Tables:: Customizing case conversion.
315 315
316Lists 316Lists
317 317
@@ -379,7 +379,7 @@ Kinds of Forms
379* Symbol Forms:: Symbols evaluate as variables. 379* Symbol Forms:: Symbols evaluate as variables.
380* Classifying Lists:: How to distinguish various sorts of list forms. 380* Classifying Lists:: How to distinguish various sorts of list forms.
381* Function Indirection:: When a symbol appears as the car of a list, 381* Function Indirection:: When a symbol appears as the car of a list,
382 we find the real function via the symbol. 382 we find the real function via the symbol.
383* Function Forms:: Forms that call functions. 383* Function Forms:: Forms that call functions.
384* Macro Forms:: Forms that call macros. 384* Macro Forms:: Forms that call macros.
385* Special Forms:: "Special forms" are idiosyncratic primitives, 385* Special Forms:: "Special forms" are idiosyncratic primitives,
@@ -460,9 +460,9 @@ Functions
460* Function Cells:: Accessing or setting the function definition 460* Function Cells:: Accessing or setting the function definition
461 of a symbol. 461 of a symbol.
462* Obsolete Functions:: Declaring functions obsolete. 462* Obsolete Functions:: Declaring functions obsolete.
463* Inline Functions:: Defining functions that the compiler 463* Inline Functions:: Defining functions that the compiler
464 will open code. 464 will open code.
465* Declaring Functions:: Telling the compiler that a function is defined. 465* Declaring Functions:: Telling the compiler that a function is defined.
466* Function Safety:: Determining whether a function is safe to call. 466* Function Safety:: Determining whether a function is safe to call.
467* Related Topics:: Cross-references to specific Lisp primitives 467* Related Topics:: Cross-references to specific Lisp primitives
468 that have a special bearing on how 468 that have a special bearing on how
@@ -522,9 +522,9 @@ Loading
522* Repeated Loading:: Precautions about loading a file twice. 522* Repeated Loading:: Precautions about loading a file twice.
523* Named Features:: Loading a library if it isn't already loaded. 523* Named Features:: Loading a library if it isn't already loaded.
524* Where Defined:: Finding which file defined a certain symbol. 524* Where Defined:: Finding which file defined a certain symbol.
525* Unloading:: How to "unload" a library that was loaded. 525* Unloading:: How to "unload" a library that was loaded.
526* Hooks for Loading:: Providing code to be run when 526* Hooks for Loading:: Providing code to be run when
527 particular libraries are loaded. 527 particular libraries are loaded.
528 528
529Byte Compilation 529Byte Compilation
530 530
@@ -534,7 +534,7 @@ Byte Compilation
534* Dynamic Loading:: Dynamic loading of individual functions. 534* Dynamic Loading:: Dynamic loading of individual functions.
535* Eval During Compile:: Code to be evaluated when you compile. 535* Eval During Compile:: Code to be evaluated when you compile.
536* Compiler Errors:: Handling compiler error messages. 536* Compiler Errors:: Handling compiler error messages.
537* Byte-Code Objects:: The data type used for byte-compiled functions. 537* Byte-Code Objects:: The data type used for byte-compiled functions.
538* Disassembly:: Disassembling byte-code; how to read byte-code. 538* Disassembly:: Disassembling byte-code; how to read byte-code.
539 539
540Advising Emacs Lisp Functions 540Advising Emacs Lisp Functions
@@ -563,7 +563,7 @@ Debugging Lisp Programs
563The Lisp Debugger 563The Lisp Debugger
564 564
565* Error Debugging:: Entering the debugger when an error happens. 565* Error Debugging:: Entering the debugger when an error happens.
566* Infinite Loops:: Stopping and debugging a program that doesn't exit. 566* Infinite Loops:: Stopping and debugging a program that doesn't exit.
567* Function Debugging:: Entering it when a certain function is called. 567* Function Debugging:: Entering it when a certain function is called.
568* Explicit Debug:: Entering it at a certain point in the program. 568* Explicit Debug:: Entering it at a certain point in the program.
569* Using Debugger:: What the debugger does; what you see while in it. 569* Using Debugger:: What the debugger does; what you see while in it.
@@ -573,24 +573,24 @@ The Lisp Debugger
573 573
574Edebug 574Edebug
575 575
576* Using Edebug:: Introduction to use of Edebug. 576* Using Edebug:: Introduction to use of Edebug.
577* Instrumenting:: You must instrument your code 577* Instrumenting:: You must instrument your code
578 in order to debug it with Edebug. 578 in order to debug it with Edebug.
579* Edebug Execution Modes:: Execution modes, stopping more or less often. 579* Edebug Execution Modes:: Execution modes, stopping more or less often.
580* Jumping:: Commands to jump to a specified place. 580* Jumping:: Commands to jump to a specified place.
581* Edebug Misc:: Miscellaneous commands. 581* Edebug Misc:: Miscellaneous commands.
582* Breaks:: Setting breakpoints to make the program stop. 582* Breaks:: Setting breakpoints to make the program stop.
583* Trapping Errors:: Trapping errors with Edebug. 583* Trapping Errors:: Trapping errors with Edebug.
584* Edebug Views:: Views inside and outside of Edebug. 584* Edebug Views:: Views inside and outside of Edebug.
585* Edebug Eval:: Evaluating expressions within Edebug. 585* Edebug Eval:: Evaluating expressions within Edebug.
586* Eval List:: Expressions whose values are displayed 586* Eval List:: Expressions whose values are displayed
587 each time you enter Edebug. 587 each time you enter Edebug.
588* Printing in Edebug:: Customization of printing. 588* Printing in Edebug:: Customization of printing.
589* Trace Buffer:: How to produce trace output in a buffer. 589* Trace Buffer:: How to produce trace output in a buffer.
590* Coverage Testing:: How to test evaluation coverage. 590* Coverage Testing:: How to test evaluation coverage.
591* The Outside Context:: Data that Edebug saves and restores. 591* The Outside Context:: Data that Edebug saves and restores.
592* Edebug and Macros:: Specifying how to handle macro calls. 592* Edebug and Macros:: Specifying how to handle macro calls.
593* Edebug Options:: Option variables for customizing Edebug. 593* Edebug Options:: Option variables for customizing Edebug.
594 594
595Breaks 595Breaks
596 596
@@ -607,8 +607,8 @@ The Outside Context
607Edebug and Macros 607Edebug and Macros
608 608
609* Instrumenting Macro Calls::The basic problem. 609* Instrumenting Macro Calls::The basic problem.
610* Specification List:: How to specify complex patterns of evaluation. 610* Specification List:: How to specify complex patterns of evaluation.
611* Backtracking:: What Edebug does when matching fails. 611* Backtracking:: What Edebug does when matching fails.
612* Specification Examples:: To help understand specifications. 612* Specification Examples:: To help understand specifications.
613 613
614Debugging Invalid Lisp Syntax 614Debugging Invalid Lisp Syntax
@@ -633,13 +633,13 @@ Minibuffers
633* Intro to Minibuffers:: Basic information about minibuffers. 633* Intro to Minibuffers:: Basic information about minibuffers.
634* Text from Minibuffer:: How to read a straight text string. 634* Text from Minibuffer:: How to read a straight text string.
635* Object from Minibuffer:: How to read a Lisp object or expression. 635* Object from Minibuffer:: How to read a Lisp object or expression.
636* Minibuffer History:: Recording previous minibuffer inputs 636* Minibuffer History:: Recording previous minibuffer inputs
637 so the user can reuse them. 637 so the user can reuse them.
638* Initial Input:: Specifying initial contents for the minibuffer. 638* Initial Input:: Specifying initial contents for the minibuffer.
639* Completion:: How to invoke and customize completion. 639* Completion:: How to invoke and customize completion.
640* Yes-or-No Queries:: Asking a question with a simple answer. 640* Yes-or-No Queries:: Asking a question with a simple answer.
641* Multiple Queries:: Asking a series of similar questions. 641* Multiple Queries:: Asking a series of similar questions.
642* Reading a Password:: Reading a password from the terminal. 642* Reading a Password:: Reading a password from the terminal.
643* Minibuffer Commands:: Commands used as key bindings in minibuffers. 643* Minibuffer Commands:: Commands used as key bindings in minibuffers.
644* Minibuffer Contents:: How such commands access the minibuffer text. 644* Minibuffer Contents:: How such commands access the minibuffer text.
645* Minibuffer Windows:: Operating on the special minibuffer windows. 645* Minibuffer Windows:: Operating on the special minibuffer windows.
@@ -666,7 +666,7 @@ Command Loop
666* Distinguish Interactive:: Making a command distinguish interactive calls. 666* Distinguish Interactive:: Making a command distinguish interactive calls.
667* Command Loop Info:: Variables set by the command loop for you to examine. 667* Command Loop Info:: Variables set by the command loop for you to examine.
668* Adjusting Point:: Adjustment of point after a command. 668* Adjusting Point:: Adjustment of point after a command.
669* Input Events:: What input looks like when you read it. 669* Input Events:: What input looks like when you read it.
670* Reading Input:: How to read input events from the keyboard or mouse. 670* Reading Input:: How to read input events from the keyboard or mouse.
671* Special Events:: Events processed immediately and individually. 671* Special Events:: Events processed immediately and individually.
672* Waiting:: Waiting for user input or elapsed time. 672* Waiting:: Waiting for user input or elapsed time.
@@ -700,7 +700,7 @@ Input Events
700* Event Examples:: Examples of the lists for mouse events. 700* Event Examples:: Examples of the lists for mouse events.
701* Classifying Events:: Finding the modifier keys in an event symbol. 701* Classifying Events:: Finding the modifier keys in an event symbol.
702 Event types. 702 Event types.
703* Accessing Mouse:: Functions to extract info from mouse events. 703* Accessing Mouse:: Functions to extract info from mouse events.
704* Accessing Scroll:: Functions to get info from scroll bar events. 704* Accessing Scroll:: Functions to get info from scroll bar events.
705* Strings of Events:: Special considerations for putting 705* Strings of Events:: Special considerations for putting
706 keyboard character events in a string. 706 keyboard character events in a string.
@@ -850,9 +850,9 @@ Files
850* Changing Files:: Renaming files, changing protection, etc. 850* Changing Files:: Renaming files, changing protection, etc.
851* File Names:: Decomposing and expanding file names. 851* File Names:: Decomposing and expanding file names.
852* Contents of Directories:: Getting a list of the files in a directory. 852* Contents of Directories:: Getting a list of the files in a directory.
853* Create/Delete Dirs:: Creating and Deleting Directories. 853* Create/Delete Dirs:: Creating and Deleting Directories.
854* Magic File Names:: Defining "magic" special handling 854* Magic File Names:: Defining "magic" special handling
855 for certain file names. 855 for certain file names.
856* Format Conversion:: Conversion to and from various file formats. 856* Format Conversion:: Conversion to and from various file formats.
857 857
858Visiting Files 858Visiting Files
@@ -864,7 +864,7 @@ Information about Files
864 864
865* Testing Accessibility:: Is a given file readable? Writable? 865* Testing Accessibility:: Is a given file readable? Writable?
866* Kinds of Files:: Is it a directory? A symbolic link? 866* Kinds of Files:: Is it a directory? A symbolic link?
867* Truenames:: Eliminating symbolic links from a file name. 867* Truenames:: Eliminating symbolic links from a file name.
868* File Attributes:: How large is it? Any other names? Etc. 868* File Attributes:: How large is it? Any other names? Etc.
869* Locating Files:: How to find a file in standard places. 869* Locating Files:: How to find a file in standard places.
870 870
@@ -934,8 +934,8 @@ Windows
934* Buffers and Windows:: Each window displays the contents of a buffer. 934* Buffers and Windows:: Each window displays the contents of a buffer.
935* Displaying Buffers:: Higher-level functions for displaying a buffer 935* Displaying Buffers:: Higher-level functions for displaying a buffer
936 and choosing a window for it. 936 and choosing a window for it.
937* Choosing Window:: How to choose a window for displaying a buffer. 937* Choosing Window:: How to choose a window for displaying a buffer.
938* Dedicated Windows:: How to avoid displaying another buffer in 938* Dedicated Windows:: How to avoid displaying another buffer in
939 a specific window. 939 a specific window.
940* Window Point:: Each window has its own location of point. 940* Window Point:: Each window has its own location of point.
941* Window Start and End:: Buffer positions indicating which text is 941* Window Start and End:: Buffer positions indicating which text is
@@ -955,37 +955,37 @@ Windows
955 955
956Frames 956Frames
957 957
958* Creating Frames:: Creating additional frames. 958* Creating Frames:: Creating additional frames.
959* Multiple Terminals:: Displaying on several different devices. 959* Multiple Terminals:: Displaying on several different devices.
960* Frame Parameters:: Controlling frame size, position, font, etc. 960* Frame Parameters:: Controlling frame size, position, font, etc.
961* Terminal Parameters:: Parameters common for all frames on terminal. 961* Terminal Parameters:: Parameters common for all frames on terminal.
962* Frame Titles:: Automatic updating of frame titles. 962* Frame Titles:: Automatic updating of frame titles.
963* Deleting Frames:: Frames last until explicitly deleted. 963* Deleting Frames:: Frames last until explicitly deleted.
964* Finding All Frames:: How to examine all existing frames. 964* Finding All Frames:: How to examine all existing frames.
965* Frames and Windows:: A frame contains windows; 965* Frames and Windows:: A frame contains windows;
966 display of text always works through windows. 966 display of text always works through windows.
967* Minibuffers and Frames:: How a frame finds the minibuffer to use. 967* Minibuffers and Frames:: How a frame finds the minibuffer to use.
968* Input Focus:: Specifying the selected frame. 968* Input Focus:: Specifying the selected frame.
969* Visibility of Frames:: Frames may be visible or invisible, or icons. 969* Visibility of Frames:: Frames may be visible or invisible, or icons.
970* Raising and Lowering:: Raising a frame makes it hide other windows; 970* Raising and Lowering:: Raising a frame makes it hide other windows;
971 lowering it makes the others hide it. 971 lowering it makes the others hide it.
972* Frame Configurations:: Saving the state of all frames. 972* Frame Configurations:: Saving the state of all frames.
973* Mouse Tracking:: Getting events that say when the mouse moves. 973* Mouse Tracking:: Getting events that say when the mouse moves.
974* Mouse Position:: Asking where the mouse is, or moving it. 974* Mouse Position:: Asking where the mouse is, or moving it.
975* Pop-Up Menus:: Displaying a menu for the user to select from. 975* Pop-Up Menus:: Displaying a menu for the user to select from.
976* Dialog Boxes:: Displaying a box to ask yes or no. 976* Dialog Boxes:: Displaying a box to ask yes or no.
977* Pointer Shape:: Specifying the shape of the mouse pointer. 977* Pointer Shape:: Specifying the shape of the mouse pointer.
978* Window System Selections::Transferring text to and from other X clients. 978* Window System Selections::Transferring text to and from other X clients.
979* Drag and Drop:: Internals of Drag-and-Drop implementation. 979* Drag and Drop:: Internals of Drag-and-Drop implementation.
980* Color Names:: Getting the definitions of color names. 980* Color Names:: Getting the definitions of color names.
981* Text Terminal Colors:: Defining colors for text-only terminals. 981* Text Terminal Colors:: Defining colors for text-only terminals.
982* Resources:: Getting resource values from the server. 982* Resources:: Getting resource values from the server.
983* Display Feature Testing:: Determining the features of a terminal. 983* Display Feature Testing:: Determining the features of a terminal.
984 984
985Frame Parameters 985Frame Parameters
986 986
987* Parameter Access:: How to change a frame's parameters. 987* Parameter Access:: How to change a frame's parameters.
988* Initial Parameters:: Specifying frame parameters when you make a frame. 988* Initial Parameters:: Specifying frame parameters when you make a frame.
989* Window Frame Parameters:: List of frame parameters for window systems. 989* Window Frame Parameters:: List of frame parameters for window systems.
990* Size and Position:: Changing the size and position of a frame. 990* Size and Position:: Changing the size and position of a frame.
991* Geometry:: Parsing geometry specifications. 991* Geometry:: Parsing geometry specifications.
@@ -1044,7 +1044,7 @@ Text
1044 later use. 1044 later use.
1045* Undo:: Undoing changes to the text of a buffer. 1045* Undo:: Undoing changes to the text of a buffer.
1046* Maintaining Undo:: How to enable and disable undo information. 1046* Maintaining Undo:: How to enable and disable undo information.
1047 How to control how much information is kept. 1047 How to control how much information is kept.
1048* Filling:: Functions for explicit filling. 1048* Filling:: Functions for explicit filling.
1049* Margins:: How to specify margins for filling commands. 1049* Margins:: How to specify margins for filling commands.
1050* Adaptive Fill:: Adaptive Fill mode chooses a fill prefix 1050* Adaptive Fill:: Adaptive Fill mode chooses a fill prefix
@@ -1070,7 +1070,7 @@ The Kill Ring
1070* Kill Functions:: Functions that kill text. 1070* Kill Functions:: Functions that kill text.
1071* Yanking:: How yanking is done. 1071* Yanking:: How yanking is done.
1072* Yank Commands:: Commands that access the kill ring. 1072* Yank Commands:: Commands that access the kill ring.
1073* Low-Level Kill Ring:: Functions and variables for kill ring access. 1073* Low-Level Kill Ring:: Functions and variables for kill ring access.
1074* Internals of Kill Ring:: Variables that hold kill ring data. 1074* Internals of Kill Ring:: Variables that hold kill ring data.
1075 1075
1076Indentation 1076Indentation
@@ -1085,9 +1085,9 @@ Indentation
1085Text Properties 1085Text Properties
1086 1086
1087* Examining Properties:: Looking at the properties of one character. 1087* Examining Properties:: Looking at the properties of one character.
1088* Changing Properties:: Setting the properties of a range of text. 1088* Changing Properties:: Setting the properties of a range of text.
1089* Property Search:: Searching for where a property changes value. 1089* Property Search:: Searching for where a property changes value.
1090* Special Properties:: Particular properties with special meanings. 1090* Special Properties:: Particular properties with special meanings.
1091* Format Properties:: Properties for representing formatting of text. 1091* Format Properties:: Properties for representing formatting of text.
1092* Sticky Properties:: How inserted text gets properties from 1092* Sticky Properties:: How inserted text gets properties from
1093 neighboring text. 1093 neighboring text.
@@ -1097,8 +1097,8 @@ Text Properties
1097 do something when you click on them. 1097 do something when you click on them.
1098* Fields:: The @code{field} property defines 1098* Fields:: The @code{field} property defines
1099 fields within the buffer. 1099 fields within the buffer.
1100* Not Intervals:: Why text properties do not use 1100* Not Intervals:: Why text properties do not use
1101 Lisp-visible text intervals. 1101 Lisp-visible text intervals.
1102 1102
1103Non-@acronym{ASCII} Characters 1103Non-@acronym{ASCII} Characters
1104 1104
@@ -1141,7 +1141,7 @@ Searching and Matching
1141* POSIX Regexps:: Searching POSIX-style for the longest match. 1141* POSIX Regexps:: Searching POSIX-style for the longest match.
1142* Match Data:: Finding out which part of the text matched, 1142* Match Data:: Finding out which part of the text matched,
1143 after a string or regexp search. 1143 after a string or regexp search.
1144* Search and Replace:: Commands that loop, searching and replacing. 1144* Search and Replace:: Commands that loop, searching and replacing.
1145* Standard Regexps:: Useful regexps for finding sentences, pages,... 1145* Standard Regexps:: Useful regexps for finding sentences, pages,...
1146 1146
1147Regular Expressions 1147Regular Expressions
@@ -1158,9 +1158,9 @@ Syntax of Regular Expressions
1158 1158
1159The Match Data 1159The Match Data
1160 1160
1161* Replacing Match:: Replacing a substring that was matched. 1161* Replacing Match:: Replacing a substring that was matched.
1162* Simple Match Data:: Accessing single items of match data, 1162* Simple Match Data:: Accessing single items of match data,
1163 such as where a particular subexpression started. 1163 such as where a particular subexpression started.
1164* Entire Match Data:: Accessing the entire match data at once, as a list. 1164* Entire Match Data:: Accessing the entire match data at once, as a list.
1165* Saving Match Data:: Saving and restoring the match data. 1165* Saving Match Data:: Saving and restoring the match data.
1166 1166
@@ -1170,7 +1170,7 @@ Syntax Tables
1170* Syntax Descriptors:: How characters are classified. 1170* Syntax Descriptors:: How characters are classified.
1171* Syntax Table Functions:: How to create, examine and alter syntax tables. 1171* Syntax Table Functions:: How to create, examine and alter syntax tables.
1172* Syntax Properties:: Overriding syntax with text properties. 1172* Syntax Properties:: Overriding syntax with text properties.
1173* Motion and Syntax:: Moving over characters with certain syntaxes. 1173* Motion and Syntax:: Moving over characters with certain syntaxes.
1174* Parsing Expressions:: Parsing balanced expressions 1174* Parsing Expressions:: Parsing balanced expressions
1175 using the syntax table. 1175 using the syntax table.
1176* Standard Syntax Tables:: Syntax tables used by various major modes. 1176* Standard Syntax Tables:: Syntax tables used by various major modes.
@@ -1259,10 +1259,10 @@ Emacs Display
1259* Invisible Text:: Hiding part of the buffer text. 1259* Invisible Text:: Hiding part of the buffer text.
1260* Selective Display:: Hiding part of the buffer text (the old way). 1260* Selective Display:: Hiding part of the buffer text (the old way).
1261* Temporary Displays:: Displays that go away automatically. 1261* Temporary Displays:: Displays that go away automatically.
1262* Overlays:: Use overlays to highlight parts of the buffer. 1262* Overlays:: Use overlays to highlight parts of the buffer.
1263* Width:: How wide a character or string is on the screen. 1263* Width:: How wide a character or string is on the screen.
1264* Line Height:: Controlling the height of lines. 1264* Line Height:: Controlling the height of lines.
1265* Faces:: A face defines a graphics style 1265* Faces:: A face defines a graphics style
1266 for text characters: font, colors, etc. 1266 for text characters: font, colors, etc.
1267* Fringes:: Controlling window fringes. 1267* Fringes:: Controlling window fringes.
1268* Scroll Bars:: Controlling vertical scroll bars. 1268* Scroll Bars:: Controlling vertical scroll bars.
@@ -1271,9 +1271,9 @@ Emacs Display
1271* Buttons:: Adding clickable buttons to Emacs buffers. 1271* Buttons:: Adding clickable buttons to Emacs buffers.
1272* Abstract Display:: Emacs' Widget for Object Collections. 1272* Abstract Display:: Emacs' Widget for Object Collections.
1273* Blinking:: How Emacs shows the matching open parenthesis. 1273* Blinking:: How Emacs shows the matching open parenthesis.
1274* Usual Display:: The usual conventions for displaying 1274* Usual Display:: The usual conventions for displaying
1275 nonprinting chars. 1275 nonprinting chars.
1276* Display Tables:: How to specify other conventions. 1276* Display Tables:: How to specify other conventions.
1277* Beeping:: Audible signal to the user. 1277* Beeping:: Audible signal to the user.
1278* Window Systems:: Which window system is being used. 1278* Window Systems:: Which window system is being used.
1279 1279
@@ -1295,7 +1295,7 @@ Overlays
1295 1295
1296* Managing Overlays:: Creating and moving overlays. 1296* Managing Overlays:: Creating and moving overlays.
1297* Overlay Properties:: How to read and set properties. 1297* Overlay Properties:: How to read and set properties.
1298 What properties do to the screen display. 1298 What properties do to the screen display.
1299* Finding Overlays:: Searching for overlays. 1299* Finding Overlays:: Searching for overlays.
1300 1300
1301Faces 1301Faces
@@ -1375,14 +1375,14 @@ Operating System Interface
1375* Getting Out:: How exiting works (permanent or temporary). 1375* Getting Out:: How exiting works (permanent or temporary).
1376* System Environment:: Distinguish the name and kind of system. 1376* System Environment:: Distinguish the name and kind of system.
1377* User Identification:: Finding the name and user id of the user. 1377* User Identification:: Finding the name and user id of the user.
1378* Time of Day:: Getting the current time. 1378* Time of Day:: Getting the current time.
1379* Time Conversion:: Converting a time from numeric form to 1379* Time Conversion:: Converting a time from numeric form to
1380 calendrical data and vice versa. 1380 calendrical data and vice versa.
1381* Time Parsing:: Converting a time from numeric form to text 1381* Time Parsing:: Converting a time from numeric form to text
1382 and vice versa. 1382 and vice versa.
1383* Processor Run Time:: Getting the run time used by Emacs. 1383* Processor Run Time:: Getting the run time used by Emacs.
1384* Time Calculations:: Adding, subtracting, comparing times, etc. 1384* Time Calculations:: Adding, subtracting, comparing times, etc.
1385* Timers:: Setting a timer to call a function at a 1385* Timers:: Setting a timer to call a function at a
1386 certain time. 1386 certain time.
1387* Idle Timers:: Setting a timer to call a function when Emacs has 1387* Idle Timers:: Setting a timer to call a function when Emacs has
1388 been idle for a certain length of time. 1388 been idle for a certain length of time.
@@ -1409,8 +1409,8 @@ Getting Out of Emacs
1409 1409
1410Terminal Input 1410Terminal Input
1411 1411
1412* Input Modes:: Options for how input is processed. 1412* Input Modes:: Options for how input is processed.
1413* Recording Input:: Saving histories of recent or all input events. 1413* Recording Input:: Saving histories of recent or all input events.
1414 1414
1415Tips and Conventions 1415Tips and Conventions
1416 1416
@@ -1420,7 +1420,7 @@ Tips and Conventions
1420* Compilation Tips:: Making compiled code run fast. 1420* Compilation Tips:: Making compiled code run fast.
1421* Warning Tips:: Turning off compiler warnings. 1421* Warning Tips:: Turning off compiler warnings.
1422* Documentation Tips:: Writing readable documentation strings. 1422* Documentation Tips:: Writing readable documentation strings.
1423* Comment Tips:: Conventions for writing comments. 1423* Comment Tips:: Conventions for writing comments.
1424* Library Headers:: Standard headers for library packages. 1424* Library Headers:: Standard headers for library packages.
1425 1425
1426GNU Emacs Internals 1426GNU Emacs Internals
diff --git a/doc/lispref/errors.texi b/doc/lispref/errors.texi
index e9ef1999589..b1b1747d86c 100644
--- a/doc/lispref/errors.texi
+++ b/doc/lispref/errors.texi
@@ -63,11 +63,11 @@ sequence or buffer.@*
63@xref{Lisp and Coding Systems}. 63@xref{Lisp and Coding Systems}.
64 64
65@item cyclic-function-indirection 65@item cyclic-function-indirection
66@code{"Symbol's chain of function indirections\@* contains a loop"}@* 66@code{"Symbol's chain of function indirections contains a loop"}@*
67@xref{Function Indirection}. 67@xref{Function Indirection}.
68 68
69@item cyclic-variable-indirection 69@item cyclic-variable-indirection
70@code{"Symbol's chain of variable indirections\@* contains a loop"}@* 70@code{"Symbol's chain of variable indirections contains a loop"}@*
71@xref{Variable Aliases}. 71@xref{Variable Aliases}.
72 72
73@item end-of-buffer 73@item end-of-buffer
diff --git a/doc/lispref/eval.texi b/doc/lispref/eval.texi
index f0d710f9775..6ed38f45dc8 100644
--- a/doc/lispref/eval.texi
+++ b/doc/lispref/eval.texi
@@ -110,7 +110,7 @@ forms.
110* Symbol Forms:: Symbols evaluate as variables. 110* Symbol Forms:: Symbols evaluate as variables.
111* Classifying Lists:: How to distinguish various sorts of list forms. 111* Classifying Lists:: How to distinguish various sorts of list forms.
112* Function Indirection:: When a symbol appears as the car of a list, 112* Function Indirection:: When a symbol appears as the car of a list,
113 we find the real function via the symbol. 113 we find the real function via the symbol.
114* Function Forms:: Forms that call functions. 114* Function Forms:: Forms that call functions.
115* Macro Forms:: Forms that call macros. 115* Macro Forms:: Forms that call macros.
116* Special Forms:: "Special forms" are idiosyncratic primitives, 116* Special Forms:: "Special forms" are idiosyncratic primitives,
diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi
index 699a33ff22b..abdd2814b56 100644
--- a/doc/lispref/files.texi
+++ b/doc/lispref/files.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/files 7@setfilename ../../info/files
7@node Files, Backups and Auto-Saving, Documentation, Top 8@node Files, Backups and Auto-Saving, Documentation, Top
@@ -38,9 +39,9 @@ to locale @code{system-message-locale}, and decoded using coding system
38* Changing Files:: Renaming files, changing protection, etc. 39* Changing Files:: Renaming files, changing protection, etc.
39* File Names:: Decomposing and expanding file names. 40* File Names:: Decomposing and expanding file names.
40* Contents of Directories:: Getting a list of the files in a directory. 41* Contents of Directories:: Getting a list of the files in a directory.
41* Create/Delete Dirs:: Creating and Deleting Directories. 42* Create/Delete Dirs:: Creating and Deleting Directories.
42* Magic File Names:: Defining "magic" special handling 43* Magic File Names:: Defining "magic" special handling
43 for certain file names. 44 for certain file names.
44* Format Conversion:: Conversion to and from various file formats. 45* Format Conversion:: Conversion to and from various file formats.
45@end menu 46@end menu
46 47
@@ -755,7 +756,7 @@ otherwise noted.
755@menu 756@menu
756* Testing Accessibility:: Is a given file readable? Writable? 757* Testing Accessibility:: Is a given file readable? Writable?
757* Kinds of Files:: Is it a directory? A symbolic link? 758* Kinds of Files:: Is it a directory? A symbolic link?
758* Truenames:: Eliminating symbolic links from a file name. 759* Truenames:: Eliminating symbolic links from a file name.
759* File Attributes:: How large is it? Any other names? Etc. 760* File Attributes:: How large is it? Any other names? Etc.
760* Locating Files:: How to find a file in standard places. 761* Locating Files:: How to find a file in standard places.
761@end menu 762@end menu
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index 9994210bd17..7dfe3242c5d 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -85,26 +85,26 @@ is the same as for @code{framep} above.
85* Frame Parameters:: Controlling frame size, position, font, etc. 85* Frame Parameters:: Controlling frame size, position, font, etc.
86* Terminal Parameters:: Parameters common for all frames on terminal. 86* Terminal Parameters:: Parameters common for all frames on terminal.
87* Frame Titles:: Automatic updating of frame titles. 87* Frame Titles:: Automatic updating of frame titles.
88* Deleting Frames:: Frames last until explicitly deleted. 88* Deleting Frames:: Frames last until explicitly deleted.
89* Finding All Frames:: How to examine all existing frames. 89* Finding All Frames:: How to examine all existing frames.
90* Frames and Windows:: A frame contains windows; 90* Frames and Windows:: A frame contains windows;
91 display of text always works through windows. 91 display of text always works through windows.
92* Minibuffers and Frames:: How a frame finds the minibuffer to use. 92* Minibuffers and Frames:: How a frame finds the minibuffer to use.
93* Input Focus:: Specifying the selected frame. 93* Input Focus:: Specifying the selected frame.
94* Visibility of Frames:: Frames may be visible or invisible, or icons. 94* Visibility of Frames:: Frames may be visible or invisible, or icons.
95* Raising and Lowering:: Raising a frame makes it hide other windows; 95* Raising and Lowering:: Raising a frame makes it hide other windows;
96 lowering it makes the others hide it. 96 lowering it makes the others hide it.
97* Frame Configurations:: Saving the state of all frames. 97* Frame Configurations:: Saving the state of all frames.
98* Mouse Tracking:: Getting events that say when the mouse moves. 98* Mouse Tracking:: Getting events that say when the mouse moves.
99* Mouse Position:: Asking where the mouse is, or moving it. 99* Mouse Position:: Asking where the mouse is, or moving it.
100* Pop-Up Menus:: Displaying a menu for the user to select from. 100* Pop-Up Menus:: Displaying a menu for the user to select from.
101* Dialog Boxes:: Displaying a box to ask yes or no. 101* Dialog Boxes:: Displaying a box to ask yes or no.
102* Pointer Shape:: Specifying the shape of the mouse pointer. 102* Pointer Shape:: Specifying the shape of the mouse pointer.
103* Window System Selections:: Transferring text to and from other X clients. 103* Window System Selections:: Transferring text to and from other X clients.
104* Drag and Drop:: Internals of Drag-and-Drop implementation. 104* Drag and Drop:: Internals of Drag-and-Drop implementation.
105* Color Names:: Getting the definitions of color names. 105* Color Names:: Getting the definitions of color names.
106* Text Terminal Colors:: Defining colors for text-only terminals. 106* Text Terminal Colors:: Defining colors for text-only terminals.
107* Resources:: Getting resource values from the server. 107* Resources:: Getting resource values from the server.
108* Display Feature Testing:: Determining the features of a terminal. 108* Display Feature Testing:: Determining the features of a terminal.
109@end menu 109@end menu
110 110
@@ -343,7 +343,7 @@ variables. @xref{Frame-Local Variables}.
343 343
344@menu 344@menu
345* Parameter Access:: How to change a frame's parameters. 345* Parameter Access:: How to change a frame's parameters.
346* Initial Parameters:: Specifying frame parameters when you make a frame. 346* Initial Parameters:: Specifying frame parameters when you make a frame.
347* Window Frame Parameters:: List of frame parameters for window systems. 347* Window Frame Parameters:: List of frame parameters for window systems.
348* Size and Position:: Changing the size and position of a frame. 348* Size and Position:: Changing the size and position of a frame.
349* Geometry:: Parsing geometry specifications. 349* Geometry:: Parsing geometry specifications.
diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi
index 37e8726592a..6f3fd63013c 100644
--- a/doc/lispref/functions.texi
+++ b/doc/lispref/functions.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/functions 7@setfilename ../../info/functions
7@node Functions, Macros, Variables, Top 8@node Functions, Macros, Variables, Top
@@ -22,7 +23,7 @@ define them.
22* Function Cells:: Accessing or setting the function definition 23* Function Cells:: Accessing or setting the function definition
23 of a symbol. 24 of a symbol.
24* Obsolete Functions:: Declaring functions obsolete. 25* Obsolete Functions:: Declaring functions obsolete.
25* Inline Functions:: Defining functions that the compiler will open code. 26* Inline Functions:: Defining functions that the compiler will open code.
26* Declaring Functions:: Telling the compiler that a function is defined. 27* Declaring Functions:: Telling the compiler that a function is defined.
27* Function Safety:: Determining whether a function is safe to call. 28* Function Safety:: Determining whether a function is safe to call.
28* Related Topics:: Cross-references to specific Lisp primitives 29* Related Topics:: Cross-references to specific Lisp primitives
diff --git a/doc/lispref/internals.texi b/doc/lispref/internals.texi
index 569bce56213..2420e777fe8 100644
--- a/doc/lispref/internals.texi
+++ b/doc/lispref/internals.texi
@@ -760,22 +760,22 @@ If they are on the border between WINDOW and its right sibling,\n\
760@group 760@group
761 switch (coordinates_in_window (XWINDOW (window), &x, &y)) 761 switch (coordinates_in_window (XWINDOW (window), &x, &y))
762 @{ 762 @{
763 case 0: /* NOT in window at all. */ 763 case 0: /* NOT in window at all. */
764 return Qnil; 764 return Qnil;
765@end group 765@end group
766 766
767@group 767@group
768 case 1: /* In text part of window. */ 768 case 1: /* In text part of window. */
769 return Fcons (make_number (x), make_number (y)); 769 return Fcons (make_number (x), make_number (y));
770@end group 770@end group
771 771
772@group 772@group
773 case 2: /* In mode line of window. */ 773 case 2: /* In mode line of window. */
774 return Qmode_line; 774 return Qmode_line;
775@end group 775@end group
776 776
777@group 777@group
778 case 3: /* On right border of window. */ 778 case 3: /* On right border of window. */
779 return Qvertical_line; 779 return Qvertical_line;
780@end group 780@end group
781 781
diff --git a/doc/lispref/keymaps.texi b/doc/lispref/keymaps.texi
index d886b990dd8..e1052a9912e 100644
--- a/doc/lispref/keymaps.texi
+++ b/doc/lispref/keymaps.texi
@@ -1,7 +1,8 @@
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, 1998, 1999, 2000, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1998, 1999, 2000, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/keymaps 7@setfilename ../../info/keymaps
7@node Keymaps, Modes, Command Loop, Top 8@node Keymaps, Modes, Command Loop, Top
@@ -16,19 +17,19 @@ used to look up the next input event; this continues until a command
16is found. The whole process is called @dfn{key lookup}. 17is found. The whole process is called @dfn{key lookup}.
17 18
18@menu 19@menu
19* Key Sequences:: Key sequences as Lisp objects. 20* Key Sequences:: Key sequences as Lisp objects.
20* Keymap Basics:: Basic concepts of keymaps. 21* Keymap Basics:: Basic concepts of keymaps.
21* Format of Keymaps:: What a keymap looks like as a Lisp object. 22* Format of Keymaps:: What a keymap looks like as a Lisp object.
22* Creating Keymaps:: Functions to create and copy keymaps. 23* Creating Keymaps:: Functions to create and copy keymaps.
23* Inheritance and Keymaps:: How one keymap can inherit the bindings 24* Inheritance and Keymaps:: How one keymap can inherit the bindings
24 of another keymap. 25 of another keymap.
25* Prefix Keys:: Defining a key with a keymap as its definition. 26* Prefix Keys:: Defining a key with a keymap as its definition.
26* Active Keymaps:: How Emacs searches the active keymaps 27* Active Keymaps:: How Emacs searches the active keymaps
27 for a key binding. 28 for a key binding.
28* Searching Keymaps:: A pseudo-Lisp summary of searching active maps. 29* Searching Keymaps:: A pseudo-Lisp summary of searching active maps.
29* Controlling Active Maps:: Each buffer has a local keymap 30* Controlling Active Maps:: Each buffer has a local keymap
30 to override the standard (global) bindings. 31 to override the standard (global) bindings.
31 A minor mode can also override them. 32 A minor mode can also override them.
32* Key Lookup:: Finding a key's binding in one keymap. 33* Key Lookup:: Finding a key's binding in one keymap.
33* Functions for Key Lookup:: How to request key lookup. 34* Functions for Key Lookup:: How to request key lookup.
34* Changing Key Bindings:: Redefining a key in a keymap. 35* Changing Key Bindings:: Redefining a key in a keymap.
@@ -36,7 +37,7 @@ is found. The whole process is called @dfn{key lookup}.
36* Translation Keymaps:: Keymaps for translating sequences of events. 37* Translation Keymaps:: Keymaps for translating sequences of events.
37* Key Binding Commands:: Interactive interfaces for redefining keys. 38* Key Binding Commands:: Interactive interfaces for redefining keys.
38* Scanning Keymaps:: Looking through all keymaps, for printing help. 39* Scanning Keymaps:: Looking through all keymaps, for printing help.
39* Menu Keymaps:: Defining a menu as a keymap. 40* Menu Keymaps:: Defining a menu as a keymap.
40@end menu 41@end menu
41 42
42@node Key Sequences 43@node Key Sequences
@@ -1959,11 +1960,11 @@ is active for the next input event, that activates the keyboard menu
1959feature. 1960feature.
1960 1961
1961@menu 1962@menu
1962* Defining Menus:: How to make a keymap that defines a menu. 1963* Defining Menus:: How to make a keymap that defines a menu.
1963* Mouse Menus:: How users actuate the menu with the mouse. 1964* Mouse Menus:: How users actuate the menu with the mouse.
1964* Keyboard Menus:: How users actuate the menu with the keyboard. 1965* Keyboard Menus:: How users actuate the menu with the keyboard.
1965* Menu Example:: Making a simple menu. 1966* Menu Example:: Making a simple menu.
1966* Menu Bar:: How to customize the menu bar. 1967* Menu Bar:: How to customize the menu bar.
1967* Tool Bar:: A tool bar is a row of images. 1968* Tool Bar:: A tool bar is a row of images.
1968* Modifying Menus:: How to add new items to a menu. 1969* Modifying Menus:: How to add new items to a menu.
1969@end menu 1970@end menu
@@ -2413,10 +2414,10 @@ Next we define the menu items:
2413@smallexample 2414@smallexample
2414(define-key menu-bar-replace-menu [tags-repl-continue] 2415(define-key menu-bar-replace-menu [tags-repl-continue]
2415 '(menu-item "Continue Replace" tags-loop-continue 2416 '(menu-item "Continue Replace" tags-loop-continue
2416 :help "Continue last tags replace operation")) 2417 :help "Continue last tags replace operation"))
2417(define-key menu-bar-replace-menu [tags-repl] 2418(define-key menu-bar-replace-menu [tags-repl]
2418 '(menu-item "Replace in tagged files" tags-query-replace 2419 '(menu-item "Replace in tagged files" tags-query-replace
2419 :help "Interactively replace a regexp in all tagged files")) 2420 :help "Interactively replace a regexp in all tagged files"))
2420(define-key menu-bar-replace-menu [separator-replace-tags] 2421(define-key menu-bar-replace-menu [separator-replace-tags]
2421 '(menu-item "--")) 2422 '(menu-item "--"))
2422;; @r{@dots{}} 2423;; @r{@dots{}}
@@ -2656,8 +2657,8 @@ using an indirection through @code{tool-bar-map}.
2656By default, the global map binds @code{[tool-bar]} as follows: 2657By default, the global map binds @code{[tool-bar]} as follows:
2657@example 2658@example
2658(global-set-key [tool-bar] 2659(global-set-key [tool-bar]
2659 '(menu-item "tool bar" ignore 2660 '(menu-item "tool bar" ignore
2660 :filter (lambda (ignore) tool-bar-map))) 2661 :filter (lambda (ignore) tool-bar-map)))
2661@end example 2662@end example
2662@noindent 2663@noindent
2663Thus the tool bar map is derived dynamically from the value of variable 2664Thus the tool bar map is derived dynamically from the value of variable
diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi
index 7e3240d72de..bbdd67fc3a5 100644
--- a/doc/lispref/loading.texi
+++ b/doc/lispref/loading.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/loading 7@setfilename ../../info/loading
7@node Loading, Byte Compilation, Customization, Top 8@node Loading, Byte Compilation, Customization, Top
@@ -43,9 +44,9 @@ containing Lisp code.
43* Repeated Loading:: Precautions about loading a file twice. 44* Repeated Loading:: Precautions about loading a file twice.
44* Named Features:: Loading a library if it isn't already loaded. 45* Named Features:: Loading a library if it isn't already loaded.
45* Where Defined:: Finding which file defined a certain symbol. 46* Where Defined:: Finding which file defined a certain symbol.
46* Unloading:: How to "unload" a library that was loaded. 47* Unloading:: How to "unload" a library that was loaded.
47* Hooks for Loading:: Providing code to be run when 48* Hooks for Loading:: Providing code to be run when
48 particular libraries are loaded. 49 particular libraries are loaded.
49@end menu 50@end menu
50 51
51@node How Programs Do Loading 52@node How Programs Do Loading
diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi
index bfe73ce27f4..3588704b054 100644
--- a/doc/lispref/minibuf.texi
+++ b/doc/lispref/minibuf.texi
@@ -1,7 +1,8 @@
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, 2001, 2002, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001, 2002,
4@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/minibuf 7@setfilename ../../info/minibuf
7@node Minibuffers, Command Loop, Read and Print, Top 8@node Minibuffers, Command Loop, Read and Print, Top
@@ -22,13 +23,13 @@ argument.
22* Intro to Minibuffers:: Basic information about minibuffers. 23* Intro to Minibuffers:: Basic information about minibuffers.
23* Text from Minibuffer:: How to read a straight text string. 24* Text from Minibuffer:: How to read a straight text string.
24* Object from Minibuffer:: How to read a Lisp object or expression. 25* Object from Minibuffer:: How to read a Lisp object or expression.
25* Minibuffer History:: Recording previous minibuffer inputs 26* Minibuffer History:: Recording previous minibuffer inputs
26 so the user can reuse them. 27 so the user can reuse them.
27* Initial Input:: Specifying initial contents for the minibuffer. 28* Initial Input:: Specifying initial contents for the minibuffer.
28* Completion:: How to invoke and customize completion. 29* Completion:: How to invoke and customize completion.
29* Yes-or-No Queries:: Asking a question with a simple answer. 30* Yes-or-No Queries:: Asking a question with a simple answer.
30* Multiple Queries:: Asking a series of similar questions. 31* Multiple Queries:: Asking a series of similar questions.
31* Reading a Password:: Reading a password from the terminal. 32* Reading a Password:: Reading a password from the terminal.
32* Minibuffer Commands:: Commands used as key bindings in minibuffers. 33* Minibuffer Commands:: Commands used as key bindings in minibuffers.
33* Minibuffer Contents:: How such commands access the minibuffer text. 34* Minibuffer Contents:: How such commands access the minibuffer text.
34* Minibuffer Windows:: Operating on the special minibuffer windows. 35* Minibuffer Windows:: Operating on the special minibuffer windows.
diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi
index e5eb90863af..858226ecdfc 100644
--- a/doc/lispref/modes.texi
+++ b/doc/lispref/modes.texi
@@ -1342,7 +1342,7 @@ or like this, using @code{add-to-list} (@pxref{List Variables}):
1342 Global minor modes distributed with Emacs should if possible support 1342 Global minor modes distributed with Emacs should if possible support
1343enabling and disabling via Custom (@pxref{Customization}). To do this, 1343enabling and disabling via Custom (@pxref{Customization}). To do this,
1344the first step is to define the mode variable with @code{defcustom}, and 1344the first step is to define the mode variable with @code{defcustom}, and
1345specify @code{:type boolean}. 1345specify @code{:type 'boolean}.
1346 1346
1347 If just setting the variable is not sufficient to enable the mode, you 1347 If just setting the variable is not sufficient to enable the mode, you
1348should also specify a @code{:set} method which enables the mode by 1348should also specify a @code{:set} method which enables the mode by
diff --git a/doc/lispref/numbers.texi b/doc/lispref/numbers.texi
index fdec0448e02..62b4796350e 100644
--- a/doc/lispref/numbers.texi
+++ b/doc/lispref/numbers.texi
@@ -21,10 +21,10 @@ exact; they have a fixed, limited amount of precision.
21 21
22@menu 22@menu
23* Integer Basics:: Representation and range of integers. 23* Integer Basics:: Representation and range of integers.
24* Float Basics:: Representation and range of floating point. 24* Float Basics:: Representation and range of floating point.
25* Predicates on Numbers:: Testing for numbers. 25* Predicates on Numbers:: Testing for numbers.
26* Comparison of Numbers:: Equality and inequality predicates. 26* Comparison of Numbers:: Equality and inequality predicates.
27* Numeric Conversions:: Converting float to integer and vice versa. 27* Numeric Conversions:: Converting float to integer and vice versa.
28* Arithmetic Operations:: How to add, subtract, multiply and divide. 28* Arithmetic Operations:: How to add, subtract, multiply and divide.
29* Rounding Operations:: Explicitly rounding floating point numbers. 29* Rounding Operations:: Explicitly rounding floating point numbers.
30* Bitwise Operations:: Logical and, or, not, shifting. 30* Bitwise Operations:: Logical and, or, not, shifting.
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index 9fbc51ae12f..4f37eb10b7a 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/os 7@setfilename ../../info/os
7@node System Interface, Antinews, Display, Top 8@node System Interface, Antinews, Display, Top
@@ -20,14 +21,14 @@ terminal and the screen.
20* Getting Out:: How exiting works (permanent or temporary). 21* Getting Out:: How exiting works (permanent or temporary).
21* System Environment:: Distinguish the name and kind of system. 22* System Environment:: Distinguish the name and kind of system.
22* User Identification:: Finding the name and user id of the user. 23* User Identification:: Finding the name and user id of the user.
23* Time of Day:: Getting the current time. 24* Time of Day:: Getting the current time.
24* Time Conversion:: Converting a time from numeric form to 25* Time Conversion:: Converting a time from numeric form to
25 calendrical data and vice versa. 26 calendrical data and vice versa.
26* Time Parsing:: Converting a time from numeric form to text 27* Time Parsing:: Converting a time from numeric form to text
27 and vice versa. 28 and vice versa.
28* Processor Run Time:: Getting the run time used by Emacs. 29* Processor Run Time:: Getting the run time used by Emacs.
29* Time Calculations:: Adding, subtracting, comparing times, etc. 30* Time Calculations:: Adding, subtracting, comparing times, etc.
30* Timers:: Setting a timer to call a function at a certain time. 31* Timers:: Setting a timer to call a function at a certain time.
31* Idle Timers:: Setting a timer to call a function when Emacs has 32* Idle Timers:: Setting a timer to call a function when Emacs has
32 been idle for a certain length of time. 33 been idle for a certain length of time.
33* Terminal Input:: Accessing and recording terminal input. 34* Terminal Input:: Accessing and recording terminal input.
@@ -1815,8 +1816,8 @@ manipulating terminal input. See @ref{Display}, for related
1815functions. 1816functions.
1816 1817
1817@menu 1818@menu
1818* Input Modes:: Options for how input is processed. 1819* Input Modes:: Options for how input is processed.
1819* Recording Input:: Saving histories of recent or all input events. 1820* Recording Input:: Saving histories of recent or all input events.
1820@end menu 1821@end menu
1821 1822
1822@node Input Modes 1823@node Input Modes
diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi
index 85628bdfac6..1a4a766c81c 100644
--- a/doc/lispref/processes.texi
+++ b/doc/lispref/processes.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/processes 7@setfilename ../../info/processes
7@node Processes, Display, Abbrevs, Top 8@node Processes, Display, Abbrevs, Top
@@ -51,13 +52,13 @@ Processes}.
51* Sentinels:: Sentinels run when process run-status changes. 52* Sentinels:: Sentinels run when process run-status changes.
52* Query Before Exit:: Whether to query if exiting will kill a process. 53* Query Before Exit:: Whether to query if exiting will kill a process.
53* System Processes:: Accessing other processes running on your system. 54* System Processes:: Accessing other processes running on your system.
54* Transaction Queues:: Transaction-based communication with subprocesses. 55* Transaction Queues:: Transaction-based communication with subprocesses.
55* Network:: Opening network connections. 56* Network:: Opening network connections.
56* Network Servers:: Network servers let Emacs accept net connections. 57* Network Servers:: Network servers let Emacs accept net connections.
57* Datagrams:: UDP network connections. 58* Datagrams:: UDP network connections.
58* Low-Level Network:: Lower-level but more general function 59* Low-Level Network:: Lower-level but more general function
59 to create connections and servers. 60 to create connections and servers.
60* Misc Network:: Additional relevant functions for network connections. 61* Misc Network:: Additional relevant functions for net connections.
61* Serial Ports:: Communicating with serial ports. 62* Serial Ports:: Communicating with serial ports.
62* Byte Packing:: Using bindat to pack and unpack binary data. 63* Byte Packing:: Using bindat to pack and unpack binary data.
63@end menu 64@end menu
diff --git a/doc/lispref/searching.texi b/doc/lispref/searching.texi
index 722f76cdd7f..b4b4c23b1ed 100644
--- a/doc/lispref/searching.texi
+++ b/doc/lispref/searching.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/searching 7@setfilename ../../info/searching
7@node Searching and Matching, Syntax Tables, Non-ASCII Characters, Top 8@node Searching and Matching, Syntax Tables, Non-ASCII Characters, Top
@@ -22,7 +23,7 @@ portions of it.
22* POSIX Regexps:: Searching POSIX-style for the longest match. 23* POSIX Regexps:: Searching POSIX-style for the longest match.
23* Match Data:: Finding out which part of the text matched, 24* Match Data:: Finding out which part of the text matched,
24 after a string or regexp search. 25 after a string or regexp search.
25* Search and Replace:: Commands that loop, searching and replacing. 26* Search and Replace:: Commands that loop, searching and replacing.
26* Standard Regexps:: Useful regexps for finding sentences, pages,... 27* Standard Regexps:: Useful regexps for finding sentences, pages,...
27@end menu 28@end menu
28 29
@@ -609,8 +610,8 @@ maximum.
609For example, @samp{c[ad]\@{1,2\@}r} matches the strings @samp{car}, 610For example, @samp{c[ad]\@{1,2\@}r} matches the strings @samp{car},
610@samp{cdr}, @samp{caar}, @samp{cadr}, @samp{cdar}, and @samp{cddr}, and 611@samp{cdr}, @samp{caar}, @samp{cadr}, @samp{cdar}, and @samp{cddr}, and
611nothing else.@* 612nothing else.@*
612@samp{\@{0,1\@}} or @samp{\@{,1\@}} is equivalent to @samp{?}. @* 613@samp{\@{0,1\@}} or @samp{\@{,1\@}} is equivalent to @samp{?}.@*
613@samp{\@{0,\@}} or @samp{\@{,\@}} is equivalent to @samp{*}. @* 614@samp{\@{0,\@}} or @samp{\@{,\@}} is equivalent to @samp{*}.@*
614@samp{\@{1,\@}} is equivalent to @samp{+}. 615@samp{\@{1,\@}} is equivalent to @samp{+}.
615 616
616@item \( @dots{} \) 617@item \( @dots{} \)
@@ -1213,9 +1214,9 @@ can't avoid another intervening search, you must save and restore the
1213match data around it, to prevent it from being overwritten. 1214match data around it, to prevent it from being overwritten.
1214 1215
1215@menu 1216@menu
1216* Replacing Match:: Replacing a substring that was matched. 1217* Replacing Match:: Replacing a substring that was matched.
1217* Simple Match Data:: Accessing single items of match data, 1218* Simple Match Data:: Accessing single items of match data,
1218 such as where a particular subexpression started. 1219 such as where a particular subexpression started.
1219* Entire Match Data:: Accessing the entire match data at once, as a list. 1220* Entire Match Data:: Accessing the entire match data at once, as a list.
1220* Saving Match Data:: Saving and restoring the match data. 1221* Saving Match Data:: Saving and restoring the match data.
1221@end menu 1222@end menu
diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi
index f55c93abf31..a73c4790b96 100644
--- a/doc/lispref/sequences.texi
+++ b/doc/lispref/sequences.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/sequences 7@setfilename ../../info/sequences
7@node Sequences Arrays Vectors, Hash Tables, Lists, Top 8@node Sequences Arrays Vectors, Hash Tables, Lists, Top
@@ -669,13 +670,13 @@ For example, here is how to examine the elements of the syntax table:
669(let (accumulator) 670(let (accumulator)
670 (map-char-table 671 (map-char-table
671 #'(lambda (key value) 672 #'(lambda (key value)
672 (setq accumulator 673 (setq accumulator
673 (cons (list 674 (cons (list
674 (if (consp key) 675 (if (consp key)
675 (list (car key) (cdr key)) 676 (list (car key) (cdr key))
676 key) 677 key)
677 value) 678 value)
678 accumulator))) 679 accumulator)))
679 (syntax-table)) 680 (syntax-table))
680 accumulator) 681 accumulator)
681@result{} 682@result{}
diff --git a/doc/lispref/strings.texi b/doc/lispref/strings.texi
index 34613a823ba..1128ca87d8a 100644
--- a/doc/lispref/strings.texi
+++ b/doc/lispref/strings.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/strings 7@setfilename ../../info/strings
7@node Strings and Characters, Lists, Numbers, Top 8@node Strings and Characters, Lists, Numbers, Top
@@ -31,7 +32,7 @@ keyboard character events.
31* String Conversion:: Converting to and from characters and strings. 32* String Conversion:: Converting to and from characters and strings.
32* Formatting Strings:: @code{format}: Emacs's analogue of @code{printf}. 33* Formatting Strings:: @code{format}: Emacs's analogue of @code{printf}.
33* Case Conversion:: Case conversion functions. 34* Case Conversion:: Case conversion functions.
34* Case Tables:: Customizing case conversion. 35* Case Tables:: Customizing case conversion.
35@end menu 36@end menu
36 37
37@node String Basics 38@node String Basics
diff --git a/doc/lispref/syntax.texi b/doc/lispref/syntax.texi
index a3d5631baf8..9add9b76e79 100644
--- a/doc/lispref/syntax.texi
+++ b/doc/lispref/syntax.texi
@@ -1,7 +1,8 @@
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, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/syntax 7@setfilename ../../info/syntax
7@node Syntax Tables, Abbrevs, Searching and Matching, Top 8@node Syntax Tables, Abbrevs, Searching and Matching, Top
@@ -23,7 +24,7 @@ functions in this chapter.
23* Desc: Syntax Descriptors. How characters are classified. 24* Desc: Syntax Descriptors. How characters are classified.
24* Syntax Table Functions:: How to create, examine and alter syntax tables. 25* Syntax Table Functions:: How to create, examine and alter syntax tables.
25* Syntax Properties:: Overriding syntax with text properties. 26* Syntax Properties:: Overriding syntax with text properties.
26* Motion and Syntax:: Moving over characters with certain syntaxes. 27* Motion and Syntax:: Moving over characters with certain syntaxes.
27* Parsing Expressions:: Parsing balanced expressions 28* Parsing Expressions:: Parsing balanced expressions
28 using the syntax table. 29 using the syntax table.
29* Standard Syntax Tables:: Syntax tables used by various major modes. 30* Standard Syntax Tables:: Syntax tables used by various major modes.
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index 2eff8b109a0..f52d1db5c9c 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -1,7 +1,8 @@
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, 2000, 2001, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000, 2001,
4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/text 7@setfilename ../../info/text
7@node Text, Non-ASCII Characters, Markers, Top 8@node Text, Non-ASCII Characters, Markers, Top
@@ -42,7 +43,7 @@ the character after point.
42* The Kill Ring:: Where removed text sometimes is saved for later use. 43* The Kill Ring:: Where removed text sometimes is saved for later use.
43* Undo:: Undoing changes to the text of a buffer. 44* Undo:: Undoing changes to the text of a buffer.
44* Maintaining Undo:: How to enable and disable undo information. 45* Maintaining Undo:: How to enable and disable undo information.
45 How to control how much information is kept. 46 How to control how much information is kept.
46* Filling:: Functions for explicit filling. 47* Filling:: Functions for explicit filling.
47* Margins:: How to specify margins for filling commands. 48* Margins:: How to specify margins for filling commands.
48* Adaptive Fill:: Adaptive Fill mode chooses a fill prefix from context. 49* Adaptive Fill:: Adaptive Fill mode chooses a fill prefix from context.
@@ -821,7 +822,7 @@ would be difficult to change the terminology now.
821* Kill Functions:: Functions that kill text. 822* Kill Functions:: Functions that kill text.
822* Yanking:: How yanking is done. 823* Yanking:: How yanking is done.
823* Yank Commands:: Commands that access the kill ring. 824* Yank Commands:: Commands that access the kill ring.
824* Low-Level Kill Ring:: Functions and variables for kill ring access. 825* Low-Level Kill Ring:: Functions and variables for kill ring access.
825* Internals of Kill Ring:: Variables that hold kill ring data. 826* Internals of Kill Ring:: Variables that hold kill ring data.
826@end menu 827@end menu
827 828
@@ -1298,13 +1299,16 @@ This function places a boundary element in the undo list. The undo
1298command stops at such a boundary, and successive undo commands undo 1299command stops at such a boundary, and successive undo commands undo
1299to earlier and earlier boundaries. This function returns @code{nil}. 1300to earlier and earlier boundaries. This function returns @code{nil}.
1300 1301
1301The editor command loop automatically creates an undo boundary before 1302The editor command loop automatically calls @code{undo-boundary} just
1302each key sequence is executed. Thus, each undo normally undoes the 1303before executing each key sequence, so that each undo normally undoes
1303effects of one command. Self-inserting input characters are an 1304the effects of one command. As an exception, the command
1304exception. The command loop makes a boundary for the first such 1305@code{self-insert-command}, which produces self-inserting input
1305character; the next 19 consecutive self-inserting input characters do 1306characters (@pxref{Commands for Insertion}), may remove the boundary
1306not make boundaries, and then the 20th does, and so on as long as 1307inserted by the command loop: a boundary is accepted for the first
1307self-inserting characters continue. 1308such character, the next 19 consecutive self-inserting input
1309characters do not have boundaries, and then the 20th does; and so on
1310as long as the self-inserting characters continue. Hence, sequences
1311of consecutive character insertions can be undone as a group.
1308 1312
1309All buffer modifications add a boundary whenever the previous undoable 1313All buffer modifications add a boundary whenever the previous undoable
1310change was made in some other buffer. This is to ensure that 1314change was made in some other buffer. This is to ensure that
@@ -2593,9 +2597,9 @@ along with the characters; this includes such diverse functions as
2593 2597
2594@menu 2598@menu
2595* Examining Properties:: Looking at the properties of one character. 2599* Examining Properties:: Looking at the properties of one character.
2596* Changing Properties:: Setting the properties of a range of text. 2600* Changing Properties:: Setting the properties of a range of text.
2597* Property Search:: Searching for where a property changes value. 2601* Property Search:: Searching for where a property changes value.
2598* Special Properties:: Particular properties with special meanings. 2602* Special Properties:: Particular properties with special meanings.
2599* Format Properties:: Properties for representing formatting of text. 2603* Format Properties:: Properties for representing formatting of text.
2600* Sticky Properties:: How inserted text gets properties from 2604* Sticky Properties:: How inserted text gets properties from
2601 neighboring text. 2605 neighboring text.
@@ -2605,8 +2609,8 @@ along with the characters; this includes such diverse functions as
2605 do something when you click on them. 2609 do something when you click on them.
2606* Fields:: The @code{field} property defines 2610* Fields:: The @code{field} property defines
2607 fields within the buffer. 2611 fields within the buffer.
2608* Not Intervals:: Why text properties do not use 2612* Not Intervals:: Why text properties do not use
2609 Lisp-visible text intervals. 2613 Lisp-visible text intervals.
2610@end menu 2614@end menu
2611 2615
2612@node Examining Properties 2616@node Examining Properties
diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi
index c1f1423dabf..de281b0e147 100644
--- a/doc/lispref/tips.texi
+++ b/doc/lispref/tips.texi
@@ -1,7 +1,8 @@
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, 1995, 1998, 1999, 2001, 2002, 3@c Copyright (C) 1990, 1991, 1992, 1993, 1995, 1998, 1999, 2001, 2002,
4@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
5@c Free Software Foundation, Inc.
5@c See the file elisp.texi for copying conditions. 6@c See the file elisp.texi for copying conditions.
6@setfilename ../../info/tips 7@setfilename ../../info/tips
7@node Tips, GNU Emacs Internals, GPL, Top 8@node Tips, GNU Emacs Internals, GPL, Top
@@ -28,7 +29,7 @@ all.
28* Compilation Tips:: Making compiled code run fast. 29* Compilation Tips:: Making compiled code run fast.
29* Warning Tips:: Turning off compiler warnings. 30* Warning Tips:: Turning off compiler warnings.
30* Documentation Tips:: Writing readable documentation strings. 31* Documentation Tips:: Writing readable documentation strings.
31* Comment Tips:: Conventions for writing comments. 32* Comment Tips:: Conventions for writing comments.
32* Library Headers:: Standard headers for library packages. 33* Library Headers:: Standard headers for library packages.
33@end menu 34@end menu
34 35
diff --git a/doc/lispref/vol1.texi b/doc/lispref/vol1.texi
index a0590c3d282..ae90d23c70b 100644
--- a/doc/lispref/vol1.texi
+++ b/doc/lispref/vol1.texi
@@ -164,7 +164,7 @@ Reference Manual, corresponding to GNU Emacs version @value{EMACSVER}.
164 files are made. 164 files are made.
165* Buffers:: Creating and using buffer objects. 165* Buffers:: Creating and using buffer objects.
166* Windows:: Manipulating windows and displaying buffers. 166* Windows:: Manipulating windows and displaying buffers.
167* Frames:: Making multiple system-level windows. 167* Frames:: Making multiple system-level windows.
168* Positions:: Buffer positions and motion functions. 168* Positions:: Buffer positions and motion functions.
169* Markers:: Markers represent positions and update 169* Markers:: Markers represent positions and update
170 automatically when the text is changed. 170 automatically when the text is changed.
@@ -176,7 +176,7 @@ Reference Manual, corresponding to GNU Emacs version @value{EMACSVER}.
176* Abbrevs:: How Abbrev mode works, and its data structures. 176* Abbrevs:: How Abbrev mode works, and its data structures.
177 177
178* Processes:: Running and communicating with subprocesses. 178* Processes:: Running and communicating with subprocesses.
179* Display:: Features for controlling the screen display. 179* Display:: Features for controlling the screen display.
180* System Interface:: Getting the user id, system type, environment 180* System Interface:: Getting the user id, system type, environment
181 variables, and other such things. 181 variables, and other such things.
182 182
@@ -311,10 +311,10 @@ Editing Types
311Numbers 311Numbers
312 312
313* Integer Basics:: Representation and range of integers. 313* Integer Basics:: Representation and range of integers.
314* Float Basics:: Representation and range of floating point. 314* Float Basics:: Representation and range of floating point.
315* Predicates on Numbers:: Testing for numbers. 315* Predicates on Numbers:: Testing for numbers.
316* Comparison of Numbers:: Equality and inequality predicates. 316* Comparison of Numbers:: Equality and inequality predicates.
317* Numeric Conversions:: Converting float to integer and vice versa. 317* Numeric Conversions:: Converting float to integer and vice versa.
318* Arithmetic Operations:: How to add, subtract, multiply and divide. 318* Arithmetic Operations:: How to add, subtract, multiply and divide.
319* Rounding Operations:: Explicitly rounding floating point numbers. 319* Rounding Operations:: Explicitly rounding floating point numbers.
320* Bitwise Operations:: Logical and, or, not, shifting. 320* Bitwise Operations:: Logical and, or, not, shifting.
@@ -331,7 +331,7 @@ Strings and Characters
331* String Conversion:: Converting to and from characters and strings. 331* String Conversion:: Converting to and from characters and strings.
332* Formatting Strings:: @code{format}: Emacs's analogue of @code{printf}. 332* Formatting Strings:: @code{format}: Emacs's analogue of @code{printf}.
333* Case Conversion:: Case conversion functions. 333* Case Conversion:: Case conversion functions.
334* Case Tables:: Customizing case conversion. 334* Case Tables:: Customizing case conversion.
335 335
336Lists 336Lists
337 337
@@ -399,7 +399,7 @@ Kinds of Forms
399* Symbol Forms:: Symbols evaluate as variables. 399* Symbol Forms:: Symbols evaluate as variables.
400* Classifying Lists:: How to distinguish various sorts of list forms. 400* Classifying Lists:: How to distinguish various sorts of list forms.
401* Function Indirection:: When a symbol appears as the car of a list, 401* Function Indirection:: When a symbol appears as the car of a list,
402 we find the real function via the symbol. 402 we find the real function via the symbol.
403* Function Forms:: Forms that call functions. 403* Function Forms:: Forms that call functions.
404* Macro Forms:: Forms that call macros. 404* Macro Forms:: Forms that call macros.
405* Special Forms:: "Special forms" are idiosyncratic primitives, 405* Special Forms:: "Special forms" are idiosyncratic primitives,
@@ -480,9 +480,9 @@ Functions
480* Function Cells:: Accessing or setting the function definition 480* Function Cells:: Accessing or setting the function definition
481 of a symbol. 481 of a symbol.
482* Obsolete Functions:: Declaring functions obsolete. 482* Obsolete Functions:: Declaring functions obsolete.
483* Inline Functions:: Defining functions that the compiler 483* Inline Functions:: Defining functions that the compiler
484 will open code. 484 will open code.
485* Declaring Functions:: Telling the compiler that a function is defined. 485* Declaring Functions:: Telling the compiler that a function is defined.
486* Function Safety:: Determining whether a function is safe to call. 486* Function Safety:: Determining whether a function is safe to call.
487* Related Topics:: Cross-references to specific Lisp primitives 487* Related Topics:: Cross-references to specific Lisp primitives
488 that have a special bearing on how 488 that have a special bearing on how
@@ -542,9 +542,9 @@ Loading
542* Repeated Loading:: Precautions about loading a file twice. 542* Repeated Loading:: Precautions about loading a file twice.
543* Named Features:: Loading a library if it isn't already loaded. 543* Named Features:: Loading a library if it isn't already loaded.
544* Where Defined:: Finding which file defined a certain symbol. 544* Where Defined:: Finding which file defined a certain symbol.
545* Unloading:: How to "unload" a library that was loaded. 545* Unloading:: How to "unload" a library that was loaded.
546* Hooks for Loading:: Providing code to be run when 546* Hooks for Loading:: Providing code to be run when
547 particular libraries are loaded. 547 particular libraries are loaded.
548 548
549Byte Compilation 549Byte Compilation
550 550
@@ -554,7 +554,7 @@ Byte Compilation
554* Dynamic Loading:: Dynamic loading of individual functions. 554* Dynamic Loading:: Dynamic loading of individual functions.
555* Eval During Compile:: Code to be evaluated when you compile. 555* Eval During Compile:: Code to be evaluated when you compile.
556* Compiler Errors:: Handling compiler error messages. 556* Compiler Errors:: Handling compiler error messages.
557* Byte-Code Objects:: The data type used for byte-compiled functions. 557* Byte-Code Objects:: The data type used for byte-compiled functions.
558* Disassembly:: Disassembling byte-code; how to read byte-code. 558* Disassembly:: Disassembling byte-code; how to read byte-code.
559 559
560Advising Emacs Lisp Functions 560Advising Emacs Lisp Functions
@@ -583,7 +583,7 @@ Debugging Lisp Programs
583The Lisp Debugger 583The Lisp Debugger
584 584
585* Error Debugging:: Entering the debugger when an error happens. 585* Error Debugging:: Entering the debugger when an error happens.
586* Infinite Loops:: Stopping and debugging a program that doesn't exit. 586* Infinite Loops:: Stopping and debugging a program that doesn't exit.
587* Function Debugging:: Entering it when a certain function is called. 587* Function Debugging:: Entering it when a certain function is called.
588* Explicit Debug:: Entering it at a certain point in the program. 588* Explicit Debug:: Entering it at a certain point in the program.
589* Using Debugger:: What the debugger does; what you see while in it. 589* Using Debugger:: What the debugger does; what you see while in it.
@@ -593,24 +593,24 @@ The Lisp Debugger
593 593
594Edebug 594Edebug
595 595
596* Using Edebug:: Introduction to use of Edebug. 596* Using Edebug:: Introduction to use of Edebug.
597* Instrumenting:: You must instrument your code 597* Instrumenting:: You must instrument your code
598 in order to debug it with Edebug. 598 in order to debug it with Edebug.
599* Edebug Execution Modes:: Execution modes, stopping more or less often. 599* Edebug Execution Modes:: Execution modes, stopping more or less often.
600* Jumping:: Commands to jump to a specified place. 600* Jumping:: Commands to jump to a specified place.
601* Edebug Misc:: Miscellaneous commands. 601* Edebug Misc:: Miscellaneous commands.
602* Breaks:: Setting breakpoints to make the program stop. 602* Breaks:: Setting breakpoints to make the program stop.
603* Trapping Errors:: Trapping errors with Edebug. 603* Trapping Errors:: Trapping errors with Edebug.
604* Edebug Views:: Views inside and outside of Edebug. 604* Edebug Views:: Views inside and outside of Edebug.
605* Edebug Eval:: Evaluating expressions within Edebug. 605* Edebug Eval:: Evaluating expressions within Edebug.
606* Eval List:: Expressions whose values are displayed 606* Eval List:: Expressions whose values are displayed
607 each time you enter Edebug. 607 each time you enter Edebug.
608* Printing in Edebug:: Customization of printing. 608* Printing in Edebug:: Customization of printing.
609* Trace Buffer:: How to produce trace output in a buffer. 609* Trace Buffer:: How to produce trace output in a buffer.
610* Coverage Testing:: How to test evaluation coverage. 610* Coverage Testing:: How to test evaluation coverage.
611* The Outside Context:: Data that Edebug saves and restores. 611* The Outside Context:: Data that Edebug saves and restores.
612* Edebug and Macros:: Specifying how to handle macro calls. 612* Edebug and Macros:: Specifying how to handle macro calls.
613* Edebug Options:: Option variables for customizing Edebug. 613* Edebug Options:: Option variables for customizing Edebug.
614 614
615Breaks 615Breaks
616 616
@@ -627,8 +627,8 @@ The Outside Context
627Edebug and Macros 627Edebug and Macros
628 628
629* Instrumenting Macro Calls::The basic problem. 629* Instrumenting Macro Calls::The basic problem.
630* Specification List:: How to specify complex patterns of evaluation. 630* Specification List:: How to specify complex patterns of evaluation.
631* Backtracking:: What Edebug does when matching fails. 631* Backtracking:: What Edebug does when matching fails.
632* Specification Examples:: To help understand specifications. 632* Specification Examples:: To help understand specifications.
633 633
634Debugging Invalid Lisp Syntax 634Debugging Invalid Lisp Syntax
@@ -653,13 +653,13 @@ Minibuffers
653* Intro to Minibuffers:: Basic information about minibuffers. 653* Intro to Minibuffers:: Basic information about minibuffers.
654* Text from Minibuffer:: How to read a straight text string. 654* Text from Minibuffer:: How to read a straight text string.
655* Object from Minibuffer:: How to read a Lisp object or expression. 655* Object from Minibuffer:: How to read a Lisp object or expression.
656* Minibuffer History:: Recording previous minibuffer inputs 656* Minibuffer History:: Recording previous minibuffer inputs
657 so the user can reuse them. 657 so the user can reuse them.
658* Initial Input:: Specifying initial contents for the minibuffer. 658* Initial Input:: Specifying initial contents for the minibuffer.
659* Completion:: How to invoke and customize completion. 659* Completion:: How to invoke and customize completion.
660* Yes-or-No Queries:: Asking a question with a simple answer. 660* Yes-or-No Queries:: Asking a question with a simple answer.
661* Multiple Queries:: Asking a series of similar questions. 661* Multiple Queries:: Asking a series of similar questions.
662* Reading a Password:: Reading a password from the terminal. 662* Reading a Password:: Reading a password from the terminal.
663* Minibuffer Commands:: Commands used as key bindings in minibuffers. 663* Minibuffer Commands:: Commands used as key bindings in minibuffers.
664* Minibuffer Contents:: How such commands access the minibuffer text. 664* Minibuffer Contents:: How such commands access the minibuffer text.
665* Minibuffer Windows:: Operating on the special minibuffer windows. 665* Minibuffer Windows:: Operating on the special minibuffer windows.
@@ -687,7 +687,7 @@ Command Loop
687* Distinguish Interactive:: Making a command distinguish interactive calls. 687* Distinguish Interactive:: Making a command distinguish interactive calls.
688* Command Loop Info:: Variables set by the command loop for you to examine. 688* Command Loop Info:: Variables set by the command loop for you to examine.
689* Adjusting Point:: Adjustment of point after a command. 689* Adjusting Point:: Adjustment of point after a command.
690* Input Events:: What input looks like when you read it. 690* Input Events:: What input looks like when you read it.
691* Reading Input:: How to read input events from the keyboard or mouse. 691* Reading Input:: How to read input events from the keyboard or mouse.
692* Special Events:: Events processed immediately and individually. 692* Special Events:: Events processed immediately and individually.
693* Waiting:: Waiting for user input or elapsed time. 693* Waiting:: Waiting for user input or elapsed time.
@@ -721,7 +721,7 @@ Input Events
721* Event Examples:: Examples of the lists for mouse events. 721* Event Examples:: Examples of the lists for mouse events.
722* Classifying Events:: Finding the modifier keys in an event symbol. 722* Classifying Events:: Finding the modifier keys in an event symbol.
723 Event types. 723 Event types.
724* Accessing Mouse:: Functions to extract info from mouse events. 724* Accessing Mouse:: Functions to extract info from mouse events.
725* Accessing Scroll:: Functions to get info from scroll bar events. 725* Accessing Scroll:: Functions to get info from scroll bar events.
726* Strings of Events:: Special considerations for putting 726* Strings of Events:: Special considerations for putting
727 keyboard character events in a string. 727 keyboard character events in a string.
@@ -871,9 +871,9 @@ Files
871* Changing Files:: Renaming files, changing protection, etc. 871* Changing Files:: Renaming files, changing protection, etc.
872* File Names:: Decomposing and expanding file names. 872* File Names:: Decomposing and expanding file names.
873* Contents of Directories:: Getting a list of the files in a directory. 873* Contents of Directories:: Getting a list of the files in a directory.
874* Create/Delete Dirs:: Creating and Deleting Directories. 874* Create/Delete Dirs:: Creating and Deleting Directories.
875* Magic File Names:: Defining "magic" special handling 875* Magic File Names:: Defining "magic" special handling
876 for certain file names. 876 for certain file names.
877* Format Conversion:: Conversion to and from various file formats. 877* Format Conversion:: Conversion to and from various file formats.
878 878
879Visiting Files 879Visiting Files
@@ -885,7 +885,7 @@ Information about Files
885 885
886* Testing Accessibility:: Is a given file readable? Writable? 886* Testing Accessibility:: Is a given file readable? Writable?
887* Kinds of Files:: Is it a directory? A symbolic link? 887* Kinds of Files:: Is it a directory? A symbolic link?
888* Truenames:: Eliminating symbolic links from a file name. 888* Truenames:: Eliminating symbolic links from a file name.
889* File Attributes:: How large is it? Any other names? Etc. 889* File Attributes:: How large is it? Any other names? Etc.
890* Locating Files:: How to find a file in standard places. 890* Locating Files:: How to find a file in standard places.
891 891
@@ -955,8 +955,8 @@ Windows
955* Buffers and Windows:: Each window displays the contents of a buffer. 955* Buffers and Windows:: Each window displays the contents of a buffer.
956* Displaying Buffers:: Higher-level functions for displaying a buffer 956* Displaying Buffers:: Higher-level functions for displaying a buffer
957 and choosing a window for it. 957 and choosing a window for it.
958* Choosing Window:: How to choose a window for displaying a buffer. 958* Choosing Window:: How to choose a window for displaying a buffer.
959* Dedicated Windows:: How to avoid displaying another buffer in 959* Dedicated Windows:: How to avoid displaying another buffer in
960 a specific window. 960 a specific window.
961* Window Point:: Each window has its own location of point. 961* Window Point:: Each window has its own location of point.
962* Window Start and End:: Buffer positions indicating which text is 962* Window Start and End:: Buffer positions indicating which text is
@@ -976,37 +976,37 @@ Windows
976 976
977Frames 977Frames
978 978
979* Creating Frames:: Creating additional frames. 979* Creating Frames:: Creating additional frames.
980* Multiple Terminals:: Displaying on several different devices. 980* Multiple Terminals:: Displaying on several different devices.
981* Frame Parameters:: Controlling frame size, position, font, etc. 981* Frame Parameters:: Controlling frame size, position, font, etc.
982* Terminal Parameters:: Parameters common for all frames on terminal. 982* Terminal Parameters:: Parameters common for all frames on terminal.
983* Frame Titles:: Automatic updating of frame titles. 983* Frame Titles:: Automatic updating of frame titles.
984* Deleting Frames:: Frames last until explicitly deleted. 984* Deleting Frames:: Frames last until explicitly deleted.
985* Finding All Frames:: How to examine all existing frames. 985* Finding All Frames:: How to examine all existing frames.
986* Frames and Windows:: A frame contains windows; 986* Frames and Windows:: A frame contains windows;
987 display of text always works through windows. 987 display of text always works through windows.
988* Minibuffers and Frames:: How a frame finds the minibuffer to use. 988* Minibuffers and Frames:: How a frame finds the minibuffer to use.
989* Input Focus:: Specifying the selected frame. 989* Input Focus:: Specifying the selected frame.
990* Visibility of Frames:: Frames may be visible or invisible, or icons. 990* Visibility of Frames:: Frames may be visible or invisible, or icons.
991* Raising and Lowering:: Raising a frame makes it hide other windows; 991* Raising and Lowering:: Raising a frame makes it hide other windows;
992 lowering it makes the others hide it. 992 lowering it makes the others hide it.
993* Frame Configurations:: Saving the state of all frames. 993* Frame Configurations:: Saving the state of all frames.
994* Mouse Tracking:: Getting events that say when the mouse moves. 994* Mouse Tracking:: Getting events that say when the mouse moves.
995* Mouse Position:: Asking where the mouse is, or moving it. 995* Mouse Position:: Asking where the mouse is, or moving it.
996* Pop-Up Menus:: Displaying a menu for the user to select from. 996* Pop-Up Menus:: Displaying a menu for the user to select from.
997* Dialog Boxes:: Displaying a box to ask yes or no. 997* Dialog Boxes:: Displaying a box to ask yes or no.
998* Pointer Shape:: Specifying the shape of the mouse pointer. 998* Pointer Shape:: Specifying the shape of the mouse pointer.
999* Window System Selections::Transferring text to and from other X clients. 999* Window System Selections::Transferring text to and from other X clients.
1000* Drag and Drop:: Internals of Drag-and-Drop implementation. 1000* Drag and Drop:: Internals of Drag-and-Drop implementation.
1001* Color Names:: Getting the definitions of color names. 1001* Color Names:: Getting the definitions of color names.
1002* Text Terminal Colors:: Defining colors for text-only terminals. 1002* Text Terminal Colors:: Defining colors for text-only terminals.
1003* Resources:: Getting resource values from the server. 1003* Resources:: Getting resource values from the server.
1004* Display Feature Testing:: Determining the features of a terminal. 1004* Display Feature Testing:: Determining the features of a terminal.
1005 1005
1006Frame Parameters 1006Frame Parameters
1007 1007
1008* Parameter Access:: How to change a frame's parameters. 1008* Parameter Access:: How to change a frame's parameters.
1009* Initial Parameters:: Specifying frame parameters when you make a frame. 1009* Initial Parameters:: Specifying frame parameters when you make a frame.
1010* Window Frame Parameters:: List of frame parameters for window systems. 1010* Window Frame Parameters:: List of frame parameters for window systems.
1011* Size and Position:: Changing the size and position of a frame. 1011* Size and Position:: Changing the size and position of a frame.
1012* Geometry:: Parsing geometry specifications. 1012* Geometry:: Parsing geometry specifications.
@@ -1065,7 +1065,7 @@ Text
1065 later use. 1065 later use.
1066* Undo:: Undoing changes to the text of a buffer. 1066* Undo:: Undoing changes to the text of a buffer.
1067* Maintaining Undo:: How to enable and disable undo information. 1067* Maintaining Undo:: How to enable and disable undo information.
1068 How to control how much information is kept. 1068 How to control how much information is kept.
1069* Filling:: Functions for explicit filling. 1069* Filling:: Functions for explicit filling.
1070* Margins:: How to specify margins for filling commands. 1070* Margins:: How to specify margins for filling commands.
1071* Adaptive Fill:: Adaptive Fill mode chooses a fill prefix 1071* Adaptive Fill:: Adaptive Fill mode chooses a fill prefix
@@ -1091,7 +1091,7 @@ The Kill Ring
1091* Kill Functions:: Functions that kill text. 1091* Kill Functions:: Functions that kill text.
1092* Yanking:: How yanking is done. 1092* Yanking:: How yanking is done.
1093* Yank Commands:: Commands that access the kill ring. 1093* Yank Commands:: Commands that access the kill ring.
1094* Low-Level Kill Ring:: Functions and variables for kill ring access. 1094* Low-Level Kill Ring:: Functions and variables for kill ring access.
1095* Internals of Kill Ring:: Variables that hold kill ring data. 1095* Internals of Kill Ring:: Variables that hold kill ring data.
1096 1096
1097Indentation 1097Indentation
@@ -1106,9 +1106,9 @@ Indentation
1106Text Properties 1106Text Properties
1107 1107
1108* Examining Properties:: Looking at the properties of one character. 1108* Examining Properties:: Looking at the properties of one character.
1109* Changing Properties:: Setting the properties of a range of text. 1109* Changing Properties:: Setting the properties of a range of text.
1110* Property Search:: Searching for where a property changes value. 1110* Property Search:: Searching for where a property changes value.
1111* Special Properties:: Particular properties with special meanings. 1111* Special Properties:: Particular properties with special meanings.
1112* Format Properties:: Properties for representing formatting of text. 1112* Format Properties:: Properties for representing formatting of text.
1113* Sticky Properties:: How inserted text gets properties from 1113* Sticky Properties:: How inserted text gets properties from
1114 neighboring text. 1114 neighboring text.
@@ -1118,8 +1118,8 @@ Text Properties
1118 do something when you click on them. 1118 do something when you click on them.
1119* Fields:: The @code{field} property defines 1119* Fields:: The @code{field} property defines
1120 fields within the buffer. 1120 fields within the buffer.
1121* Not Intervals:: Why text properties do not use 1121* Not Intervals:: Why text properties do not use
1122 Lisp-visible text intervals. 1122 Lisp-visible text intervals.
1123 1123
1124Non-@acronym{ASCII} Characters 1124Non-@acronym{ASCII} Characters
1125 1125
@@ -1162,7 +1162,7 @@ Searching and Matching
1162* POSIX Regexps:: Searching POSIX-style for the longest match. 1162* POSIX Regexps:: Searching POSIX-style for the longest match.
1163* Match Data:: Finding out which part of the text matched, 1163* Match Data:: Finding out which part of the text matched,
1164 after a string or regexp search. 1164 after a string or regexp search.
1165* Search and Replace:: Commands that loop, searching and replacing. 1165* Search and Replace:: Commands that loop, searching and replacing.
1166* Standard Regexps:: Useful regexps for finding sentences, pages,... 1166* Standard Regexps:: Useful regexps for finding sentences, pages,...
1167 1167
1168Regular Expressions 1168Regular Expressions
@@ -1179,9 +1179,9 @@ Syntax of Regular Expressions
1179 1179
1180The Match Data 1180The Match Data
1181 1181
1182* Replacing Match:: Replacing a substring that was matched. 1182* Replacing Match:: Replacing a substring that was matched.
1183* Simple Match Data:: Accessing single items of match data, 1183* Simple Match Data:: Accessing single items of match data,
1184 such as where a particular subexpression started. 1184 such as where a particular subexpression started.
1185* Entire Match Data:: Accessing the entire match data at once, as a list. 1185* Entire Match Data:: Accessing the entire match data at once, as a list.
1186* Saving Match Data:: Saving and restoring the match data. 1186* Saving Match Data:: Saving and restoring the match data.
1187 1187
@@ -1191,7 +1191,7 @@ Syntax Tables
1191* Syntax Descriptors:: How characters are classified. 1191* Syntax Descriptors:: How characters are classified.
1192* Syntax Table Functions:: How to create, examine and alter syntax tables. 1192* Syntax Table Functions:: How to create, examine and alter syntax tables.
1193* Syntax Properties:: Overriding syntax with text properties. 1193* Syntax Properties:: Overriding syntax with text properties.
1194* Motion and Syntax:: Moving over characters with certain syntaxes. 1194* Motion and Syntax:: Moving over characters with certain syntaxes.
1195* Parsing Expressions:: Parsing balanced expressions 1195* Parsing Expressions:: Parsing balanced expressions
1196 using the syntax table. 1196 using the syntax table.
1197* Standard Syntax Tables:: Syntax tables used by various major modes. 1197* Standard Syntax Tables:: Syntax tables used by various major modes.
@@ -1280,10 +1280,10 @@ Emacs Display
1280* Invisible Text:: Hiding part of the buffer text. 1280* Invisible Text:: Hiding part of the buffer text.
1281* Selective Display:: Hiding part of the buffer text (the old way). 1281* Selective Display:: Hiding part of the buffer text (the old way).
1282* Temporary Displays:: Displays that go away automatically. 1282* Temporary Displays:: Displays that go away automatically.
1283* Overlays:: Use overlays to highlight parts of the buffer. 1283* Overlays:: Use overlays to highlight parts of the buffer.
1284* Width:: How wide a character or string is on the screen. 1284* Width:: How wide a character or string is on the screen.
1285* Line Height:: Controlling the height of lines. 1285* Line Height:: Controlling the height of lines.
1286* Faces:: A face defines a graphics style 1286* Faces:: A face defines a graphics style
1287 for text characters: font, colors, etc. 1287 for text characters: font, colors, etc.
1288* Fringes:: Controlling window fringes. 1288* Fringes:: Controlling window fringes.
1289* Scroll Bars:: Controlling vertical scroll bars. 1289* Scroll Bars:: Controlling vertical scroll bars.
@@ -1292,9 +1292,9 @@ Emacs Display
1292* Buttons:: Adding clickable buttons to Emacs buffers. 1292* Buttons:: Adding clickable buttons to Emacs buffers.
1293* Abstract Display:: Emacs' Widget for Object Collections. 1293* Abstract Display:: Emacs' Widget for Object Collections.
1294* Blinking:: How Emacs shows the matching open parenthesis. 1294* Blinking:: How Emacs shows the matching open parenthesis.
1295* Usual Display:: The usual conventions for displaying 1295* Usual Display:: The usual conventions for displaying
1296 nonprinting chars. 1296 nonprinting chars.
1297* Display Tables:: How to specify other conventions. 1297* Display Tables:: How to specify other conventions.
1298* Beeping:: Audible signal to the user. 1298* Beeping:: Audible signal to the user.
1299* Window Systems:: Which window system is being used. 1299* Window Systems:: Which window system is being used.
1300 1300
@@ -1316,7 +1316,7 @@ Overlays
1316 1316
1317* Managing Overlays:: Creating and moving overlays. 1317* Managing Overlays:: Creating and moving overlays.
1318* Overlay Properties:: How to read and set properties. 1318* Overlay Properties:: How to read and set properties.
1319 What properties do to the screen display. 1319 What properties do to the screen display.
1320* Finding Overlays:: Searching for overlays. 1320* Finding Overlays:: Searching for overlays.
1321 1321
1322Faces 1322Faces
@@ -1396,14 +1396,14 @@ Operating System Interface
1396* Getting Out:: How exiting works (permanent or temporary). 1396* Getting Out:: How exiting works (permanent or temporary).
1397* System Environment:: Distinguish the name and kind of system. 1397* System Environment:: Distinguish the name and kind of system.
1398* User Identification:: Finding the name and user id of the user. 1398* User Identification:: Finding the name and user id of the user.
1399* Time of Day:: Getting the current time. 1399* Time of Day:: Getting the current time.
1400* Time Conversion:: Converting a time from numeric form to 1400* Time Conversion:: Converting a time from numeric form to
1401 calendrical data and vice versa. 1401 calendrical data and vice versa.
1402* Time Parsing:: Converting a time from numeric form to text 1402* Time Parsing:: Converting a time from numeric form to text
1403 and vice versa. 1403 and vice versa.
1404* Processor Run Time:: Getting the run time used by Emacs. 1404* Processor Run Time:: Getting the run time used by Emacs.
1405* Time Calculations:: Adding, subtracting, comparing times, etc. 1405* Time Calculations:: Adding, subtracting, comparing times, etc.
1406* Timers:: Setting a timer to call a function at a 1406* Timers:: Setting a timer to call a function at a
1407 certain time. 1407 certain time.
1408* Idle Timers:: Setting a timer to call a function when Emacs has 1408* Idle Timers:: Setting a timer to call a function when Emacs has
1409 been idle for a certain length of time. 1409 been idle for a certain length of time.
@@ -1430,8 +1430,8 @@ Getting Out of Emacs
1430 1430
1431Terminal Input 1431Terminal Input
1432 1432
1433* Input Modes:: Options for how input is processed. 1433* Input Modes:: Options for how input is processed.
1434* Recording Input:: Saving histories of recent or all input events. 1434* Recording Input:: Saving histories of recent or all input events.
1435 1435
1436Tips and Conventions 1436Tips and Conventions
1437 1437
@@ -1441,7 +1441,7 @@ Tips and Conventions
1441* Compilation Tips:: Making compiled code run fast. 1441* Compilation Tips:: Making compiled code run fast.
1442* Warning Tips:: Turning off compiler warnings. 1442* Warning Tips:: Turning off compiler warnings.
1443* Documentation Tips:: Writing readable documentation strings. 1443* Documentation Tips:: Writing readable documentation strings.
1444* Comment Tips:: Conventions for writing comments. 1444* Comment Tips:: Conventions for writing comments.
1445* Library Headers:: Standard headers for library packages. 1445* Library Headers:: Standard headers for library packages.
1446 1446
1447GNU Emacs Internals 1447GNU Emacs Internals
diff --git a/doc/lispref/vol2.texi b/doc/lispref/vol2.texi
index ad4c74611a8..6de6ac7182b 100644
--- a/doc/lispref/vol2.texi
+++ b/doc/lispref/vol2.texi
@@ -163,7 +163,7 @@ Reference Manual, corresponding to GNU Emacs version @value{EMACSVER}.
163 files are made. 163 files are made.
164* Buffers:: Creating and using buffer objects. 164* Buffers:: Creating and using buffer objects.
165* Windows:: Manipulating windows and displaying buffers. 165* Windows:: Manipulating windows and displaying buffers.
166* Frames:: Making multiple system-level windows. 166* Frames:: Making multiple system-level windows.
167* Positions:: Buffer positions and motion functions. 167* Positions:: Buffer positions and motion functions.
168* Markers:: Markers represent positions and update 168* Markers:: Markers represent positions and update
169 automatically when the text is changed. 169 automatically when the text is changed.
@@ -175,7 +175,7 @@ Reference Manual, corresponding to GNU Emacs version @value{EMACSVER}.
175* Abbrevs:: How Abbrev mode works, and its data structures. 175* Abbrevs:: How Abbrev mode works, and its data structures.
176 176
177* Processes:: Running and communicating with subprocesses. 177* Processes:: Running and communicating with subprocesses.
178* Display:: Features for controlling the screen display. 178* Display:: Features for controlling the screen display.
179* System Interface:: Getting the user id, system type, environment 179* System Interface:: Getting the user id, system type, environment
180 variables, and other such things. 180 variables, and other such things.
181 181
@@ -310,10 +310,10 @@ Editing Types
310Numbers 310Numbers
311 311
312* Integer Basics:: Representation and range of integers. 312* Integer Basics:: Representation and range of integers.
313* Float Basics:: Representation and range of floating point. 313* Float Basics:: Representation and range of floating point.
314* Predicates on Numbers:: Testing for numbers. 314* Predicates on Numbers:: Testing for numbers.
315* Comparison of Numbers:: Equality and inequality predicates. 315* Comparison of Numbers:: Equality and inequality predicates.
316* Numeric Conversions:: Converting float to integer and vice versa. 316* Numeric Conversions:: Converting float to integer and vice versa.
317* Arithmetic Operations:: How to add, subtract, multiply and divide. 317* Arithmetic Operations:: How to add, subtract, multiply and divide.
318* Rounding Operations:: Explicitly rounding floating point numbers. 318* Rounding Operations:: Explicitly rounding floating point numbers.
319* Bitwise Operations:: Logical and, or, not, shifting. 319* Bitwise Operations:: Logical and, or, not, shifting.
@@ -330,7 +330,7 @@ Strings and Characters
330* String Conversion:: Converting to and from characters and strings. 330* String Conversion:: Converting to and from characters and strings.
331* Formatting Strings:: @code{format}: Emacs's analogue of @code{printf}. 331* Formatting Strings:: @code{format}: Emacs's analogue of @code{printf}.
332* Case Conversion:: Case conversion functions. 332* Case Conversion:: Case conversion functions.
333* Case Tables:: Customizing case conversion. 333* Case Tables:: Customizing case conversion.
334 334
335Lists 335Lists
336 336
@@ -398,7 +398,7 @@ Kinds of Forms
398* Symbol Forms:: Symbols evaluate as variables. 398* Symbol Forms:: Symbols evaluate as variables.
399* Classifying Lists:: How to distinguish various sorts of list forms. 399* Classifying Lists:: How to distinguish various sorts of list forms.
400* Function Indirection:: When a symbol appears as the car of a list, 400* Function Indirection:: When a symbol appears as the car of a list,
401 we find the real function via the symbol. 401 we find the real function via the symbol.
402* Function Forms:: Forms that call functions. 402* Function Forms:: Forms that call functions.
403* Macro Forms:: Forms that call macros. 403* Macro Forms:: Forms that call macros.
404* Special Forms:: "Special forms" are idiosyncratic primitives, 404* Special Forms:: "Special forms" are idiosyncratic primitives,
@@ -479,9 +479,9 @@ Functions
479* Function Cells:: Accessing or setting the function definition 479* Function Cells:: Accessing or setting the function definition
480 of a symbol. 480 of a symbol.
481* Obsolete Functions:: Declaring functions obsolete. 481* Obsolete Functions:: Declaring functions obsolete.
482* Inline Functions:: Defining functions that the compiler 482* Inline Functions:: Defining functions that the compiler
483 will open code. 483 will open code.
484* Declaring Functions:: Telling the compiler that a function is defined. 484* Declaring Functions:: Telling the compiler that a function is defined.
485* Function Safety:: Determining whether a function is safe to call. 485* Function Safety:: Determining whether a function is safe to call.
486* Related Topics:: Cross-references to specific Lisp primitives 486* Related Topics:: Cross-references to specific Lisp primitives
487 that have a special bearing on how 487 that have a special bearing on how
@@ -541,9 +541,9 @@ Loading
541* Repeated Loading:: Precautions about loading a file twice. 541* Repeated Loading:: Precautions about loading a file twice.
542* Named Features:: Loading a library if it isn't already loaded. 542* Named Features:: Loading a library if it isn't already loaded.
543* Where Defined:: Finding which file defined a certain symbol. 543* Where Defined:: Finding which file defined a certain symbol.
544* Unloading:: How to "unload" a library that was loaded. 544* Unloading:: How to "unload" a library that was loaded.
545* Hooks for Loading:: Providing code to be run when 545* Hooks for Loading:: Providing code to be run when
546 particular libraries are loaded. 546 particular libraries are loaded.
547 547
548Byte Compilation 548Byte Compilation
549 549
@@ -553,7 +553,7 @@ Byte Compilation
553* Dynamic Loading:: Dynamic loading of individual functions. 553* Dynamic Loading:: Dynamic loading of individual functions.
554* Eval During Compile:: Code to be evaluated when you compile. 554* Eval During Compile:: Code to be evaluated when you compile.
555* Compiler Errors:: Handling compiler error messages. 555* Compiler Errors:: Handling compiler error messages.
556* Byte-Code Objects:: The data type used for byte-compiled functions. 556* Byte-Code Objects:: The data type used for byte-compiled functions.
557* Disassembly:: Disassembling byte-code; how to read byte-code. 557* Disassembly:: Disassembling byte-code; how to read byte-code.
558 558
559Advising Emacs Lisp Functions 559Advising Emacs Lisp Functions
@@ -582,7 +582,7 @@ Debugging Lisp Programs
582The Lisp Debugger 582The Lisp Debugger
583 583
584* Error Debugging:: Entering the debugger when an error happens. 584* Error Debugging:: Entering the debugger when an error happens.
585* Infinite Loops:: Stopping and debugging a program that doesn't exit. 585* Infinite Loops:: Stopping and debugging a program that doesn't exit.
586* Function Debugging:: Entering it when a certain function is called. 586* Function Debugging:: Entering it when a certain function is called.
587* Explicit Debug:: Entering it at a certain point in the program. 587* Explicit Debug:: Entering it at a certain point in the program.
588* Using Debugger:: What the debugger does; what you see while in it. 588* Using Debugger:: What the debugger does; what you see while in it.
@@ -592,24 +592,24 @@ The Lisp Debugger
592 592
593Edebug 593Edebug
594 594
595* Using Edebug:: Introduction to use of Edebug. 595* Using Edebug:: Introduction to use of Edebug.
596* Instrumenting:: You must instrument your code 596* Instrumenting:: You must instrument your code
597 in order to debug it with Edebug. 597 in order to debug it with Edebug.
598* Edebug Execution Modes:: Execution modes, stopping more or less often. 598* Edebug Execution Modes:: Execution modes, stopping more or less often.
599* Jumping:: Commands to jump to a specified place. 599* Jumping:: Commands to jump to a specified place.
600* Edebug Misc:: Miscellaneous commands. 600* Edebug Misc:: Miscellaneous commands.
601* Breaks:: Setting breakpoints to make the program stop. 601* Breaks:: Setting breakpoints to make the program stop.
602* Trapping Errors:: Trapping errors with Edebug. 602* Trapping Errors:: Trapping errors with Edebug.
603* Edebug Views:: Views inside and outside of Edebug. 603* Edebug Views:: Views inside and outside of Edebug.
604* Edebug Eval:: Evaluating expressions within Edebug. 604* Edebug Eval:: Evaluating expressions within Edebug.
605* Eval List:: Expressions whose values are displayed 605* Eval List:: Expressions whose values are displayed
606 each time you enter Edebug. 606 each time you enter Edebug.
607* Printing in Edebug:: Customization of printing. 607* Printing in Edebug:: Customization of printing.
608* Trace Buffer:: How to produce trace output in a buffer. 608* Trace Buffer:: How to produce trace output in a buffer.
609* Coverage Testing:: How to test evaluation coverage. 609* Coverage Testing:: How to test evaluation coverage.
610* The Outside Context:: Data that Edebug saves and restores. 610* The Outside Context:: Data that Edebug saves and restores.
611* Edebug and Macros:: Specifying how to handle macro calls. 611* Edebug and Macros:: Specifying how to handle macro calls.
612* Edebug Options:: Option variables for customizing Edebug. 612* Edebug Options:: Option variables for customizing Edebug.
613 613
614Breaks 614Breaks
615 615
@@ -626,8 +626,8 @@ The Outside Context
626Edebug and Macros 626Edebug and Macros
627 627
628* Instrumenting Macro Calls::The basic problem. 628* Instrumenting Macro Calls::The basic problem.
629* Specification List:: How to specify complex patterns of evaluation. 629* Specification List:: How to specify complex patterns of evaluation.
630* Backtracking:: What Edebug does when matching fails. 630* Backtracking:: What Edebug does when matching fails.
631* Specification Examples:: To help understand specifications. 631* Specification Examples:: To help understand specifications.
632 632
633Debugging Invalid Lisp Syntax 633Debugging Invalid Lisp Syntax
@@ -652,13 +652,13 @@ Minibuffers
652* Intro to Minibuffers:: Basic information about minibuffers. 652* Intro to Minibuffers:: Basic information about minibuffers.
653* Text from Minibuffer:: How to read a straight text string. 653* Text from Minibuffer:: How to read a straight text string.
654* Object from Minibuffer:: How to read a Lisp object or expression. 654* Object from Minibuffer:: How to read a Lisp object or expression.
655* Minibuffer History:: Recording previous minibuffer inputs 655* Minibuffer History:: Recording previous minibuffer inputs
656 so the user can reuse them. 656 so the user can reuse them.
657* Initial Input:: Specifying initial contents for the minibuffer. 657* Initial Input:: Specifying initial contents for the minibuffer.
658* Completion:: How to invoke and customize completion. 658* Completion:: How to invoke and customize completion.
659* Yes-or-No Queries:: Asking a question with a simple answer. 659* Yes-or-No Queries:: Asking a question with a simple answer.
660* Multiple Queries:: Asking a series of similar questions. 660* Multiple Queries:: Asking a series of similar questions.
661* Reading a Password:: Reading a password from the terminal. 661* Reading a Password:: Reading a password from the terminal.
662* Minibuffer Commands:: Commands used as key bindings in minibuffers. 662* Minibuffer Commands:: Commands used as key bindings in minibuffers.
663* Minibuffer Contents:: How such commands access the minibuffer text. 663* Minibuffer Contents:: How such commands access the minibuffer text.
664* Minibuffer Windows:: Operating on the special minibuffer windows. 664* Minibuffer Windows:: Operating on the special minibuffer windows.
@@ -686,7 +686,7 @@ Command Loop
686* Distinguish Interactive:: Making a command distinguish interactive calls. 686* Distinguish Interactive:: Making a command distinguish interactive calls.
687* Command Loop Info:: Variables set by the command loop for you to examine. 687* Command Loop Info:: Variables set by the command loop for you to examine.
688* Adjusting Point:: Adjustment of point after a command. 688* Adjusting Point:: Adjustment of point after a command.
689* Input Events:: What input looks like when you read it. 689* Input Events:: What input looks like when you read it.
690* Reading Input:: How to read input events from the keyboard or mouse. 690* Reading Input:: How to read input events from the keyboard or mouse.
691* Special Events:: Events processed immediately and individually. 691* Special Events:: Events processed immediately and individually.
692* Waiting:: Waiting for user input or elapsed time. 692* Waiting:: Waiting for user input or elapsed time.
@@ -720,7 +720,7 @@ Input Events
720* Event Examples:: Examples of the lists for mouse events. 720* Event Examples:: Examples of the lists for mouse events.
721* Classifying Events:: Finding the modifier keys in an event symbol. 721* Classifying Events:: Finding the modifier keys in an event symbol.
722 Event types. 722 Event types.
723* Accessing Mouse:: Functions to extract info from mouse events. 723* Accessing Mouse:: Functions to extract info from mouse events.
724* Accessing Scroll:: Functions to get info from scroll bar events. 724* Accessing Scroll:: Functions to get info from scroll bar events.
725* Strings of Events:: Special considerations for putting 725* Strings of Events:: Special considerations for putting
726 keyboard character events in a string. 726 keyboard character events in a string.
@@ -870,9 +870,9 @@ Files
870* Changing Files:: Renaming files, changing protection, etc. 870* Changing Files:: Renaming files, changing protection, etc.
871* File Names:: Decomposing and expanding file names. 871* File Names:: Decomposing and expanding file names.
872* Contents of Directories:: Getting a list of the files in a directory. 872* Contents of Directories:: Getting a list of the files in a directory.
873* Create/Delete Dirs:: Creating and Deleting Directories. 873* Create/Delete Dirs:: Creating and Deleting Directories.
874* Magic File Names:: Defining "magic" special handling 874* Magic File Names:: Defining "magic" special handling
875 for certain file names. 875 for certain file names.
876* Format Conversion:: Conversion to and from various file formats. 876* Format Conversion:: Conversion to and from various file formats.
877 877
878Visiting Files 878Visiting Files
@@ -884,7 +884,7 @@ Information about Files
884 884
885* Testing Accessibility:: Is a given file readable? Writable? 885* Testing Accessibility:: Is a given file readable? Writable?
886* Kinds of Files:: Is it a directory? A symbolic link? 886* Kinds of Files:: Is it a directory? A symbolic link?
887* Truenames:: Eliminating symbolic links from a file name. 887* Truenames:: Eliminating symbolic links from a file name.
888* File Attributes:: How large is it? Any other names? Etc. 888* File Attributes:: How large is it? Any other names? Etc.
889* Locating Files:: How to find a file in standard places. 889* Locating Files:: How to find a file in standard places.
890 890
@@ -954,8 +954,8 @@ Windows
954* Buffers and Windows:: Each window displays the contents of a buffer. 954* Buffers and Windows:: Each window displays the contents of a buffer.
955* Displaying Buffers:: Higher-level functions for displaying a buffer 955* Displaying Buffers:: Higher-level functions for displaying a buffer
956 and choosing a window for it. 956 and choosing a window for it.
957* Choosing Window:: How to choose a window for displaying a buffer. 957* Choosing Window:: How to choose a window for displaying a buffer.
958* Dedicated Windows:: How to avoid displaying another buffer in 958* Dedicated Windows:: How to avoid displaying another buffer in
959 a specific window. 959 a specific window.
960* Window Point:: Each window has its own location of point. 960* Window Point:: Each window has its own location of point.
961* Window Start and End:: Buffer positions indicating which text is 961* Window Start and End:: Buffer positions indicating which text is
@@ -975,37 +975,37 @@ Windows
975 975
976Frames 976Frames
977 977
978* Creating Frames:: Creating additional frames. 978* Creating Frames:: Creating additional frames.
979* Multiple Terminals:: Displaying on several different devices. 979* Multiple Terminals:: Displaying on several different devices.
980* Frame Parameters:: Controlling frame size, position, font, etc. 980* Frame Parameters:: Controlling frame size, position, font, etc.
981* Terminal Parameters:: Parameters common for all frames on terminal. 981* Terminal Parameters:: Parameters common for all frames on terminal.
982* Frame Titles:: Automatic updating of frame titles. 982* Frame Titles:: Automatic updating of frame titles.
983* Deleting Frames:: Frames last until explicitly deleted. 983* Deleting Frames:: Frames last until explicitly deleted.
984* Finding All Frames:: How to examine all existing frames. 984* Finding All Frames:: How to examine all existing frames.
985* Frames and Windows:: A frame contains windows; 985* Frames and Windows:: A frame contains windows;
986 display of text always works through windows. 986 display of text always works through windows.
987* Minibuffers and Frames:: How a frame finds the minibuffer to use. 987* Minibuffers and Frames:: How a frame finds the minibuffer to use.
988* Input Focus:: Specifying the selected frame. 988* Input Focus:: Specifying the selected frame.
989* Visibility of Frames:: Frames may be visible or invisible, or icons. 989* Visibility of Frames:: Frames may be visible or invisible, or icons.
990* Raising and Lowering:: Raising a frame makes it hide other windows; 990* Raising and Lowering:: Raising a frame makes it hide other windows;
991 lowering it makes the others hide it. 991 lowering it makes the others hide it.
992* Frame Configurations:: Saving the state of all frames. 992* Frame Configurations:: Saving the state of all frames.
993* Mouse Tracking:: Getting events that say when the mouse moves. 993* Mouse Tracking:: Getting events that say when the mouse moves.
994* Mouse Position:: Asking where the mouse is, or moving it. 994* Mouse Position:: Asking where the mouse is, or moving it.
995* Pop-Up Menus:: Displaying a menu for the user to select from. 995* Pop-Up Menus:: Displaying a menu for the user to select from.
996* Dialog Boxes:: Displaying a box to ask yes or no. 996* Dialog Boxes:: Displaying a box to ask yes or no.
997* Pointer Shape:: Specifying the shape of the mouse pointer. 997* Pointer Shape:: Specifying the shape of the mouse pointer.
998* Window System Selections::Transferring text to and from other X clients. 998* Window System Selections::Transferring text to and from other X clients.
999* Drag and Drop:: Internals of Drag-and-Drop implementation. 999* Drag and Drop:: Internals of Drag-and-Drop implementation.
1000* Color Names:: Getting the definitions of color names. 1000* Color Names:: Getting the definitions of color names.
1001* Text Terminal Colors:: Defining colors for text-only terminals. 1001* Text Terminal Colors:: Defining colors for text-only terminals.
1002* Resources:: Getting resource values from the server. 1002* Resources:: Getting resource values from the server.
1003* Display Feature Testing:: Determining the features of a terminal. 1003* Display Feature Testing:: Determining the features of a terminal.
1004 1004
1005Frame Parameters 1005Frame Parameters
1006 1006
1007* Parameter Access:: How to change a frame's parameters. 1007* Parameter Access:: How to change a frame's parameters.
1008* Initial Parameters:: Specifying frame parameters when you make a frame. 1008* Initial Parameters:: Specifying frame parameters when you make a frame.
1009* Window Frame Parameters:: List of frame parameters for window systems. 1009* Window Frame Parameters:: List of frame parameters for window systems.
1010* Size and Position:: Changing the size and position of a frame. 1010* Size and Position:: Changing the size and position of a frame.
1011* Geometry:: Parsing geometry specifications. 1011* Geometry:: Parsing geometry specifications.
@@ -1064,7 +1064,7 @@ Text
1064 later use. 1064 later use.
1065* Undo:: Undoing changes to the text of a buffer. 1065* Undo:: Undoing changes to the text of a buffer.
1066* Maintaining Undo:: How to enable and disable undo information. 1066* Maintaining Undo:: How to enable and disable undo information.
1067 How to control how much information is kept. 1067 How to control how much information is kept.
1068* Filling:: Functions for explicit filling. 1068* Filling:: Functions for explicit filling.
1069* Margins:: How to specify margins for filling commands. 1069* Margins:: How to specify margins for filling commands.
1070* Adaptive Fill:: Adaptive Fill mode chooses a fill prefix 1070* Adaptive Fill:: Adaptive Fill mode chooses a fill prefix
@@ -1090,7 +1090,7 @@ The Kill Ring
1090* Kill Functions:: Functions that kill text. 1090* Kill Functions:: Functions that kill text.
1091* Yanking:: How yanking is done. 1091* Yanking:: How yanking is done.
1092* Yank Commands:: Commands that access the kill ring. 1092* Yank Commands:: Commands that access the kill ring.
1093* Low-Level Kill Ring:: Functions and variables for kill ring access. 1093* Low-Level Kill Ring:: Functions and variables for kill ring access.
1094* Internals of Kill Ring:: Variables that hold kill ring data. 1094* Internals of Kill Ring:: Variables that hold kill ring data.
1095 1095
1096Indentation 1096Indentation
@@ -1105,9 +1105,9 @@ Indentation
1105Text Properties 1105Text Properties
1106 1106
1107* Examining Properties:: Looking at the properties of one character. 1107* Examining Properties:: Looking at the properties of one character.
1108* Changing Properties:: Setting the properties of a range of text. 1108* Changing Properties:: Setting the properties of a range of text.
1109* Property Search:: Searching for where a property changes value. 1109* Property Search:: Searching for where a property changes value.
1110* Special Properties:: Particular properties with special meanings. 1110* Special Properties:: Particular properties with special meanings.
1111* Format Properties:: Properties for representing formatting of text. 1111* Format Properties:: Properties for representing formatting of text.
1112* Sticky Properties:: How inserted text gets properties from 1112* Sticky Properties:: How inserted text gets properties from
1113 neighboring text. 1113 neighboring text.
@@ -1117,8 +1117,8 @@ Text Properties
1117 do something when you click on them. 1117 do something when you click on them.
1118* Fields:: The @code{field} property defines 1118* Fields:: The @code{field} property defines
1119 fields within the buffer. 1119 fields within the buffer.
1120* Not Intervals:: Why text properties do not use 1120* Not Intervals:: Why text properties do not use
1121 Lisp-visible text intervals. 1121 Lisp-visible text intervals.
1122 1122
1123Non-@acronym{ASCII} Characters 1123Non-@acronym{ASCII} Characters
1124 1124
@@ -1161,7 +1161,7 @@ Searching and Matching
1161* POSIX Regexps:: Searching POSIX-style for the longest match. 1161* POSIX Regexps:: Searching POSIX-style for the longest match.
1162* Match Data:: Finding out which part of the text matched, 1162* Match Data:: Finding out which part of the text matched,
1163 after a string or regexp search. 1163 after a string or regexp search.
1164* Search and Replace:: Commands that loop, searching and replacing. 1164* Search and Replace:: Commands that loop, searching and replacing.
1165* Standard Regexps:: Useful regexps for finding sentences, pages,... 1165* Standard Regexps:: Useful regexps for finding sentences, pages,...
1166 1166
1167Regular Expressions 1167Regular Expressions
@@ -1178,9 +1178,9 @@ Syntax of Regular Expressions
1178 1178
1179The Match Data 1179The Match Data
1180 1180
1181* Replacing Match:: Replacing a substring that was matched. 1181* Replacing Match:: Replacing a substring that was matched.
1182* Simple Match Data:: Accessing single items of match data, 1182* Simple Match Data:: Accessing single items of match data,
1183 such as where a particular subexpression started. 1183 such as where a particular subexpression started.
1184* Entire Match Data:: Accessing the entire match data at once, as a list. 1184* Entire Match Data:: Accessing the entire match data at once, as a list.
1185* Saving Match Data:: Saving and restoring the match data. 1185* Saving Match Data:: Saving and restoring the match data.
1186 1186
@@ -1190,7 +1190,7 @@ Syntax Tables
1190* Syntax Descriptors:: How characters are classified. 1190* Syntax Descriptors:: How characters are classified.
1191* Syntax Table Functions:: How to create, examine and alter syntax tables. 1191* Syntax Table Functions:: How to create, examine and alter syntax tables.
1192* Syntax Properties:: Overriding syntax with text properties. 1192* Syntax Properties:: Overriding syntax with text properties.
1193* Motion and Syntax:: Moving over characters with certain syntaxes. 1193* Motion and Syntax:: Moving over characters with certain syntaxes.
1194* Parsing Expressions:: Parsing balanced expressions 1194* Parsing Expressions:: Parsing balanced expressions
1195 using the syntax table. 1195 using the syntax table.
1196* Standard Syntax Tables:: Syntax tables used by various major modes. 1196* Standard Syntax Tables:: Syntax tables used by various major modes.
@@ -1279,10 +1279,10 @@ Emacs Display
1279* Invisible Text:: Hiding part of the buffer text. 1279* Invisible Text:: Hiding part of the buffer text.
1280* Selective Display:: Hiding part of the buffer text (the old way). 1280* Selective Display:: Hiding part of the buffer text (the old way).
1281* Temporary Displays:: Displays that go away automatically. 1281* Temporary Displays:: Displays that go away automatically.
1282* Overlays:: Use overlays to highlight parts of the buffer. 1282* Overlays:: Use overlays to highlight parts of the buffer.
1283* Width:: How wide a character or string is on the screen. 1283* Width:: How wide a character or string is on the screen.
1284* Line Height:: Controlling the height of lines. 1284* Line Height:: Controlling the height of lines.
1285* Faces:: A face defines a graphics style 1285* Faces:: A face defines a graphics style
1286 for text characters: font, colors, etc. 1286 for text characters: font, colors, etc.
1287* Fringes:: Controlling window fringes. 1287* Fringes:: Controlling window fringes.
1288* Scroll Bars:: Controlling vertical scroll bars. 1288* Scroll Bars:: Controlling vertical scroll bars.
@@ -1291,9 +1291,9 @@ Emacs Display
1291* Buttons:: Adding clickable buttons to Emacs buffers. 1291* Buttons:: Adding clickable buttons to Emacs buffers.
1292* Abstract Display:: Emacs' Widget for Object Collections. 1292* Abstract Display:: Emacs' Widget for Object Collections.
1293* Blinking:: How Emacs shows the matching open parenthesis. 1293* Blinking:: How Emacs shows the matching open parenthesis.
1294* Usual Display:: The usual conventions for displaying 1294* Usual Display:: The usual conventions for displaying
1295 nonprinting chars. 1295 nonprinting chars.
1296* Display Tables:: How to specify other conventions. 1296* Display Tables:: How to specify other conventions.
1297* Beeping:: Audible signal to the user. 1297* Beeping:: Audible signal to the user.
1298* Window Systems:: Which window system is being used. 1298* Window Systems:: Which window system is being used.
1299 1299
@@ -1315,7 +1315,7 @@ Overlays
1315 1315
1316* Managing Overlays:: Creating and moving overlays. 1316* Managing Overlays:: Creating and moving overlays.
1317* Overlay Properties:: How to read and set properties. 1317* Overlay Properties:: How to read and set properties.
1318 What properties do to the screen display. 1318 What properties do to the screen display.
1319* Finding Overlays:: Searching for overlays. 1319* Finding Overlays:: Searching for overlays.
1320 1320
1321Faces 1321Faces
@@ -1395,14 +1395,14 @@ Operating System Interface
1395* Getting Out:: How exiting works (permanent or temporary). 1395* Getting Out:: How exiting works (permanent or temporary).
1396* System Environment:: Distinguish the name and kind of system. 1396* System Environment:: Distinguish the name and kind of system.
1397* User Identification:: Finding the name and user id of the user. 1397* User Identification:: Finding the name and user id of the user.
1398* Time of Day:: Getting the current time. 1398* Time of Day:: Getting the current time.
1399* Time Conversion:: Converting a time from numeric form to 1399* Time Conversion:: Converting a time from numeric form to
1400 calendrical data and vice versa. 1400 calendrical data and vice versa.
1401* Time Parsing:: Converting a time from numeric form to text 1401* Time Parsing:: Converting a time from numeric form to text
1402 and vice versa. 1402 and vice versa.
1403* Processor Run Time:: Getting the run time used by Emacs. 1403* Processor Run Time:: Getting the run time used by Emacs.
1404* Time Calculations:: Adding, subtracting, comparing times, etc. 1404* Time Calculations:: Adding, subtracting, comparing times, etc.
1405* Timers:: Setting a timer to call a function at a 1405* Timers:: Setting a timer to call a function at a
1406 certain time. 1406 certain time.
1407* Idle Timers:: Setting a timer to call a function when Emacs has 1407* Idle Timers:: Setting a timer to call a function when Emacs has
1408 been idle for a certain length of time. 1408 been idle for a certain length of time.
@@ -1429,8 +1429,8 @@ Getting Out of Emacs
1429 1429
1430Terminal Input 1430Terminal Input
1431 1431
1432* Input Modes:: Options for how input is processed. 1432* Input Modes:: Options for how input is processed.
1433* Recording Input:: Saving histories of recent or all input events. 1433* Recording Input:: Saving histories of recent or all input events.
1434 1434
1435Tips and Conventions 1435Tips and Conventions
1436 1436
@@ -1440,7 +1440,7 @@ Tips and Conventions
1440* Compilation Tips:: Making compiled code run fast. 1440* Compilation Tips:: Making compiled code run fast.
1441* Warning Tips:: Turning off compiler warnings. 1441* Warning Tips:: Turning off compiler warnings.
1442* Documentation Tips:: Writing readable documentation strings. 1442* Documentation Tips:: Writing readable documentation strings.
1443* Comment Tips:: Conventions for writing comments. 1443* Comment Tips:: Conventions for writing comments.
1444* Library Headers:: Standard headers for library packages. 1444* Library Headers:: Standard headers for library packages.
1445 1445
1446GNU Emacs Internals 1446GNU Emacs Internals
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index de7ebbc405e..704f3ad3321 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -22,8 +22,8 @@ windows.
22* Buffers and Windows:: Each window displays the contents of a buffer. 22* Buffers and Windows:: Each window displays the contents of a buffer.
23* Displaying Buffers:: Higher-level functions for displaying a buffer 23* Displaying Buffers:: Higher-level functions for displaying a buffer
24 and choosing a window for it. 24 and choosing a window for it.
25* Choosing Window:: How to choose a window for displaying a buffer. 25* Choosing Window:: How to choose a window for displaying a buffer.
26* Dedicated Windows:: How to avoid displaying another buffer in 26* Dedicated Windows:: How to avoid displaying another buffer in
27 a specific window. 27 a specific window.
28* Window Point:: Each window has its own location of point. 28* Window Point:: Each window has its own location of point.
29* Window Start and End:: Buffer positions indicating which text is 29* Window Start and End:: Buffer positions indicating which text is
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog
index e24363285f5..2f8a89d4b3c 100644
--- a/doc/misc/ChangeLog
+++ b/doc/misc/ChangeLog
@@ -16,6 +16,31 @@
16 * dbus.texi (Receiving Method Calls): Add optional argument 16 * dbus.texi (Receiving Method Calls): Add optional argument
17 EMITS-SIGNAL to `dbus-register-property'. 17 EMITS-SIGNAL to `dbus-register-property'.
18 18
192010-06-27 Alex Schroeder <alex@gnu.org>
20
21 * nxml-mode.texi (Commands for locating a schema): Fix typo.
22
232010-06-24 Glenn Morris <rgm@gnu.org>
24
25 * ada-mode.texi, auth.texi, autotype.texi, calc.texi, cc-mode.texi:
26 * dired-x.texi, ebrowse.texi, ede.texi, edt.texi, eieio.texi:
27 * emacs-mime.texi, epa.texi, erc.texi, eshell.texi, eudc.texi:
28 * flymake.texi, gnus.texi, info.texi, mairix-el.texi, message.texi:
29 * newsticker.texi, org.texi, pgg.texi, rcirc.texi, reftex.texi:
30 * remember.texi, sasl.texi, semantic.texi, ses.texi, smtpmail.texi:
31 * speedbar.texi, tramp.texi, url.texi, viper.texi, widget.texi:
32 * woman.texi: Start direntry descriptions in column 32, per Texinfo
33 convention. Make them end with a period.
34
352010-06-23 Glenn Morris <rgm@gnu.org>
36
37 * autotype.texi, cl.texi, dired-x.texi, ebrowse.texi, ede.texi:
38 * eieio.texi, epa.texi, faq.texi, flymake.texi, forms.texi:
39 * gnus-faq.texi, idlwave.texi, mh-e.texi, nxml-mode.texi, org.texi:
40 * pcl-cvs.texi, pgg.texi, reftex.texi, sasl.texi, sc.texi,
41 * sem-user.texi, semantic.texi, sieve.texi, smtpmail.texi,
42 * speedbar.texi, vip.texi, viper.texi, widget.texi: Untabify.
43
192010-06-10 Glenn Morris <rgm@gnu.org> 442010-06-10 Glenn Morris <rgm@gnu.org>
20 45
21 * idlwave.texi (Load-Path Shadows): 46 * idlwave.texi (Load-Path Shadows):
@@ -6469,10 +6494,6 @@
6469 (INFO_TARGETS): Add ../info/cc-mode. 6494 (INFO_TARGETS): Add ../info/cc-mode.
6470 (DVI_TARGETS): Add cc-mode.dvi. 6495 (DVI_TARGETS): Add cc-mode.dvi.
6471 6496
64721996-05-25 Karl Heuer <kwzh@gnu.ai.mit.edu>
6473
6474 * Version 19.31 released.
6475
64761995-11-24 Richard Stallman <rms@mole.gnu.ai.mit.edu> 64971995-11-24 Richard Stallman <rms@mole.gnu.ai.mit.edu>
6477 6498
6478 * Version 19.30 released. 6499 * Version 19.30 released.
diff --git a/doc/misc/ada-mode.texi b/doc/misc/ada-mode.texi
index 86d63e5ed9b..b746824df67 100644
--- a/doc/misc/ada-mode.texi
+++ b/doc/misc/ada-mode.texi
@@ -3,8 +3,8 @@
3@settitle Ada Mode 3@settitle Ada Mode
4 4
5@copying 5@copying
6Copyright @copyright{} 1999, 2000, 2001, 2002, 2003, 2004, 6Copyright @copyright{} 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
72005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 72007, 2008, 2009, 2010 Free Software Foundation, Inc.
8 8
9@quotation 9@quotation
10Permission is granted to copy, distribute and/or modify this document 10Permission is granted to copy, distribute and/or modify this document
@@ -22,7 +22,7 @@ developing GNU and promoting software freedom.''
22 22
23@dircategory Emacs 23@dircategory Emacs
24@direntry 24@direntry
25* Ada mode: (ada-mode). Emacs mode for editing and compiling Ada code. 25* Ada mode: (ada-mode). Emacs mode for editing and compiling Ada code.
26@end direntry 26@end direntry
27 27
28@titlepage 28@titlepage
diff --git a/doc/misc/auth.texi b/doc/misc/auth.texi
index a2c319c583f..85e691d4b62 100644
--- a/doc/misc/auth.texi
+++ b/doc/misc/auth.texi
@@ -31,7 +31,7 @@ license to the document, as described in section 6 of the license.
31 31
32@dircategory Emacs 32@dircategory Emacs
33@direntry 33@direntry
34* Auth-source: (auth). The Emacs auth-source library. 34* Auth-source: (auth). The Emacs auth-source library.
35@end direntry 35@end direntry
36 36
37@titlepage 37@titlepage
diff --git a/doc/misc/autotype.texi b/doc/misc/autotype.texi
index a2ea8ad2c11..3f7ad21f1d3 100644
--- a/doc/misc/autotype.texi
+++ b/doc/misc/autotype.texi
@@ -10,8 +10,8 @@
10@c @cindex autotypist 10@c @cindex autotypist
11 11
12@copying 12@copying
13Copyright @copyright{} 1994, 1995, 1999, 2001, 2002, 2003, 2004, 13Copyright @copyright{} 1994, 1995, 1999, 2001, 2002, 2003, 2004, 2005,
142005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 142006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
15 15
16@quotation 16@quotation
17Permission is granted to copy, distribute and/or modify this document 17Permission is granted to copy, distribute and/or modify this document
@@ -29,8 +29,8 @@ developing GNU and promoting software freedom.''
29 29
30@dircategory Emacs 30@dircategory Emacs
31@direntry 31@direntry
32* Autotype: (autotype). Convenient features for text that you enter frequently 32* Autotype: (autotype). Convenient features for text that you
33 in Emacs. 33 enter frequently in Emacs.
34@end direntry 34@end direntry
35 35
36@titlepage 36@titlepage
@@ -92,7 +92,7 @@ completions and expansions of text at point.
92 after point. 92 after point.
93* Autoinserting:: Filling up empty files as soon as you visit them. 93* Autoinserting:: Filling up empty files as soon as you visit them.
94* Copyrights:: Inserting and updating copyrights. 94* Copyrights:: Inserting and updating copyrights.
95* Executables:: Turning interpreter scripts into executables. 95* Executables:: Turning interpreter scripts into executables.
96* Timestamps:: Updating dates and times in modified files. 96* Timestamps:: Updating dates and times in modified files.
97* QuickURL:: Inserting URLs based on text at point. 97* QuickURL:: Inserting URLs based on text at point.
98* Tempo:: Flexible template insertion. 98* Tempo:: Flexible template insertion.
@@ -201,7 +201,7 @@ the output from @kbd{M-x list-abbrevs} to make it look like this:
201 201
202@example 202@example
203(c-mode-abbrev-table) 203(c-mode-abbrev-table)
204"if" 0 "" c-if 204"if" 0 "" c-if
205@end example 205@end example
206 206
207@noindent 207@noindent
diff --git a/doc/misc/calc.texi b/doc/misc/calc.texi
index 12b8d8e162d..ab81cf1bca2 100644
--- a/doc/misc/calc.texi
+++ b/doc/misc/calc.texi
@@ -111,7 +111,7 @@ developing GNU and promoting software freedom.''
111 111
112@dircategory Emacs 112@dircategory Emacs
113@direntry 113@direntry
114* Calc: (calc). Advanced desk calculator and mathematical tool. 114* Calc: (calc). Advanced desk calculator and mathematical tool.
115@end direntry 115@end direntry
116 116
117@titlepage 117@titlepage
diff --git a/doc/misc/cc-mode.texi b/doc/misc/cc-mode.texi
index bfe09b64244..c1d8db80dae 100644
--- a/doc/misc/cc-mode.texi
+++ b/doc/misc/cc-mode.texi
@@ -180,8 +180,8 @@ developing GNU and promoting software freedom.''
180@comment here is by request from the FSF folks. 180@comment here is by request from the FSF folks.
181@dircategory Emacs 181@dircategory Emacs
182@direntry 182@direntry
183* CC Mode: (ccmode). Emacs mode for editing C, C++, Objective-C, 183* CC Mode: (ccmode). Emacs mode for editing C, C++, Objective-C,
184 Java, Pike, AWK, and CORBA IDL code. 184 Java, Pike, AWK, and CORBA IDL code.
185@end direntry 185@end direntry
186 186
187@comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 187@comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi
index 39561341b0d..755b2f3f1b7 100644
--- a/doc/misc/cl.texi
+++ b/doc/misc/cl.texi
@@ -24,7 +24,7 @@ developing GNU and promoting software freedom.''
24 24
25@dircategory Emacs 25@dircategory Emacs
26@direntry 26@direntry
27* CL: (cl). Partial Common Lisp support for Emacs Lisp. 27* CL: (cl). Partial Common Lisp support for Emacs Lisp.
28@end direntry 28@end direntry
29 29
30@finalout 30@finalout
diff --git a/doc/misc/dired-x.texi b/doc/misc/dired-x.texi
index 5e70153f9a2..0d05833d0ac 100644
--- a/doc/misc/dired-x.texi
+++ b/doc/misc/dired-x.texi
@@ -3,7 +3,7 @@
3@c dired-x.texi --- Sebastian Kremer's Extra DIRED hacked up for GNU Emacs 3@c dired-x.texi --- Sebastian Kremer's Extra DIRED hacked up for GNU Emacs
4@c 4@c
5@c Author: Sebastian Kremer <sk@thp.uni-koeln.de> 5@c Author: Sebastian Kremer <sk@thp.uni-koeln.de>
6@c Lawrence R. Dodd <dodd@roebling.poly.edu> 6@c Lawrence R. Dodd <dodd@roebling.poly.edu>
7@c [Dodd's address no longer valid.] 7@c [Dodd's address no longer valid.]
8 8
9@comment %**start of header (This is for running Texinfo on a region.) 9@comment %**start of header (This is for running Texinfo on a region.)
@@ -14,7 +14,7 @@
14@iftex 14@iftex
15@finalout 15@finalout
16@end iftex 16@end iftex
17@c @setchapternewpage odd % For book style double sided manual. 17@c @setchapternewpage odd % For book style double sided manual.
18@comment %**end of header (This is for running Texinfo on a region.) 18@comment %**end of header (This is for running Texinfo on a region.)
19 19
20@copying 20@copying
@@ -37,7 +37,7 @@ developing GNU and promoting software freedom.''
37 37
38@dircategory Emacs 38@dircategory Emacs
39@direntry 39@direntry
40* Dired-X: (dired-x). Dired Extra Features. 40* Dired-X: (dired-x). Dired Extra Features.
41@end direntry 41@end direntry
42 42
43@c @smallbook 43@c @smallbook
diff --git a/doc/misc/ebrowse.texi b/doc/misc/ebrowse.texi
index 2c9df216681..86cae35a6f4 100644
--- a/doc/misc/ebrowse.texi
+++ b/doc/misc/ebrowse.texi
@@ -29,7 +29,7 @@ developing GNU and promoting software freedom.''
29 29
30@dircategory Emacs 30@dircategory Emacs
31@direntry 31@direntry
32* Ebrowse: (ebrowse). A C++ class browser for Emacs. 32* Ebrowse: (ebrowse). A C++ class browser for Emacs.
33@end direntry 33@end direntry
34 34
35@titlepage 35@titlepage
@@ -55,14 +55,14 @@ Ebrowse.
55@end ifnottex 55@end ifnottex
56 56
57@menu 57@menu
58* Overview:: What is it and how does it work? 58* Overview:: What is it and how does it work?
59* Generating browser files:: How to process C++ source files 59* Generating browser files:: How to process C++ source files
60* Loading a Tree:: How to start browsing 60* Loading a Tree:: How to start browsing
61* Tree Buffers:: Traversing class hierarchies 61* Tree Buffers:: Traversing class hierarchies
62* Member Buffers:: Looking at member information 62* Member Buffers:: Looking at member information
63* Tags-like Functions:: Finding members from source files 63* Tags-like Functions:: Finding members from source files
64* GNU Free Documentation License:: The license for this documentation. 64* GNU Free Documentation License:: The license for this documentation.
65* Concept Index:: An entry for each concept defined 65* Concept Index:: An entry for each concept defined
66@end menu 66@end menu
67 67
68 68
@@ -215,10 +215,10 @@ When invoked with option @samp{--help}, @command{ebrowse} prints a list of
215available command line options.@refill 215available command line options.@refill
216 216
217@menu 217@menu
218* Input files:: Specifying which files to parse 218* Input files:: Specifying which files to parse
219* Output file:: Changing the output file name 219* Output file:: Changing the output file name
220* Structs and unions:: Omitting @code{struct}s and @code{union}s 220* Structs and unions:: Omitting @code{struct}s and @code{union}s
221* Matching:: Setting regular expression lengths 221* Matching:: Setting regular expression lengths
222* Verbosity:: Getting feedback for lengthy operations 222* Verbosity:: Getting feedback for lengthy operations
223@end menu 223@end menu
224 224
@@ -454,17 +454,17 @@ Tree-specific commands are bound to simple keystrokes, similar to
454buffers. 454buffers.
455 455
456@menu 456@menu
457* Source Display:: Viewing and finding a class declaration 457* Source Display:: Viewing and finding a class declaration
458* Member Display:: Showing members, switching to member buffers 458* Member Display:: Showing members, switching to member buffers
459* Go to Class:: Finding a class 459* Go to Class:: Finding a class
460* Quitting:: Discarding and burying the tree buffer 460* Quitting:: Discarding and burying the tree buffer
461* File Name Display:: Showing file names in the tree 461* File Name Display:: Showing file names in the tree
462* Expanding and Collapsing:: Expanding and collapsing branches 462* Expanding and Collapsing:: Expanding and collapsing branches
463* Tree Indentation:: Changing the tree indentation 463* Tree Indentation:: Changing the tree indentation
464* Killing Classes:: Removing class from the tree 464* Killing Classes:: Removing class from the tree
465* Saving a Tree:: Saving a modified tree 465* Saving a Tree:: Saving a modified tree
466* Statistics:: Displaying class tree statistics 466* Statistics:: Displaying class tree statistics
467* Marking Classes:: Marking and unmarking classes 467* Marking Classes:: Marking and unmarking classes
468@end menu 468@end menu
469 469
470 470
@@ -625,17 +625,15 @@ given by a prefix argument.
625Here is an example of a tree buffer with file names displayed. 625Here is an example of a tree buffer with file names displayed.
626 626
627@example 627@example
628| Collection (unknown) 628| Collection (unknown)
629| IndexedCollection (indexedcltn.h) 629| IndexedCollection (indexedcltn.h)
630| Array (array.h) 630| Array (array.h)
631| FixedArray (fixedarray.h) 631| FixedArray (fixedarray.h)
632| Set (set.h) 632| Set (set.h)
633| Dictionary (dict.h) 633| Dictionary (dict.h)
634@end example 634@end example
635 635
636 636
637
638
639@node Expanding and Collapsing, Tree Indentation, File Name Display, Tree Buffers 637@node Expanding and Collapsing, Tree Indentation, File Name Display, Tree Buffers
640@comment node-name, next, previous, up 638@comment node-name, next, previous, up
641@section Expanding and Collapsing a Tree 639@section Expanding and Collapsing a Tree
@@ -818,20 +816,20 @@ like in tree buffers, menus are provided for certain areas in the
818buffer: members, classes, and the buffer itself. 816buffer: members, classes, and the buffer itself.
819 817
820@menu 818@menu
821* Switching Member Lists:: Choosing which members to display 819* Switching Member Lists:: Choosing which members to display
822* Finding/Viewing:: Modifying source code 820* Finding/Viewing:: Modifying source code
823* Inherited Members:: Display of Inherited Members 821* Inherited Members:: Display of Inherited Members
824* Searching Members:: Finding members in member buffer 822* Searching Members:: Finding members in member buffer
825* Switching to Tree:: Going back to the tree buffer 823* Switching to Tree:: Going back to the tree buffer
826* Filters:: Selective member display 824* Filters:: Selective member display
827* Attributes:: Display of @code{virtual} etc. 825* Attributes:: Display of @code{virtual} etc.
828* Long and Short Display:: Comprehensive and verbose display 826* Long and Short Display:: Comprehensive and verbose display
829* Regexp Display:: Showing matching regular expressions 827* Regexp Display:: Showing matching regular expressions
830* Switching Classes:: Displaying another class 828* Switching Classes:: Displaying another class
831* Killing/Burying:: Getting rid of the member buffer 829* Killing/Burying:: Getting rid of the member buffer
832* Column Width:: Display style 830* Column Width:: Display style
833* Redisplay:: Redrawing the member list 831* Redisplay:: Redrawing the member list
834* Getting Help:: How to get help for key bindings 832* Getting Help:: How to get help for key bindings
835@end menu 833@end menu
836 834
837 835
@@ -1234,7 +1232,7 @@ This key is bound to @code{describe-mode}.
1234 1232
1235 1233
1236@comment ************************************************************** 1234@comment **************************************************************
1237@comment *** TAGS LIKE FUNCTIONS 1235@comment *** TAGS LIKE FUNCTIONS
1238@comment ************************************************************** 1236@comment **************************************************************
1239 1237
1240@node Tags-like Functions, GNU Free Documentation License, Member Buffers, Top 1238@node Tags-like Functions, GNU Free Documentation License, Member Buffers, Top
@@ -1245,14 +1243,14 @@ Ebrowse provides tags functions similar to those of the standard
1245Emacs Tags facility, but better suited to the needs of C++ programmers. 1243Emacs Tags facility, but better suited to the needs of C++ programmers.
1246 1244
1247@menu 1245@menu
1248* Finding and Viewing:: Going to a member declaration/definition 1246* Finding and Viewing:: Going to a member declaration/definition
1249* Position Stack:: Moving to previous locations 1247* Position Stack:: Moving to previous locations
1250* Search & Replace:: Searching and replacing over class tree files 1248* Search & Replace:: Searching and replacing over class tree files
1251* Members in Files:: Listing all members in a given file 1249* Members in Files:: Listing all members in a given file
1252* Apropos:: Listing members matching a regular expression 1250* Apropos:: Listing members matching a regular expression
1253* Symbol Completion:: Completing names while editing 1251* Symbol Completion:: Completing names while editing
1254* Member Buffer Display:: Quickly display a member buffer for some 1252* Member Buffer Display:: Quickly display a member buffer for some
1255 identifier 1253 identifier
1256@end menu 1254@end menu
1257 1255
1258 1256
diff --git a/doc/misc/ede.texi b/doc/misc/ede.texi
index ace3c25914d..7e1d6c7907a 100644
--- a/doc/misc/ede.texi
+++ b/doc/misc/ede.texi
@@ -5,8 +5,8 @@
5@copying 5@copying
6This file describes EDE, the Emacs Development Environment. 6This file describes EDE, the Emacs Development Environment.
7 7
8Copyright @copyright{} 1998, 1999, 2000, 2001, 2004, 2005, 2008, 2009, 2010 8Copyright @copyright{} 1998, 1999, 2000, 2001, 2004, 2005, 2008, 2009,
9Free Software Foundation, Inc. 92010 Free Software Foundation, Inc.
10 10
11@quotation 11@quotation
12Permission is granted to copy, distribute and/or modify this document 12Permission is granted to copy, distribute and/or modify this document
@@ -24,7 +24,7 @@ developing GNU and promoting software freedom.''
24 24
25@dircategory Emacs 25@dircategory Emacs
26@direntry 26@direntry
27* ede: (ede). Project management for Emacs 27* ede: (ede). Project management for Emacs.
28@end direntry 28@end direntry
29 29
30@titlepage 30@titlepage
@@ -404,8 +404,8 @@ lookup for @semantic{}, improving code completion performance.
404@menu 404@menu
405* ede-cpp-root:: This project marks the root of a C/C++ code project. 405* ede-cpp-root:: This project marks the root of a C/C++ code project.
406* ede-simple subclassing:: Create your own simple project. 406* ede-simple subclassing:: Create your own simple project.
407* ede-emacs:: A project for working with Emacs. 407* ede-emacs:: A project for working with Emacs.
408* ede-linux:: A project for working with Linux kernels. 408* ede-linux:: A project for working with Linux kernels.
409* Custom Locate:: Customizing how to locate files in a simple project 409* Custom Locate:: Customizing how to locate files in a simple project
410@end menu 410@end menu
411 411
@@ -525,14 +525,14 @@ Return nil if there isn't one."
525 ) 525 )
526 526
527(add-to-list 'ede-project-class-files 527(add-to-list 'ede-project-class-files
528 (ede-project-autoload "cpp-root" 528 (ede-project-autoload "cpp-root"
529 :name "CPP ROOT" 529 :name "CPP ROOT"
530 :file 'ede-cpp-root 530 :file 'ede-cpp-root
531 :proj-file 'MY-FILE-FOR-DIR 531 :proj-file 'MY-FILE-FOR-DIR
532 :proj-root 'MY-ROOT-FCN 532 :proj-root 'MY-ROOT-FCN
533 :load-type 'MY-LOAD 533 :load-type 'MY-LOAD
534 :class-sym 'ede-cpp-root) 534 :class-sym 'ede-cpp-root)
535 t) 535 t)
536@end example 536@end example
537 537
538This example only creates an auto-loader, and does not create a new kind 538This example only creates an auto-loader, and does not create a new kind
@@ -751,9 +751,9 @@ Here is an example for an instantiation of an Emacs Lisp source code object:
751@example 751@example
752(defvar ede-source-emacs 752(defvar ede-source-emacs
753 (ede-sourcecode "ede-emacs-source" 753 (ede-sourcecode "ede-emacs-source"
754 :name "Emacs Lisp" 754 :name "Emacs Lisp"
755 :sourcepattern "\\.el$" 755 :sourcepattern "\\.el$"
756 :garbagepattern '("*.elc")) 756 :garbagepattern '("*.elc"))
757 "Emacs Lisp source code definition.") 757 "Emacs Lisp source code definition.")
758@end example 758@end example
759 759
diff --git a/doc/misc/edt.texi b/doc/misc/edt.texi
index a93aada07a1..d394137d76b 100644
--- a/doc/misc/edt.texi
+++ b/doc/misc/edt.texi
@@ -25,7 +25,7 @@ developing GNU and promoting software freedom.''
25 25
26@dircategory Emacs 26@dircategory Emacs
27@direntry 27@direntry
28* EDT: (edt). An Emacs emulation of the EDT editor. 28* EDT: (edt). An Emacs emulation of the EDT editor.
29@end direntry 29@end direntry
30 30
31@titlepage 31@titlepage
diff --git a/doc/misc/eieio.texi b/doc/misc/eieio.texi
index b5567f3a489..169e52c1bd0 100644
--- a/doc/misc/eieio.texi
+++ b/doc/misc/eieio.texi
@@ -29,7 +29,7 @@ developing GNU and promoting software freedom.''
29 29
30@dircategory Emacs 30@dircategory Emacs
31@direntry 31@direntry
32* eieio: (eieio). Objects for Emacs 32* eieio: (eieio). Objects for Emacs.
33@end direntry 33@end direntry
34 34
35@titlepage 35@titlepage
@@ -295,8 +295,8 @@ This option is here to support programs written with older versions of
295 295
296@menu 296@menu
297* Inheritance:: How to specify parents classes 297* Inheritance:: How to specify parents classes
298* Slot Options:: How to specify features of a slot. 298* Slot Options:: How to specify features of a slot.
299* Class Options:: How to specify features for this class. 299* Class Options:: How to specify features for this class.
300@end menu 300@end menu
301 301
302@node Inheritance 302@node Inheritance
diff --git a/doc/misc/emacs-mime.texi b/doc/misc/emacs-mime.texi
index 0ce94bfcf69..713a55c7cc7 100644
--- a/doc/misc/emacs-mime.texi
+++ b/doc/misc/emacs-mime.texi
@@ -31,7 +31,7 @@ developing GNU and promoting software freedom.''
31 31
32@dircategory Emacs 32@dircategory Emacs
33@direntry 33@direntry
34* Emacs MIME: (emacs-mime). Emacs MIME de/composition library. 34* Emacs MIME: (emacs-mime). Emacs MIME de/composition library.
35@end direntry 35@end direntry
36@iftex 36@iftex
37@finalout 37@finalout
diff --git a/doc/misc/epa.texi b/doc/misc/epa.texi
index b02e41e914b..f9c48b1588a 100644
--- a/doc/misc/epa.texi
+++ b/doc/misc/epa.texi
@@ -33,7 +33,7 @@ license to the document, as described in section 6 of the license.
33 33
34@dircategory Emacs 34@dircategory Emacs
35@direntry 35@direntry
36* EasyPG Assistant: (epa). An Emacs user interface to GNU Privacy Guard. 36* EasyPG Assistant: (epa). An Emacs user interface to GNU Privacy Guard.
37@end direntry 37@end direntry
38 38
39@titlepage 39@titlepage
@@ -142,15 +142,15 @@ about the key you selected.
142@example 142@example
143 u Daiki Ueno <ueno@@unixuser.org> 143 u Daiki Ueno <ueno@@unixuser.org>
144 u A5B6B2D4B15813FE 1024bits DSA 144 u A5B6B2D4B15813FE 1024bits DSA
145 Created: 2001-10-09 145 Created: 2001-10-09
146 Expires: 2007-09-04 146 Expires: 2007-09-04
147 Capabilities: sign certify 147 Capabilities: sign certify
148 Fingerprint: 8003 7CD0 0F1A 9400 03CA 50AA A5B6 B2D4 B158 13FE 148 Fingerprint: 8003 7CD0 0F1A 9400 03CA 50AA A5B6 B2D4 B158 13FE
149 u 4447461B2A9BEA2D 2048bits ELGAMAL_E 149 u 4447461B2A9BEA2D 2048bits ELGAMAL_E
150 Created: 2001-10-09 150 Created: 2001-10-09
151 Expires: 2007-09-04 151 Expires: 2007-09-04
152 Capabilities: encrypt 152 Capabilities: encrypt
153 Fingerprint: 9003 D76B 73B7 4A8A E588 10AF 4447 461B 2A9B EA2D 153 Fingerprint: 9003 D76B 73B7 4A8A E588 10AF 4447 461B 2A9B EA2D
154@end example 154@end example
155 155
156@noindent 156@noindent
diff --git a/doc/misc/erc.texi b/doc/misc/erc.texi
index 537a34b6d68..1c547bf80e5 100644
--- a/doc/misc/erc.texi
+++ b/doc/misc/erc.texi
@@ -8,7 +8,8 @@
8@copying 8@copying
9This manual is for ERC version 5.3. 9This manual is for ERC version 5.3.
10 10
11Copyright @copyright{} 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 11Copyright @copyright{} 2005, 2006, 2007, 2008, 2009, 2010
12Free Software Foundation, Inc.
12 13
13@quotation 14@quotation
14Permission is granted to copy, distribute and/or modify this document 15Permission is granted to copy, distribute and/or modify this document
@@ -29,7 +30,7 @@ and modified without restriction.
29 30
30@dircategory Emacs 31@dircategory Emacs
31@direntry 32@direntry
32* ERC: (erc). Powerful, modular, and extensible IRC client for Emacs. 33* ERC: (erc). Powerful and extensible IRC client for Emacs.
33@end direntry 34@end direntry
34 35
35@titlepage 36@titlepage
diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi
index 96825559197..6ec431dccfd 100644
--- a/doc/misc/eshell.texi
+++ b/doc/misc/eshell.texi
@@ -8,8 +8,8 @@
8@copying 8@copying
9This manual is for Eshell, the Emacs shell. 9This manual is for Eshell, the Emacs shell.
10 10
11Copyright @copyright{} 1999, 2000, 2001, 2002, 2003, 2004, 11Copyright @copyright{} 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
122005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 122007, 2008, 2009, 2010 Free Software Foundation, Inc.
13 13
14@quotation 14@quotation
15Permission is granted to copy, distribute and/or modify this document 15Permission is granted to copy, distribute and/or modify this document
@@ -27,7 +27,7 @@ developing GNU and promoting software freedom.''
27 27
28@dircategory Emacs 28@dircategory Emacs
29@direntry 29@direntry
30* Eshell: (eshell). A command shell implemented in Emacs Lisp. 30* Eshell: (eshell). A command shell implemented in Emacs Lisp.
31@end direntry 31@end direntry
32 32
33@titlepage 33@titlepage
diff --git a/doc/misc/eudc.texi b/doc/misc/eudc.texi
index 09d7f5cb5a8..48606e0d664 100644
--- a/doc/misc/eudc.texi
+++ b/doc/misc/eudc.texi
@@ -31,7 +31,7 @@ developing GNU and promoting software freedom.''
31 31
32@dircategory Emacs 32@dircategory Emacs
33@direntry 33@direntry
34* EUDC: (eudc). An Emacs client for directory servers (LDAP, PH). 34* EUDC: (eudc). Emacs client for directory servers (LDAP, PH).
35@end direntry 35@end direntry
36 36
37@footnotestyle end 37@footnotestyle end
diff --git a/doc/misc/faq.texi b/doc/misc/faq.texi
index 924240aeb53..f4dc0247197 100644
--- a/doc/misc/faq.texi
+++ b/doc/misc/faq.texi
@@ -41,7 +41,7 @@ distribution.]
41 41
42@dircategory Emacs 42@dircategory Emacs
43@direntry 43@direntry
44* Emacs FAQ: (efaq). Frequently Asked Questions about Emacs. 44* Emacs FAQ: (efaq). Frequently Asked Questions about Emacs.
45@end direntry 45@end direntry
46 46
47@c The @titlepage stuff only appears in the printed version 47@c The @titlepage stuff only appears in the printed version
diff --git a/doc/misc/flymake.texi b/doc/misc/flymake.texi
index 764c6481641..0606fcc134d 100644
--- a/doc/misc/flymake.texi
+++ b/doc/misc/flymake.texi
@@ -11,8 +11,8 @@
11This manual is for GNU Flymake (version @value{VERSION}, @value{UPDATED}), 11This manual is for GNU Flymake (version @value{VERSION}, @value{UPDATED}),
12which is a universal on-the-fly syntax checker for GNU Emacs. 12which is a universal on-the-fly syntax checker for GNU Emacs.
13 13
14Copyright @copyright{} 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software 14Copyright @copyright{} 2004, 2005, 2006, 2007, 2008, 2009, 2010
15Foundation, Inc. 15Free Software Foundation, Inc.
16 16
17@quotation 17@quotation
18Permission is granted to copy, distribute and/or modify this document 18Permission is granted to copy, distribute and/or modify this document
@@ -30,7 +30,7 @@ developing GNU and promoting software freedom.''
30 30
31@dircategory Emacs 31@dircategory Emacs
32@direntry 32@direntry
33* Flymake: (flymake). A universal on-the-fly syntax checker. 33* Flymake: (flymake). A universal on-the-fly syntax checker.
34@end direntry 34@end direntry
35 35
36@titlepage 36@titlepage
@@ -409,7 +409,7 @@ First, we write the @code{init-function}:
409(defun flymake-perl-init () 409(defun flymake-perl-init ()
410 (let* ((temp-file (flymake-init-create-temp-buffer-copy 410 (let* ((temp-file (flymake-init-create-temp-buffer-copy
411 'flymake-create-temp-inplace)) 411 'flymake-create-temp-inplace))
412 (local-file (file-relative-name 412 (local-file (file-relative-name
413 temp-file 413 temp-file
414 (file-name-directory buffer-file-name)))) 414 (file-name-directory buffer-file-name))))
415 (list "perl" (list "-wc " local-file)))) 415 (list "perl" (list "-wc " local-file))))
diff --git a/doc/misc/forms.texi b/doc/misc/forms.texi
index 614844fd6c2..a7779763c3f 100644
--- a/doc/misc/forms.texi
+++ b/doc/misc/forms.texi
@@ -1,4 +1,4 @@
1\input texinfo @c -*-texinfo-*- 1\input texinfo @c -*-texinfo-*-
2@c documentation for forms-mode 2@c documentation for forms-mode
3@c Written by Johan Vromans, and edited by Richard Stallman 3@c Written by Johan Vromans, and edited by Richard Stallman
4 4
@@ -37,8 +37,8 @@ developing GNU and promoting software freedom.''
37 37
38@dircategory Emacs 38@dircategory Emacs
39@direntry 39@direntry
40* Forms: (forms). Emacs package for editing data bases 40* Forms: (forms). Emacs package for editing data bases
41 by filling in forms. 41 by filling in forms.
42@end direntry 42@end direntry
43 43
44@titlepage 44@titlepage
diff --git a/doc/misc/gnus-faq.texi b/doc/misc/gnus-faq.texi
index 2b3c0aa5e25..78a22740e32 100644
--- a/doc/misc/gnus-faq.texi
+++ b/doc/misc/gnus-faq.texi
@@ -1,8 +1,8 @@
1@c \input texinfo @c -*-texinfo-*- 1@c \input texinfo @c -*-texinfo-*-
2@c Uncomment 1st line before texing this file alone. 2@c Uncomment 1st line before texing this file alone.
3@c %**start of header 3@c %**start of header
4@c Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 4@c Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
5@c 2008, 2009, 2010 Free Software Foundation, Inc. 5@c 2009, 2010 Free Software Foundation, Inc.
6@c 6@c
7@c Do not modify this file, it was generated from gnus-faq.xml, available from 7@c Do not modify this file, it was generated from gnus-faq.xml, available from
8@c <URL:http://my.gnus.org/FAQ/>. 8@c <URL:http://my.gnus.org/FAQ/>.
@@ -550,7 +550,7 @@ want something different, change the line above to something like this:
550@example 550@example
551(add-to-list 'gnus-secondary-select-methods 551(add-to-list 'gnus-secondary-select-methods
552 '(nnspool "" 552 '(nnspool ""
553 (nnspool-directory "/usr/local/myspoolddir"))) 553 (nnspool-directory "/usr/local/myspoolddir")))
554@end example 554@end example
555@noindent 555@noindent
556 556
@@ -635,8 +635,8 @@ mail, it's
635@example 635@example
636(eval-after-load "mail-source" 636(eval-after-load "mail-source"
637 '(add-to-list 'mail-sources 637 '(add-to-list 'mail-sources
638 '(directory :path "/path/to/procmail-dir/" 638 '(directory :path "/path/to/procmail-dir/"
639 :suffix ".prcml"))) 639 :suffix ".prcml")))
640@end example 640@end example
641@noindent 641@noindent
642 642
@@ -691,10 +691,10 @@ about the server there.
691 691
692@example 692@example
693(add-to-list 'gnus-secondary-select-methods 693(add-to-list 'gnus-secondary-select-methods
694 '(nnimap "Give the baby a name" 694 '(nnimap "Give the baby a name"
695 (nnimap-address "imap.yourProvider.net") 695 (nnimap-address "imap.yourProvider.net")
696 (nnimap-port 143) 696 (nnimap-port 143)
697 (nnimap-list-pattern "archive.*"))) 697 (nnimap-list-pattern "archive.*")))
698@end example 698@end example
699@noindent 699@noindent
700 700
@@ -874,7 +874,7 @@ say this in ~/.gnus.el:
874@example 874@example
875(setq gnus-visible-headers 875(setq gnus-visible-headers
876 '("^From" "^Subject" "^Date" "^Newsgroups" "^Followup-To" 876 '("^From" "^Subject" "^Date" "^Newsgroups" "^Followup-To"
877 "^User-Agent" "^X-Newsreader" "^X-Mailer")) 877 "^User-Agent" "^X-Newsreader" "^X-Mailer"))
878@end example 878@end example
879@noindent 879@noindent
880 880
@@ -1099,18 +1099,18 @@ buffer top-right, article buffer bottom-right:
1099(gnus-add-configuration 1099(gnus-add-configuration
1100 '(article 1100 '(article
1101 (horizontal 1.0 1101 (horizontal 1.0
1102 (vertical 25 1102 (vertical 25
1103 (group 1.0)) 1103 (group 1.0))
1104 (vertical 1.0 1104 (vertical 1.0
1105 (summary 0.25 point) 1105 (summary 0.25 point)
1106 (article 1.0))))) 1106 (article 1.0)))))
1107(gnus-add-configuration 1107(gnus-add-configuration
1108 '(summary 1108 '(summary
1109 (horizontal 1.0 1109 (horizontal 1.0
1110 (vertical 25 1110 (vertical 25
1111 (group 1.0)) 1111 (group 1.0))
1112 (vertical 1.0 1112 (vertical 1.0
1113 (summary 1.0 point))))) 1113 (summary 1.0 point)))))
1114@end example 1114@end example
1115@noindent 1115@noindent
1116 1116
@@ -1480,7 +1480,7 @@ You can store your mail addresses in a ~/.mailrc file using a simple
1480alias syntax: 1480alias syntax:
1481 1481
1482@example 1482@example
1483alias al "Al <al@@english-heritage.invalid>" 1483alias al "Al <al@@english-heritage.invalid>"
1484@end example 1484@end example
1485@noindent 1485@noindent
1486 1486
@@ -1644,9 +1644,9 @@ the group to use.
1644 1644
1645@example 1645@example
1646(setq gnus-message-archive-group 1646(setq gnus-message-archive-group
1647 '((if (message-news-p) 1647 '((if (message-news-p)
1648 "nnml:Send-News" 1648 "nnml:Send-News"
1649 "nnml:Send-Mail"))) 1649 "nnml:Send-Mail")))
1650@end example 1650@end example
1651@noindent 1651@noindent
1652 1652
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi
index 3ef173c8db0..c3a7058289d 100644
--- a/doc/misc/gnus.texi
+++ b/doc/misc/gnus.texi
@@ -322,7 +322,7 @@ developing GNU and promoting software freedom.''
322 322
323@dircategory Emacs 323@dircategory Emacs
324@direntry 324@direntry
325* Gnus: (gnus). The newsreader Gnus. 325* Gnus: (gnus). The newsreader Gnus.
326@end direntry 326@end direntry
327@iftex 327@iftex
328@finalout 328@finalout
diff --git a/doc/misc/idlwave.texi b/doc/misc/idlwave.texi
index 94a2c2c6db7..0618f110c30 100644
--- a/doc/misc/idlwave.texi
+++ b/doc/misc/idlwave.texi
@@ -41,7 +41,7 @@ developing GNU and promoting software freedom.''
41 41
42@dircategory Emacs 42@dircategory Emacs
43@direntry 43@direntry
44* IDLWAVE: (idlwave). Major mode and shell for IDL files. 44* IDLWAVE: (idlwave). Major mode and shell for IDL files.
45@end direntry 45@end direntry
46 46
47@titlepage 47@titlepage
diff --git a/doc/misc/info.texi b/doc/misc/info.texi
index b1157c0c4eb..97cc17812e4 100644
--- a/doc/misc/info.texi
+++ b/doc/misc/info.texi
@@ -40,7 +40,7 @@ license to the document, as described in section 6 of the license.
40 40
41@dircategory Texinfo documentation system 41@dircategory Texinfo documentation system
42@direntry 42@direntry
43* Info: (info). How to use the documentation browsing system. 43* Info: (info). How to use the documentation browsing system.
44@end direntry 44@end direntry
45 45
46@titlepage 46@titlepage
diff --git a/doc/misc/mairix-el.texi b/doc/misc/mairix-el.texi
index b08d5d8e316..578164e8e57 100644
--- a/doc/misc/mairix-el.texi
+++ b/doc/misc/mairix-el.texi
@@ -24,7 +24,7 @@ developing GNU and promoting software freedom.''
24 24
25@dircategory Emacs 25@dircategory Emacs
26@direntry 26@direntry
27* Mairix: (mairix-el). Emacs interface to the Mairix mail indexer. 27* Mairix: (mairix-el). Emacs interface to the Mairix mail indexer.
28@end direntry 28@end direntry
29 29
30@titlepage 30@titlepage
diff --git a/doc/misc/message.texi b/doc/misc/message.texi
index 1667c5ca503..283d29c0de4 100644
--- a/doc/misc/message.texi
+++ b/doc/misc/message.texi
@@ -27,7 +27,8 @@ developing GNU and promoting software freedom.''
27 27
28@dircategory Emacs 28@dircategory Emacs
29@direntry 29@direntry
30* Message: (message). Mail and news composition mode that goes with Gnus. 30* Message: (message). Mail and news composition mode that
31 goes with Gnus.
31@end direntry 32@end direntry
32@iftex 33@iftex
33@finalout 34@finalout
diff --git a/doc/misc/mh-e.texi b/doc/misc/mh-e.texi
index f7a46778c96..ed64f91ac39 100644
--- a/doc/misc/mh-e.texi
+++ b/doc/misc/mh-e.texi
@@ -24,8 +24,8 @@
24This is version @value{VERSION}@value{EDITION} of @cite{The MH-E 24This is version @value{VERSION}@value{EDITION} of @cite{The MH-E
25Manual}, last updated @value{UPDATED}. 25Manual}, last updated @value{UPDATED}.
26 26
27Copyright @copyright{} 1995, 2001, 2002, 2003, 2005, 2006, 2007, 2008, 2009, 2010 27Copyright @copyright{} 1995, 2001, 2002, 2003, 2005, 2006, 2007, 2008,
28Free Software Foundation, Inc. 28 2009, 2010 Free Software Foundation, Inc.
29 29
30@c This dual license has been agreed upon by the FSF. 30@c This dual license has been agreed upon by the FSF.
31 31
@@ -58,7 +58,7 @@ Public License.''
58@c Info Directory Entry 58@c Info Directory Entry
59@dircategory Emacs 59@dircategory Emacs
60@direntry 60@direntry
61* MH-E: (mh-e). Emacs interface to the MH mail system. 61* MH-E: (mh-e). Emacs interface to the MH mail system.
62@end direntry 62@end direntry
63 63
64@c Title Page 64@c Title Page
@@ -7767,7 +7767,7 @@ will need to run @samp{sa-learn --rebuild} periodically. This can be
7767done by adding the following to your @file{crontab}: 7767done by adding the following to your @file{crontab}:
7768 7768
7769@smallexample 7769@smallexample
77700 * * * * sa-learn --rebuild > /dev/null 2>&1 77700 * * * * sa-learn --rebuild > /dev/null 2>&1
7771@end smallexample 7771@end smallexample
7772 7772
7773@subheading Bogofilter 7773@subheading Bogofilter
diff --git a/doc/misc/newsticker.texi b/doc/misc/newsticker.texi
index 926885b7e13..5c975772139 100644
--- a/doc/misc/newsticker.texi
+++ b/doc/misc/newsticker.texi
@@ -32,7 +32,7 @@ developing GNU and promoting software freedom.''
32 32
33@dircategory Emacs 33@dircategory Emacs
34@direntry 34@direntry
35* Newsticker: (newsticker). A Newsticker for Emacs. 35* Newsticker: (newsticker). A Newsticker for Emacs.
36@end direntry 36@end direntry
37 37
38@titlepage 38@titlepage
diff --git a/doc/misc/nxml-mode.texi b/doc/misc/nxml-mode.texi
index c1ea64fe9a9..593bf92d00a 100644
--- a/doc/misc/nxml-mode.texi
+++ b/doc/misc/nxml-mode.texi
@@ -187,7 +187,7 @@ and the buffer showing possible completions will contain
187 187
188@example 188@example
189Possible completions are: 189Possible completions are:
190xml:lang xmlns 190xml:lang xmlns
191@end example 191@end example
192 192
193@noindent 193@noindent
@@ -520,7 +520,7 @@ enough.
520 520
521If you want to use a schema that has not yet been added to the 521If you want to use a schema that has not yet been added to the
522schema locating files, you can use the command @kbd{C-c C-s C-f} 522schema locating files, you can use the command @kbd{C-c C-s C-f}
523to manually select the file contaiing the schema for the document in 523to manually select the file containing the schema for the document in
524current buffer. Emacs will read the file-name of the schema from the 524current buffer. Emacs will read the file-name of the schema from the
525minibuffer. After reading the file-name, Emacs will ask whether you 525minibuffer. After reading the file-name, Emacs will ask whether you
526wish to add a rule to a schema locating file that persistently 526wish to add a rule to a schema locating file that persistently
diff --git a/doc/misc/org.texi b/doc/misc/org.texi
index c4285d59f27..0c708c9ac75 100644
--- a/doc/misc/org.texi
+++ b/doc/misc/org.texi
@@ -68,7 +68,7 @@ license to the document, as described in section 6 of the license.
68 68
69@dircategory Emacs 69@dircategory Emacs
70@direntry 70@direntry
71* Org Mode: (org). Outline-based notes management and organizer 71* Org Mode: (org). Outline-based notes management and organizer.
72@end direntry 72@end direntry
73 73
74@titlepage 74@titlepage
@@ -4702,7 +4702,7 @@ values.
4702 4702
4703@example 4703@example
4704:COLUMNS: %25ITEM %9Approved(Approved?)@{X@} %Owner %11Status \@footnote{Please note that the COLUMNS definition must be on a single line---it is wrapped here only because of formatting constraints.} 4704:COLUMNS: %25ITEM %9Approved(Approved?)@{X@} %Owner %11Status \@footnote{Please note that the COLUMNS definition must be on a single line---it is wrapped here only because of formatting constraints.}
4705 %10Time_Estimate@{:@} %CLOCKSUM 4705 %10Time_Estimate@{:@} %CLOCKSUM
4706:Owner_ALL: Tammy Mark Karl Lisa Don 4706:Owner_ALL: Tammy Mark Karl Lisa Don
4707:Status_ALL: "In progress" "Not started yet" "Finished" "" 4707:Status_ALL: "In progress" "Not started yet" "Finished" ""
4708:Approved_ALL: "[ ]" "[X]" 4708:Approved_ALL: "[ ]" "[X]"
@@ -7482,12 +7482,12 @@ Internet, and outside of business hours, with something like this:
7482@group 7482@group
7483(defun org-my-auto-exclude-function (tag) 7483(defun org-my-auto-exclude-function (tag)
7484 (and (cond 7484 (and (cond
7485 ((string= tag "Net") 7485 ((string= tag "Net")
7486 (/= 0 (call-process "/sbin/ping" nil nil nil 7486 (/= 0 (call-process "/sbin/ping" nil nil nil
7487 "-c1" "-q" "-t1" "mail.gnu.org"))) 7487 "-c1" "-q" "-t1" "mail.gnu.org")))
7488 ((or (string= tag "Errand") (string= tag "Call")) 7488 ((or (string= tag "Errand") (string= tag "Call"))
7489 (let ((hour (nth 2 (decode-time)))) 7489 (let ((hour (nth 2 (decode-time))))
7490 (or (< hour 8) (> hour 21))))) 7490 (or (< hour 8) (> hour 21)))))
7491 (concat "-" tag))) 7491 (concat "-" tag)))
7492 7492
7493(setq org-agenda-auto-exclude-function 'org-my-auto-exclude-function) 7493(setq org-agenda-auto-exclude-function 'org-my-auto-exclude-function)
@@ -11340,9 +11340,9 @@ fixed this problem:
11340 11340
11341@lisp 11341@lisp
11342(add-hook 'org-mode-hook 11342(add-hook 'org-mode-hook
11343 (lambda () 11343 (lambda ()
11344 (org-set-local 'yas/trigger-key [tab]) 11344 (org-set-local 'yas/trigger-key [tab])
11345 (define-key yas/keymap [tab] 'yas/next-field-group))) 11345 (define-key yas/keymap [tab] 'yas/next-field-group)))
11346@end lisp 11346@end lisp
11347 11347
11348@item @file{windmove.el} by Hovav Shacham 11348@item @file{windmove.el} by Hovav Shacham
diff --git a/doc/misc/pcl-cvs.texi b/doc/misc/pcl-cvs.texi
index 625d83a0e2c..e4adf47ddb2 100644
--- a/doc/misc/pcl-cvs.texi
+++ b/doc/misc/pcl-cvs.texi
@@ -26,7 +26,7 @@ developing GNU and promoting software freedom.''
26 26
27@dircategory Emacs 27@dircategory Emacs
28@direntry 28@direntry
29* PCL-CVS: (pcl-cvs). Emacs front-end to CVS. 29* PCL-CVS: (pcl-cvs). Emacs front-end to CVS.
30@end direntry 30@end direntry
31 31
32@c The titlepage section does not appear in the Info file. 32@c The titlepage section does not appear in the Info file.
diff --git a/doc/misc/pgg.texi b/doc/misc/pgg.texi
index d2fd8fc097d..640dfd8f749 100644
--- a/doc/misc/pgg.texi
+++ b/doc/misc/pgg.texi
@@ -8,8 +8,8 @@
8This file describes PGG @value{VERSION}, an Emacs interface to various 8This file describes PGG @value{VERSION}, an Emacs interface to various
9PGP implementations. 9PGP implementations.
10 10
11Copyright @copyright{} 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 11Copyright @copyright{} 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
12Free Software Foundation, Inc. 122010 Free Software Foundation, Inc.
13 13
14@quotation 14@quotation
15Permission is granted to copy, distribute and/or modify this document 15Permission is granted to copy, distribute and/or modify this document
@@ -27,7 +27,7 @@ developing GNU and promoting software freedom.''
27 27
28@dircategory Emacs 28@dircategory Emacs
29@direntry 29@direntry
30* PGG: (pgg). Emacs interface to various PGP implementations. 30* PGG: (pgg). Emacs interface to various PGP implementations.
31@end direntry 31@end direntry
32 32
33@titlepage 33@titlepage
@@ -133,7 +133,7 @@ list autoload setting for desired functions as follows.
133* User Commands:: 133* User Commands::
134* Selecting an implementation:: 134* Selecting an implementation::
135* Caching passphrase:: 135* Caching passphrase::
136* Default user identity:: 136* Default user identity::
137@end menu 137@end menu
138 138
139@node User Commands 139@node User Commands
@@ -376,7 +376,7 @@ variable @code{pgg-scheme-gpg-instance} and will be reused from now on.
376(defun pgg-make-scheme-gpg () 376(defun pgg-make-scheme-gpg ()
377 (or pgg-scheme-gpg-instance 377 (or pgg-scheme-gpg-instance
378 (setq pgg-scheme-gpg-instance 378 (setq pgg-scheme-gpg-instance
379 (luna-make-entity 'pgg-scheme-gpg)))) 379 (luna-make-entity 'pgg-scheme-gpg))))
380@end lisp 380@end lisp
381 381
382The name of the function must follow the 382The name of the function must follow the
diff --git a/doc/misc/rcirc.texi b/doc/misc/rcirc.texi
index 8d3f5e73966..c27cf4dc182 100644
--- a/doc/misc/rcirc.texi
+++ b/doc/misc/rcirc.texi
@@ -5,7 +5,8 @@
5@c %**end of header 5@c %**end of header
6 6
7@copying 7@copying
8Copyright @copyright{} 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 8Copyright @copyright{} 2006, 2007, 2008, 2009, 2010
9Free Software Foundation, Inc.
9 10
10@quotation 11@quotation
11Permission is granted to copy, distribute and/or modify this document 12Permission is granted to copy, distribute and/or modify this document
@@ -23,7 +24,7 @@ developing GNU and promoting software freedom.''
23 24
24@dircategory Emacs 25@dircategory Emacs
25@direntry 26@direntry
26* Rcirc: (rcirc). Internet Relay Chat (IRC) client. 27* Rcirc: (rcirc). Internet Relay Chat (IRC) client.
27@end direntry 28@end direntry
28 29
29@titlepage 30@titlepage
diff --git a/doc/misc/reftex.texi b/doc/misc/reftex.texi
index f2d03afc924..9d06ceccd9e 100644
--- a/doc/misc/reftex.texi
+++ b/doc/misc/reftex.texi
@@ -46,7 +46,8 @@ developing GNU and promoting software freedom.''
46 46
47@dircategory Emacs 47@dircategory Emacs
48@direntry 48@direntry
49* RefTeX: (reftex). Emacs support for LaTeX cross-references and citations. 49* RefTeX: (reftex). Emacs support for LaTeX cross-references
50 and citations.
50@end direntry 51@end direntry
51 52
52@finalout 53@finalout
@@ -3281,7 +3282,7 @@ the style @file{multind.el} contains
3281(TeX-add-style-hook "multind" 3282(TeX-add-style-hook "multind"
3282 (lambda () 3283 (lambda ()
3283 (and (fboundp 'reftex-add-index-macros) 3284 (and (fboundp 'reftex-add-index-macros)
3284 (reftex-add-index-macros '(multind))))) 3285 (reftex-add-index-macros '(multind)))))
3285@end lisp 3286@end lisp
3286 3287
3287If you have your own package @file{myindex} which defines the 3288If you have your own package @file{myindex} which defines the
diff --git a/doc/misc/remember.texi b/doc/misc/remember.texi
index f60d43031be..f9b75e1be00 100644
--- a/doc/misc/remember.texi
+++ b/doc/misc/remember.texi
@@ -27,7 +27,7 @@ developing GNU and promoting software freedom.''
27 27
28@dircategory Emacs 28@dircategory Emacs
29@direntry 29@direntry
30* Remember: (remember). Simple information manager for Emacs 30* Remember: (remember). Simple information manager for Emacs.
31@end direntry 31@end direntry
32 32
33@titlepage 33@titlepage
diff --git a/doc/misc/sasl.texi b/doc/misc/sasl.texi
index ff3481b306a..8a8421b4870 100644
--- a/doc/misc/sasl.texi
+++ b/doc/misc/sasl.texi
@@ -32,7 +32,7 @@ license to the document, as described in section 6 of the license.
32 32
33@dircategory Emacs 33@dircategory Emacs
34@direntry 34@direntry
35* SASL: (sasl). The Emacs SASL library. 35* SASL: (sasl). The Emacs SASL library.
36@end direntry 36@end direntry
37 37
38 38
@@ -148,7 +148,7 @@ of authentication functions.
148 148
149@example 149@example
150(defconst sasl-anonymous-steps 150(defconst sasl-anonymous-steps
151 '(identity ;no initial response 151 '(identity ;no initial response
152 sasl-anonymous-response)) 152 sasl-anonymous-response))
153 153
154(put 'sasl-anonymous 'sasl-mechanism 154(put 'sasl-anonymous 'sasl-mechanism
@@ -232,7 +232,7 @@ authentication protocol exchange. For example,
232@example 232@example
233(process-send-string 233(process-send-string
234 process 234 process
235 (if (sasl-step-data step) ;initial response 235 (if (sasl-step-data step) ;initial response
236 (format "AUTH %s %s\r\n" name (base64-encode-string (sasl-step-data step) t)) 236 (format "AUTH %s %s\r\n" name (base64-encode-string (sasl-step-data step) t))
237 (format "AUTH %s\r\n" name))) 237 (format "AUTH %s\r\n" name)))
238@end example 238@end example
diff --git a/doc/misc/sc.texi b/doc/misc/sc.texi
index 55d0d733cf0..72a6bfc8989 100644
--- a/doc/misc/sc.texi
+++ b/doc/misc/sc.texi
@@ -7,7 +7,7 @@
7@finalout 7@finalout
8@end iftex 8@end iftex
9 9
10@c @setchapternewpage odd % For book style double sided manual. 10@c @setchapternewpage odd % For book style double sided manual.
11@comment %**end of header (This is for running Texinfo on a region.) 11@comment %**end of header (This is for running Texinfo on a region.)
12 12
13@copying 13@copying
@@ -35,8 +35,8 @@ developing GNU and promoting software freedom.''
35 35
36@dircategory Emacs 36@dircategory Emacs
37@direntry 37@direntry
38* SC: (sc). Supercite lets you cite parts of messages you're 38* SC: (sc). Supercite lets you cite parts of messages
39 replying to, in flexible ways. 39 you're replying to, in flexible ways.
40@end direntry 40@end direntry
41 41
42@titlepage 42@titlepage
@@ -1795,23 +1795,23 @@ interface was formally proposed by Martin Neitzel on Fri, 23 Jun 89, in
1795a mail message to the Supercite mailing list: 1795a mail message to the Supercite mailing list:
1796 1796
1797@example 1797@example
1798 Martin> Each news/mail-reader should provide a form of 1798 Martin> Each news/mail-reader should provide a form of
1799 Martin> mail-yank-original that 1799 Martin> mail-yank-original that
1800 1800
1801 Martin> 1: inserts the original message incl. header into the 1801 Martin> 1: inserts the original message incl. header into the
1802 Martin> reply buffer; no indentation/prefixing is done, the header 1802 Martin> reply buffer; no indentation/prefixing is done, the header
1803 Martin> tends to be a "full blown" version rather than to be 1803 Martin> tends to be a "full blown" version rather than to be
1804 Martin> stripped down. 1804 Martin> stripped down.
1805 1805
1806 Martin> 2: `point' is at the start of the header, `mark' at the 1806 Martin> 2: `point' is at the start of the header, `mark' at the
1807 Martin> end of the message body. 1807 Martin> end of the message body.
1808 1808
1809 Martin> 3: (run-hooks 'mail-yank-hooks) 1809 Martin> 3: (run-hooks 'mail-yank-hooks)
1810 1810
1811 Martin> [Supercite] should be run as such a hook and merely 1811 Martin> [Supercite] should be run as such a hook and merely
1812 Martin> rewrite the message. This way it isn't anymore 1812 Martin> rewrite the message. This way it isn't anymore
1813 Martin> [Supercite]'s job to gather the original from obscure 1813 Martin> [Supercite]'s job to gather the original from obscure
1814 Martin> sources. [@dots{}] 1814 Martin> sources. [@dots{}]
1815@end example 1815@end example
1816 1816
1817@vindex mail-citation-hook 1817@vindex mail-citation-hook
diff --git a/doc/misc/sem-user.texi b/doc/misc/sem-user.texi
index 5ad3b9c6e3d..c731c1843dd 100644
--- a/doc/misc/sem-user.texi
+++ b/doc/misc/sem-user.texi
@@ -1,7 +1,7 @@
1@c This file is included by semantic.texi 1@c This file is included by semantic.texi
2 2
3@c Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010 3@c Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009,
4@c Free Software Foundation, Inc. 4@c 2010 Free Software Foundation, Inc.
5 5
6@c Permission is granted to copy, distribute and/or modify this 6@c Permission is granted to copy, distribute and/or modify this
7@c document under the terms of the GNU Free Documentation License, 7@c document under the terms of the GNU Free Documentation License,
@@ -328,8 +328,8 @@ for a given major mode, like this:
328 328
329@example 329@example
330(setq-mode-local c-mode 330(setq-mode-local c-mode
331 semanticdb-find-default-throttle 331 semanticdb-find-default-throttle
332 '(project unloaded system recursive)) 332 '(project unloaded system recursive))
333@end example 333@end example
334 334
335@defvar semanticdb-find-default-throttle 335@defvar semanticdb-find-default-throttle
diff --git a/doc/misc/semantic.texi b/doc/misc/semantic.texi
index 08d82d35a43..65bd718dfff 100644
--- a/doc/misc/semantic.texi
+++ b/doc/misc/semantic.texi
@@ -43,7 +43,7 @@ developing GNU and promoting software freedom.''
43 43
44@dircategory Emacs 44@dircategory Emacs
45@direntry 45@direntry
46* Semantic: (semantic). Source code parser library and utilities. 46* Semantic: (semantic). Source code parser library and utilities.
47@end direntry 47@end direntry
48 48
49@titlepage 49@titlepage
@@ -224,8 +224,8 @@ grammar developers; it is useful mostly for the hackers who would like
224to learn more about how @semantic{} works. 224to learn more about how @semantic{} works.
225 225
226@menu 226@menu
227* Parser code :: Code used for the parsers 227* Parser code :: Code used for the parsers
228* Tag handling :: Code used for manipulating tags 228* Tag handling :: Code used for manipulating tags
229* Semanticdb Internals :: Code used in the semantic database 229* Semanticdb Internals :: Code used in the semantic database
230* Analyzer Internals :: Code used in the code analyzer 230* Analyzer Internals :: Code used in the code analyzer
231* Tools :: Code used in user tools 231* Tools :: Code used in user tools
diff --git a/doc/misc/ses.texi b/doc/misc/ses.texi
index af3970884c7..60d419083e2 100644
--- a/doc/misc/ses.texi
+++ b/doc/misc/ses.texi
@@ -11,8 +11,8 @@
11@copying 11@copying
12This file documents SES: the Simple Emacs Spreadsheet. 12This file documents SES: the Simple Emacs Spreadsheet.
13 13
14Copyright @copyright{} 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 14Copyright @copyright{} 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
15Free Software Foundation, Inc. 152010 Free Software Foundation, Inc.
16 16
17@quotation 17@quotation
18Permission is granted to copy, distribute and/or modify this document 18Permission is granted to copy, distribute and/or modify this document
@@ -30,7 +30,7 @@ developing GNU and promoting software freedom.''
30 30
31@dircategory Emacs 31@dircategory Emacs
32@direntry 32@direntry
33* SES: (ses). Simple Emacs Spreadsheet 33* SES: (ses). Simple Emacs Spreadsheet.
34@end direntry 34@end direntry
35 35
36@finalout 36@finalout
diff --git a/doc/misc/sieve.texi b/doc/misc/sieve.texi
index 8473f6cd359..9a1a0faf4c8 100644
--- a/doc/misc/sieve.texi
+++ b/doc/misc/sieve.texi
@@ -8,8 +8,8 @@
8@copying 8@copying
9This file documents the Emacs Sieve package, for server-side mail filtering. 9This file documents the Emacs Sieve package, for server-side mail filtering.
10 10
11Copyright @copyright{} 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 11Copyright @copyright{} 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
12Free Software Foundation, Inc. 122009, 2010 Free Software Foundation, Inc.
13 13
14@quotation 14@quotation
15Permission is granted to copy, distribute and/or modify this document 15Permission is granted to copy, distribute and/or modify this document
@@ -227,7 +227,7 @@ the @code{fileinto} command.
227require "fileinto"; 227require "fileinto";
228 228
229if address "sender" "owner-w3-beta@@xemacs.org" @{ 229if address "sender" "owner-w3-beta@@xemacs.org" @{
230 fileinto "INBOX.w3-beta"; 230 fileinto "INBOX.w3-beta";
231@} 231@}
232@end example 232@end example
233 233
@@ -238,7 +238,7 @@ required.
238 238
239@example 239@example
240if header :contains "Delivered-To" "auc-tex@@sunsite.dk" @{ 240if header :contains "Delivered-To" "auc-tex@@sunsite.dk" @{
241 fileinto "INBOX.auc-tex"; 241 fileinto "INBOX.auc-tex";
242@} 242@}
243@end example 243@end example
244 244
@@ -249,7 +249,7 @@ has been required.
249 249
250@example 250@example
251if address ["to", "cc"] "kerberos@@mit.edu" @{ 251if address ["to", "cc"] "kerberos@@mit.edu" @{
252 fileinto "INBOX.kerberos"; 252 fileinto "INBOX.kerberos";
253@} 253@}
254@end example 254@end example
255 255
diff --git a/doc/misc/smtpmail.texi b/doc/misc/smtpmail.texi
index fcb6ea65472..05bae38e7a8 100644
--- a/doc/misc/smtpmail.texi
+++ b/doc/misc/smtpmail.texi
@@ -22,7 +22,7 @@ developing GNU and promoting software freedom.''
22 22
23@dircategory Emacs 23@dircategory Emacs
24@direntry 24@direntry
25* SMTP: (smtpmail). Emacs library for sending mail via SMTP. 25* SMTP: (smtpmail). Emacs library for sending mail via SMTP.
26@end direntry 26@end direntry
27 27
28@titlepage 28@titlepage
@@ -44,17 +44,17 @@ developing GNU and promoting software freedom.''
44@end ifnottex 44@end ifnottex
45 45
46@menu 46@menu
47* How Mail Works:: Brief introduction to mail concepts. 47* How Mail Works:: Brief introduction to mail concepts.
48* Emacs Speaks SMTP:: How to use the SMTP library in Emacs. 48* Emacs Speaks SMTP:: How to use the SMTP library in Emacs.
49* Authentication:: Authenticating yourself to the server. 49* Authentication:: Authenticating yourself to the server.
50* Queued delivery:: Sending mail without an internet connection. 50* Queued delivery:: Sending mail without an internet connection.
51* Server workarounds:: Mail servers with special requirements. 51* Server workarounds:: Mail servers with special requirements.
52* Debugging:: Tracking down problems. 52* Debugging:: Tracking down problems.
53* GNU Free Documentation License:: The license for this documentation. 53* GNU Free Documentation License:: The license for this documentation.
54 54
55Indices 55Indices
56 56
57* Index:: Index over variables and functions. 57* Index:: Index over variables and functions.
58@end menu 58@end menu
59 59
60@node How Mail Works 60@node How Mail Works
@@ -355,15 +355,15 @@ configurations of sendmail requires this behavior. Don't bother to
355set this unless you have get an error like: 355set this unless you have get an error like:
356 356
357@example 357@example
358 Sending failed; SMTP protocol error 358 Sending failed; SMTP protocol error
359@end example 359@end example
360 360
361when sending mail, and the debug buffer (@pxref{Debugging})) contains 361when sending mail, and the debug buffer (@pxref{Debugging})) contains
362an error such as: 362an error such as:
363 363
364@example 364@example
365 RCPT TO: @var{someone} 365 RCPT TO: @var{someone}
366 501 @var{someone}: recipient address must contain a domain 366 501 @var{someone}: recipient address must contain a domain
367@end example 367@end example
368 368
369@end table 369@end table
diff --git a/doc/misc/speedbar.texi b/doc/misc/speedbar.texi
index 8434e8aa28d..aaf9e938de7 100644
--- a/doc/misc/speedbar.texi
+++ b/doc/misc/speedbar.texi
@@ -23,7 +23,7 @@ developing GNU and promoting software freedom.''
23 23
24@dircategory Emacs 24@dircategory Emacs
25@direntry 25@direntry
26* Speedbar: (speedbar). File/Tag summarizing utility. 26* Speedbar: (speedbar). File/Tag summarizing utility.
27@end direntry 27@end direntry
28 28
29@titlepage 29@titlepage
@@ -1131,7 +1131,7 @@ beginning, like this:
1131 1131
1132@example 1132@example
1133(add-to-list 'speedbar-dynamic-tags-function-list 1133(add-to-list 'speedbar-dynamic-tags-function-list
1134 '(my-fetch-dynamic-tags . my-insert-tag-list)) 1134 '(my-fetch-dynamic-tags . my-insert-tag-list))
1135@end example 1135@end example
1136 1136
1137If your parser is only good for a few types of files, make sure that it 1137If your parser is only good for a few types of files, make sure that it
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi
index 5d250767f7a..4d853a5fb2c 100644
--- a/doc/misc/tramp.texi
+++ b/doc/misc/tramp.texi
@@ -57,8 +57,8 @@ supports it in developing GNU and promoting software freedom.''
57@c Entries for @command{install-info} to use 57@c Entries for @command{install-info} to use
58@dircategory @value{emacsname} 58@dircategory @value{emacsname}
59@direntry 59@direntry
60* TRAMP: (tramp). Transparent Remote Access, Multiple Protocol 60* TRAMP: (tramp). Transparent Remote Access, Multiple Protocol
61 @value{emacsname} remote file access via rsh and rcp. 61 @value{emacsname} remote file access via rsh and rcp.
62@end direntry 62@end direntry
63 63
64@titlepage 64@titlepage
diff --git a/doc/misc/url.texi b/doc/misc/url.texi
index ea7f3211f52..a6bbf0bd3eb 100644
--- a/doc/misc/url.texi
+++ b/doc/misc/url.texi
@@ -15,7 +15,7 @@
15@dircategory World Wide Web 15@dircategory World Wide Web
16@dircategory Emacs 16@dircategory Emacs
17@direntry 17@direntry
18* URL: (url). URL loading package. 18* URL: (url). URL loading package.
19@end direntry 19@end direntry
20 20
21@copying 21@copying
diff --git a/doc/misc/vip.texi b/doc/misc/vip.texi
index 26acf25cb8e..2a4d4191082 100644
--- a/doc/misc/vip.texi
+++ b/doc/misc/vip.texi
@@ -3,8 +3,8 @@
3@settitle VIP 3@settitle VIP
4 4
5@copying 5@copying
6Copyright @copyright{} 1987, 2001, 2002, 2003, 2004, 6Copyright @copyright{} 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
72005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 72008, 2009, 2010 Free Software Foundation, Inc.
8 8
9@quotation 9@quotation
10Permission is granted to copy, distribute and/or modify this document 10Permission is granted to copy, distribute and/or modify this document
@@ -38,7 +38,7 @@ developing GNU and promoting software freedom.''
38 38
39@dircategory Emacs 39@dircategory Emacs
40@direntry 40@direntry
41* VIP: (vip). An older VI-emulation for Emacs. 41* VIP: (vip). An older VI-emulation for Emacs.
42@end direntry 42@end direntry
43 43
44@ifnottex 44@ifnottex
@@ -65,10 +65,10 @@ Comments and bug reports are welcome. Please send messages to
65@end ifnottex 65@end ifnottex
66 66
67@menu 67@menu
68* Survey:: A survey of VIP. 68* Survey:: A survey of VIP.
69* Vi Commands:: Details of Vi commands. 69* Vi Commands:: Details of Vi commands.
70* Ex Commands:: Details of Ex commands. 70* Ex Commands:: Details of Ex commands.
71* Customization:: How to customize VIP. 71* Customization:: How to customize VIP.
72* GNU Free Documentation License:: The license for this documentation. 72* GNU Free Documentation License:: The license for this documentation.
73 73
74@end menu 74@end menu
@@ -99,10 +99,10 @@ In this chapter we describe basics of VIP with emphasis on the features not
99found in Vi and on how to use VIP under GNU Emacs. 99found in Vi and on how to use VIP under GNU Emacs.
100 100
101@menu 101@menu
102* Basic Concepts:: Basic concepts in Emacs. 102* Basic Concepts:: Basic concepts in Emacs.
103* Loading VIP:: How to load VIP automatically. 103* Loading VIP:: How to load VIP automatically.
104* Modes in VIP:: VIP has three modes, which are orthogonal to modes 104* Modes in VIP:: VIP has three modes, which are orthogonal to modes
105 in Emacs. 105 in Emacs.
106* Differences from Vi:: Differences of VIP from Vi is explained. 106* Differences from Vi:: Differences of VIP from Vi is explained.
107@end menu 107@end menu
108 108
@@ -253,10 +253,10 @@ emacs mode vi mode insert mode
253@end ifinfo 253@end ifinfo
254 254
255@menu 255@menu
256* Emacs Mode:: This is the mode you should know better. 256* Emacs Mode:: This is the mode you should know better.
257* Vi Mode:: Vi commands are executed in this mode. 257* Vi Mode:: Vi commands are executed in this mode.
258* Insert Mode:: You can enter text, and also can do editing if you 258* Insert Mode:: You can enter text, and also can do editing if you
259 know enough Emacs commands. 259 know enough Emacs commands.
260@end menu 260@end menu
261 261
262@node Emacs Mode, Vi Mode, Modes in VIP, Modes in VIP 262@node Emacs Mode, Vi Mode, Modes in VIP, Modes in VIP
@@ -306,23 +306,23 @@ Thus typing @kbd{C-z x} in insert mode will have the same effect as typing
306The major differences from Vi are explained below. 306The major differences from Vi are explained below.
307 307
308@menu 308@menu
309* Undoing:: You can undo more in VIP. 309* Undoing:: You can undo more in VIP.
310* Changing:: Commands for changing the text. 310* Changing:: Commands for changing the text.
311* Searching:: Search commands. 311* Searching:: Search commands.
312* z Command:: You can now use zH, zM and zL as well as z- etc. 312* z Command:: You can now use zH, zM and zL as well as z- etc.
313* Counts:: Some Vi commands which do not accept a count now 313* Counts:: Some Vi commands which do not accept a count now
314 accept one. 314 accept one.
315* Marking:: You can now mark the current point, beginning of 315* Marking:: You can now mark the current point, beginning of
316 the buffer etc. 316 the buffer etc.
317* Region Commands:: You can now give a region as an argument for delete 317* Region Commands:: You can now give a region as an argument for delete
318 commands etc. 318 commands etc.
319* New Commands:: Some new commands not available in Vi are added. 319* New Commands:: Some new commands not available in Vi are added.
320* New Bindings:: Bindings of some keys are changed for the 320* New Bindings:: Bindings of some keys are changed for the
321 convenience of editing under Emacs. 321 convenience of editing under Emacs.
322* Window Commands:: Commands for moving among windows etc. 322* Window Commands:: Commands for moving among windows etc.
323* Buffer Commands:: Commands for selecting buffers etc. 323* Buffer Commands:: Commands for selecting buffers etc.
324* File Commands:: Commands for visiting files etc. 324* File Commands:: Commands for visiting files etc.
325* Misc Commands:: Other useful commands. 325* Misc Commands:: Other useful commands.
326@end menu 326@end menu
327 327
328@node Undoing, Changing, Differences from Vi, Differences from Vi 328@node Undoing, Changing, Differences from Vi, Differences from Vi
@@ -693,17 +693,17 @@ VIP. Except for the last section which discusses insert mode, all the
693commands described in this chapter are to be used in vi mode. 693commands described in this chapter are to be used in vi mode.
694 694
695@menu 695@menu
696* Numeric Arguments:: Many commands accept numeric arguments 696* Numeric Arguments:: Many commands accept numeric arguments
697* Important Keys:: Some very important keys. 697* Important Keys:: Some very important keys.
698* Buffers and Windows:: Commands for handling buffers and windows. 698* Buffers and Windows:: Commands for handling buffers and windows.
699* Files:: Commands for handling files. 699* Files:: Commands for handling files.
700* Viewing the Buffer:: How you can view the current buffer. 700* Viewing the Buffer:: How you can view the current buffer.
701* Mark Commands:: Marking positions in a buffer. 701* Mark Commands:: Marking positions in a buffer.
702* Motion Commands:: Commands for moving point. 702* Motion Commands:: Commands for moving point.
703* Searching and Replacing:: Commands for searching and replacing. 703* Searching and Replacing:: Commands for searching and replacing.
704* Modifying Commands:: Commands for modifying the buffer. 704* Modifying Commands:: Commands for modifying the buffer.
705* Other Vi Commands:: Miscellaneous Commands. 705* Other Vi Commands:: Miscellaneous Commands.
706* Commands in Insert Mode:: Commands for entering insert mode. 706* Commands in Insert Mode:: Commands for entering insert mode.
707@end menu 707@end menu
708 708
709@node Numeric Arguments, Important Keys, Vi Commands, Vi Commands 709@node Numeric Arguments, Important Keys, Vi Commands, Vi Commands
@@ -1265,7 +1265,7 @@ vanilla, this command replaces every occurrence of @var{string} with
1265@var{newstring}. If the mode is regular expression, @var{string} is 1265@var{newstring}. If the mode is regular expression, @var{string} is
1266treated as a regular expression and every string matching the regular 1266treated as a regular expression and every string matching the regular
1267expression is replaced with @var{newstring} (@code{vip-replace-string}). 1267expression is replaced with @var{newstring} (@code{vip-replace-string}).
1268@item Q @var{string} RET @var{newstring} 1268@item Q @var{string} RET @var{newstring}
1269@kindex 121 @kbd{Q} (@code{vip-query-replace}) 1269@kindex 121 @kbd{Q} (@code{vip-query-replace})
1270Same as @kbd{R} except that you will be asked form confirmation before each 1270Same as @kbd{R} except that you will be asked form confirmation before each
1271replacement 1271replacement
@@ -1311,10 +1311,10 @@ the region}), and then the enlarged region will be affected by the modifying
1311command. 1311command.
1312 1312
1313@menu 1313@menu
1314* Delete Commands:: Commands for deleting text. 1314* Delete Commands:: Commands for deleting text.
1315* Yank Commands:: Commands for yanking text in Vi's sense. 1315* Yank Commands:: Commands for yanking text in Vi's sense.
1316* Put Back Commands:: Commands for putting back deleted/yanked text. 1316* Put Back Commands:: Commands for putting back deleted/yanked text.
1317* Change Commands:: Commands for changing text. 1317* Change Commands:: Commands for changing text.
1318* Repeating and Undoing Modifications:: 1318* Repeating and Undoing Modifications::
1319@end menu 1319@end menu
1320@node Delete Commands, Yank Commands, Modifying Commands, Modifying Commands 1320@node Delete Commands, Yank Commands, Modifying Commands, Modifying Commands
@@ -1713,7 +1713,7 @@ Several Ex commands can be entered in a line by separating them by a pipe
1713character @samp{|}. 1713character @samp{|}.
1714 1714
1715@menu 1715@menu
1716* Ex Command Reference:: Explain all the Ex commands available in VIP. 1716* Ex Command Reference:: Explain all the Ex commands available in VIP.
1717@end menu 1717@end menu
1718@node Ex Command Reference, Customization, Ex Commands, Ex Commands 1718@node Ex Command Reference, Customization, Ex Commands, Ex Commands
1719@section Ex Command Reference 1719@section Ex Command Reference
@@ -1869,8 +1869,8 @@ will also be loaded when VIP is loaded. This file is thus useful for
1869customizing VIP. 1869customizing VIP.
1870 1870
1871@menu 1871@menu
1872* Customizing Constants:: How to change values of constants. 1872* Customizing Constants:: How to change values of constants.
1873* Customizing Key Bindings:: How to change key bindings. 1873* Customizing Key Bindings:: How to change key bindings.
1874@end menu 1874@end menu
1875 1875
1876@node Customizing Constants, Customizing Key Bindings, Customization, Customization 1876@node Customizing Constants, Customizing Key Bindings, Customization, Customization
diff --git a/doc/misc/viper.texi b/doc/misc/viper.texi
index 497d1b373e1..2100e652950 100644
--- a/doc/misc/viper.texi
+++ b/doc/misc/viper.texi
@@ -26,9 +26,9 @@ developing GNU and promoting software freedom.''
26 26
27@dircategory Emacs 27@dircategory Emacs
28@direntry 28@direntry
29* VIPER: (viper). The newest Emacs VI-emulation mode. 29* VIPER: (viper). The newest Emacs VI-emulation mode.
30 (also, A VI Plan for Emacs Rescue 30 (also, A VI Plan for Emacs Rescue
31 or the VI PERil.) 31 or the VI PERil.)
32@end direntry 32@end direntry
33 33
34@finalout 34@finalout
@@ -3004,14 +3004,14 @@ reference created by @* @samp{maart@@cs.vu.nl} and others. It can be
3004found on the Vi archives. This reference has been adapted for Viper.@refill 3004found on the Vi archives. This reference has been adapted for Viper.@refill
3005 3005
3006@menu 3006@menu
3007* Groundwork:: Textual Conventions and Viper basics 3007* Groundwork:: Textual Conventions and Viper basics
3008* Text Handling:: Moving, Editing, Undoing. 3008* Text Handling:: Moving, Editing, Undoing.
3009* Display:: Scrolling. 3009* Display:: Scrolling.
3010* File and Buffer Handling:: Editing, Writing and Quitting. 3010* File and Buffer Handling:: Editing, Writing and Quitting.
3011* Mapping:: Mapping Keys, Keyboard Macros 3011* Mapping:: Mapping Keys, Keyboard Macros
3012* Shell Commands:: Accessing Shell Commands, Processing Text 3012* Shell Commands:: Accessing Shell Commands, Processing Text
3013* Options:: Ex options, the @kbd{:set} commands 3013* Options:: Ex options, the @kbd{:set} commands
3014* Emacs Related Commands:: Meta Keys, Windows 3014* Emacs Related Commands:: Meta Keys, Windows
3015* Mouse-bound Commands:: Search and insertion of text 3015* Mouse-bound Commands:: Search and insertion of text
3016@end menu 3016@end menu
3017 3017
@@ -3230,15 +3230,15 @@ inserts them automatically in front of the Ex command.
3230@section Text Handling 3230@section Text Handling
3231 3231
3232@menu 3232@menu
3233* Move Commands:: Moving, Searching 3233* Move Commands:: Moving, Searching
3234* Marking:: Textmarkers in Viper and the Emacs Mark. 3234* Marking:: Textmarkers in Viper and the Emacs Mark.
3235* Appending Text:: Text insertion, Shifting, Putting 3235* Appending Text:: Text insertion, Shifting, Putting
3236* Editing in Insert State:: Autoindent, Quoting etc. 3236* Editing in Insert State:: Autoindent, Quoting etc.
3237* Deleting Text:: Deleting 3237* Deleting Text:: Deleting
3238* Changing Text:: Changing, Replacement, Joining 3238* Changing Text:: Changing, Replacement, Joining
3239* Search and Replace:: Searches, Query Replace, Pattern Commands 3239* Search and Replace:: Searches, Query Replace, Pattern Commands
3240* Yanking:: Yanking, Viewing Registers 3240* Yanking:: Yanking, Viewing Registers
3241* Undoing:: Multiple Undo, Backups 3241* Undoing:: Multiple Undo, Backups
3242@end menu 3242@end menu
3243 3243
3244@node Move Commands,Marking,,Text Handling 3244@node Move Commands,Marking,,Text Handling
diff --git a/doc/misc/widget.texi b/doc/misc/widget.texi
index fc8f3b2ea58..2d95daf36d4 100644
--- a/doc/misc/widget.texi
+++ b/doc/misc/widget.texi
@@ -8,8 +8,8 @@
8@c %**end of header 8@c %**end of header
9 9
10@copying 10@copying
11Copyright @copyright{} 2000, 2001, 2002, 2003, 2004, 2005, 11Copyright @copyright{} 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
122006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 122008, 2009, 2010 Free Software Foundation, Inc.
13 13
14@quotation 14@quotation
15Permission is granted to copy, distribute and/or modify this document 15Permission is granted to copy, distribute and/or modify this document
@@ -27,8 +27,8 @@ developing GNU and promoting software freedom.''
27 27
28@dircategory Emacs 28@dircategory Emacs
29@direntry 29@direntry
30* Widget: (widget). The "widget" package used by the Emacs Customization 30* Widget: (widget). The "widget" package used by the Emacs
31 facility. 31 Customization facility.
32@end direntry 32@end direntry
33 33
34@contents 34@contents
@@ -338,71 +338,71 @@ Interface}).
338 (remove-overlays) 338 (remove-overlays)
339 (widget-insert "Here is some documentation.\n\n") 339 (widget-insert "Here is some documentation.\n\n")
340 (widget-create 'editable-field 340 (widget-create 'editable-field
341 :size 13 341 :size 13
342 :format "Name: %v " ; Text after the field! 342 :format "Name: %v " ; Text after the field!
343 "My Name") 343 "My Name")
344 (widget-create 'menu-choice 344 (widget-create 'menu-choice
345 :tag "Choose" 345 :tag "Choose"
346 :value "This" 346 :value "This"
347 :help-echo "Choose me, please!" 347 :help-echo "Choose me, please!"
348 :notify (lambda (widget &rest ignore) 348 :notify (lambda (widget &rest ignore)
349 (message "%s is a good choice!" 349 (message "%s is a good choice!"
350 (widget-value widget))) 350 (widget-value widget)))
351 '(item :tag "This option" :value "This") 351 '(item :tag "This option" :value "This")
352 '(choice-item "That option") 352 '(choice-item "That option")
353 '(editable-field :menu-tag "No option" "Thus option")) 353 '(editable-field :menu-tag "No option" "Thus option"))
354 (widget-create 'editable-field 354 (widget-create 'editable-field
355 :format "Address: %v" 355 :format "Address: %v"
356 "Some Place\nIn some City\nSome country.") 356 "Some Place\nIn some City\nSome country.")
357 (widget-insert "\nSee also ") 357 (widget-insert "\nSee also ")
358 (widget-create 'link 358 (widget-create 'link
359 :notify (lambda (&rest ignore) 359 :notify (lambda (&rest ignore)
360 (widget-value-set widget-example-repeat 360 (widget-value-set widget-example-repeat
361 '("En" "To" "Tre")) 361 '("En" "To" "Tre"))
362 (widget-setup)) 362 (widget-setup))
363 "other work") 363 "other work")
364 (widget-insert 364 (widget-insert
365 " for more information.\n\nNumbers: count to three below\n") 365 " for more information.\n\nNumbers: count to three below\n")
366 (setq widget-example-repeat 366 (setq widget-example-repeat
367 (widget-create 'editable-list 367 (widget-create 'editable-list
368 :entry-format "%i %d %v" 368 :entry-format "%i %d %v"
369 :notify (lambda (widget &rest ignore) 369 :notify (lambda (widget &rest ignore)
370 (let ((old (widget-get widget 370 (let ((old (widget-get widget
371 ':example-length)) 371 ':example-length))
372 (new (length (widget-value widget)))) 372 (new (length (widget-value widget))))
373 (unless (eq old new) 373 (unless (eq old new)
374 (widget-put widget ':example-length new) 374 (widget-put widget ':example-length new)
375 (message "You can count to %d." new)))) 375 (message "You can count to %d." new))))
376 :value '("One" "Eh, two?" "Five!") 376 :value '("One" "Eh, two?" "Five!")
377 '(editable-field :value "three"))) 377 '(editable-field :value "three")))
378 (widget-insert "\n\nSelect multiple:\n\n") 378 (widget-insert "\n\nSelect multiple:\n\n")
379 (widget-create 'checkbox t) 379 (widget-create 'checkbox t)
380 (widget-insert " This\n") 380 (widget-insert " This\n")
381 (widget-create 'checkbox nil) 381 (widget-create 'checkbox nil)
382 (widget-insert " That\n") 382 (widget-insert " That\n")
383 (widget-create 'checkbox 383 (widget-create 'checkbox
384 :notify (lambda (&rest ignore) (message "Tickle")) 384 :notify (lambda (&rest ignore) (message "Tickle"))
385 t) 385 t)
386 (widget-insert " Thus\n\nSelect one:\n\n") 386 (widget-insert " Thus\n\nSelect one:\n\n")
387 (widget-create 'radio-button-choice 387 (widget-create 'radio-button-choice
388 :value "One" 388 :value "One"
389 :notify (lambda (widget &rest ignore) 389 :notify (lambda (widget &rest ignore)
390 (message "You selected %s" 390 (message "You selected %s"
391 (widget-value widget))) 391 (widget-value widget)))
392 '(item "One") '(item "Another One.") '(item "A Final One.")) 392 '(item "One") '(item "Another One.") '(item "A Final One."))
393 (widget-insert "\n") 393 (widget-insert "\n")
394 (widget-create 'push-button 394 (widget-create 'push-button
395 :notify (lambda (&rest ignore) 395 :notify (lambda (&rest ignore)
396 (if (= (length (widget-value widget-example-repeat)) 396 (if (= (length (widget-value widget-example-repeat))
397 3) 397 3)
398 (message "Congratulation!") 398 (message "Congratulation!")
399 (error "Three was the count!"))) 399 (error "Three was the count!")))
400 "Apply Form") 400 "Apply Form")
401 (widget-insert " ") 401 (widget-insert " ")
402 (widget-create 'push-button 402 (widget-create 'push-button
403 :notify (lambda (&rest ignore) 403 :notify (lambda (&rest ignore)
404 (widget-example)) 404 (widget-example))
405 "Reset Form") 405 "Reset Form")
406 (widget-insert "\n") 406 (widget-insert "\n")
407 (use-local-map widget-keymap) 407 (use-local-map widget-keymap)
408 (widget-setup)) 408 (widget-setup))
diff --git a/doc/misc/woman.texi b/doc/misc/woman.texi
index c2de5d88b58..ba772c4b4a1 100644
--- a/doc/misc/woman.texi
+++ b/doc/misc/woman.texi
@@ -4,7 +4,7 @@
4@settitle WoMan: Browse Unix Manual Pages ``W.O. (without) Man'' 4@settitle WoMan: Browse Unix Manual Pages ``W.O. (without) Man''
5@c FIXME 5@c FIXME
6@c Manual last updated: 6@c Manual last updated:
7@set UPDATED Time-stamp: <Sat 16-Jan-2010 19:18:43 gm on grasmoor> 7@set UPDATED Time-stamp: <Thu 24-Jun-2010 00:06:54 gm on grasmoor>
8@c Software version: 8@c Software version:
9@set VERSION 0.54 (beta) 9@set VERSION 0.54 (beta)
10@afourpaper 10@afourpaper
@@ -37,7 +37,7 @@ developing GNU and promoting software freedom.''
37 37
38@dircategory Emacs 38@dircategory Emacs
39@direntry 39@direntry
40* WoMan: (woman). Browse UN*X Manual Pages "W.O. (without) Man". 40* WoMan: (woman). Browse UN*X Manual Pages "W.O. (without) Man".
41@end direntry 41@end direntry
42 42
43@finalout 43@finalout
diff --git a/etc/ChangeLog b/etc/ChangeLog
index 3e8adcb1b27..49626c5a86f 100644
--- a/etc/ChangeLog
+++ b/etc/ChangeLog
@@ -1,3 +1,7 @@
12010-06-19 Ken Brown <kbrown@cornell.edu>
2
3 * PROBLEMS: Update Cygwin GCC information. (Bug#6458)
4
12010-06-12 Glenn Morris <rgm@gnu.org> 52010-06-12 Glenn Morris <rgm@gnu.org>
2 6
3 * tutorials/TUTORIAL.bg, tutorials/TUTORIAL.es: Fix typos. 7 * tutorials/TUTORIAL.bg, tutorials/TUTORIAL.es: Fix typos.
diff --git a/etc/PROBLEMS b/etc/PROBLEMS
index 8c6a37dbd45..e6174b5edc6 100644
--- a/etc/PROBLEMS
+++ b/etc/PROBLEMS
@@ -2339,17 +2339,10 @@ files are installed. Then use:
2339 2339
2340(using the location of the 32-bit X libraries on your system). 2340(using the location of the 32-bit X libraries on your system).
2341 2341
2342*** Building the Cygwin port for MS-Windows can fail with some GCC versions 2342*** Building Emacs for Cygwin can fail with GCC 3
2343 2343
2344Building Emacs 22 with Cygwin builds of GCC 3.4.4-1 and 3.4.4-2 is 2344As of Emacs 22.1, there have been stability problems with Cygwin
2345reported to either fail or cause Emacs to segfault at run time. In 2345builds of Emacs using GCC 3. Cygwin users are advised to use GCC 4.
2346addition, the Cygwin GCC 3.4.4-2 has problems with generating debug
2347info. Cygwin users are advised not to use these versions of GCC for
2348compiling Emacs. GCC versions 4.0.3, 4.0.4, 4.1.1, and 4.1.2
2349reportedly build a working Cygwin binary of Emacs, so we recommend
2350these GCC versions. Note that these versions of GCC, 4.0.3, 4.0.4,
23514.1.1, and 4.1.2, are currently the _only_ versions known to succeed
2352in building Emacs (as of v22.1).
2353 2346
2354*** Building the native MS-Windows port fails due to unresolved externals 2347*** Building the native MS-Windows port fails due to unresolved externals
2355 2348
diff --git a/info/dir b/info/dir
index 617bfc680bb..ae724d07195 100644
--- a/info/dir
+++ b/info/dir
@@ -19,75 +19,78 @@ The Info Directory
19 19
20* Menu: 20* Menu:
21 21
22* Info: (info). How to use the documentation browsing system. 22* Info: (info). How to use the documentation browsing system.
23 23
24Emacs 24Emacs
25* Emacs: (emacs). The extensible self-documenting text editor. 25* Emacs: (emacs). The extensible self-documenting text editor.
26* Emacs FAQ: (efaq). Frequently Asked Questions about Emacs. 26* Emacs FAQ: (efaq). Frequently Asked Questions about Emacs.
27 27
28GNU Emacs Lisp 28GNU Emacs Lisp
29* Emacs Lisp Intro: (eintr). 29* Emacs Lisp Intro: (eintr). A simple introduction to Emacs Lisp programming.
30 A simple introduction to Emacs Lisp programming. 30* Elisp: (elisp). The Emacs Lisp Reference Manual.
31* Elisp: (elisp). The Emacs Lisp Reference Manual.
32 31
33Emacs editing modes 32Emacs editing modes
34* Ada mode: (ada-mode). Emacs mode for editing and compiling Ada code. 33* Ada mode: (ada-mode). Emacs mode for editing and compiling Ada code.
35* CC Mode: (ccmode). Emacs mode for editing C, C++, Objective-C, 34* CC Mode: (ccmode). Emacs mode for editing C, C++, Objective-C,
36 Java, Pike, AWK, and CORBA IDL code. 35 Java, Pike, AWK, and CORBA IDL code.
37* IDLWAVE: (idlwave). Major mode and shell for IDL files. 36* IDLWAVE: (idlwave). Major mode and shell for IDL files.
38* nXML Mode: (nxml-mode). XML editing mode with RELAX NG support. 37* nXML Mode: (nxml-mode). XML editing mode with RELAX NG support.
39* Org Mode: (org). Outline-based notes management and organizer 38* Org Mode: (org). Outline-based notes management and organizer
40 39
41Emacs network features 40Emacs network features
42* EUDC: (eudc). An Emacs client for directory servers (LDAP, PH). 41* EUDC: (eudc). Emacs client for directory servers (LDAP, PH).
43* Gnus: (gnus). The newsreader Gnus. 42* Gnus: (gnus). The newsreader Gnus.
44* Mairix: (mairix-el). Emacs interface to the Mairix mail indexer. 43* Mairix: (mairix-el). Emacs interface to the Mairix mail indexer.
45* MH-E: (mh-e). Emacs interface to the MH mail system. 44* MH-E: (mh-e). Emacs interface to the MH mail system.
46* Message: (message). Mail and news composition mode that goes with Gnus. 45* Message: (message). Mail and news composition mode that
47* Newsticker: (newsticker). A Newsticker for Emacs. 46 goes with Gnus.
48* PGG: (pgg). Emacs interface to various PGP implementations. 47* Newsticker: (newsticker). A Newsticker for Emacs.
49* ERC: (erc). Powerful, modular, and extensible IRC client for Emacs. 48* PGG: (pgg). Emacs interface to various PGP implementations.
50* Rcirc: (rcirc). Internet Relay Chat (IRC) client. 49* ERC: (erc). Powerful and extensible IRC client for Emacs.
51* SASL: (sasl). The Emacs SASL library. 50* Rcirc: (rcirc). Internet Relay Chat (IRC) client.
52* SC: (sc). Supercite lets you cite parts of messages you're 51* SASL: (sasl). The Emacs SASL library.
53 replying to, in flexible ways. 52* SC: (sc). Supercite lets you cite parts of messages
53 you're replying to, in flexible ways.
54* Sieve: (sieve). Managing Sieve scripts in Emacs. 54* Sieve: (sieve). Managing Sieve scripts in Emacs.
55* TRAMP: (tramp). Transparent Remote Access, Multiple Protocol 55* TRAMP: (tramp). Transparent Remote Access, Multiple Protocol
56 GNU Emacs remote file access via rsh and rcp. 56 GNU Emacs remote file access via rsh and rcp.
57 57
58Emacs misc features 58Emacs misc features
59* Autotype: (autotype). Convenient features for text that you enter frequently 59* Autotype: (autotype). Convenient features for text that you enter
60 in Emacs. 60 frequently in Emacs.
61* Calc: (calc). Advanced desk calculator and mathematical tool. 61* Calc: (calc). Advanced desk calculator and mathematical tool.
62* Dired-X: (dired-x). Dired Extra Features. 62* Dired-X: (dired-x). Dired Extra Features.
63* EasyPG Assistant: (epa). An Emacs user interface to GNU Privacy Guard. 63* EasyPG Assistant: (epa). An Emacs user interface to GNU Privacy Guard.
64* Ebrowse: (ebrowse). A C++ class browser for Emacs. 64* Ebrowse: (ebrowse). A C++ class browser for Emacs.
65* EDE: (ede). The Emacs Development Environment. 65* EDE: (ede). The Emacs Development Environment.
66* Ediff: (ediff). A visual interface for comparing and merging programs. 66* Ediff: (ediff). A visual interface for comparing and
67* EDT: (edt). An Emacs emulation of the EDT editor. 67 merging programs.
68* EIEIO: (eieio). An object system for Emacs Lisp. 68* EDT: (edt). An Emacs emulation of the EDT editor.
69* Eshell: (eshell). A command shell implemented in Emacs Lisp. 69* EIEIO: (eieio). An object system for Emacs Lisp.
70* Flymake: (flymake). A universal on-the-fly syntax checker. 70* Eshell: (eshell). A command shell implemented in Emacs Lisp.
71* Forms: (forms). Emacs package for editing data bases 71* Flymake: (flymake). A universal on-the-fly syntax checker.
72 by filling in forms. 72* Forms: (forms). Emacs package for editing data bases
73* PCL-CVS: (pcl-cvs). Emacs front-end to CVS. 73 by filling in forms.
74* RefTeX: (reftex). Emacs support for LaTeX cross-references and citations. 74* PCL-CVS: (pcl-cvs). Emacs front-end to CVS.
75* Remember: (remember). Simple information manager for Emacs. 75* RefTeX: (reftex). Emacs support for LaTeX cross-references
76* Semantic: (semantic). Source code parsing utilities for Emacs. 76 and citations.
77* SES: (ses). Simple Emacs Spreadsheet 77* Remember: (remember). Simple information manager for Emacs.
78* Speedbar: (speedbar). File/Tag summarizing utility. 78* Semantic: (semantic). Source code parsing utilities for Emacs.
79* VIP: (vip). An older VI-emulation for Emacs. 79* SES: (ses). Simple Emacs Spreadsheet
80* VIPER: (viper). The newest Emacs VI-emulation mode. 80* Speedbar: (speedbar). File/Tag summarizing utility.
81 (also, A VI Plan for Emacs Rescue 81* VIP: (vip). An older VI-emulation for Emacs.
82 or the VI PERil.) 82* VIPER: (viper). The newest Emacs VI-emulation mode.
83* WoMan: (woman). Browse UN*X Manual Pages "W.O. (without) Man". 83 (also, A VI Plan for Emacs Rescue
84 or the VI PERil.)
85* WoMan: (woman). Browse UN*X Manual Pages "W.O. (without) Man".
84 86
85Emacs lisp libraries 87Emacs lisp libraries
86* Auth-source: (auth). A single configuration for multiple applications. 88* Auth-source: (auth). A single configuration for multiple
87* CL: (cl). Partial Common Lisp support for Emacs Lisp. 89 applications.
90* CL: (cl). Partial Common Lisp support for Emacs Lisp.
88* D-Bus: (dbus). Using D-Bus in Emacs. 91* D-Bus: (dbus). Using D-Bus in Emacs.
89* Emacs MIME: (emacs-mime). Emacs MIME de/composition library. 92* Emacs MIME: (emacs-mime). Emacs MIME de/composition library.
90* URL: (url). URL loading package. 93* URL: (url). URL loading package.
91* Widget: (widget). The "widget" package used by the Emacs Customization 94* Widget: (widget). The "widget" package used by the Emacs
92 facility. 95 Customization facility.
93* SMTP: (smtpmail). Emacs library for sending mail via SMTP. 96* SMTP: (smtpmail). Emacs library for sending mail via SMTP.
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index f793f91a932..01ecaab86b6 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -17,6 +17,12 @@
17 (ispell-complete-word): Use ispell-complete-word-dict or 17 (ispell-complete-word): Use ispell-complete-word-dict or
18 ispell-alternate-dictionary. 18 ispell-alternate-dictionary.
19 19
202010-07-07 Christoph Scholtes <cschol2112@gmail.com>
21
22 * progmodes/python.el (python-font-lock-keywords): Add Python 2.7
23 builtins (BufferError, BytesWarning, WindowsError; callables
24 bin, bytearray, bytes, format, memoryview, next, print; __package__).
25
202010-07-07 Glenn Morris <rgm@gnu.org> 262010-07-07 Glenn Morris <rgm@gnu.org>
21 27
22 * play/zone.el (top-level): Do not require timer, tabify, or cl. 28 * play/zone.el (top-level): Do not require timer, tabify, or cl.
@@ -207,6 +213,75 @@
207 213
2082010-06-21 Karl Fogel <kfogel@red-bean.com> 2142010-06-21 Karl Fogel <kfogel@red-bean.com>
209 215
216 * play/zone.el (zone-fall-through-ws): Fix next-line ->
217 forward-line fallout.
218
2192010-07-06 Chong Yidong <cyd@stupidchicken.com>
220
221 * mouse.el (mouse-appearance-menu): Add docstring.
222
223 * help.el (describe-key): Print up-event using key-description.
224
2252010-07-03 Michael Albinus <michael.albinus@gmx.de>
226
227 * net/zeroconf.el (zeroconf-resolve-service)
228 (zeroconf-service-resolver-handler): Use
229 `dbus-byte-array-to-string'.
230 (zeroconf-publish-service): Use `dbus-string-to-byte-array'.
231
2322010-07-03 Jan Moringen <jan.moringen@uni-bielefeld.de>
233
234 * net/zeroconf.el (zeroconf-service-remove-hook): New defun.
235
2362010-06-30 Dan Nicolaescu <dann@ics.uci.edu>
237
238 Avoid displaying files with a nil state in vc-dir.
239 * vc-dir.el (vc-dir-update): Obey the noinsert argument in all
240 cases that cause insertion.
241 (vc-dir-resynch-file): Tell vc-dir-update to avoid inserting files
242 with a nil state.
243
2442010-06-30 Chong Yidong <cyd@stupidchicken.com>
245
246 * xml.el (xml-parse-region): Avoid infloop (Bug#5281).
247
2482010-06-29 Leo <sdl.web@gmail.com>
249
250 * emacs-lisp/rx.el (rx): Doc fix. (Bug#6537)
251
2522010-06-27 Oleksandr Gavenko <gavenkoa@gmail.com> (tiny change)
253
254 * generic-x.el (bat-generic-mode): Fix regexp for command line
255 switches (Bug#5719).
256
2572010-06-27 Masatake YAMATO <yamato@redhat.com>
258
259 * htmlfontify.el (hfy-face-attr-for-class): Use append instead
260 of nconc to avoid pure storage error (Bug#6239).
261
2622010-06-27 Christoph <cschol2112@googlemail.com> (tiny change)
263
264 * bookmark.el (bookmark-bmenu-2-window, bookmark-bmenu-other-window)
265 (bookmark-bmenu-other-window-with-mouse): Remove unnecessary
266 bindings of bookmark-automatically-show-annotations (Bug#6515).
267
2682010-06-25 Eli Zaretskii <eliz@gnu.org>
269
270 * arc-mode.el (archive-zip-extract): Don't quote the file name on
271 MS-Windows and MS-DOS. (Bug#6467, Bug#6144)
272
2732010-06-24 Štěpán Němec <stepnem@gmail.com> (tiny change)
274
275 * comint.el (make-comint, make-comint-in-buffer): Mention return
276 value in the docstrings. (Bug#6498)
277
2782010-06-24 Yoni Rabkin <yoni@rabkins.net>
279
280 * bs.el (bs-mode-font-lock-keywords): Remove "by" from Dired pattern,
281 since it is not present when using some non-default switches.
282
2832010-06-23 Karl Fogel <kfogel@red-bean.com>
284
210 * simple.el (compose-mail): Fix doc string to refer to 285 * simple.el (compose-mail): Fix doc string to refer to
211 `compose-mail-user-agent-warnings', instead of to the 286 `compose-mail-user-agent-warnings', instead of to the
212 nonexistent `compose-mail-check-user-agent'. 287 nonexistent `compose-mail-check-user-agent'.
@@ -320,6 +395,66 @@
320 395
321 * emacs-lisp/package.el: New file. 396 * emacs-lisp/package.el: New file.
322 397
3982010-06-22 Dan Nicolaescu <dann@ics.uci.edu>
399
400 Fix vc-annotate for renamed files when using Git.
401 * vc-git.el (vc-git-find-revision): Deal with empty results from
402 ls-files. Doe not pass the object as a file name to cat-file, it
403 is not a file name.
404 (vc-git-annotate-command): Pass the file name using -- to avoid
405 ambiguity with the revision.
406 (vc-git-previous-revision): Pass a relative file name.
407
4082010-06-22 Glenn Morris <rgm@gnu.org>
409
410 * progmodes/js.el (js-mode-map): Use standard capitalization and
411 ellipses for menu entries.
412
413 * wid-edit.el (widget-complete): Doc fix.
414
4152010-06-22 Jürgen Hötzel <juergen@hoetzel.info> (tiny change)
416
417 * wid-edit.el (widget-complete): Fix typo in 2009-12-02 change.
418
4192010-06-22 Dan Nicolaescu <dann@ics.uci.edu>
420
421 Fix annotating other revisions for renamed files in vc-annotate.
422 * vc-annotate.el (vc-annotate): Add an optional argument for the
423 VC backend. Use it when non-nil.
424 (vc-annotate-warp-revision): Pass the VC backend to vc-annotate. (Bug#6487)
425
426 Fix vc-annotate-show-changeset-diff-revision-at-line for git.
427 * vc-annotate.el (vc-annotate-show-diff-revision-at-line-internal):
428 Do not pass the file name to the 'previous-revision call when we
429 don't want a file diff. (Bug#6489)
430
4312010-06-21 Dan Nicolaescu <dann@ics.uci.edu>
432
433 Fix finding revisions for renamed files in vc-annotate.
434 * vc.el (vc-find-revision): Add an optional argument for
435 the VC backend. Use it when non-nil.
436 * vc-annotate.el (vc-annotate-find-revision-at-line): Pass the VC
437 backend to vc-find-revision. (Bug#6487)
438
4392010-06-21 Dan Nicolaescu <dann@ics.uci.edu>
440
441 Fix reading file names in Git annotate buffers.
442 * vc-git.el (vc-git-annotate-extract-revision-at-line): Remove
443 trailing whitespace. Suggested by Eric Hanchrow. (Bug#6481)
444
4452010-06-20 Alan Mackenzie <acm@muc.de>
446
447 * progmodes/cc-mode.el (c-before-hack-hook): When the mode is set
448 in file local variables, set it first.
449
4502010-06-19 Glenn Morris <rgm@gnu.org>
451
452 * descr-text.el (describe-char-unicode-data): Insert separating
453 space when needed. (Bug#6422)
454
455 * progmodes/idlwave.el (idlwave-action-and-binding):
456 Fix typo in 2009-12-03 change. (Bug#6450)
457
3232010-06-17 Stefan Monnier <monnier@iro.umontreal.ca> 4582010-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
324 459
325 * emacs-lisp/macroexp.el (macroexpand-all-1): Put back special 460 * emacs-lisp/macroexp.el (macroexpand-all-1): Put back special
@@ -335,6 +470,8 @@
335 * facemenu.el (list-colors-display): Call `pop-to-buffer' before 470 * facemenu.el (list-colors-display): Call `pop-to-buffer' before
336 `list-colors-print'. (Bug#6332) 471 `list-colors-print'. (Bug#6332)
337 472
473 * subr.el (read-quoted-char): Fix up last change (bug#6290).
474
3382010-06-16 Stefan Monnier <monnier@iro.umontreal.ca> 4752010-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
339 476
340 * emacs-lisp/macroexp.el (macroexpand-all-1): Don't handle `lambda' 477 * emacs-lisp/macroexp.el (macroexpand-all-1): Don't handle `lambda'
diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el
index fb6155dfd41..6dda7b2e40b 100644
--- a/lisp/arc-mode.el
+++ b/lisp/arc-mode.el
@@ -1811,10 +1811,13 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
1811 (t 1811 (t
1812 (archive-extract-by-stdout 1812 (archive-extract-by-stdout
1813 archive 1813 archive
1814 ;; unzip expands wildcards in NAME, so we need to quote it. 1814 ;; unzip expands wildcards in NAME, so we need to quote it. But
1815 ;; not on DOS/Windows, since that fails extraction on those
1816 ;; systems, and file names with wildcards in zip archives don't
1817 ;; work there anyway.
1815 ;; FIXME: Does pkunzip need similar treatment? 1818 ;; FIXME: Does pkunzip need similar treatment?
1816 ;; (7z doesn't need to quote wildcards) 1819 (if (and (not (memq system-type '(windows-nt ms-dos)))
1817 (if (equal (car archive-zip-extract) "unzip") 1820 (equal (car archive-zip-extract) "unzip"))
1818 (shell-quote-argument name) 1821 (shell-quote-argument name)
1819 name) 1822 name)
1820 archive-zip-extract)))) 1823 archive-zip-extract))))
diff --git a/lisp/bs.el b/lisp/bs.el
index 3fa91b49178..0ce7670201d 100644
--- a/lisp/bs.el
+++ b/lisp/bs.el
@@ -195,7 +195,7 @@ return a string representing the column's value."
195 'font-lock-constant-face 195 'font-lock-constant-face
196 'font-lock-comment-face)) 196 'font-lock-comment-face))
197 ;; Dired-Buffers 197 ;; Dired-Buffers
198 '("^..\\(.*Dired by .*\\)$" 1 font-lock-function-name-face) 198 '("^..\\(.*Dired .*\\)$" 1 font-lock-function-name-face)
199 ;; the star for modified buffers 199 ;; the star for modified buffers
200 '("^.\\(\\*\\) +[^\\*]" 1 font-lock-comment-face)) 200 '("^.\\(\\*\\) +[^\\*]" 1 font-lock-comment-face))
201 "Default font lock expressions for Buffer Selection Menu.") 201 "Default font lock expressions for Buffer Selection Menu.")
diff --git a/lisp/comint.el b/lisp/comint.el
index b097baad189..071537ffd89 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -701,7 +701,9 @@ a running process in that buffer, it is not restarted. Optional fourth arg
701STARTFILE is the name of a file, whose contents are sent to the 701STARTFILE is the name of a file, whose contents are sent to the
702process as its initial input. 702process as its initial input.
703 703
704If PROGRAM is a string, any more args are arguments to PROGRAM." 704If PROGRAM is a string, any more args are arguments to PROGRAM.
705
706Returns the (possibly newly created) process buffer."
705 (or (fboundp 'start-file-process) 707 (or (fboundp 'start-file-process)
706 (error "Multi-processing is not supported for this system")) 708 (error "Multi-processing is not supported for this system"))
707 (setq buffer (get-buffer-create (or buffer (concat "*" name "*")))) 709 (setq buffer (get-buffer-create (or buffer (concat "*" name "*"))))
@@ -725,7 +727,9 @@ a running process in that buffer, it is not restarted. Optional third arg
725STARTFILE is the name of a file, whose contents are sent to the 727STARTFILE is the name of a file, whose contents are sent to the
726process as its initial input. 728process as its initial input.
727 729
728If PROGRAM is a string, any more args are arguments to PROGRAM." 730If PROGRAM is a string, any more args are arguments to PROGRAM.
731
732Returns the (possibly newly created) process buffer."
729 (apply #'make-comint-in-buffer name nil program startfile switches)) 733 (apply #'make-comint-in-buffer name nil program startfile switches))
730 734
731;;;###autoload 735;;;###autoload
diff --git a/lisp/descr-text.el b/lisp/descr-text.el
index 735023ceb02..93c69e0eea5 100644
--- a/lisp/descr-text.el
+++ b/lisp/descr-text.el
@@ -301,7 +301,7 @@ This function is semi-obsolete. Use `get-char-code-property'."
301 (lambda (arg) 301 (lambda (arg)
302 (string (string-to-number arg 16))) 302 (string (string-to-number arg 16)))
303 parts " ")) 303 parts " "))
304 (concat info parts)))) 304 (concat info (if info " ") parts))))
305 (list "Decimal digit value" 305 (list "Decimal digit value"
306 (nth 5 fields)) 306 (nth 5 fields))
307 (list "Digit value" 307 (list "Digit value"
diff --git a/lisp/dnd.el b/lisp/dnd.el
index c064aa9897a..d7cbb641bab 100644
--- a/lisp/dnd.el
+++ b/lisp/dnd.el
@@ -1,8 +1,9 @@
1;;; dnd.el --- drag and drop support. 1;;; dnd.el --- drag and drop support. -*- coding: utf-8 -*-
2 2
3;; Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3;; Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
4;; Free Software Foundation, Inc.
4 5
5;; Author: Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 6;; Author: Jan Djärv <jan.h.d@swipnet.se>
6;; Maintainer: FSF 7;; Maintainer: FSF
7;; Keywords: window, drag, drop 8;; Keywords: window, drag, drop
8 9
diff --git a/lisp/emacs-lisp/cl-loaddefs.el b/lisp/emacs-lisp/cl-loaddefs.el
index b14c879fcf7..ff0fa599985 100644
--- a/lisp/emacs-lisp/cl-loaddefs.el
+++ b/lisp/emacs-lisp/cl-loaddefs.el
@@ -282,7 +282,7 @@ Not documented
282;;;;;; flet progv psetq do-all-symbols do-symbols dotimes dolist 282;;;;;; flet progv psetq do-all-symbols do-symbols dotimes dolist
283;;;;;; do* do loop return-from return block etypecase typecase ecase 283;;;;;; do* do loop return-from return block etypecase typecase ecase
284;;;;;; case load-time-value eval-when destructuring-bind function* 284;;;;;; case load-time-value eval-when destructuring-bind function*
285;;;;;; defmacro* defun* gentemp gensym) "cl-macs" "cl-macs.el" "36cafd5054969b5bb0b1ce6a21605fed") 285;;;;;; defmacro* defun* gentemp gensym) "cl-macs" "cl-macs.el" "49b7d96626dd8ba5d39551909edbd4c7")
286;;; Generated autoloads from cl-macs.el 286;;; Generated autoloads from cl-macs.el
287 287
288(autoload 'gensym "cl-macs" "\ 288(autoload 'gensym "cl-macs" "\
diff --git a/lisp/emacs-lisp/rx.el b/lisp/emacs-lisp/rx.el
index 5d04494ecb6..85fe3514b01 100644
--- a/lisp/emacs-lisp/rx.el
+++ b/lisp/emacs-lisp/rx.el
@@ -1053,9 +1053,6 @@ CHAR
1053 like `and', but makes the match accessible with `match-end', 1053 like `and', but makes the match accessible with `match-end',
1054 `match-beginning', and `match-string'. 1054 `match-beginning', and `match-string'.
1055 1055
1056`(group SEXP1 SEXP2 ...)'
1057 another name for `submatch'.
1058
1059`(or SEXP1 SEXP2 ...)' 1056`(or SEXP1 SEXP2 ...)'
1060`(| SEXP1 SEXP2 ...)' 1057`(| SEXP1 SEXP2 ...)'
1061 matches anything that matches SEXP1 or SEXP2, etc. If all 1058 matches anything that matches SEXP1 or SEXP2, etc. If all
diff --git a/lisp/emulation/cua-base.el b/lisp/emulation/cua-base.el
index c2ac7e3b3d0..f6749cd9e97 100644
--- a/lisp/emulation/cua-base.el
+++ b/lisp/emulation/cua-base.el
@@ -4,7 +4,7 @@
4;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
5 5
6;; Author: Kim F. Storm <storm@cua.dk> 6;; Author: Kim F. Storm <storm@cua.dk>
7;; Keywords: keyboard emulation convenience cua 7;; Keywords: keyboard emulations convenience cua
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
diff --git a/lisp/emulation/pc-select.el b/lisp/emulation/pc-select.el
index 529ba290cb8..857f94cb5f5 100644
--- a/lisp/emulation/pc-select.el
+++ b/lisp/emulation/pc-select.el
@@ -6,7 +6,7 @@
6;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 6;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
7 7
8;; Author: Michael Staats <michael@thp.Uni-Duisburg.DE> 8;; Author: Michael Staats <michael@thp.Uni-Duisburg.DE>
9;; Keywords: convenience emulation 9;; Keywords: convenience emulations
10;; Created: 26 Sep 1995 10;; Created: 26 Sep 1995
11 11
12;; This file is part of GNU Emacs. 12;; This file is part of GNU Emacs.
diff --git a/lisp/generic-x.el b/lisp/generic-x.el
index a96ab5cbbe9..0083989c75a 100644
--- a/lisp/generic-x.el
+++ b/lisp/generic-x.el
@@ -508,8 +508,7 @@ like an INI file. You can add this hook to `find-file-hook'."
508 '("^[ \t]*\\(:\\sw+\\)" 1 font-lock-function-name-face t) 508 '("^[ \t]*\\(:\\sw+\\)" 1 font-lock-function-name-face t)
509 '("\\(%\\sw+%\\)" 1 font-lock-variable-name-face t) 509 '("\\(%\\sw+%\\)" 1 font-lock-variable-name-face t)
510 '("\\(%[0-9]\\)" 1 font-lock-variable-name-face t) 510 '("\\(%[0-9]\\)" 1 font-lock-variable-name-face t)
511 '("\\(/[^/ \"\t\n]+\\)" 1 font-lock-type-face) 511 '("[\t ]+\\([+-/][^\t\n\" ]+\\)" 1 font-lock-type-face)
512 '("[\t ]+\\([+-][^\t\n\" ]+\\)" 1 font-lock-type-face)
513 '("[ \t\n|]\\<\\([gG][oO][tT][oO]\\)\\>[ \t]*\\(\\sw+\\)?" 512 '("[ \t\n|]\\<\\([gG][oO][tT][oO]\\)\\>[ \t]*\\(\\sw+\\)?"
514 (1 font-lock-keyword-face) 513 (1 font-lock-keyword-face)
515 (2 font-lock-function-name-face nil t)) 514 (2 font-lock-function-name-face nil t))
diff --git a/lisp/help.el b/lisp/help.el
index 899547aa0a1..9434201797e 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -768,9 +768,10 @@ temporarily enables it to allow getting help on disabled items and buttons."
768 768
769----------------- up-event %s---------------- 769----------------- up-event %s----------------
770 770
771<%S>%s%s runs the command %S, which is " 771%s%s%s runs the command %S, which is "
772 (if mouse-1-tricky "(short click) " "") 772 (if mouse-1-tricky "(short click) " "")
773 ev-type mouse-msg 773 (key-description (vector up-event))
774 mouse-msg
774 (if mouse-1-remapped 775 (if mouse-1-remapped
775 " is remapped to <mouse-2>, which" "") 776 " is remapped to <mouse-2>, which" "")
776 defn-up)) 777 defn-up))
diff --git a/lisp/hl-line.el b/lisp/hl-line.el
index 755ff696453..9a791076002 100644
--- a/lisp/hl-line.el
+++ b/lisp/hl-line.el
@@ -1,12 +1,12 @@
1;;; hl-line.el --- highlight the current line 1;;; hl-line.el --- highlight the current line
2 2
3;; Copyright (C) 1998, 2000, 2001, 2002, 2003, 2004, 3;; Copyright (C) 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
4;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 4;; 2008, 2009, 2010 Free Software Foundation, Inc.
5 5
6;; Author: Dave Love <fx@gnu.org> 6;; Author: Dave Love <fx@gnu.org>
7;; Maintainer: FSF 7;; Maintainer: FSF
8;; Created: 1998-09-13 8;; Created: 1998-09-13
9;; Keywords: faces, frames, emulation 9;; Keywords: faces, frames, emulations
10 10
11;; This file is part of GNU Emacs. 11;; This file is part of GNU Emacs.
12 12
diff --git a/lisp/htmlfontify.el b/lisp/htmlfontify.el
index 12e54972461..035b6d384e7 100644
--- a/lisp/htmlfontify.el
+++ b/lisp/htmlfontify.el
@@ -926,7 +926,7 @@ See also `hfy-display-class' for details of valid values for CLASS."
926 new-spec))))) 926 new-spec)))))
927 (if (or (memq :inherit face-spec) (eq 'default face)) 927 (if (or (memq :inherit face-spec) (eq 'default face))
928 face-spec 928 face-spec
929 (nconc face-spec (list :inherit 'default))) )) 929 (append face-spec (list :inherit 'default)))))
930 930
931;; construct an assoc of (css-tag-name . css-tag-value) pairs 931;; construct an assoc of (css-tag-name . css-tag-value) pairs
932;; from a face or assoc of face attributes: 932;; from a face or assoc of face attributes:
diff --git a/lisp/mouse.el b/lisp/mouse.el
index 53818635511..0b2d7fbf83b 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -2357,6 +2357,7 @@ choose a font."
2357(declare-function font-face-attributes "font.c" (font &optional frame)) 2357(declare-function font-face-attributes "font.c" (font &optional frame))
2358 2358
2359(defun mouse-appearance-menu (event) 2359(defun mouse-appearance-menu (event)
2360 "Show a menu for changing the default face in the current buffer."
2360 (interactive "@e") 2361 (interactive "@e")
2361 (require 'face-remap) 2362 (require 'face-remap)
2362 (when (display-multi-font-p) 2363 (when (display-multi-font-p)
diff --git a/lisp/net/zeroconf.el b/lisp/net/zeroconf.el
index b0b98fc57f3..e49a45c8a48 100644
--- a/lisp/net/zeroconf.el
+++ b/lisp/net/zeroconf.el
@@ -336,6 +336,23 @@ The attributes of SERVICE can be retrieved via the functions
336 (puthash type l-hook zeroconf-service-removed-hooks-hash))) 336 (puthash type l-hook zeroconf-service-removed-hooks-hash)))
337 (t (error "EVENT must be either `:new' or `:removed'")))) 337 (t (error "EVENT must be either `:new' or `:removed'"))))
338 338
339(defun zeroconf-service-remove-hook (type event function)
340 "Remove FUNCTION from the hook of service type TYPE.
341
342EVENT must be either :new or :removed and has to match the event
343type used when registering FUNCTION."
344 (let* ((table (cond
345 ((equal event :new)
346 zeroconf-service-added-hooks-hash)
347 ((equal event :removed)
348 zeroconf-service-removed-hooks-hash)
349 (t (error "EVENT must be either `:new' or `:removed'"))))
350 (l-hook (gethash type table nil)))
351 (remove-hook 'l-hook function)
352 (if l-hook
353 (puthash type l-hook table)
354 (remhash type table))))
355
339(defun zeroconf-get-host () 356(defun zeroconf-get-host ()
340 "Returns the local host name as string." 357 "Returns the local host name as string."
341 (dbus-call-method 358 (dbus-call-method
@@ -407,7 +424,7 @@ TYPE. The resulting list has the format
407 (elt (nth 9 result))) ;; TXT. 424 (elt (nth 9 result))) ;; TXT.
408 ;; The TXT field has the signature "aay". Transform to "as". 425 ;; The TXT field has the signature "aay". Transform to "as".
409 (while elt 426 (while elt
410 (setcar elt (apply 'string (car elt))) 427 (setcar elt (dbus-byte-array-to-string (car elt)))
411 (setq elt (cdr elt))) 428 (setq elt (cdr elt)))
412 429
413 (when nil ;; We discard it, no use so far. 430 (when nil ;; We discard it, no use so far.
@@ -599,7 +616,7 @@ DOMAIN is nil, the local domain is used."
599 ;; The "TXT" field has the signature "aay". Transform to "as". 616 ;; The "TXT" field has the signature "aay". Transform to "as".
600 (let ((elt (nth 9 val))) 617 (let ((elt (nth 9 val)))
601 (while elt 618 (while elt
602 (setcar elt (apply 'string (car elt))) 619 (setcar elt (dbus-byte-array-to-string (car elt)))
603 (setq elt (cdr elt)))) 620 (setq elt (cdr elt))))
604 (when zeroconf-debug 621 (when zeroconf-debug
605 (message "zeroconf-service-resolver-handler: %s %S" 622 (message "zeroconf-service-resolver-handler: %s %S"
@@ -641,11 +658,7 @@ For the description of arguments, see `zeroconf-resolved-services-hash'."
641 658
642 ;; The TXT field has the signature "as". Transform to "aay". 659 ;; The TXT field has the signature "as". Transform to "aay".
643 (dolist (elt txt) 660 (dolist (elt txt)
644 (let (args) 661 (add-to-list 'result (dbus-string-to-byte-array elt)))
645 (add-to-list
646 'result
647 (dolist (elt1 (string-to-list elt) (append '(:array) args))
648 (setq args (append args (list :byte elt1)))))))
649 662
650 ;; Add the service. 663 ;; Add the service.
651 (dbus-call-method 664 (dbus-call-method
diff --git a/lisp/play/zone.el b/lisp/play/zone.el
index 568d4cf2a19..4fa5a8c3920 100644
--- a/lisp/play/zone.el
+++ b/lisp/play/zone.el
@@ -478,8 +478,10 @@ If the element is a function or a list of a function and a number,
478 (wait 0.15) 478 (wait 0.15)
479 newpos fall-p) 479 newpos fall-p)
480 (while (when (save-excursion 480 (while (when (save-excursion
481 (forward-line 1) 481 (and (zerop (forward-line 1))
482 (and (= col (current-column)) 482 (progn
483 (forward-char col)
484 (= col (current-column)))
483 (setq newpos (point)) 485 (setq newpos (point))
484 (string= spaces (buffer-substring-no-properties 486 (string= spaces (buffer-substring-no-properties
485 newpos (+ newpos cw-ceil))) 487 newpos (+ newpos cw-ceil)))
diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el
index 9044b42a838..ed769158a50 100644
--- a/lisp/progmodes/cc-mode.el
+++ b/lisp/progmodes/cc-mode.el
@@ -669,8 +669,13 @@ They are set only when, respectively, the pseudo variables
669 669
670This function is called from the hook `before-hack-local-variables-hook'." 670This function is called from the hook `before-hack-local-variables-hook'."
671 (when c-buffer-is-cc-mode 671 (when c-buffer-is-cc-mode
672 (let ((stile (cdr (assq 'c-file-style file-local-variables-alist))) 672 (let ((mode-cons (assq 'mode file-local-variables-alist))
673 (stile (cdr (assq 'c-file-style file-local-variables-alist)))
673 (offsets (cdr (assq 'c-file-offsets file-local-variables-alist)))) 674 (offsets (cdr (assq 'c-file-offsets file-local-variables-alist))))
675 (when mode-cons
676 (hack-one-local-variable (car mode-cons) (cdr mode-cons))
677 (setq file-local-variables-alist
678 (delq mode-cons file-local-variables-alist)))
674 (when stile 679 (when stile
675 (or (stringp stile) (error "c-file-style is not a string")) 680 (or (stringp stile) (error "c-file-style is not a string"))
676 (c-set-style stile)) 681 (c-set-style stile))
diff --git a/lisp/progmodes/idlwave.el b/lisp/progmodes/idlwave.el
index 402893c5946..1d042c99451 100644
--- a/lisp/progmodes/idlwave.el
+++ b/lisp/progmodes/idlwave.el
@@ -1602,7 +1602,7 @@ Capitalize system variables - action only
1602 `(lambda () 1602 `(lambda ()
1603 (interactive) 1603 (interactive)
1604 (self-insert-command 1) 1604 (self-insert-command 1)
1605 ,@(if (listp cmd) cmd (list cmd)))))) 1605 ,(if (listp cmd) cmd (list cmd))))))
1606 1606
1607;; Set action and key bindings. 1607;; Set action and key bindings.
1608;; See description of the function `idlwave-action-and-binding'. 1608;; See description of the function `idlwave-action-and-binding'.
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index 6bd8fbc2442..60ed14afbac 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -474,8 +474,7 @@ for preventing Firefox from stealing the keyboard focus."
474(defcustom js-js-tmpdir 474(defcustom js-js-tmpdir
475 "~/.emacs.d/js/js" 475 "~/.emacs.d/js/js"
476 "Temporary directory used by `js-mode' to communicate with Mozilla. 476 "Temporary directory used by `js-mode' to communicate with Mozilla.
477This directory must be readable and writable by both Mozilla and 477This directory must be readable and writable by both Mozilla and Emacs."
478Emacs."
479 :type 'directory 478 :type 'directory
480 :group 'js) 479 :group 'js)
481 480
@@ -499,11 +498,11 @@ getting timeout messages."
499 (define-key keymap [(meta ?.)] #'js-find-symbol) 498 (define-key keymap [(meta ?.)] #'js-find-symbol)
500 (easy-menu-define nil keymap "Javascript Menu" 499 (easy-menu-define nil keymap "Javascript Menu"
501 '("Javascript" 500 '("Javascript"
502 ["Select new Mozilla context…" js-set-js-context 501 ["Select New Mozilla Context..." js-set-js-context
503 (fboundp #'inferior-moz-process)] 502 (fboundp #'inferior-moz-process)]
504 ["Evaluate expression in Mozilla context…" js-eval 503 ["Evaluate Expression in Mozilla Context..." js-eval
505 (fboundp #'inferior-moz-process)] 504 (fboundp #'inferior-moz-process)]
506 ["Send current function to Mozilla…" js-eval-defun 505 ["Send Current Function to Mozilla..." js-eval-defun
507 (fboundp #'inferior-moz-process)])) 506 (fboundp #'inferior-moz-process)]))
508 keymap) 507 keymap)
509 "Keymap for `js-mode'.") 508 "Keymap for `js-mode'.")
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 4e0f326e2d4..2b09e346331 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -93,7 +93,7 @@
93 93
94(defvar python-font-lock-keywords 94(defvar python-font-lock-keywords
95 `(,(rx symbol-start 95 `(,(rx symbol-start
96 ;; From v 2.5 reference, § keywords. 96 ;; From v 2.7 reference, § keywords.
97 ;; def and class dealt with separately below 97 ;; def and class dealt with separately below
98 (or "and" "as" "assert" "break" "continue" "del" "elif" "else" 98 (or "and" "as" "assert" "break" "continue" "del" "elif" "else"
99 "except" "exec" "finally" "for" "from" "global" "if" 99 "except" "exec" "finally" "for" "from" "global" "if"
@@ -102,7 +102,7 @@
102 ;; Not real keywords, but close enough to be fontified as such 102 ;; Not real keywords, but close enough to be fontified as such
103 "self" "True" "False") 103 "self" "True" "False")
104 symbol-end) 104 symbol-end)
105 (,(rx symbol-start "None" symbol-end) ; see § Keywords in 2.5 manual 105 (,(rx symbol-start "None" symbol-end) ; see § Keywords in 2.7 manual
106 . font-lock-constant-face) 106 . font-lock-constant-face)
107 ;; Definitions 107 ;; Definitions
108 (,(rx symbol-start (group "class") (1+ space) (group (1+ (or word ?_)))) 108 (,(rx symbol-start (group "class") (1+ space) (group (1+ (or word ?_))))
@@ -117,7 +117,7 @@
117 (0+ "." (1+ (or word ?_))))) 117 (0+ "." (1+ (or word ?_)))))
118 (1 font-lock-type-face)) 118 (1 font-lock-type-face))
119 ;; Built-ins. (The next three blocks are from 119 ;; Built-ins. (The next three blocks are from
120 ;; `__builtin__.__dict__.keys()' in Python 2.5.1.) These patterns 120 ;; `__builtin__.__dict__.keys()' in Python 2.7) These patterns
121 ;; are debateable, but they at least help to spot possible 121 ;; are debateable, but they at least help to spot possible
122 ;; shadowing of builtins. 122 ;; shadowing of builtins.
123 (,(rx symbol-start (or 123 (,(rx symbol-start (or
@@ -135,7 +135,9 @@
135 "SystemExit" "TabError" "TypeError" "UnboundLocalError" 135 "SystemExit" "TabError" "TypeError" "UnboundLocalError"
136 "UnicodeDecodeError" "UnicodeEncodeError" "UnicodeError" 136 "UnicodeDecodeError" "UnicodeEncodeError" "UnicodeError"
137 "UnicodeTranslateError" "UnicodeWarning" "UserWarning" 137 "UnicodeTranslateError" "UnicodeWarning" "UserWarning"
138 "ValueError" "Warning" "ZeroDivisionError") symbol-end) 138 "ValueError" "Warning" "ZeroDivisionError"
139 ;; Python 2.7
140 "BufferError" "BytesWarning" "WindowsError") symbol-end)
139 . font-lock-type-face) 141 . font-lock-type-face)
140 (,(rx (or line-start (not (any ". \t"))) (* (any " \t")) symbol-start 142 (,(rx (or line-start (not (any ". \t"))) (* (any " \t")) symbol-start
141 (group (or 143 (group (or
@@ -152,12 +154,16 @@
152 "range" "raw_input" "reduce" "reload" "repr" "reversed" 154 "range" "raw_input" "reduce" "reload" "repr" "reversed"
153 "round" "set" "setattr" "slice" "sorted" "staticmethod" 155 "round" "set" "setattr" "slice" "sorted" "staticmethod"
154 "str" "sum" "super" "tuple" "type" "unichr" "unicode" "vars" 156 "str" "sum" "super" "tuple" "type" "unichr" "unicode" "vars"
155 "xrange" "zip")) symbol-end) 157 "xrange" "zip"
158 ;; Python 2.7.
159 "bin" "bytearray" "bytes" "format" "memoryview" "next" "print"
160 )) symbol-end)
156 (1 font-lock-builtin-face)) 161 (1 font-lock-builtin-face))
157 (,(rx symbol-start (or 162 (,(rx symbol-start (or
158 ;; other built-ins 163 ;; other built-ins
159 "True" "False" "None" "Ellipsis" 164 "True" "False" "None" "Ellipsis"
160 "_" "__debug__" "__doc__" "__import__" "__name__") symbol-end) 165 "_" "__debug__" "__doc__" "__import__" "__name__" "__package__")
166 symbol-end)
161 . font-lock-builtin-face))) 167 . font-lock-builtin-face)))
162 168
163(defconst python-font-lock-syntactic-keywords 169(defconst python-font-lock-syntactic-keywords
diff --git a/lisp/subr.el b/lisp/subr.el
index 16ba45f1c74..9fb737fd038 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -1874,12 +1874,11 @@ any other non-digit terminates the character code and is then used as input."))
1874 ;; Note: `read-char' does it using the `ascii-character' property. 1874 ;; Note: `read-char' does it using the `ascii-character' property.
1875 ;; We should try and use read-key instead. 1875 ;; We should try and use read-key instead.
1876 (let ((translation (lookup-key local-function-key-map (vector char)))) 1876 (let ((translation (lookup-key local-function-key-map (vector char))))
1877 (if (arrayp translation) 1877 (setq translated (if (arrayp translation)
1878 (setq translated (aref translation 0)))) 1878 (aref translation 0)
1879 (setq translated 1879 char)))
1880 (if (integerp char) 1880 (if (integerp translated)
1881 (char-resolve-modifiers char) 1881 (setq translated (char-resolve-modifiers translated)))
1882 char))
1883 (cond ((null translated)) 1882 (cond ((null translated))
1884 ((not (integerp translated)) 1883 ((not (integerp translated))
1885 (setq unread-command-events (list char) 1884 (setq unread-command-events (list char)
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog
index 1de6f93416a..24fa2c0c064 100644
--- a/lisp/url/ChangeLog
+++ b/lisp/url/ChangeLog
@@ -806,7 +806,7 @@
806 (url-http-parse-headers): Use it. 806 (url-http-parse-headers): Use it.
807 (url-http-handle-authentication): Use subst-char-in-string. 807 (url-http-handle-authentication): Use subst-char-in-string.
808 808
8092005-11-16 Juergen Hoetzel <emacs@hoetzel.info> (tiny change) 8092005-11-16 Jürgen Hötzel <emacs@hoetzel.info> (tiny change)
810 810
811 * url-handlers.el (url-insert-file-contents): Use the charset info 811 * url-handlers.el (url-insert-file-contents): Use the charset info
812 provided by the HTTP server, if any. 812 provided by the HTTP server, if any.
diff --git a/lisp/vc/vc-annotate.el b/lisp/vc/vc-annotate.el
index d0951bdd404..c95fe54d04a 100644
--- a/lisp/vc/vc-annotate.el
+++ b/lisp/vc/vc-annotate.el
@@ -315,7 +315,7 @@ use; you may override this using the second optional arg MODE."
315 vc-annotate-display-mode)))) 315 vc-annotate-display-mode))))
316 316
317;;;###autoload 317;;;###autoload
318(defun vc-annotate (file rev &optional display-mode buf move-point-to) 318(defun vc-annotate (file rev &optional display-mode buf move-point-to vc-bk)
319 "Display the edit history of the current FILE using colors. 319 "Display the edit history of the current FILE using colors.
320 320
321This command creates a buffer that shows, for each line of the current 321This command creates a buffer that shows, for each line of the current
@@ -336,6 +336,8 @@ age, and everything that is older than that is shown in blue.
336 336
337If MOVE-POINT-TO is given, move the point to that line. 337If MOVE-POINT-TO is given, move the point to that line.
338 338
339If VC-BK is given used that VC backend.
340
339Customization variables: 341Customization variables:
340 342
341`vc-annotate-menu-elements' customizes the menu elements of the 343`vc-annotate-menu-elements' customizes the menu elements of the
@@ -376,7 +378,7 @@ mode-specific menu. `vc-annotate-color-map' and
376 ;; In case it had to be uniquified. 378 ;; In case it had to be uniquified.
377 (setq temp-buffer-name (buffer-name)))) 379 (setq temp-buffer-name (buffer-name))))
378 (with-output-to-temp-buffer temp-buffer-name 380 (with-output-to-temp-buffer temp-buffer-name
379 (let ((backend (vc-backend file)) 381 (let ((backend (or vc-bk (vc-backend file)))
380 (coding-system-for-read buffer-file-coding-system)) 382 (coding-system-for-read buffer-file-coding-system))
381 (vc-call-backend backend 'annotate-command file 383 (vc-call-backend backend 'annotate-command file
382 (get-buffer temp-buffer-name) rev) 384 (get-buffer temp-buffer-name) rev)
@@ -462,7 +464,7 @@ Return a cons (REV . FILENAME)."
462 (if (not rev-at-line) 464 (if (not rev-at-line)
463 (message "Cannot extract revision number from the current line") 465 (message "Cannot extract revision number from the current line")
464 (switch-to-buffer-other-window 466 (switch-to-buffer-other-window
465 (vc-find-revision (cdr rev-at-line) (car rev-at-line))))))) 467 (vc-find-revision (cdr rev-at-line) (car rev-at-line) vc-annotate-backend))))))
466 468
467(defun vc-annotate-revision-previous-to-line () 469(defun vc-annotate-revision-previous-to-line ()
468 "Visit the annotation of the revision before the revision at line." 470 "Visit the annotation of the revision before the revision at line."
@@ -527,7 +529,7 @@ the file in question, search for the log entry required and move point ."
527 (message "Cannot extract revision number from the current line") 529 (message "Cannot extract revision number from the current line")
528 (setq prev-rev 530 (setq prev-rev
529 (vc-call-backend vc-annotate-backend 'previous-revision 531 (vc-call-backend vc-annotate-backend 'previous-revision
530 fname rev)) 532 (if filediff fname nil) rev))
531 (if (not prev-rev) 533 (if (not prev-rev)
532 (message "Cannot diff from any revision prior to %s" rev) 534 (message "Cannot diff from any revision prior to %s" rev)
533 (save-window-excursion 535 (save-window-excursion
@@ -597,7 +599,8 @@ describes a revision number, so warp to that revision."
597 ;; place the point in the line. 599 ;; place the point in the line.
598 (min oldline (progn (goto-char (point-max)) 600 (min oldline (progn (goto-char (point-max))
599 (forward-line -1) 601 (forward-line -1)
600 (line-number-at-pos)))))))) 602 (line-number-at-pos)))
603 vc-annotate-backend)))))
601 604
602(defun vc-annotate-compcar (threshold a-list) 605(defun vc-annotate-compcar (threshold a-list)
603 "Test successive cons cells of A-LIST against THRESHOLD. 606 "Test successive cons cells of A-LIST against THRESHOLD.
diff --git a/lisp/vc/vc-dir.el b/lisp/vc/vc-dir.el
index 161013fbae0..9cacef2f71b 100644
--- a/lisp/vc/vc-dir.el
+++ b/lisp/vc/vc-dir.el
@@ -412,22 +412,24 @@ If NOINSERT, ignore elements on ENTRIES which are not in the ewoc."
412 (setq entry (car entries)) 412 (setq entry (car entries))
413 (setq node (ewoc-next vc-ewoc node))) 413 (setq node (ewoc-next vc-ewoc node)))
414 (t 414 (t
415 (ewoc-enter-before vc-ewoc node 415 (unless noinsert
416 (apply 'vc-dir-create-fileinfo entry)) 416 (ewoc-enter-before vc-ewoc node
417 (apply 'vc-dir-create-fileinfo entry)))
417 (setq entries (cdr entries)) 418 (setq entries (cdr entries))
418 (setq entry (car entries)))))) 419 (setq entry (car entries))))))
419 (t 420 (t
420 ;; We might need to insert a directory node if the 421 (unless noinsert
421 ;; previous node was in a different directory. 422 ;; We might need to insert a directory node if the
422 (let* ((rd (file-relative-name entrydir)) 423 ;; previous node was in a different directory.
423 (prev-node (ewoc-prev vc-ewoc node)) 424 (let* ((rd (file-relative-name entrydir))
424 (prev-dir (vc-dir-node-directory prev-node))) 425 (prev-node (ewoc-prev vc-ewoc node))
425 (unless (string-equal entrydir prev-dir) 426 (prev-dir (vc-dir-node-directory prev-node)))
426 (ewoc-enter-before 427 (unless (string-equal entrydir prev-dir)
427 vc-ewoc node (vc-dir-create-fileinfo rd nil nil nil entrydir)))) 428 (ewoc-enter-before
428 ;; Now insert the node itself. 429 vc-ewoc node (vc-dir-create-fileinfo rd nil nil nil entrydir))))
429 (ewoc-enter-before vc-ewoc node 430 ;; Now insert the node itself.
430 (apply 'vc-dir-create-fileinfo entry)) 431 (ewoc-enter-before vc-ewoc node
432 (apply 'vc-dir-create-fileinfo entry)))
431 (setq entries (cdr entries) entry (car entries)))))) 433 (setq entries (cdr entries) entry (car entries))))))
432 ;; We're past the last node, all remaining entries go to the end. 434 ;; We're past the last node, all remaining entries go to the end.
433 (unless (or node noinsert) 435 (unless (or node noinsert)
@@ -902,10 +904,12 @@ If it is a file, return the corresponding cons for the file itself."
902 (vc-dir-resync-directory-files file) 904 (vc-dir-resync-directory-files file)
903 (ewoc-set-hf vc-ewoc 905 (ewoc-set-hf vc-ewoc
904 (vc-dir-headers vc-dir-backend default-directory) "")) 906 (vc-dir-headers vc-dir-backend default-directory) ""))
905 (let ((state (vc-dir-recompute-file-state file ddir))) 907 (let* ((complete-state (vc-dir-recompute-file-state file ddir))
908 (state (cadr complete-state)))
906 (vc-dir-update 909 (vc-dir-update
907 (list state) 910 (list complete-state)
908 status-buf (eq (cadr state) 'up-to-date)))))))))) 911 status-buf (or (not state)
912 (eq state 'up-to-date)))))))))))
909 ;; Remove out-of-date entries from vc-dir-buffers. 913 ;; Remove out-of-date entries from vc-dir-buffers.
910 (dolist (b drop) (setq vc-dir-buffers (delq b vc-dir-buffers))))) 914 (dolist (b drop) (setq vc-dir-buffers (delq b vc-dir-buffers)))))
911 915
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el
index 6129b21c324..cccccbdfd02 100644
--- a/lisp/vc/vc-git.el
+++ b/lisp/vc/vc-git.el
@@ -563,13 +563,18 @@ or an empty string if none."
563 (let* (process-file-side-effects 563 (let* (process-file-side-effects
564 (coding-system-for-read 'binary) 564 (coding-system-for-read 'binary)
565 (coding-system-for-write 'binary) 565 (coding-system-for-write 'binary)
566 (fullname (substring 566 (fullname
567 (vc-git--run-command-string 567 (let ((fn (vc-git--run-command-string
568 file "ls-files" "-z" "--full-name" "--") 568 file "ls-files" "-z" "--full-name" "--")))
569 0 -1))) 569 ;; ls-files does not return anything when looking for a
570 ;; revision of a file that has been renamed or removed.
571 (if (string= fn "")
572 (file-relative-name file (vc-git-root default-directory))
573 (substring fn 0 -1)))))
570 (vc-git-command 574 (vc-git-command
571 buffer 0 575 buffer 0
572 (concat (if rev rev "HEAD") ":" fullname) "cat-file" "blob"))) 576 nil
577 "cat-file" "blob" (concat (if rev rev "HEAD") ":" fullname))))
573 578
574(defun vc-git-checkout (file &optional editable rev) 579(defun vc-git-checkout (file &optional editable rev)
575 (vc-git-command nil 0 file "checkout" (or rev "HEAD"))) 580 (vc-git-command nil 0 file "checkout" (or rev "HEAD")))
@@ -723,7 +728,7 @@ or BRANCH^ (where \"^\" can be repeated)."
723 728
724(defun vc-git-annotate-command (file buf &optional rev) 729(defun vc-git-annotate-command (file buf &optional rev)
725 (let ((name (file-relative-name file))) 730 (let ((name (file-relative-name file)))
726 (vc-git-command buf 'async name "blame" "--date=iso" "-C" "-C" rev))) 731 (vc-git-command buf 'async nil "blame" "--date=iso" "-C" "-C" rev "--" name)))
727 732
728(declare-function vc-annotate-convert-time "vc-annotate" (time)) 733(declare-function vc-annotate-convert-time "vc-annotate" (time))
729 734
@@ -740,8 +745,12 @@ or BRANCH^ (where \"^\" can be repeated)."
740 (when (looking-at "\\([0-9a-f^][0-9a-f]+\\) \\(\\([^(]+\\) \\)?") 745 (when (looking-at "\\([0-9a-f^][0-9a-f]+\\) \\(\\([^(]+\\) \\)?")
741 (let ((revision (match-string-no-properties 1))) 746 (let ((revision (match-string-no-properties 1)))
742 (if (match-beginning 2) 747 (if (match-beginning 2)
743 (cons revision (expand-file-name (match-string-no-properties 3) 748 (let ((fname (match-string-no-properties 3)))
744 (vc-git-root default-directory))) 749 ;; Remove trailing whitespace from the file name.
750 (when (string-match " +\\'" fname)
751 (setq fname (substring fname 0 (match-beginning 0))))
752 (cons revision
753 (expand-file-name fname (vc-git-root default-directory))))
745 revision))))) 754 revision)))))
746 755
747;;; TAG SYSTEM 756;;; TAG SYSTEM
@@ -765,11 +774,10 @@ or BRANCH^ (where \"^\" can be repeated)."
765(defun vc-git-previous-revision (file rev) 774(defun vc-git-previous-revision (file rev)
766 "Git-specific version of `vc-previous-revision'." 775 "Git-specific version of `vc-previous-revision'."
767 (if file 776 (if file
768 (let* ((default-directory (file-name-directory (expand-file-name file))) 777 (let* ((fname (file-relative-name file))
769 (file (file-name-nondirectory file))
770 (prev-rev (with-temp-buffer 778 (prev-rev (with-temp-buffer
771 (and 779 (and
772 (vc-git--out-ok "rev-list" "-2" rev "--" file) 780 (vc-git--out-ok "rev-list" "-2" rev "--" fname)
773 (goto-char (point-max)) 781 (goto-char (point-max))
774 (bolp) 782 (bolp)
775 (zerop (forward-line -1)) 783 (zerop (forward-line -1))
diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el
index 23dd6f0f7ae..434c2a10e14 100644
--- a/lisp/vc/vc.el
+++ b/lisp/vc/vc.el
@@ -1700,8 +1700,9 @@ If `F.~REV~' already exists, use it instead of checking it out again."
1700 rev))) 1700 rev)))
1701 (switch-to-buffer-other-window (vc-find-revision file revision)))) 1701 (switch-to-buffer-other-window (vc-find-revision file revision))))
1702 1702
1703(defun vc-find-revision (file revision) 1703(defun vc-find-revision (file revision &optional backend)
1704 "Read REVISION of FILE into a buffer and return the buffer." 1704 "Read REVISION of FILE into a buffer and return the buffer.
1705Use BACKEND as the VC backend if specified."
1705 (let ((automatic-backup (vc-version-backup-file-name file revision)) 1706 (let ((automatic-backup (vc-version-backup-file-name file revision))
1706 (filebuf (or (get-file-buffer file) (current-buffer))) 1707 (filebuf (or (get-file-buffer file) (current-buffer)))
1707 (filename (vc-version-backup-file-name file revision 'manual))) 1708 (filename (vc-version-backup-file-name file revision 'manual)))
@@ -1719,7 +1720,9 @@ If `F.~REV~' already exists, use it instead of checking it out again."
1719 ;; Change buffer to get local value of 1720 ;; Change buffer to get local value of
1720 ;; vc-checkout-switches. 1721 ;; vc-checkout-switches.
1721 (with-current-buffer filebuf 1722 (with-current-buffer filebuf
1722 (vc-call find-revision file revision outbuf)))) 1723 (if backend
1724 (vc-call-backend backend 'find-revision file revision outbuf)
1725 (vc-call find-revision file revision outbuf)))))
1723 (setq failed nil)) 1726 (setq failed nil))
1724 (when (and failed (file-exists-p filename)) 1727 (when (and failed (file-exists-p filename))
1725 (delete-file filename)))) 1728 (delete-file filename))))
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index 5e67c07957e..dfeb6371f5e 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -1156,14 +1156,17 @@ the field."
1156 (if field 1156 (if field
1157 (narrow-to-region (line-beginning-position) (line-end-position))))) 1157 (narrow-to-region (line-beginning-position) (line-end-position)))))
1158 1158
1159;; This used to say:
1160;; "When not inside a field, move to the previous button or field."
1161;; but AFAICS, it has always just thrown an error.
1159(defun widget-complete () 1162(defun widget-complete ()
1160 "Complete content of editable field from point. 1163 "Complete content of editable field from point.
1161When not inside a field, move to the previous button or field." 1164When not inside a field, signal an error."
1162 (interactive) 1165 (interactive)
1163 (let ((field (widget-field-find (point)))) 1166 (let ((field (widget-field-find (point))))
1164 (when field 1167 (if field
1165 (widget-apply field :complete)) 1168 (widget-apply field :complete)
1166 (error "Not in an editable field"))) 1169 (error "Not in an editable field"))))
1167 1170
1168;;; Setting up the buffer. 1171;;; Setting up the buffer.
1169 1172
diff --git a/lisp/x-dnd.el b/lisp/x-dnd.el
index 328eb569c6f..6d38fd043fe 100644
--- a/lisp/x-dnd.el
+++ b/lisp/x-dnd.el
@@ -1,9 +1,9 @@
1;;; x-dnd.el --- drag and drop support for X. 1;;; x-dnd.el --- drag and drop support for X -*- coding: utf-8 -*-
2 2
3;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 3;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Author: Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 6;; Author: Jan Djärv <jan.h.d@swipnet.se>
7;; Maintainer: FSF 7;; Maintainer: FSF
8;; Keywords: window, drag, drop 8;; Keywords: window, drag, drop
9 9
diff --git a/lisp/xml.el b/lisp/xml.el
index 20b595fd2d7..8e8981ac439 100644
--- a/lisp/xml.el
+++ b/lisp/xml.el
@@ -321,18 +321,20 @@ If PARSE-NS is non-nil, then QNAMES are expanded."
321 (progn 321 (progn
322 (forward-char -1) 322 (forward-char -1)
323 (setq result (xml-parse-tag parse-dtd parse-ns)) 323 (setq result (xml-parse-tag parse-dtd parse-ns))
324 (if (and xml result (not xml-sub-parser)) 324 (cond
325 ;; translation of rule [1] of XML specifications 325 ((null result)
326 (error "XML: (Not Well-Formed) Only one root tag allowed") 326 ;; Not looking at an xml start tag.
327 (cond 327 (forward-char 1))
328 ((null result)) 328 ((and xml (not xml-sub-parser))
329 ((and (listp (car result)) 329 ;; Translation of rule [1] of XML specifications
330 parse-dtd) 330 (error "XML: (Not Well-Formed) Only one root tag allowed"))
331 (setq dtd (car result)) 331 ((and (listp (car result))
332 (if (cdr result) ; possible leading comment 332 parse-dtd)
333 (add-to-list 'xml (cdr result)))) 333 (setq dtd (car result))
334 (t 334 (if (cdr result) ; possible leading comment
335 (add-to-list 'xml result))))) 335 (add-to-list 'xml (cdr result))))
336 (t
337 (add-to-list 'xml result))))
336 (goto-char (point-max)))) 338 (goto-char (point-max))))
337 (if parse-dtd 339 (if parse-dtd
338 (cons dtd (nreverse xml)) 340 (cons dtd (nreverse xml))
diff --git a/src/ChangeLog b/src/ChangeLog
index 0bd64c2ae72..404af1949e9 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -811,7 +811,55 @@
811 Improve documentation. Return font regardless of use_system_font. 811 Improve documentation. Return font regardless of use_system_font.
812 (syms_of_xsettings): Improve documentation for font-use-system-font. 812 (syms_of_xsettings): Improve documentation for font-use-system-font.
813 813
8142009-06-17 Naohiro Aota <naota@elisp.net> (tiny change) 8142010-07-10 Chong Yidong <cyd@stupidchicken.com>
815
816 * xfaces.c (realize_face): Garbage the frame if a face is removed
817 (Bug#6593).
818
8192010-07-05 Andreas Schwab <schwab@linux-m68k.org>
820
821 * keyboard.c: Remove duplicate <setjmp.h>.
822 (read_key_sequence): Remove volatile qualifiers.
823
8242010-07-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
825
826 * dispextern.h (FRINGE_HEIGHT_BITS): New define.
827 (struct glyph_row): New members left_fringe_offset and
828 right_fringe_offset.
829
830 * xterm.c (x_draw_fringe_bitmap): Don't clip bottom aligned bitmap
831 specially.
832 * w32term.c (w32_draw_fringe_bitmap): Likewise.
833 * nsterm.m (ns_draw_fringe_bitmap): Likewise.
834
835 * fringe.c (draw_fringe_bitmap_1): Don't clip bitmap here.
836 Take account of bitmap offset.
837 (draw_window_fringes): Take account of window vscroll.
838 (update_window_fringes): Likewise. Extend top-aligned top indicator
839 or bottom-aligned bottom indicator to adjacent rows if it doesn't fit
840 in one row. Don't set redraw_fringe_bitmaps_p outside row comparison.
841 Set left_fringe_offset and right_fringe_offset (Bug#5634, Bug#6325).
842
8432010-07-04 Juanma Barranquero <lekktu@gmail.com>
844
845 * w32fns.c (Qtooltip): Declare.
846 Suggested by Andy Moreton <andrewjmoreton@gmail.com>.
847
8482010-07-03 Jan Djärv <jan.h.d@swipnet.se>
849
850 * xmenu.c (x_activate_menubar): Send Press/Release for Gtk+ to avoid
851 grab on just Press (Bug#6499).
852
8532010-07-02 Chong Yidong <cyd@stupidchicken.com>
854
855 * frame.c (Qtooltip): New var.
856 (delete_frame): Use it. Fix faulty if statement. Don't update
857 mode line for tooltip frames. Suggested by Martin Rudalics.
858
859 * xfns.c (x_create_tip_frame):
860 * w32fns.c (x_create_tip_frame): Use it.
861
8622010-06-17 Naohiro Aota <naota@elisp.net> (tiny change)
815 863
816 * xftfont.c (xftfont_open): Check font width one by one also when 864 * xftfont.c (xftfont_open): Check font width one by one also when
817 spacing is dual. 865 spacing is dual.
@@ -990,6 +1038,30 @@
990 1038
991 * m/ibms390x.h: Rather than duplicating ibms390.h, just include it. 1039 * m/ibms390x.h: Rather than duplicating ibms390.h, just include it.
992 1040
10412010-06-26 Andreas Schwab <schwab@linux-m68k.org>
1042
1043 * alloc.c (Fmake_byte_code): Don't access undefined argument
1044 (Bug#6517).
1045
10462010-06-25 Chong Yidong <cyd@stupidchicken.com>
1047
1048 * xdisp.c (next_element_from_image): Ensure that after-strings are
1049 read the next time we hit handle_stop (Bug#1336).
1050
10512010-06-23 Andreas Schwab <schwab@linux-m68k.org>
1052
1053 * lread.c (read1): Signal error if #s is not followed by paren.
1054
10552010-06-19 Chong Yidong <cyd@stupidchicken.com>
1056
1057 * image.c (free_image): Mark frame as garbaged (Bug#6426).
1058
1059 * keymap.c (Fdefine_key): Doc fix (Bug#6460).
1060
10612010-06-15 Glenn Morris <rgm@gnu.org>
1062
1063 * editfns.c (Fbyte_to_string): Pacify compiler.
1064
9932010-06-09 Stefan Monnier <monnier@iro.umontreal.ca> 10652010-06-09 Stefan Monnier <monnier@iro.umontreal.ca>
994 1066
995 * dbusbind.c (xd_append_arg): Don't "make-unibyte" the string. 1067 * dbusbind.c (xd_append_arg): Don't "make-unibyte" the string.
diff --git a/src/alloc.c b/src/alloc.c
index 2a15fd0d63d..36b197e5eac 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -3030,7 +3030,7 @@ usage: (make-byte-code ARGLIST BYTE-CODE CONSTANTS DEPTH &optional DOCSTRING INT
3030 else 3030 else
3031 val = Fmake_vector (len, Qnil); 3031 val = Fmake_vector (len, Qnil);
3032 3032
3033 if (STRINGP (args[1]) && STRING_MULTIBYTE (args[1])) 3033 if (nargs > 1 && STRINGP (args[1]) && STRING_MULTIBYTE (args[1]))
3034 /* BYTECODE-STRING must have been produced by Emacs 20.2 or the 3034 /* BYTECODE-STRING must have been produced by Emacs 20.2 or the
3035 earlier because they produced a raw 8-bit string for byte-code 3035 earlier because they produced a raw 8-bit string for byte-code
3036 and now such a byte-code string is loaded as multibyte while 3036 and now such a byte-code string is loaded as multibyte while
diff --git a/src/dispextern.h b/src/dispextern.h
index 9bafb49dd91..5ca7e813a1e 100644
--- a/src/dispextern.h
+++ b/src/dispextern.h
@@ -105,6 +105,8 @@ enum window_part
105/* Number of bits allocated to store fringe bitmap numbers. */ 105/* Number of bits allocated to store fringe bitmap numbers. */
106#define FRINGE_ID_BITS 16 106#define FRINGE_ID_BITS 16
107 107
108/* Number of bits allocated to store fringe bitmap height. */
109#define FRINGE_HEIGHT_BITS 8
108 110
109 111
110/*********************************************************************** 112/***********************************************************************
@@ -800,6 +802,12 @@ struct glyph_row
800 /* Face of the right fringe glyph. */ 802 /* Face of the right fringe glyph. */
801 unsigned right_fringe_face_id : FACE_ID_BITS; 803 unsigned right_fringe_face_id : FACE_ID_BITS;
802 804
805 /* Vertical offset of the left fringe bitmap. */
806 signed left_fringe_offset : FRINGE_HEIGHT_BITS;
807
808 /* Vertical offset of the right fringe bitmap. */
809 signed right_fringe_offset : FRINGE_HEIGHT_BITS;
810
803 /* 1 means that we must draw the bitmaps of this row. */ 811 /* 1 means that we must draw the bitmaps of this row. */
804 unsigned redraw_fringe_bitmaps_p : 1; 812 unsigned redraw_fringe_bitmaps_p : 1;
805 813
diff --git a/src/frame.c b/src/frame.c
index 1bbebcde133..cebec92c426 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -100,6 +100,7 @@ Lisp_Object Qgeometry; /* Not used */
100Lisp_Object Qheight, Qwidth; 100Lisp_Object Qheight, Qwidth;
101Lisp_Object Qleft, Qright; 101Lisp_Object Qleft, Qright;
102Lisp_Object Qicon_left, Qicon_top, Qicon_type, Qicon_name; 102Lisp_Object Qicon_left, Qicon_top, Qicon_type, Qicon_name;
103Lisp_Object Qtooltip;
103Lisp_Object Qinternal_border_width; 104Lisp_Object Qinternal_border_width;
104Lisp_Object Qmouse_color; 105Lisp_Object Qmouse_color;
105Lisp_Object Qminibuffer; 106Lisp_Object Qminibuffer;
@@ -1302,7 +1303,7 @@ delete_frame (Lisp_Object frame, Lisp_Object force)
1302 struct frame *sf = SELECTED_FRAME (); 1303 struct frame *sf = SELECTED_FRAME ();
1303 struct kboard *kb; 1304 struct kboard *kb;
1304 1305
1305 int minibuffer_selected; 1306 int minibuffer_selected, tooltip_frame;
1306 1307
1307 if (EQ (frame, Qnil)) 1308 if (EQ (frame, Qnil))
1308 { 1309 {
@@ -1354,13 +1355,15 @@ delete_frame (Lisp_Object frame, Lisp_Object force)
1354 } 1355 }
1355 } 1356 }
1356 1357
1358 tooltip_frame = !NILP (Fframe_parameter (frame, intern ("tooltip")));
1359
1357 /* Run `delete-frame-functions' unless FORCE is `noelisp' or 1360 /* Run `delete-frame-functions' unless FORCE is `noelisp' or
1358 frame is a tooltip. FORCE is set to `noelisp' when handling 1361 frame is a tooltip. FORCE is set to `noelisp' when handling
1359 a disconnect from the terminal, so we don't dare call Lisp 1362 a disconnect from the terminal, so we don't dare call Lisp
1360 code. */ 1363 code. */
1361 if (NILP (Vrun_hooks) || !NILP (Fframe_parameter (frame, intern ("tooltip")))) 1364 if (NILP (Vrun_hooks) || tooltip_frame)
1362 ; 1365 ;
1363 if (EQ (force, Qnoelisp)) 1366 else if (EQ (force, Qnoelisp))
1364 pending_funcalls 1367 pending_funcalls
1365 = Fcons (list3 (Qrun_hook_with_args, Qdelete_frame_functions, frame), 1368 = Fcons (list3 (Qrun_hook_with_args, Qdelete_frame_functions, frame),
1366 pending_funcalls); 1369 pending_funcalls);
@@ -1606,7 +1609,8 @@ delete_frame (Lisp_Object frame, Lisp_Object force)
1606 } 1609 }
1607 1610
1608 /* Cause frame titles to update--necessary if we now have just one frame. */ 1611 /* Cause frame titles to update--necessary if we now have just one frame. */
1609 update_mode_lines = 1; 1612 if (!tooltip_frame)
1613 update_mode_lines = 1;
1610 1614
1611 return Qnil; 1615 return Qnil;
1612} 1616}
@@ -4324,6 +4328,8 @@ syms_of_frame (void)
4324 staticpro (&Qicon_left); 4328 staticpro (&Qicon_left);
4325 Qicon_top = intern_c_string ("icon-top"); 4329 Qicon_top = intern_c_string ("icon-top");
4326 staticpro (&Qicon_top); 4330 staticpro (&Qicon_top);
4331 Qtooltip = intern_c_string ("tooltip");
4332 staticpro (&Qtooltip);
4327 Qleft = intern_c_string ("left"); 4333 Qleft = intern_c_string ("left");
4328 staticpro (&Qleft); 4334 staticpro (&Qleft);
4329 Qright = intern_c_string ("right"); 4335 Qright = intern_c_string ("right");
diff --git a/src/fringe.c b/src/fringe.c
index 50d5a5c9747..399779009dc 100644
--- a/src/fringe.c
+++ b/src/fringe.c
@@ -555,23 +555,26 @@ draw_fringe_bitmap_1 (struct window *w, struct glyph_row *row, int left_p, int o
555 struct fringe_bitmap *fb; 555 struct fringe_bitmap *fb;
556 int period; 556 int period;
557 int face_id = DEFAULT_FACE_ID; 557 int face_id = DEFAULT_FACE_ID;
558 int offset, header_line_height;
558 559
559 p.cursor_p = 0;
560 p.overlay_p = (overlay & 1) == 1; 560 p.overlay_p = (overlay & 1) == 1;
561 p.cursor_p = (overlay & 2) == 2; 561 p.cursor_p = (overlay & 2) == 2;
562 562
563 if (which != NO_FRINGE_BITMAP) 563 if (which != NO_FRINGE_BITMAP)
564 { 564 {
565 offset = 0;
565 } 566 }
566 else if (left_p) 567 else if (left_p)
567 { 568 {
568 which = row->left_fringe_bitmap; 569 which = row->left_fringe_bitmap;
569 face_id = row->left_fringe_face_id; 570 face_id = row->left_fringe_face_id;
571 offset = row->left_fringe_offset;
570 } 572 }
571 else 573 else
572 { 574 {
573 which = row->right_fringe_bitmap; 575 which = row->right_fringe_bitmap;
574 face_id = row->right_fringe_face_id; 576 face_id = row->right_fringe_face_id;
577 offset = row->right_fringe_offset;
575 } 578 }
576 579
577 if (face_id == DEFAULT_FACE_ID) 580 if (face_id == DEFAULT_FACE_ID)
@@ -591,7 +594,7 @@ draw_fringe_bitmap_1 (struct window *w, struct glyph_row *row, int left_p, int o
591 period = fb->period; 594 period = fb->period;
592 595
593 /* Convert row to frame coordinates. */ 596 /* Convert row to frame coordinates. */
594 p.y = WINDOW_TO_FRAME_PIXEL_Y (w, row->y); 597 p.y = WINDOW_TO_FRAME_PIXEL_Y (w, row->y) + offset;
595 598
596 p.which = which; 599 p.which = which;
597 p.bits = fb->bits; 600 p.bits = fb->bits;
@@ -600,9 +603,19 @@ draw_fringe_bitmap_1 (struct window *w, struct glyph_row *row, int left_p, int o
600 p.h = fb->height; 603 p.h = fb->height;
601 p.dh = (period > 0 ? (p.y % period) : 0); 604 p.dh = (period > 0 ? (p.y % period) : 0);
602 p.h -= p.dh; 605 p.h -= p.dh;
603 /* Clip bitmap if too high. */ 606
604 if (p.h > row->height) 607 /* Adjust y to the offset in the row to start drawing the bitmap. */
605 p.h = row->height; 608 switch (fb->align)
609 {
610 case ALIGN_BITMAP_CENTER:
611 p.y += (row->height - p.h) / 2;
612 break;
613 case ALIGN_BITMAP_BOTTOM:
614 p.y += (row->visible_height - p.h);
615 break;
616 case ALIGN_BITMAP_TOP:
617 break;
618 }
606 619
607 p.face = FACE_FROM_ID (f, face_id); 620 p.face = FACE_FROM_ID (f, face_id);
608 621
@@ -618,6 +631,9 @@ draw_fringe_bitmap_1 (struct window *w, struct glyph_row *row, int left_p, int o
618 /* Clear left fringe if no bitmap to draw or if bitmap doesn't fill 631 /* Clear left fringe if no bitmap to draw or if bitmap doesn't fill
619 the fringe. */ 632 the fringe. */
620 p.bx = -1; 633 p.bx = -1;
634 header_line_height = WINDOW_HEADER_LINE_HEIGHT (w);
635 p.by = WINDOW_TO_FRAME_PIXEL_Y (w, max (header_line_height, row->y));
636 p.ny = row->visible_height;
621 if (left_p) 637 if (left_p)
622 { 638 {
623 int wd = WINDOW_LEFT_FRINGE_WIDTH (w); 639 int wd = WINDOW_LEFT_FRINGE_WIDTH (w);
@@ -628,7 +644,7 @@ draw_fringe_bitmap_1 (struct window *w, struct glyph_row *row, int left_p, int o
628 p.wd = wd; 644 p.wd = wd;
629 p.x = x - p.wd - (wd - p.wd) / 2; 645 p.x = x - p.wd - (wd - p.wd) / 2;
630 646
631 if (p.wd < wd || row->height > p.h) 647 if (p.wd < wd || p.y > p.by || p.y + p.h < p.by + p.ny)
632 { 648 {
633 /* If W has a vertical border to its left, don't draw over it. */ 649 /* If W has a vertical border to its left, don't draw over it. */
634 wd -= ((!WINDOW_LEFTMOST_P (w) 650 wd -= ((!WINDOW_LEFTMOST_P (w)
@@ -650,35 +666,13 @@ draw_fringe_bitmap_1 (struct window *w, struct glyph_row *row, int left_p, int o
650 p.x = x + (wd - p.wd) / 2; 666 p.x = x + (wd - p.wd) / 2;
651 /* Clear right fringe if no bitmap to draw of if bitmap doesn't fill 667 /* Clear right fringe if no bitmap to draw of if bitmap doesn't fill
652 the fringe. */ 668 the fringe. */
653 if (p.wd < wd || row->height > p.h) 669 if (p.wd < wd || p.y > p.by || p.y + p.h < p.by + p.ny)
654 { 670 {
655 p.bx = x; 671 p.bx = x;
656 p.nx = wd; 672 p.nx = wd;
657 } 673 }
658 } 674 }
659 675
660 if (p.bx >= 0)
661 {
662 int header_line_height = WINDOW_HEADER_LINE_HEIGHT (w);
663
664 p.by = WINDOW_TO_FRAME_PIXEL_Y (w, max (header_line_height, row->y));
665 p.ny = row->visible_height;
666 }
667
668 /* Adjust y to the offset in the row to start drawing the bitmap. */
669 switch (fb->align)
670 {
671 case ALIGN_BITMAP_CENTER:
672 p.y += (row->height - p.h) / 2;
673 break;
674 case ALIGN_BITMAP_BOTTOM:
675 p.h = fb->height;
676 p.y += (row->visible_height - p.h);
677 break;
678 case ALIGN_BITMAP_TOP:
679 break;
680 }
681
682 FRAME_RIF (f)->draw_fringe_bitmap (w, row, &p); 676 FRAME_RIF (f)->draw_fringe_bitmap (w, row, &p);
683} 677}
684 678
@@ -892,7 +886,7 @@ draw_window_fringes (struct window *w, int no_fringe)
892 struct glyph_row *row; 886 struct glyph_row *row;
893 int yb = window_text_bottom_y (w); 887 int yb = window_text_bottom_y (w);
894 int nrows = w->current_matrix->nrows; 888 int nrows = w->current_matrix->nrows;
895 int y = 0, rn; 889 int y, rn;
896 int updated = 0; 890 int updated = 0;
897 891
898 if (w->pseudo_window_p) 892 if (w->pseudo_window_p)
@@ -904,7 +898,7 @@ draw_window_fringes (struct window *w, int no_fringe)
904 || WINDOW_RIGHT_FRINGE_WIDTH (w) == 0)) 898 || WINDOW_RIGHT_FRINGE_WIDTH (w) == 0))
905 updated++; 899 updated++;
906 900
907 for (y = 0, rn = 0, row = w->current_matrix->rows; 901 for (y = w->vscroll, rn = 0, row = w->current_matrix->rows;
908 y < yb && rn < nrows; 902 y < yb && rn < nrows;
909 y += row->height, ++row, ++rn) 903 y += row->height, ++row, ++rn)
910 { 904 {
@@ -938,6 +932,9 @@ update_window_fringes (struct window *w, int keep_current_p)
938 Lisp_Object ind = Qnil; 932 Lisp_Object ind = Qnil;
939#define MAX_BITMAP_CACHE (8*4) 933#define MAX_BITMAP_CACHE (8*4)
940 int bitmap_cache[MAX_BITMAP_CACHE]; 934 int bitmap_cache[MAX_BITMAP_CACHE];
935 int top_ind_rn, bot_ind_rn;
936 int top_ind_min_y, bot_ind_max_y;
937 int top_row_ends_at_zv_p, bot_row_ends_at_zv_p;
941 938
942 if (w->pseudo_window_p) 939 if (w->pseudo_window_p)
943 return 0; 940 return 0;
@@ -966,11 +963,10 @@ update_window_fringes (struct window *w, int keep_current_p)
966 boundary_top = boundary_bot = Qleft; 963 boundary_top = boundary_bot = Qleft;
967 } 964 }
968 965
966 top_ind_rn = bot_ind_rn = -1;
969 if (!NILP (ind)) 967 if (!NILP (ind))
970 { 968 {
971 int done_top = 0, done_bot = 0; 969 for (y = w->vscroll, rn = 0;
972
973 for (y = 0, rn = 0;
974 y < yb && rn < nrows; 970 y < yb && rn < nrows;
975 y += row->height, ++rn) 971 y += row->height, ++rn)
976 { 972 {
@@ -991,31 +987,25 @@ update_window_fringes (struct window *w, int keep_current_p)
991 987
992 if (!row->mode_line_p) 988 if (!row->mode_line_p)
993 { 989 {
994 if (!done_top) 990 if (top_ind_rn < 0 && row->visible_height > 0)
995 { 991 {
996 if (MATRIX_ROW_START_CHARPOS (row) <= BUF_BEGV (XBUFFER (w->buffer)) 992 if (MATRIX_ROW_START_CHARPOS (row) <= BUF_BEGV (XBUFFER (w->buffer))
997 && !MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P (w, row)) 993 && !MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P (w, row))
998 row->indicate_bob_p = !NILP (boundary_top); 994 row->indicate_bob_p = !NILP (boundary_top);
999 else 995 else
1000 row->indicate_top_line_p = !NILP (arrow_top); 996 row->indicate_top_line_p = !NILP (arrow_top);
1001 done_top = 1; 997 top_ind_rn = rn;
1002 } 998 }
1003 999
1004 if (!done_bot) 1000 if (bot_ind_rn < 0)
1005 { 1001 {
1006 if (MATRIX_ROW_END_CHARPOS (row) >= BUF_ZV (XBUFFER (w->buffer)) 1002 if (MATRIX_ROW_END_CHARPOS (row) >= BUF_ZV (XBUFFER (w->buffer))
1007 && !MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P (w, row)) 1003 && !MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P (w, row))
1008 row->indicate_eob_p = !NILP (boundary_bot), done_bot = 1; 1004 row->indicate_eob_p = !NILP (boundary_bot), bot_ind_rn = rn;
1009 else if (y + row->height >= yb) 1005 else if (y + row->height >= yb)
1010 row->indicate_bottom_line_p = !NILP (arrow_bot), done_bot = 1; 1006 row->indicate_bottom_line_p = !NILP (arrow_bot), bot_ind_rn = rn;
1011 } 1007 }
1012 } 1008 }
1013
1014 if (indicate_bob_p != row->indicate_bob_p
1015 || indicate_top_line_p != row->indicate_top_line_p
1016 || indicate_eob_p != row->indicate_eob_p
1017 || indicate_bottom_line_p != row->indicate_bottom_line_p)
1018 row->redraw_fringe_bitmaps_p = 1;
1019 } 1009 }
1020 } 1010 }
1021 1011
@@ -1039,12 +1029,139 @@ update_window_fringes (struct window *w, int keep_current_p)
1039 get_logical_fringe_bitmap (w, which, 1, partial_p))) 1029 get_logical_fringe_bitmap (w, which, 1, partial_p)))
1040 1030
1041 1031
1042 for (y = 0, rn = 0; 1032 /* Extend top-aligned top indicator (or bottom-aligned bottom
1033 indicator) to adjacent rows if it doesn't fit in one row. */
1034 top_ind_min_y = bot_ind_max_y = -1;
1035 if (top_ind_rn >= 0)
1036 {
1037 int bn = NO_FRINGE_BITMAP;
1038
1039 row = w->desired_matrix->rows + top_ind_rn;
1040 if (!row->enabled_p)
1041 row = w->current_matrix->rows + top_ind_rn;
1042
1043 top_row_ends_at_zv_p = row->ends_at_zv_p;
1044 if (row->indicate_bob_p)
1045 {
1046 if (EQ (boundary_top, Qleft))
1047 bn = ((row->indicate_eob_p && EQ (boundary_bot, Qleft))
1048 ? LEFT_FRINGE (1, Qtop_bottom, row->ends_at_zv_p)
1049 : LEFT_FRINGE (2, Qtop, 0));
1050 else
1051 bn = ((row->indicate_eob_p && EQ (boundary_bot, Qright))
1052 ? RIGHT_FRINGE (1, Qtop_bottom, row->ends_at_zv_p)
1053 : RIGHT_FRINGE (2, Qtop, 0));
1054 }
1055 else if (row->indicate_top_line_p)
1056 {
1057 if (EQ (arrow_top, Qleft))
1058 bn = LEFT_FRINGE (6, Qup, 0);
1059 else
1060 bn = RIGHT_FRINGE (6, Qup, 0);
1061 }
1062
1063 if (bn != NO_FRINGE_BITMAP)
1064 {
1065 struct fringe_bitmap *fb;
1066
1067 fb = fringe_bitmaps[bn];
1068 if (fb == NULL)
1069 fb = &standard_bitmaps[bn < MAX_STANDARD_FRINGE_BITMAPS
1070 ? bn : UNDEF_FRINGE_BITMAP];
1071 if (fb->align == ALIGN_BITMAP_TOP && fb->period == 0)
1072 {
1073 struct glyph_row *row1;
1074 int top_ind_max_y;
1075
1076 top_ind_min_y = WINDOW_HEADER_LINE_HEIGHT (w);
1077 top_ind_max_y = top_ind_min_y + fb->height;
1078 if (top_ind_max_y > yb)
1079 top_ind_max_y = yb;
1080
1081 for (y = row->y + row->height, rn = top_ind_rn + 1;
1082 y < top_ind_max_y && rn < nrows;
1083 y += row1->height, rn++)
1084 {
1085 if (bot_ind_rn >= 0 && rn >= bot_ind_rn)
1086 break;
1087
1088 row1 = w->desired_matrix->rows + rn;
1089 if (!row1->enabled_p)
1090 row1 = w->current_matrix->rows + rn;
1091
1092 row1->indicate_bob_p = row->indicate_bob_p;
1093 row1->indicate_top_line_p = row->indicate_top_line_p;
1094 }
1095 }
1096 }
1097 }
1098 if (bot_ind_rn >= 0)
1099 {
1100 int bn = NO_FRINGE_BITMAP;
1101
1102 row = w->desired_matrix->rows + bot_ind_rn;
1103 if (!row->enabled_p)
1104 row = w->current_matrix->rows + bot_ind_rn;
1105
1106 bot_row_ends_at_zv_p = row->ends_at_zv_p;
1107 if (row->indicate_eob_p)
1108 {
1109 if (EQ (boundary_bot, Qleft))
1110 bn = LEFT_FRINGE (3, Qbottom, row->ends_at_zv_p);
1111 else
1112 bn = RIGHT_FRINGE (3, Qbottom, row->ends_at_zv_p);
1113 }
1114 else if (row->indicate_bottom_line_p)
1115 {
1116 if (EQ (arrow_bot, Qleft))
1117 bn = LEFT_FRINGE (7, Qdown, 0);
1118 else
1119 bn = RIGHT_FRINGE (7, Qdown, 0);
1120 }
1121
1122 if (bn != NO_FRINGE_BITMAP)
1123 {
1124 struct fringe_bitmap *fb;
1125
1126 fb = fringe_bitmaps[bn];
1127 if (fb == NULL)
1128 fb = &standard_bitmaps[bn < MAX_STANDARD_FRINGE_BITMAPS
1129 ? bn : UNDEF_FRINGE_BITMAP];
1130 if (fb->align == ALIGN_BITMAP_BOTTOM && fb->period == 0)
1131 {
1132 struct glyph_row *row1;
1133 int bot_ind_min_y;
1134
1135 bot_ind_max_y = row->y + row->visible_height;
1136 bot_ind_min_y = bot_ind_max_y - fb->height;
1137 if (bot_ind_min_y < WINDOW_HEADER_LINE_HEIGHT (w))
1138 bot_ind_min_y = WINDOW_HEADER_LINE_HEIGHT (w);
1139
1140 for (y = row->y, rn = bot_ind_rn - 1;
1141 y >= bot_ind_min_y && rn >= 0;
1142 y -= row1->height, rn--)
1143 {
1144 if (top_ind_rn >= 0 && rn <= top_ind_rn)
1145 break;
1146
1147 row1 = w->desired_matrix->rows + rn;
1148 if (!row1->enabled_p)
1149 row1 = w->current_matrix->rows + rn;
1150
1151 row1->indicate_eob_p = row->indicate_eob_p;
1152 row1->indicate_bottom_line_p = row->indicate_bottom_line_p;
1153 }
1154 }
1155 }
1156 }
1157
1158 for (y = w->vscroll, rn = 0;
1043 y < yb && rn < nrows; 1159 y < yb && rn < nrows;
1044 y += row->height, rn++) 1160 y += row->height, rn++)
1045 { 1161 {
1046 int left, right; 1162 int left, right;
1047 unsigned left_face_id, right_face_id; 1163 unsigned left_face_id, right_face_id;
1164 int left_offset, right_offset;
1048 1165
1049 row = w->desired_matrix->rows + rn; 1166 row = w->desired_matrix->rows + rn;
1050 cur = w->current_matrix->rows + rn; 1167 cur = w->current_matrix->rows + rn;
@@ -1052,6 +1169,7 @@ update_window_fringes (struct window *w, int keep_current_p)
1052 row = cur; 1169 row = cur;
1053 1170
1054 left_face_id = right_face_id = DEFAULT_FACE_ID; 1171 left_face_id = right_face_id = DEFAULT_FACE_ID;
1172 left_offset = right_offset = 0;
1055 1173
1056 /* Decide which bitmap to draw in the left fringe. */ 1174 /* Decide which bitmap to draw in the left fringe. */
1057 if (WINDOW_LEFT_FRINGE_WIDTH (w) == 0) 1175 if (WINDOW_LEFT_FRINGE_WIDTH (w) == 0)
@@ -1065,20 +1183,35 @@ update_window_fringes (struct window *w, int keep_current_p)
1065 || (row->reversed_p && row->truncated_on_right_p)) 1183 || (row->reversed_p && row->truncated_on_right_p))
1066 left = LEFT_FRINGE(0, Qtruncation, 0); 1184 left = LEFT_FRINGE(0, Qtruncation, 0);
1067 else if (row->indicate_bob_p && EQ (boundary_top, Qleft)) 1185 else if (row->indicate_bob_p && EQ (boundary_top, Qleft))
1068 left = ((row->indicate_eob_p && EQ (boundary_bot, Qleft)) 1186 {
1069 ? LEFT_FRINGE (1, Qtop_bottom, row->ends_at_zv_p) 1187 left = ((row->indicate_eob_p && EQ (boundary_bot, Qleft))
1070 : LEFT_FRINGE (2, Qtop, 0)); 1188 ? LEFT_FRINGE (1, Qtop_bottom, top_row_ends_at_zv_p)
1189 : LEFT_FRINGE (2, Qtop, 0));
1190 if (top_ind_min_y >= 0)
1191 left_offset = top_ind_min_y - row->y;
1192 }
1071 else if (row->indicate_eob_p && EQ (boundary_bot, Qleft)) 1193 else if (row->indicate_eob_p && EQ (boundary_bot, Qleft))
1072 left = LEFT_FRINGE (3, Qbottom, row->ends_at_zv_p); 1194 {
1073 else if ((!row->reversed_p && MATRIX_ROW_CONTINUATION_LINE_P (row)) 1195 left = LEFT_FRINGE (3, Qbottom, bot_row_ends_at_zv_p);
1074 || (row->reversed_p && row->continued_p)) 1196 if (bot_ind_max_y >= 0)
1197 left_offset = bot_ind_max_y - (row->y + row->visible_height);
1198 }
1199 else if (MATRIX_ROW_CONTINUATION_LINE_P (row))
1075 left = LEFT_FRINGE (4, Qcontinuation, 0); 1200 left = LEFT_FRINGE (4, Qcontinuation, 0);
1076 else if (row->indicate_empty_line_p && EQ (empty_pos, Qleft)) 1201 else if (row->indicate_empty_line_p && EQ (empty_pos, Qleft))
1077 left = LEFT_FRINGE (5, Qempty_line, 0); 1202 left = LEFT_FRINGE (5, Qempty_line, 0);
1078 else if (row->indicate_top_line_p && EQ (arrow_top, Qleft)) 1203 else if (row->indicate_top_line_p && EQ (arrow_top, Qleft))
1079 left = LEFT_FRINGE (6, Qup, 0); 1204 {
1205 left = LEFT_FRINGE (6, Qup, 0);
1206 if (top_ind_min_y >= 0)
1207 left_offset = top_ind_min_y - row->y;
1208 }
1080 else if (row->indicate_bottom_line_p && EQ (arrow_bot, Qleft)) 1209 else if (row->indicate_bottom_line_p && EQ (arrow_bot, Qleft))
1081 left = LEFT_FRINGE (7, Qdown, 0); 1210 {
1211 left = LEFT_FRINGE (7, Qdown, 0);
1212 if (bot_ind_max_y >= 0)
1213 left_offset = bot_ind_max_y - (row->y + row->visible_height);
1214 }
1082 else 1215 else
1083 left = NO_FRINGE_BITMAP; 1216 left = NO_FRINGE_BITMAP;
1084 1217
@@ -1094,18 +1227,33 @@ update_window_fringes (struct window *w, int keep_current_p)
1094 || (row->reversed_p && row->truncated_on_left_p)) 1227 || (row->reversed_p && row->truncated_on_left_p))
1095 right = RIGHT_FRINGE (0, Qtruncation, 0); 1228 right = RIGHT_FRINGE (0, Qtruncation, 0);
1096 else if (row->indicate_bob_p && EQ (boundary_top, Qright)) 1229 else if (row->indicate_bob_p && EQ (boundary_top, Qright))
1097 right = ((row->indicate_eob_p && EQ (boundary_bot, Qright)) 1230 {
1098 ? RIGHT_FRINGE (1, Qtop_bottom, row->ends_at_zv_p) 1231 right = ((row->indicate_eob_p && EQ (boundary_bot, Qright))
1099 : RIGHT_FRINGE (2, Qtop, 0)); 1232 ? RIGHT_FRINGE (1, Qtop_bottom, top_row_ends_at_zv_p)
1233 : RIGHT_FRINGE (2, Qtop, 0));
1234 if (top_ind_min_y >= 0)
1235 right_offset = top_ind_min_y - row->y;
1236 }
1100 else if (row->indicate_eob_p && EQ (boundary_bot, Qright)) 1237 else if (row->indicate_eob_p && EQ (boundary_bot, Qright))
1101 right = RIGHT_FRINGE (3, Qbottom, row->ends_at_zv_p); 1238 {
1102 else if ((!row->reversed_p && row->continued_p) 1239 right = RIGHT_FRINGE (3, Qbottom, bot_row_ends_at_zv_p);
1103 || (row->reversed_p && MATRIX_ROW_CONTINUATION_LINE_P (row))) 1240 if (bot_ind_max_y >= 0)
1241 right_offset = bot_ind_max_y - (row->y + row->visible_height);
1242 }
1243 else if (row->continued_p)
1104 right = RIGHT_FRINGE (4, Qcontinuation, 0); 1244 right = RIGHT_FRINGE (4, Qcontinuation, 0);
1105 else if (row->indicate_top_line_p && EQ (arrow_top, Qright)) 1245 else if (row->indicate_top_line_p && EQ (arrow_top, Qright))
1106 right = RIGHT_FRINGE (6, Qup, 0); 1246 {
1247 right = RIGHT_FRINGE (6, Qup, 0);
1248 if (top_ind_min_y >= 0)
1249 right_offset = top_ind_min_y - row->y;
1250 }
1107 else if (row->indicate_bottom_line_p && EQ (arrow_bot, Qright)) 1251 else if (row->indicate_bottom_line_p && EQ (arrow_bot, Qright))
1108 right = RIGHT_FRINGE (7, Qdown, 0); 1252 {
1253 right = RIGHT_FRINGE (7, Qdown, 0);
1254 if (bot_ind_max_y >= 0)
1255 right_offset = bot_ind_max_y - (row->y + row->visible_height);
1256 }
1109 else if (row->indicate_empty_line_p && EQ (empty_pos, Qright)) 1257 else if (row->indicate_empty_line_p && EQ (empty_pos, Qright))
1110 right = RIGHT_FRINGE (5, Qempty_line, 0); 1258 right = RIGHT_FRINGE (5, Qempty_line, 0);
1111 else 1259 else
@@ -1118,6 +1266,8 @@ update_window_fringes (struct window *w, int keep_current_p)
1118 || right != cur->right_fringe_bitmap 1266 || right != cur->right_fringe_bitmap
1119 || left_face_id != cur->left_fringe_face_id 1267 || left_face_id != cur->left_fringe_face_id
1120 || right_face_id != cur->right_fringe_face_id 1268 || right_face_id != cur->right_fringe_face_id
1269 || left_offset != cur->left_fringe_offset
1270 || right_offset != cur->right_fringe_offset
1121 || cur->redraw_fringe_bitmaps_p) 1271 || cur->redraw_fringe_bitmaps_p)
1122 { 1272 {
1123 redraw_p = row->redraw_fringe_bitmaps_p = 1; 1273 redraw_p = row->redraw_fringe_bitmaps_p = 1;
@@ -1128,6 +1278,8 @@ update_window_fringes (struct window *w, int keep_current_p)
1128 cur->right_fringe_bitmap = right; 1278 cur->right_fringe_bitmap = right;
1129 cur->left_fringe_face_id = left_face_id; 1279 cur->left_fringe_face_id = left_face_id;
1130 cur->right_fringe_face_id = right_face_id; 1280 cur->right_fringe_face_id = right_face_id;
1281 cur->left_fringe_offset = left_offset;
1282 cur->right_fringe_offset = right_offset;
1131 } 1283 }
1132 } 1284 }
1133 1285
@@ -1144,9 +1296,8 @@ update_window_fringes (struct window *w, int keep_current_p)
1144 row->right_fringe_bitmap = right; 1296 row->right_fringe_bitmap = right;
1145 row->left_fringe_face_id = left_face_id; 1297 row->left_fringe_face_id = left_face_id;
1146 row->right_fringe_face_id = right_face_id; 1298 row->right_fringe_face_id = right_face_id;
1147 1299 row->left_fringe_offset = left_offset;
1148 if (rn > 0 && row->redraw_fringe_bitmaps_p) 1300 row->right_fringe_offset = right_offset;
1149 row[-1].redraw_fringe_bitmaps_p = cur[-1].redraw_fringe_bitmaps_p = 1;
1150 } 1301 }
1151 1302
1152 return redraw_p && !keep_current_p; 1303 return redraw_p && !keep_current_p;
diff --git a/src/image.c b/src/image.c
index 064278eebbc..6e75921414b 100644
--- a/src/image.c
+++ b/src/image.c
@@ -1053,6 +1053,10 @@ free_image (struct frame *f, struct image *img)
1053 /* Free resources, then free IMG. */ 1053 /* Free resources, then free IMG. */
1054 img->type->free (f, img); 1054 img->type->free (f, img);
1055 xfree (img); 1055 xfree (img);
1056
1057 /* As display glyphs may still be referring to the image ID, we
1058 must garbage the frame (Bug#6426). */
1059 SET_FRAME_GARBAGED (f);
1056 } 1060 }
1057} 1061}
1058 1062
diff --git a/src/keyboard.c b/src/keyboard.c
index 6ea0b90b9b4..cddf04788a6 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -42,7 +42,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
42#include "puresize.h" 42#include "puresize.h"
43#include "systime.h" 43#include "systime.h"
44#include "atimer.h" 44#include "atimer.h"
45#include <setjmp.h>
46#include <errno.h> 45#include <errno.h>
47 46
48#ifdef HAVE_GTK_AND_PTHREAD 47#ifdef HAVE_GTK_AND_PTHREAD
@@ -9000,48 +8999,48 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9000 int dont_downcase_last, int can_return_switch_frame, 8999 int dont_downcase_last, int can_return_switch_frame,
9001 int fix_current_buffer) 9000 int fix_current_buffer)
9002{ 9001{
9003 volatile Lisp_Object from_string; 9002 Lisp_Object from_string;
9004 volatile int count = SPECPDL_INDEX (); 9003 int count = SPECPDL_INDEX ();
9005 9004
9006 /* How many keys there are in the current key sequence. */ 9005 /* How many keys there are in the current key sequence. */
9007 volatile int t; 9006 int t;
9008 9007
9009 /* The length of the echo buffer when we started reading, and 9008 /* The length of the echo buffer when we started reading, and
9010 the length of this_command_keys when we started reading. */ 9009 the length of this_command_keys when we started reading. */
9011 volatile int echo_start; 9010 int echo_start;
9012 volatile int keys_start; 9011 int keys_start;
9013 9012
9014 /* The number of keymaps we're scanning right now, and the number of 9013 /* The number of keymaps we're scanning right now, and the number of
9015 keymaps we have allocated space for. */ 9014 keymaps we have allocated space for. */
9016 volatile int nmaps; 9015 int nmaps;
9017 volatile int nmaps_allocated = 0; 9016 int nmaps_allocated = 0;
9018 9017
9019 /* defs[0..nmaps-1] are the definitions of KEYBUF[0..t-1] in 9018 /* defs[0..nmaps-1] are the definitions of KEYBUF[0..t-1] in
9020 the current keymaps. */ 9019 the current keymaps. */
9021 Lisp_Object *volatile defs = NULL; 9020 Lisp_Object *defs = NULL;
9022 9021
9023 /* submaps[0..nmaps-1] are the prefix definitions of KEYBUF[0..t-1] 9022 /* submaps[0..nmaps-1] are the prefix definitions of KEYBUF[0..t-1]
9024 in the current keymaps, or nil where it is not a prefix. */ 9023 in the current keymaps, or nil where it is not a prefix. */
9025 Lisp_Object *volatile submaps = NULL; 9024 Lisp_Object *submaps = NULL;
9026 9025
9027 /* The local map to start out with at start of key sequence. */ 9026 /* The local map to start out with at start of key sequence. */
9028 volatile Lisp_Object orig_local_map; 9027 Lisp_Object orig_local_map;
9029 9028
9030 /* The map from the `keymap' property to start out with at start of 9029 /* The map from the `keymap' property to start out with at start of
9031 key sequence. */ 9030 key sequence. */
9032 volatile Lisp_Object orig_keymap; 9031 Lisp_Object orig_keymap;
9033 9032
9034 /* 1 if we have already considered switching to the local-map property 9033 /* 1 if we have already considered switching to the local-map property
9035 of the place where a mouse click occurred. */ 9034 of the place where a mouse click occurred. */
9036 volatile int localized_local_map = 0; 9035 int localized_local_map = 0;
9037 9036
9038 /* The index in submaps[] of the first keymap that has a binding for 9037 /* The index in submaps[] of the first keymap that has a binding for
9039 this key sequence. In other words, the lowest i such that 9038 this key sequence. In other words, the lowest i such that
9040 submaps[i] is non-nil. */ 9039 submaps[i] is non-nil. */
9041 volatile int first_binding; 9040 int first_binding;
9042 /* Index of the first key that has no binding. 9041 /* Index of the first key that has no binding.
9043 It is useless to try fkey.start larger than that. */ 9042 It is useless to try fkey.start larger than that. */
9044 volatile int first_unbound; 9043 int first_unbound;
9045 9044
9046 /* If t < mock_input, then KEYBUF[t] should be read as the next 9045 /* If t < mock_input, then KEYBUF[t] should be read as the next
9047 input key. 9046 input key.
@@ -9056,7 +9055,7 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9056 restart_sequence; the loop will read keys from keybuf up until 9055 restart_sequence; the loop will read keys from keybuf up until
9057 mock_input, thus rebuilding the state; and then it will resume 9056 mock_input, thus rebuilding the state; and then it will resume
9058 reading characters from the keyboard. */ 9057 reading characters from the keyboard. */
9059 volatile int mock_input = 0; 9058 int mock_input = 0;
9060 9059
9061 /* If the sequence is unbound in submaps[], then 9060 /* If the sequence is unbound in submaps[], then
9062 keybuf[fkey.start..fkey.end-1] is a prefix in Vfunction_key_map, 9061 keybuf[fkey.start..fkey.end-1] is a prefix in Vfunction_key_map,
@@ -9066,28 +9065,28 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9066 should hold off until t reaches them. We do this when we've just 9065 should hold off until t reaches them. We do this when we've just
9067 recognized a function key, to avoid searching for the function 9066 recognized a function key, to avoid searching for the function
9068 key's again in Vfunction_key_map. */ 9067 key's again in Vfunction_key_map. */
9069 volatile keyremap fkey; 9068 keyremap fkey;
9070 9069
9071 /* Likewise, for key_translation_map and input-decode-map. */ 9070 /* Likewise, for key_translation_map and input-decode-map. */
9072 volatile keyremap keytran, indec; 9071 keyremap keytran, indec;
9073 9072
9074 /* Non-zero if we are trying to map a key by changing an upper-case 9073 /* Non-zero if we are trying to map a key by changing an upper-case
9075 letter to lower case, or a shifted function key to an unshifted 9074 letter to lower case, or a shifted function key to an unshifted
9076 one. */ 9075 one. */
9077 volatile int shift_translated = 0; 9076 int shift_translated = 0;
9078 9077
9079 /* If we receive a `switch-frame' or `select-window' event in the middle of 9078 /* If we receive a `switch-frame' or `select-window' event in the middle of
9080 a key sequence, we put it off for later. 9079 a key sequence, we put it off for later.
9081 While we're reading, we keep the event here. */ 9080 While we're reading, we keep the event here. */
9082 volatile Lisp_Object delayed_switch_frame; 9081 Lisp_Object delayed_switch_frame;
9083 9082
9084 /* See the comment below... */ 9083 /* See the comment below... */
9085#if defined (GOBBLE_FIRST_EVENT) 9084#if defined (GOBBLE_FIRST_EVENT)
9086 Lisp_Object first_event; 9085 Lisp_Object first_event;
9087#endif 9086#endif
9088 9087
9089 volatile Lisp_Object original_uppercase; 9088 Lisp_Object original_uppercase;
9090 volatile int original_uppercase_position = -1; 9089 int original_uppercase_position = -1;
9091 9090
9092 /* Gets around Microsoft compiler limitations. */ 9091 /* Gets around Microsoft compiler limitations. */
9093 int dummyflag = 0; 9092 int dummyflag = 0;
@@ -9095,7 +9094,7 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9095 struct buffer *starting_buffer; 9094 struct buffer *starting_buffer;
9096 9095
9097 /* List of events for which a fake prefix key has been generated. */ 9096 /* List of events for which a fake prefix key has been generated. */
9098 volatile Lisp_Object fake_prefixed_keys = Qnil; 9097 Lisp_Object fake_prefixed_keys = Qnil;
9099 9098
9100#if defined (GOBBLE_FIRST_EVENT) 9099#if defined (GOBBLE_FIRST_EVENT)
9101 int junk; 9100 int junk;
@@ -9252,13 +9251,13 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt,
9252 (say, a mouse click on the mode line which is being treated 9251 (say, a mouse click on the mode line which is being treated
9253 as [mode-line (mouse-...)], then we backtrack to this point 9252 as [mode-line (mouse-...)], then we backtrack to this point
9254 of keybuf. */ 9253 of keybuf. */
9255 volatile int last_real_key_start; 9254 int last_real_key_start;
9256 9255
9257 /* These variables are analogous to echo_start and keys_start; 9256 /* These variables are analogous to echo_start and keys_start;
9258 while those allow us to restart the entire key sequence, 9257 while those allow us to restart the entire key sequence,
9259 echo_local_start and keys_local_start allow us to throw away 9258 echo_local_start and keys_local_start allow us to throw away
9260 just one key. */ 9259 just one key. */
9261 volatile int echo_local_start, keys_local_start, local_first_binding; 9260 int echo_local_start, keys_local_start, local_first_binding;
9262 9261
9263 eassert (indec.end == t || (indec.end > t && indec.end <= mock_input)); 9262 eassert (indec.end == t || (indec.end > t && indec.end <= mock_input));
9264 eassert (indec.start <= indec.end); 9263 eassert (indec.start <= indec.end);
diff --git a/src/keymap.c b/src/keymap.c
index 1245caf3b9b..40005a51008 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1126,11 +1126,13 @@ DEFUN ("define-key", Fdefine_key, Sdefine_key, 3, 3, 0,
1126 doc: /* In KEYMAP, define key sequence KEY as DEF. 1126 doc: /* In KEYMAP, define key sequence KEY as DEF.
1127KEYMAP is a keymap. 1127KEYMAP is a keymap.
1128 1128
1129KEY is a string or a vector of symbols and characters meaning a 1129KEY is a string or a vector of symbols and characters, representing a
1130sequence of keystrokes and events. Non-ASCII characters with codes 1130sequence of keystrokes and events. Non-ASCII characters with codes
1131above 127 (such as ISO Latin-1) can be included if you use a vector. 1131above 127 (such as ISO Latin-1) can be represented by vectors.
1132Using [t] for KEY creates a default definition, which applies to any 1132Two types of vector have special meanings:
1133event type that has no other definition in this keymap. 1133 [remap COMMAND] remaps any key binding for COMMAND.
1134 [t] creates a default definition, which applies to any event with no
1135 other definition in KEYMAP.
1134 1136
1135DEF is anything that can be a key's definition: 1137DEF is anything that can be a key's definition:
1136 nil (means key is undefined in this keymap), 1138 nil (means key is undefined in this keymap),
diff --git a/src/lread.c b/src/lread.c
index 42925f8ac09..c8c464875bf 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -2316,28 +2316,28 @@ read1 (register Lisp_Object readcharfun, int *pch, int first_in_list)
2316 /* This is repetitive but fast and simple. */ 2316 /* This is repetitive but fast and simple. */
2317 params[param_count] = QCsize; 2317 params[param_count] = QCsize;
2318 params[param_count+1] = Fplist_get (tmp, Qsize); 2318 params[param_count+1] = Fplist_get (tmp, Qsize);
2319 if (!NILP (params[param_count+1])) 2319 if (!NILP (params[param_count + 1]))
2320 param_count+=2; 2320 param_count += 2;
2321 2321
2322 params[param_count] = QCtest; 2322 params[param_count] = QCtest;
2323 params[param_count+1] = Fplist_get (tmp, Qtest); 2323 params[param_count+1] = Fplist_get (tmp, Qtest);
2324 if (!NILP (params[param_count+1])) 2324 if (!NILP (params[param_count + 1]))
2325 param_count+=2; 2325 param_count += 2;
2326 2326
2327 params[param_count] = QCweakness; 2327 params[param_count] = QCweakness;
2328 params[param_count+1] = Fplist_get (tmp, Qweakness); 2328 params[param_count+1] = Fplist_get (tmp, Qweakness);
2329 if (!NILP (params[param_count+1])) 2329 if (!NILP (params[param_count + 1]))
2330 param_count+=2; 2330 param_count += 2;
2331 2331
2332 params[param_count] = QCrehash_size; 2332 params[param_count] = QCrehash_size;
2333 params[param_count+1] = Fplist_get (tmp, Qrehash_size); 2333 params[param_count+1] = Fplist_get (tmp, Qrehash_size);
2334 if (!NILP (params[param_count+1])) 2334 if (!NILP (params[param_count + 1]))
2335 param_count+=2; 2335 param_count += 2;
2336 2336
2337 params[param_count] = QCrehash_threshold; 2337 params[param_count] = QCrehash_threshold;
2338 params[param_count+1] = Fplist_get (tmp, Qrehash_threshold); 2338 params[param_count+1] = Fplist_get (tmp, Qrehash_threshold);
2339 if (!NILP (params[param_count+1])) 2339 if (!NILP (params[param_count + 1]))
2340 param_count+=2; 2340 param_count += 2;
2341 2341
2342 /* This is the hashtable data. */ 2342 /* This is the hashtable data. */
2343 data = Fplist_get (tmp, Qdata); 2343 data = Fplist_get (tmp, Qdata);
@@ -2358,6 +2358,8 @@ read1 (register Lisp_Object readcharfun, int *pch, int first_in_list)
2358 2358
2359 return ht; 2359 return ht;
2360 } 2360 }
2361 UNREAD (c);
2362 invalid_syntax ("#", 1);
2361 } 2363 }
2362 if (c == '^') 2364 if (c == '^')
2363 { 2365 {
diff --git a/src/nsterm.m b/src/nsterm.m
index 62f1c0bcd57..58245f4aebf 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -2177,20 +2177,7 @@ ns_draw_fringe_bitmap (struct window *w, struct glyph_row *row,
2177 2177
2178 /* Must clip because of partially visible lines. */ 2178 /* Must clip because of partially visible lines. */
2179 rowY = WINDOW_TO_FRAME_PIXEL_Y (w, row->y); 2179 rowY = WINDOW_TO_FRAME_PIXEL_Y (w, row->y);
2180 if (p->y < rowY) 2180 ns_clip_to_row (w, row, -1, YES);
2181 {
2182 /* Adjust position of "bottom aligned" bitmap on partially
2183 visible last row. */
2184 int oldY = row->y;
2185 int oldVH = row->visible_height;
2186 row->visible_height = p->h;
2187 row->y -= rowY - p->y;
2188 ns_clip_to_row (w, row, -1, NO);
2189 row->y = oldY;
2190 row->visible_height = oldVH;
2191 }
2192 else
2193 ns_clip_to_row (w, row, -1, YES);
2194 2181
2195 if (p->bx >= 0 && !p->overlay_p) 2182 if (p->bx >= 0 && !p->overlay_p)
2196 { 2183 {
diff --git a/src/w32fns.c b/src/w32fns.c
index 916aea28eea..c1791f2bf3e 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -288,10 +288,15 @@ unsigned int msh_mousewheel = 0;
288#define MENU_FREE_DELAY 1000 288#define MENU_FREE_DELAY 1000
289static unsigned menu_free_timer = 0; 289static unsigned menu_free_timer = 0;
290 290
291/* In dispnew.c */
292
293extern Lisp_Object Vwindow_system_version;
294
291/* The below are defined in frame.c. */ 295/* The below are defined in frame.c. */
292 296
293extern Lisp_Object Vmenu_bar_mode, Vtool_bar_mode; 297extern Lisp_Object Vmenu_bar_mode, Vtool_bar_mode;
294extern Lisp_Object Vwindow_system_version; 298extern Lisp_Object Vwindow_system_version;
299extern Lisp_Object Qtooltip;
295 300
296#ifdef GLYPH_DEBUG 301#ifdef GLYPH_DEBUG
297int image_cache_refcount, dpyinfo_refcount; 302int image_cache_refcount, dpyinfo_refcount;
@@ -5476,9 +5481,8 @@ x_create_tip_frame (struct w32_display_info *dpyinfo,
5476 change_frame_size (f, height, width, 1, 0, 0); 5481 change_frame_size (f, height, width, 1, 0, 0);
5477 5482
5478 /* Add `tooltip' frame parameter's default value. */ 5483 /* Add `tooltip' frame parameter's default value. */
5479 if (NILP (Fframe_parameter (frame, intern ("tooltip")))) 5484 if (NILP (Fframe_parameter (frame, Qtooltip)))
5480 Fmodify_frame_parameters (frame, Fcons (Fcons (intern ("tooltip"), Qt), 5485 Fmodify_frame_parameters (frame, Fcons (Fcons (Qtooltip, Qt), Qnil));
5481 Qnil));
5482 5486
5483 /* Set up faces after all frame parameters are known. This call 5487 /* Set up faces after all frame parameters are known. This call
5484 also merges in face attributes specified for new frames. 5488 also merges in face attributes specified for new frames.
diff --git a/src/w32term.c b/src/w32term.c
index 7ace4b01f95..9db533eb5e9 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -737,7 +737,6 @@ w32_draw_fringe_bitmap (struct window *w, struct glyph_row *row,
737 struct frame *f = XFRAME (WINDOW_FRAME (w)); 737 struct frame *f = XFRAME (WINDOW_FRAME (w));
738 HDC hdc; 738 HDC hdc;
739 struct face *face = p->face; 739 struct face *face = p->face;
740 int rowY;
741 740
742 hdc = get_frame_dc (f); 741 hdc = get_frame_dc (f);
743 742
@@ -796,21 +795,7 @@ w32_draw_fringe_bitmap (struct window *w, struct glyph_row *row,
796 } 795 }
797 796
798 /* Must clip because of partially visible lines. */ 797 /* Must clip because of partially visible lines. */
799 rowY = WINDOW_TO_FRAME_PIXEL_Y (w, row->y); 798 w32_clip_to_row (w, row, -1, hdc);
800 if (p->y < rowY)
801 {
802 /* Adjust position of "bottom aligned" bitmap on partially
803 visible last row. */
804 int oldY = row->y;
805 int oldVH = row->visible_height;
806 row->visible_height = p->h;
807 row->y -= rowY - p->y;
808 w32_clip_to_row (w, row, -1, hdc);
809 row->y = oldY;
810 row->visible_height = oldVH;
811 }
812 else
813 w32_clip_to_row (w, row, -1, hdc);
814 799
815 if (p->which && p->which < max_fringe_bmp) 800 if (p->which && p->which < max_fringe_bmp)
816 { 801 {
diff --git a/src/xdisp.c b/src/xdisp.c
index d145e7bd9f6..b6bd231bb67 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -6625,6 +6625,7 @@ static int
6625next_element_from_image (struct it *it) 6625next_element_from_image (struct it *it)
6626{ 6626{
6627 it->what = IT_IMAGE; 6627 it->what = IT_IMAGE;
6628 it->ignore_overlay_strings_at_pos_p = 0;
6628 return 1; 6629 return 1;
6629} 6630}
6630 6631
diff --git a/src/xfaces.c b/src/xfaces.c
index 520546c42b1..6848e7f95dc 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -5605,6 +5605,7 @@ realize_face (struct face_cache *cache, Lisp_Object *attrs, int former_face_id)
5605 struct face *former_face = cache->faces_by_id[former_face_id]; 5605 struct face *former_face = cache->faces_by_id[former_face_id];
5606 uncache_face (cache, former_face); 5606 uncache_face (cache, former_face);
5607 free_realized_face (cache->f, former_face); 5607 free_realized_face (cache->f, former_face);
5608 SET_FRAME_GARBAGED (cache->f);
5608 } 5609 }
5609 5610
5610 if (FRAME_WINDOW_P (cache->f)) 5611 if (FRAME_WINDOW_P (cache->f))
diff --git a/src/xfns.c b/src/xfns.c
index 1dfaa381b3e..988725ead00 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -205,6 +205,7 @@ extern Lisp_Object Vsystem_name;
205/* The below are defined in frame.c. */ 205/* The below are defined in frame.c. */
206 206
207extern Lisp_Object Vmenu_bar_mode, Vtool_bar_mode; 207extern Lisp_Object Vmenu_bar_mode, Vtool_bar_mode;
208extern Lisp_Object Qtooltip;
208 209
209#if GLYPH_DEBUG 210#if GLYPH_DEBUG
210int image_cache_refcount, dpyinfo_refcount; 211int image_cache_refcount, dpyinfo_refcount;
@@ -4847,9 +4848,8 @@ x_create_tip_frame (struct x_display_info *dpyinfo, Lisp_Object parms, Lisp_Obje
4847 change_frame_size (f, height, width, 1, 0, 0); 4848 change_frame_size (f, height, width, 1, 0, 0);
4848 4849
4849 /* Add `tooltip' frame parameter's default value. */ 4850 /* Add `tooltip' frame parameter's default value. */
4850 if (NILP (Fframe_parameter (frame, intern ("tooltip")))) 4851 if (NILP (Fframe_parameter (frame, Qtooltip)))
4851 Fmodify_frame_parameters (frame, Fcons (Fcons (intern ("tooltip"), Qt), 4852 Fmodify_frame_parameters (frame, Fcons (Fcons (Qtooltip, Qt), Qnil));
4852 Qnil));
4853 4853
4854 /* FIXME - can this be done in a similar way to normal frames? 4854 /* FIXME - can this be done in a similar way to normal frames?
4855 http://lists.gnu.org/archive/html/emacs-devel/2007-10/msg00641.html */ 4855 http://lists.gnu.org/archive/html/emacs-devel/2007-10/msg00641.html */
diff --git a/src/xmenu.c b/src/xmenu.c
index 8d79aed3744..93a40792aec 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -676,6 +676,14 @@ x_activate_menubar (FRAME_PTR f)
676 set_frame_menubar (f, 0, 1); 676 set_frame_menubar (f, 0, 1);
677 BLOCK_INPUT; 677 BLOCK_INPUT;
678#ifdef USE_GTK 678#ifdef USE_GTK
679 /* If we click outside any menu item, the menu bar still grabs.
680 So we send Press and the Release. If outside, grab is released.
681 If on a menu item, it is popped up normally.
682 PutBack is like a stack, so we put back in reverse order. */
683 f->output_data.x->saved_menu_event->type = ButtonRelease;
684 XPutBackEvent (f->output_data.x->display_info->display,
685 f->output_data.x->saved_menu_event);
686 f->output_data.x->saved_menu_event->type = ButtonPress;
679 XPutBackEvent (f->output_data.x->display_info->display, 687 XPutBackEvent (f->output_data.x->display_info->display,
680 f->output_data.x->saved_menu_event); 688 f->output_data.x->saved_menu_event);
681 popup_activated_flag = 1; 689 popup_activated_flag = 1;
diff --git a/src/xterm.c b/src/xterm.c
index d1bf9eaa5ea..3ec0636fc60 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -753,24 +753,9 @@ x_draw_fringe_bitmap (struct window *w, struct glyph_row *row, struct draw_fring
753 Window window = FRAME_X_WINDOW (f); 753 Window window = FRAME_X_WINDOW (f);
754 GC gc = f->output_data.x->normal_gc; 754 GC gc = f->output_data.x->normal_gc;
755 struct face *face = p->face; 755 struct face *face = p->face;
756 int rowY;
757 756
758 /* Must clip because of partially visible lines. */ 757 /* Must clip because of partially visible lines. */
759 rowY = WINDOW_TO_FRAME_PIXEL_Y (w, row->y); 758 x_clip_to_row (w, row, -1, gc);
760 if (p->y < rowY)
761 {
762 /* Adjust position of "bottom aligned" bitmap on partially
763 visible last row. */
764 int oldY = row->y;
765 int oldVH = row->visible_height;
766 row->visible_height = p->h;
767 row->y -= rowY - p->y;
768 x_clip_to_row (w, row, -1, gc);
769 row->y = oldY;
770 row->visible_height = oldVH;
771 }
772 else
773 x_clip_to_row (w, row, -1, gc);
774 759
775 if (!p->overlay_p) 760 if (!p->overlay_p)
776 { 761 {