aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Bader2007-12-28 22:26:14 +0000
committerMiles Bader2007-12-28 22:26:14 +0000
commitb17f53abc28496125965f36147b76ea5f6a2b4fb (patch)
tree4293e53692f304327ba689dfeea32d1b0b5bc12a
parent2e5093251c8e63f4546ffc30182dd4015e9a58fd (diff)
parentea7ac2eb953bf3c30670e60cb00a9fca611b38b7 (diff)
downloademacs-b17f53abc28496125965f36147b76ea5f6a2b4fb.tar.gz
emacs-b17f53abc28496125965f36147b76ea5f6a2b4fb.zip
Merge from emacs--rel--22
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-966
-rw-r--r--admin/FOR-RELEASE2
-rw-r--r--doc/emacs/ChangeLog21
-rw-r--r--doc/emacs/files.texi9
-rw-r--r--doc/emacs/search.texi9
-rw-r--r--doc/emacs/text.texi75
-rw-r--r--doc/lispref/ChangeLog11
-rw-r--r--doc/lispref/customize.texi48
-rw-r--r--doc/lispref/frames.texi24
-rw-r--r--doc/misc/cc-mode.texi4
-rw-r--r--etc/NEWS.225
-rw-r--r--leim/ChangeLog12
-rw-r--r--leim/quail/latin-alt.el398
-rw-r--r--lisp/ChangeLog69
-rw-r--r--lisp/comint.el7
-rw-r--r--lisp/emacs-lisp/find-func.el1
-rw-r--r--lisp/faces.el7
-rw-r--r--lisp/files.el17
-rw-r--r--lisp/find-dired.el23
-rw-r--r--lisp/info.el5
-rw-r--r--lisp/international/mule-cmds.el5
-rw-r--r--lisp/mail/footnote.el7
-rw-r--r--lisp/menu-bar.el2
-rw-r--r--lisp/progmodes/asm-mode.el8
-rw-r--r--lisp/progmodes/cc-vars.el58
-rw-r--r--lisp/progmodes/compile.el25
-rw-r--r--lisp/progmodes/grep.el4
-rw-r--r--lisp/replace.el5
-rw-r--r--lisp/simple.el15
-rw-r--r--lisp/startup.el4
-rw-r--r--lisp/textmodes/fill.el2
-rw-r--r--src/ChangeLog17
-rw-r--r--src/callint.c5
-rw-r--r--src/macmenu.c3
-rw-r--r--src/process.c2
-rw-r--r--src/w32fns.c3
-rw-r--r--src/xdisp.c18
36 files changed, 423 insertions, 507 deletions
diff --git a/admin/FOR-RELEASE b/admin/FOR-RELEASE
index f96da325b75..1d5cfc9ddf0 100644
--- a/admin/FOR-RELEASE
+++ b/admin/FOR-RELEASE
@@ -111,6 +111,8 @@ http://lists.gnu.org/archive/html/emacs-devel/2007-11/msg01857.html
111If mode-name stays non-string, add NEWS entry and doc fix. 111If mode-name stays non-string, add NEWS entry and doc fix.
112http://lists.gnu.org/archive/html/emacs-devel/2007-11/msg02048.html 112http://lists.gnu.org/archive/html/emacs-devel/2007-11/msg02048.html
113 113
114** pot@gnu.org, 17 Dec: strange From line maker rmail-reply loop
115
114* DOCUMENTATION 116* DOCUMENTATION
115 117
116** Check the Emacs Tutorial. 118** Check the Emacs Tutorial.
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index 9c4d874e139..e950d152a80 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,3 +1,24 @@
12007-12-27 Richard Stallman <rms@gnu.org>
2
3 * text.texi (Formatted Text): Improve menu tag.
4 (Editing Format Info): In Info, add duplicate menu of nodes
5 about the submenus.
6 (Format Faces): Say where Faces menu is found. Mention Other.
7 (Format Colors): Say where these submenus are found.
8 (Format Indentation, Format Justification): Likewise.
9 (Format Properties): Likewise.
10
112007-12-22 Richard Stallman <rms@gnu.org>
12
13 * search.texi (Query Replace): Make exp of query-replace more
14 self-contained, and clarify.
15
16 * cc-mode.texi (Getting Started): Change @ref to @pxref.
17
182007-12-15 Richard Stallman <rms@gnu.org>
19
20 * files.texi (Auto Save): Clarify definition of auto-saving.
21
12007-11-26 Richard Stallman <rms@gnu.org> 222007-11-26 Richard Stallman <rms@gnu.org>
2 23
3 * help.texi (Help Echo): Cleanups. 24 * help.texi (Help Echo): Cleanups.
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi
index 8e2cb879754..8e33dc5aa8c 100644
--- a/doc/emacs/files.texi
+++ b/doc/emacs/files.texi
@@ -997,10 +997,11 @@ visit files under version control.
997@cindex mode, Auto Save 997@cindex mode, Auto Save
998@cindex crashes 998@cindex crashes
999 999
1000 Emacs saves all the visited files from time to time (based on counting 1000 Emacs saves all the visited files from time to time (based on
1001your keystrokes) without being asked. This is called @dfn{auto-saving}. 1001counting your keystrokes) without being asked, in separate files so as
1002It prevents you from losing more than a limited amount of work if the 1002not to alter the files you actually use. This is called
1003system crashes. 1003@dfn{auto-saving}. It prevents you from losing more than a limited
1004amount of work if the system crashes.
1004 1005
1005 When Emacs determines that it is time for auto-saving, it considers 1006 When Emacs determines that it is time for auto-saving, it considers
1006each buffer, and each is auto-saved if auto-saving is enabled for it 1007each buffer, and each is auto-saved if auto-saving is enabled for it
diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi
index af1b877e6a4..7b77046e2f3 100644
--- a/doc/emacs/search.texi
+++ b/doc/emacs/search.texi
@@ -1152,13 +1152,12 @@ Replace some matches for @var{regexp} with @var{newstring}.
1152@kindex M-% 1152@kindex M-%
1153@findex query-replace 1153@findex query-replace
1154 If you want to change only some of the occurrences of @samp{foo} to 1154 If you want to change only some of the occurrences of @samp{foo} to
1155@samp{bar}, not all of them, then you cannot use an ordinary 1155@samp{bar}, not all of them, use @kbd{M-%} (@code{query-replace}).
1156@code{replace-string}. Instead, use @kbd{M-%} (@code{query-replace}).
1157This command finds occurrences of @samp{foo} one by one, displays each 1156This command finds occurrences of @samp{foo} one by one, displays each
1158occurrence and asks you whether to replace it. Aside from querying, 1157occurrence and asks you whether to replace it. Aside from querying,
1159@code{query-replace} works just like @code{replace-string}. It 1158@code{query-replace} works just like @code{replace-string}
1160preserves case, like @code{replace-string}, provided 1159(@pxref{Unconditional Replace}). In particular, it preserves case
1161@code{case-replace} is non-@code{nil}, as it normally is 1160provided @code{case-replace} is non-@code{nil}, as it normally is
1162(@pxref{Replacement and Case}). A numeric argument means consider 1161(@pxref{Replacement and Case}). A numeric argument means consider
1163only occurrences that are bounded by word-delimiter characters. 1162only occurrences that are bounded by word-delimiter characters.
1164 1163
diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi
index c151c75e8bb..4b3bc8df0f0 100644
--- a/doc/emacs/text.texi
+++ b/doc/emacs/text.texi
@@ -1951,7 +1951,7 @@ contains a list of ideas for future enhancements.
1951* Justification: Format Justification. 1951* Justification: Format Justification.
1952 Centering, setting text flush with the 1952 Centering, setting text flush with the
1953 left or right margin, etc. 1953 left or right margin, etc.
1954* Other: Format Properties. The "special" text properties submenu. 1954* Special: Format Properties. The "special" text properties submenu.
1955* Forcing Enriched Mode:: How to force use of Enriched mode. 1955* Forcing Enriched Mode:: How to force use of Enriched mode.
1956@end menu 1956@end menu
1957 1957
@@ -2037,9 +2037,7 @@ or with @kbd{C-Mouse-2} (hold the @key{CTRL} key and press the middle
2037mouse button). There are also keyboard commands described in the 2037mouse button). There are also keyboard commands described in the
2038following section. 2038following section.
2039 2039
2040 Most of the items in the Text Properties menu lead to other submenus. 2040 These items in the Text Properties menu run commands directly:
2041These are described in the sections that follow. Some items run
2042commands directly:
2043 2041
2044@table @code 2042@table @code
2045@findex facemenu-remove-face-props 2043@findex facemenu-remove-face-props
@@ -2068,14 +2066,35 @@ Display a list of all the defined faces (@code{list-faces-display}).
2068Display a list of all the defined colors (@code{list-colors-display}). 2066Display a list of all the defined colors (@code{list-colors-display}).
2069@end table 2067@end table
2070 2068
2069@ifinfo
2070 Other items in the Text Properties menu lead to submenus:
2071
2072@menu
2073* Faces: Format Faces. Bold, italic, underline, etc.
2074* Color: Format Colors. Changing the color of text.
2075* Indent: Format Indentation. Changing the left and right margins.
2076* Justification: Format Justification.
2077 Centering, setting text flush with the
2078 left or right margin, etc.
2079* Special: Format Properties. The "special" text properties submenu.
2080@end menu
2081@end ifinfo
2082@ifnotinfo
2083 The rest lead to submenus which are described in the following sections.
2084@end ifnotinfo
2085
2071@node Format Faces 2086@node Format Faces
2072@subsection Faces in Formatted Text 2087@subsection Faces in Formatted Text
2073 2088
2074 The Faces submenu lists various Emacs faces including @code{bold}, 2089 The Faces submenu under Text Properties lists various Emacs faces
2075@code{italic}, and @code{underline} (@pxref{Faces}). These menu items 2090including @code{bold}, @code{italic}, and @code{underline}
2076operate on the region if it is active and nonempty. Otherwise, they 2091(@pxref{Faces}). These menu items operate on the region if it is
2077specify to use that face for an immediately following self-inserting 2092active and nonempty. Otherwise, they specify to use that face for an
2078character. Instead of the menu, you can use these keyboard commands: 2093immediately following self-inserting character. There is also an item
2094@samp{Other} with which you can enter a face name through the
2095minibuffer (@pxref{Standard Faces}).
2096
2097 Instead of the Faces submenu, you can use these keyboard commands:
2079 2098
2080@table @kbd 2099@table @kbd
2081@kindex M-o d @r{(Enriched mode)} 2100@kindex M-o d @r{(Enriched mode)}
@@ -2158,20 +2177,22 @@ them.
2158@subsection Colors in Formatted Text 2177@subsection Colors in Formatted Text
2159 2178
2160 You can specify foreground and background colors for portions of the 2179 You can specify foreground and background colors for portions of the
2161text. There is a menu for specifying the foreground color and a menu 2180text. Under Text Properties there is a submenu for specifying the
2162for specifying the background color. Each color menu lists all the 2181foreground color, and a submenu for specifying the background color.
2163colors that you have used in Enriched mode in the current Emacs session. 2182Each one lists all the colors that you have used in Enriched mode in
2183the current Emacs session.
2164 2184
2165 If you specify a color with a prefix argument---or, in Transient 2185 If you specify a color with a prefix argument---or, in Transient
2166Mark mode, if the region is not active---then it applies to any 2186Mark mode, if the region is not active---then it applies to any
2167immediately following self-inserting input. Otherwise, the command 2187immediately following self-inserting input. Otherwise, the command
2168applies to the region. 2188applies to the region.
2169 2189
2170 Each color menu contains one additional item: @samp{Other}. You can use 2190 Each of the two color submenus contains one additional item:
2171this item to specify a color that is not listed in the menu; it reads 2191@samp{Other}. You can use this item to specify a color that is not
2172the color name with the minibuffer. To display a list of available colors 2192listed in the menu; it reads the color name with the minibuffer. To
2173and their names, use the @samp{Display Colors} menu item in the Text 2193display a list of available colors and their names, use the
2174Properties menu (@pxref{Editing Format Info}). 2194@samp{Display Colors} menu item in the Text Properties menu
2195(@pxref{Editing Format Info}).
2175 2196
2176 Any color that you specify in this way, or that is mentioned in a 2197 Any color that you specify in this way, or that is mentioned in a
2177formatted text file that you read in, is added to the corresponding 2198formatted text file that you read in, is added to the corresponding
@@ -2192,8 +2213,9 @@ indentation for the right or left margin of an entire paragraph or a
2192part of a paragraph. The margins you specify automatically affect the 2213part of a paragraph. The margins you specify automatically affect the
2193Emacs fill commands (@pxref{Filling}) and line-breaking commands. 2214Emacs fill commands (@pxref{Filling}) and line-breaking commands.
2194 2215
2195 The Indentation submenu provides a convenient interface for specifying 2216 The Indentation submenu of Text Properties provides a convenient
2196these properties. The submenu contains four items: 2217interface for specifying these properties. The submenu contains four
2218items:
2197 2219
2198@table @code 2220@table @code
2199@kindex C-x TAB @r{(Enriched mode)} 2221@kindex C-x TAB @r{(Enriched mode)}
@@ -2266,8 +2288,8 @@ Prefix}.
2266justification for a paragraph. The style you specify automatically 2288justification for a paragraph. The style you specify automatically
2267affects the Emacs fill commands. 2289affects the Emacs fill commands.
2268 2290
2269 The Justification submenu provides a convenient interface for specifying 2291 The Justification submenu of Text Properties provides a convenient
2270the style. The submenu contains five items: 2292interface for specifying the style. The submenu contains five items:
2271 2293
2272@table @code 2294@table @code
2273@item Left 2295@item Left
@@ -2341,11 +2363,12 @@ sets (as always) the default value for buffers that do not override it.
2341@node Format Properties 2363@node Format Properties
2342@subsection Setting Other Text Properties 2364@subsection Setting Other Text Properties
2343 2365
2344 The Special Properties menu lets you add or remove three other useful text 2366 The Special Properties submenu of Text Properties can add or remove
2345properties: @code{read-only}, @code{invisible} and @code{intangible}. 2367three other useful text properties: @code{read-only}, @code{invisible}
2346The @code{intangible} property disallows moving point within the text, 2368and @code{intangible}. The @code{intangible} property disallows
2347the @code{invisible} text property hides text from display, and the 2369moving point within the text, the @code{invisible} text property hides
2348@code{read-only} property disallows alteration of the text. 2370text from display, and the @code{read-only} property disallows
2371alteration of the text.
2349 2372
2350 Each of these special properties has a menu item to add it to the 2373 Each of these special properties has a menu item to add it to the
2351region. The last menu item, @samp{Remove Special}, removes all of these 2374region. The last menu item, @samp{Remove Special}, removes all of these
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index bfeb88f7830..50399b0120e 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,3 +1,14 @@
12007-12-28 Richard Stallman <rms@gnu.org>
2
3 * frames.texi (Size Parameters): Fix typo.
4 (Basic Parameters): For `title', refer to title bar.
5 (Size and Position): Explain meaning of frame pixel width and height.
6
72007-12-23 Richard Stallman <rms@gnu.org>
8
9 * customize.texi (Type Keywords): Uncomment :validate and clarify it.
10 Improve some of the commented-out keywords' text too.
11
12007-12-14 Martin Rudalics <rudalics@gmx.at> 122007-12-14 Martin Rudalics <rudalics@gmx.at>
2 13
3 * nonascii.texi (Encoding and I/O): Reword to avoid saying 14 * nonascii.texi (Encoding and I/O): Reword to avoid saying
diff --git a/doc/lispref/customize.texi b/doc/lispref/customize.texi
index b97ce20fc22..d971d5b6db2 100644
--- a/doc/lispref/customize.texi
+++ b/doc/lispref/customize.texi
@@ -1121,6 +1121,16 @@ corresponding value, @var{function}, should be a function that accepts
1121two arguments, a widget and a value; it should return non-@code{nil} if 1121two arguments, a widget and a value; it should return non-@code{nil} if
1122the value is acceptable. 1122the value is acceptable.
1123 1123
1124@item :validate @var{function}
1125Specify a validation function for input. @var{function} takes a
1126widget as an argument, and should return @code{nil} if the widget's
1127current value is valid for the widget. Otherwise, it should return
1128the widget containing the invalid data, and set that widget's
1129@code{:error} property to a string explaining the error.
1130
1131In many cases you can use the function @code{widget-children-validate}
1132for this job; it tests that all children of @var{widget} are valid.
1133
1124@ignore 1134@ignore
1125@item :indent @var{columns} 1135@item :indent @var{columns}
1126Indent this item by @var{columns} columns. The indentation is used for 1136Indent this item by @var{columns} columns. The indentation is used for
@@ -1128,23 +1138,24 @@ Indent this item by @var{columns} columns. The indentation is used for
1128buttons, and for editable lists. It affects the whole of the 1138buttons, and for editable lists. It affects the whole of the
1129item except for the first line. 1139item except for the first line.
1130 1140
1131@item :offset @var{columns} 1141@item :offset @var{extra}
1132An integer indicating how many extra spaces to indent the subitems of 1142Indent the subitems of this item @var{extra} columns more than this
1133this item. By default, subitems are indented the same as their parent. 1143item itself. By default, subitems are indented the same as their
1144parent.
1134 1145
1135@item :extra-offset 1146@item :extra-offset @var{n}
1136An integer indicating how many extra spaces to add to this item's 1147Add @var{n} extra spaces to this item's indentation, compared to its
1137indentation, compared to its parent. 1148parent's indentation.
1138 1149
1139@item :notify 1150@item :notify @var{function}
1140A function called each time the item or a subitem is changed. The 1151Call @var{function} each time the item or a subitem is changed. The
1141function is called with two or three arguments. The first argument is 1152function gets two or three arguments. The first argument is the item
1142the item itself, the second argument is the item that was changed, and 1153itself, the second argument is the item that was changed, and the
1143the third argument is the event leading to the change, if any. 1154third argument is the event leading to the change, if any.
1144 1155
1145@item :menu-tag 1156@item :menu-tag @var{tag-string}
1146A tag used in the menu when the widget is used as an option in a 1157Use @var{tag-string} in the menu when the widget is used as an option
1147@code{menu-choice} widget. 1158in a @code{menu-choice} widget.
1148 1159
1149@item :menu-tag-get 1160@item :menu-tag-get
1150A function used for finding the tag when the widget is used as an option 1161A function used for finding the tag when the widget is used as an option
@@ -1152,15 +1163,6 @@ in a @code{menu-choice} widget. By default, the tag used will be either the
1152@code{:menu-tag} or @code{:tag} property if present, or the @code{princ} 1163@code{:menu-tag} or @code{:tag} property if present, or the @code{princ}
1153representation of the @code{:value} property if not. 1164representation of the @code{:value} property if not.
1154 1165
1155@item :validate
1156A function which takes a widget as an argument, and return @code{nil}
1157if the widget's current value is valid for the widget. Otherwise, it
1158should return the widget containing the invalid data, and set that
1159widget's @code{:error} property to a string explaining the error.
1160
1161You can use the function @code{widget-children-validate} for this job;
1162it tests that all children of @var{widget} are valid.
1163
1164@item :tab-order 1166@item :tab-order
1165Specify the order in which widgets are traversed with 1167Specify the order in which widgets are traversed with
1166@code{widget-forward} or @code{widget-backward}. This is only partially 1168@code{widget-forward} or @code{widget-backward}. This is only partially
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index cd29d44ab76..ab9a6e8291c 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -362,12 +362,12 @@ in this frame. Its value is @code{color}, @code{grayscale} or
362@code{mono}. 362@code{mono}.
363 363
364@item title 364@item title
365If a frame has a non-@code{nil} title, it appears in the window system's 365If a frame has a non-@code{nil} title, it appears in the window
366border for the frame, and also in the mode line of windows in that frame 366system's title bar at the top of the frame, and also in the mode line
367if @code{mode-line-frame-identification} uses @samp{%F} 367of windows in that frame if @code{mode-line-frame-identification} uses
368(@pxref{%-Constructs}). This is normally the case when Emacs is not 368@samp{%F} (@pxref{%-Constructs}). This is normally the case when
369using a window system, and can only display one frame at a time. 369Emacs is not using a window system, and can only display one frame at
370@xref{Frame Titles}. 370a time. @xref{Frame Titles}.
371 371
372@item name 372@item name
373The name of the frame. The frame name serves as a default for the frame 373The name of the frame. The frame name serves as a default for the frame
@@ -463,7 +463,7 @@ The height of the frame contents, in characters. (To get the height in
463pixels, call @code{frame-pixel-height}; see @ref{Size and Position}.) 463pixels, call @code{frame-pixel-height}; see @ref{Size and Position}.)
464 464
465@item width 465@item width
466The width of the frame contents, in characters. (To get the height in 466The width of the frame contents, in characters. (To get the width in
467pixels, call @code{frame-pixel-width}; see @ref{Size and Position}.) 467pixels, call @code{frame-pixel-width}; see @ref{Size and Position}.)
468 468
469@item user-size 469@item user-size
@@ -808,8 +808,14 @@ of the frame is normally the same as the size of the terminal screen.
808 808
809@defun frame-pixel-height &optional frame 809@defun frame-pixel-height &optional frame
810@defunx frame-pixel-width &optional frame 810@defunx frame-pixel-width &optional frame
811These functions return the height and width of @var{frame}, measured in 811These functions return the height and width of the main display area
812pixels. If you don't supply @var{frame}, they use the selected frame. 812of @var{frame}, measured in pixels. If you don't supply @var{frame},
813they use the selected frame.
814
815These values include the internal borders, and windows' scroll bars
816and fringes (which belong to individual windows, not to the frame
817itself), but do not include menu bars or tool bars (except when using
818X without an X toolkit).
813@end defun 819@end defun
814 820
815@defun frame-char-height &optional frame 821@defun frame-char-height &optional frame
diff --git a/doc/misc/cc-mode.texi b/doc/misc/cc-mode.texi
index 7c9a2ac1f1b..80c9332996a 100644
--- a/doc/misc/cc-mode.texi
+++ b/doc/misc/cc-mode.texi
@@ -487,8 +487,8 @@ work just fine right out of the box. Note however that you might not
487have the latest @ccmode{} release and might want to upgrade your copy 487have the latest @ccmode{} release and might want to upgrade your copy
488(see below). 488(see below).
489 489
490You should probably start by skimming through the entire chapter 490You should probably start by skimming through the entire Commands chapter
491@ref{Commands} to get an overview of @ccmode{}'s capabilities. 491(@pxref{Commands}) to get an overview of @ccmode{}'s capabilities.
492 492
493After trying out some commands, you may dislike some aspects of 493After trying out some commands, you may dislike some aspects of
494@ccmode{}'s default configuration. Here is an outline of how to 494@ccmode{}'s default configuration. Here is an outline of how to
diff --git a/etc/NEWS.22 b/etc/NEWS.22
index ccabf7d4faf..824da8932ed 100644
--- a/etc/NEWS.22
+++ b/etc/NEWS.22
@@ -44,6 +44,11 @@ below. Emacs tries to warn you about these through `bad-packages-alist'.
44 44
45* Changes in Emacs 22.2 45* Changes in Emacs 22.2
46 46
47** `find-name-dired' now uses -iname rather than -name
48for case-insensitive filesystems. The default behavior is determined
49by the value of `read-file-name-completion-ignore-case'; if you don't
50like that, customize the value of the new option `find-name-arg'.
51
47** In Image mode, whenever the displayed image is wider and/or higher 52** In Image mode, whenever the displayed image is wider and/or higher
48than the window, the usual keys for moving the cursor cause the image 53than the window, the usual keys for moving the cursor cause the image
49to be scrolled horizontally or vertically instead. 54to be scrolled horizontally or vertically instead.
diff --git a/leim/ChangeLog b/leim/ChangeLog
index 1c14d412ec3..c91ae26c1ef 100644
--- a/leim/ChangeLog
+++ b/leim/ChangeLog
@@ -1,3 +1,15 @@
12007-12-15 Richard Stallman <rms@gnu.org>
2
3 * quail/latin-post.el ("scandinavian-postfix"): Doc fix.
4
5 * quail/latin-alt.el: Many doc fixes.
6 ("danish-alt-postfix")
7 ("esperanto-alt-postfix", "finnish-alt-postfix")
8 ("german-alt-postfix", "icelandic-alt-postfix")
9 ("norwegian-alt-postfix", "scandinavian-alt-postfix")
10 ("spanish-alt-postfix", "swedish-alt-postfix"):
11 Deleted; they were identical to the non-alt versions.
12
12007-12-07 Kenichi Handa <handa@ni.aist.go.jp> 132007-12-07 Kenichi Handa <handa@ni.aist.go.jp>
2 14
3 * quail/lao.el (quail-map-from-table): Allow a tone just after a 15 * quail/lao.el (quail-map-from-table): Allow a tone just after a
diff --git a/leim/quail/latin-alt.el b/leim/quail/latin-alt.el
index 85b3bd598d5..30b3598fcba 100644
--- a/leim/quail/latin-alt.el
+++ b/leim/quail/latin-alt.el
@@ -25,10 +25,18 @@
25;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 25;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
26;; Boston, MA 02110-1301, USA. 26;; Boston, MA 02110-1301, USA.
27 27
28;; Author: TAKAHASHI Naoto <ntakahas@etl.go.jp> 28;; Author (of latin-post.el): TAKAHASHI Naoto <ntakahas@etl.go.jp>
29 29
30;;; Commentary: 30;;; Commentary:
31 31
32;; These input methods differ from those in latin-post.el
33;; in that comma is not special (use / instead),
34;; and // is not special either (so you can enter a slash
35;; by typing //).
36
37;; At least, that's what I could see by comparing the first few
38;; of these with latin-post.el.
39
32;;; Code: 40;;; Code:
33 41
34(require 'quail) 42(require 'quail)
@@ -36,6 +44,9 @@
36(quail-define-package 44(quail-define-package
37 "latin-1-alt-postfix" "Latin-1" "1<" t 45 "latin-1-alt-postfix" "Latin-1" "1<" t
38 "Latin-1 character input method with postfix modifiers 46 "Latin-1 character input method with postfix modifiers
47This input method differs from `latin-1-postfix' in that
48comma is not special (use slash instead), and `//' is not
49special (so you can use that to enter a slash).
39 50
40 | postfix | examples 51 | postfix | examples
41 ------------+---------+---------- 52 ------------+---------+----------
@@ -49,9 +60,9 @@
49 others | /<> | s/ -> ,A_(B ?/ -> ,A?(B !/ -> ,A!(B 60 others | /<> | s/ -> ,A_(B ?/ -> ,A?(B !/ -> ,A!(B
50 | various | << -> ,A+(B >> -> ,A;(B o_ -> ,A:(B a_ -> ,A*(B 61 | various | << -> ,A+(B >> -> ,A;(B o_ -> ,A:(B a_ -> ,A*(B
51 62
52It would be natural to use comma for cedillas, but that would be 63It seems natural to use comma for cedillas, but that is
53inconvenient in practice because commas are needed very often after a 64inconvenient in practice because commas are needed very
54letter. 65often after a letter.
55 66
56Doubling the postfix separates the letter and postfix: e.g. a'' -> a' 67Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
57" nil t nil nil nil nil nil nil nil nil t) 68" nil t nil nil nil nil nil nil nil nil t)
@@ -199,6 +210,8 @@ Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
199(quail-define-package 210(quail-define-package
200 "latin-2-alt-postfix" "Latin-2" "2<" t 211 "latin-2-alt-postfix" "Latin-2" "2<" t
201 "Latin-2 character input method with postfix modifiers 212 "Latin-2 character input method with postfix modifiers
213This input method differs from `latin-2-postfix' in that
214comma and period are not special (use ` instead).
202 215
203 | postfix | examples 216 | postfix | examples
204 ------------+---------+---------- 217 ------------+---------+----------
@@ -215,8 +228,8 @@ Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
215 stroke | / | d/ -> ,Bp(B 228 stroke | / | d/ -> ,Bp(B
216 others | / | s/ -> ,B_(B 229 others | / | s/ -> ,B_(B
217 230
218It would be natural to use period and comma for dots/rings and 231It seems natural to use period and comma for dots/rings and
219cedillas/ogoneks, but that would inconvenient in practice, because 232cedillas/ogoneks, but that is inconvenient in practice, because
220periods and commas are needed very often after a letter. 233periods and commas are needed very often after a letter.
221 234
222Doubling the postfix separates the letter and postfix: e.g. a'' -> a' 235Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
@@ -391,6 +404,9 @@ Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
391(quail-define-package 404(quail-define-package
392 "latin-3-alt-postfix" "Latin-3" "3<" t 405 "latin-3-alt-postfix" "Latin-3" "3<" t
393 "Latin-3 character input method with postfix modifiers 406 "Latin-3 character input method with postfix modifiers
407This input method differs from `latin-3-postfix' in that
408comma is not special (use ` instead), and period is not
409special (use slash instead).
394 410
395 | postfix | examples 411 | postfix | examples
396 ------------+---------+---------- 412 ------------+---------+----------
@@ -561,6 +577,9 @@ Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
561(quail-define-package 577(quail-define-package
562 "latin-4-alt-postfix" "Latin-4" "4<" t 578 "latin-4-alt-postfix" "Latin-4" "4<" t
563 "Latin-4 characters input method with postfix modifiers 579 "Latin-4 characters input method with postfix modifiers
580This input method differs from `latin-4-postfix' in that
581comma is not special (use ` instead), and period is not
582special (use ~ instead).
564 583
565 | postfix | examples 584 | postfix | examples
566 ------------+---------+---------- 585 ------------+---------+----------
@@ -577,8 +596,8 @@ Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
577 nordic | / | a/ -> ,De(B e/ -> ,Df(B o/ -> ,Dx(B 596 nordic | / | a/ -> ,De(B e/ -> ,Df(B o/ -> ,Dx(B
578 others | / | s/ -> ,D_(B n/ -> ,D?(B k/ -> ,D"(B 597 others | / | s/ -> ,D_(B n/ -> ,D?(B k/ -> ,D"(B
579 598
580It would be natural to use period and comma for dots and 599It seems natural to use period and comma for dots and
581cedillas/ogoneks, but that would inconvenient in practice, because 600cedillas/ogoneks, but that is inconvenient in practice, because
582periods and commas are needed very often after a letter. 601periods and commas are needed very often after a letter.
583 602
584Doubling the postfix separates the letter and postfix: e.g. a'' -> a' 603Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
@@ -755,6 +774,9 @@ Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
755(quail-define-package 774(quail-define-package
756 "latin-5-alt-postfix" "Latin-5" "5<" t 775 "latin-5-alt-postfix" "Latin-5" "5<" t
757 "Latin-5 characters input method with postfix modifiers 776 "Latin-5 characters input method with postfix modifiers
777This input method differs from `latin-5-postfix' in that
778comma is not special (use ` instead), and period is not
779special (use / instead).
758 780
759 | postfix | examples 781 | postfix | examples
760 ------------+---------+---------- 782 ------------+---------+----------
@@ -769,8 +791,8 @@ Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
769 nordic | / | a/ -> ,Me(B e/ -> ,Mf(B o/ -> ,Mx(B 791 nordic | / | a/ -> ,Me(B e/ -> ,Mf(B o/ -> ,Mx(B
770 others | / | s/ -> ,M_(B 792 others | / | s/ -> ,M_(B
771 793
772It would be natural to use period and comma for dots and cedillas, but 794It seems natural to use period and comma for dots and cedillas, but
773that would inconvenient in practice, because periods and commas are 795that is inconvenient in practice, because periods and commas are
774needed very often after a letter. 796needed very often after a letter.
775 797
776Doubling the postfix separates the letter and postfix: e.g. a'' -> a' 798Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
@@ -904,119 +926,7 @@ Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
904 ("y\"\"" ["y\""]) 926 ("y\"\"" ["y\""])
905 ) 927 )
906 928
907(quail-define-package
908 "danish-alt-postfix" "Latin-1" "DA<" t
909 "Danish input method (rule: AE -> ,AF(B, OE -> ,AX(B, AA -> ,AE(B, E' -> ,AI(B)
910
911Doubling the postfix separates the letter and postfix: e.g. aee -> ae
912"
913 nil t nil nil nil nil nil nil nil nil t)
914
915(quail-define-rules
916 ("AE" ?,AF(B)
917 ("ae" ?,Af(B)
918 ("OE" ?,AX(B)
919 ("oe" ?,Ax(B)
920 ("AA" ?,AE(B)
921 ("aa" ?,Ae(B)
922 ("E'" ?,AI(B)
923 ("e'" ?,Ai(B)
924
925 ("AEE" ["AE"])
926 ("aee" ["ae"])
927 ("OEE" ["OE"])
928 ("oee" ["oe"])
929 ("AAA" ["AA"])
930 ("aaa" ["aa"])
931 ("E''" ["E'"])
932 ("e''" ["e'"])
933 )
934
935(quail-define-package
936 "esperanto-alt-postfix" "Latin-3" "EO<" t
937 "Esperanto input method with postfix modifiers
938
939A following ^ or x will produce an accented character,
940e.g. c^ -> ,Cf(B gx -> ,Cx(B u^ -> ,C}(B.
941
942Doubling the postfix separates the letter and postfix,
943e.g. a'' -> a'.
944" nil t nil nil nil nil nil nil nil nil t)
945
946(quail-define-rules
947 ("Cx" ?,CF(B)
948 ("C^" ?,CF(B)
949 ("cx" ?,Cf(B)
950 ("c^" ?,Cf(B)
951 ("Gx" ?,CX(B)
952 ("G^" ?,CX(B)
953 ("gx" ?,Cx(B)
954 ("g^" ?,Cx(B)
955 ("Hx" ?,C&(B)
956 ("H^" ?,C&(B)
957 ("hx" ?,C6(B)
958 ("h^" ?,C6(B)
959 ("Jx" ?,C,(B)
960 ("J^" ?,C,(B)
961 ("jx" ?,C<(B)
962 ("j^" ?,C<(B)
963 ("Sx" ?,C^(B)
964 ("S^" ?,C^(B)
965 ("sx" ?,C~(B)
966 ("s^" ?,C~(B)
967 ("Ux" ?,C](B)
968 ("U^" ?,C](B)
969 ("ux" ?,C}(B)
970 ("u^" ?,C}(B)
971
972 ("Cxx" ["Cx"])
973 ("C^^" ["C^"])
974 ("cxx" ["cx"])
975 ("c^^" ["c^"])
976 ("Gxx" ["Gx"])
977 ("G^^" ["G^"])
978 ("gxx" ["gx"])
979 ("g^^" ["g^"])
980 ("Hxx" ["Hx"])
981 ("H^^" ["H^"])
982 ("hxx" ["hx"])
983 ("h^^" ["h^"])
984 ("Jxx" ["Jx"])
985 ("J^^" ["J^"])
986 ("jxx" ["jx"])
987 ("j^^" ["j^"])
988 ("Sxx" ["Sx"])
989 ("S^^" ["S^"])
990 ("sxx" ["sx"])
991 ("s^^" ["s^"])
992 ("Uxx" ["Ux"])
993 ("U^^" ["U^"])
994 ("uxx" ["ux"])
995 ("u^^" ["u^"])
996 )
997
998(quail-define-package
999 "finnish-alt-postfix" "Latin-1" "FI<" t
1000 "Finnish (Suomi) input method
1001
1002AE -> ,AD(B
1003AEE -> AE
1004OE -> ,AV(B
1005OEE -> OE
1006"
1007 nil t nil nil nil nil nil nil nil nil t)
1008 929
1009(quail-define-rules
1010 ("AE" ?,AD(B)
1011 ("ae" ?,Ad(B)
1012 ("OE" ?,AV(B)
1013 ("oe" ?,Av(B)
1014
1015 ("AEE" ["AE"])
1016 ("aee" ["ae"])
1017 ("OEE" ["OE"])
1018 ("oee" ["oe"])
1019 )
1020 930
1021(quail-define-package 931(quail-define-package
1022 "french-alt-postfix" "French" "FR<" t 932 "french-alt-postfix" "French" "FR<" t
@@ -1093,100 +1003,7 @@ Par exemple: e'' -> e'
1093 (">>>" [">>"]) 1003 (">>>" [">>"])
1094 ) 1004 )
1095 1005
1096(quail-define-package
1097 "german-alt-postfix" "German" "DE<" t
1098 "German (Deutsch) input method
1099
1100ae -> ,Ad(B
1101aee -> ae
1102oe -> ,Av(B
1103oee -> oe
1104ue -> ,A|(B
1105uee -> ue
1106sz -> ,A_(B
1107szz -> sz
1108"
1109 nil t nil nil nil nil nil nil nil nil t)
1110
1111(quail-define-rules
1112 ("AE" ?,AD(B)
1113 ("ae" ?,Ad(B)
1114 ("OE" ?,AV(B)
1115 ("oe" ?,Av(B)
1116 ("UE" ?,A\(B)
1117 ("ue" ?,A|(B)
1118 ("sz" ?,A_(B)
1119
1120 ("AEE" ["AE"])
1121 ("aee" ["ae"])
1122 ("OEE" ["OE"])
1123 ("oee" ["oe"])
1124 ("UEE" ["UE"])
1125 ("uee" ["ue"])
1126 ("szz" ["sz"])
1127 )
1128
1129(quail-define-package
1130 "icelandic-alt-postfix" "Latin-1" "IS<" t
1131 "Icelandic (,AM(Bslenska) input method with postfix modifiers
1132
1133A' -> ,AA(B
1134E' -> ,AI(B
1135I' -> ,AM(B
1136O' -> ,AS(B
1137U' -> ,AZ(B
1138Y' -> ,A](B
1139AE -> ,AF(B
1140OE -> ,AV(B
1141D/ -> ,AP(B (eth)
1142T/ -> ,A^(B (thorn)
1143
1144Doubling the postfix separates the letter and postfix: e.g. a'' -> a'
1145" nil t nil nil nil nil nil nil nil nil t)
1146
1147(quail-define-rules
1148 ("A'" ?,AA(B)
1149 ("a'" ?,Aa(B)
1150 ("E'" ?,AI(B)
1151 ("e'" ?,Ai(B)
1152 ("I'" ?,AM(B)
1153 ("i'" ?,Am(B)
1154 ("O'" ?,AS(B)
1155 ("o'" ?,As(B)
1156 ("U'" ?,AZ(B)
1157 ("u'" ?,Az(B)
1158 ("Y'" ?,A](B)
1159 ("y'" ?,A}(B)
1160 ("AE" ?,AF(B)
1161 ("ae" ?,Af(B)
1162 ("OE" ?,AV(B)
1163 ("oe" ?,Av(B)
1164 ("D/" ?,AP(B)
1165 ("d/" ?,Ap(B)
1166 ("T/" ?,A^(B)
1167 ("t/" ?,A~(B)
1168 1006
1169 ("A''" ["A'"])
1170 ("a''" ["a'"])
1171 ("E''" ["E'"])
1172 ("e''" ["e'"])
1173 ("I''" ["I'"])
1174 ("i''" ["i'"])
1175 ("O''" ["O'"])
1176 ("o''" ["o'"])
1177 ("U''" ["U'"])
1178 ("u''" ["u'"])
1179 ("Y''" ["Y'"])
1180 ("y''" ["y'"])
1181 ("AEE" ["AE"])
1182 ("aee" ["ae"])
1183 ("OEE" ["OE"])
1184 ("oee" ["oe"])
1185 ("D//" ["D/"])
1186 ("d//" ["d/"])
1187 ("T//" ["T/"])
1188 ("t//" ["t/"])
1189 )
1190 1007
1191(quail-define-package 1008(quail-define-package
1192 "italian-alt-postfix" "Latin-1" "IT<" t 1009 "italian-alt-postfix" "Latin-1" "IT<" t
@@ -1259,157 +1076,12 @@ Doubling the postfix separates the letter and postfix: e.g. a`` -> a`
1259 ("a__" ["a_"]) 1076 ("a__" ["a_"])
1260 ) 1077 )
1261 1078
1262(quail-define-package
1263 "norwegian-alt-postfix" "Latin-1" "NO<" t
1264 "Norwegian (Norsk) input method (rule: AE->,AF(B, OE->,AX(B, AA->,AE(B, E'->,AI(B)
1265
1266Doubling the postfix separates the letter and postfix: e.g. aee -> ae
1267"
1268 nil t nil nil nil nil nil nil nil nil t)
1269
1270(quail-define-rules
1271 ("AE" ?,AF(B)
1272 ("ae" ?,Af(B)
1273 ("OE" ?,AX(B)
1274 ("oe" ?,Ax(B)
1275 ("AA" ?,AE(B)
1276 ("aa" ?,Ae(B)
1277 ("E'" ?,AI(B)
1278 ("e'" ?,Ai(B)
1279
1280 ("AEE" ["AE"])
1281 ("aee" ["ae"])
1282 ("OEE" ["OE"])
1283 ("oee" ["oe"])
1284 ("AAA" ["AA"])
1285 ("aaa" ["aa"])
1286 ("E''" ["E'"])
1287 ("e''" ["e'"])
1288 )
1289
1290(quail-define-package
1291 "scandinavian-alt-postfix" "Latin-1" "SC<" t
1292 "Scandinavian input method with postfix modifiers
1293Supported languages are Swedish, Norwegian, Danish, and Finnish.
1294
1295ae -> ,Af(B
1296oe -> ,Ax(B
1297aa -> ,Ae(B
1298a\" -> ,Ad(B
1299o\" -> ,Av(B
1300e' -> ,Ai(B
1301
1302Doubling the postfix separates the letter and postfix:
1303aee -> ae o\"\" -> o\" etc.
1304" nil t nil nil nil nil nil nil nil nil t)
1305
1306(quail-define-rules
1307 ("AE" ?,AF(B)
1308 ("ae" ?,Af(B)
1309 ("OE" ?,AX(B)
1310 ("oe" ?,Ax(B)
1311 ("AA" ?,AE(B)
1312 ("aa" ?,Ae(B)
1313 ("A\"" ?,AD(B)
1314 ("a\"" ?,Ad(B)
1315 ("O\"" ?,AV(B)
1316 ("o\"" ?,Av(B)
1317 ("E'" ?,AI(B)
1318 ("e'" ?,Ai(B)
1319
1320 ("AEE" ["AE"])
1321 ("aee" ["ae"])
1322 ("OEE" ["OE"])
1323 ("oee" ["oe"])
1324 ("AAA" ["AA"])
1325 ("aaa" ["aa"])
1326 ("A\"\"" ["A\""])
1327 ("a\"\"" ["a\""])
1328 ("O\"\"" ["O\""])
1329 ("o\"\"" ["o\""])
1330 ("E''" ["E'"])
1331 ("e''" ["e'"])
1332 )
1333
1334(quail-define-package
1335 "spanish-alt-postfix" "Spanish" "ES<" t
1336 "Spanish (Espa,Aq(Bol) input method with postfix modifiers
1337
1338A' -> ,AA(B
1339E' -> ,AI(B
1340I' -> ,AM(B
1341O' -> ,AS(B
1342U' -> ,AZ(B
1343N~ -> ,AQ(B
1344!/ -> ,A!(B
1345?/ -> ,A?(B
1346
1347Doubling the postfix separates the letter and postfix:
1348a'' -> a' n~~ -> n~, etc.
1349" nil t nil nil nil nil nil nil nil nil t)
1350
1351(quail-define-rules
1352 ("A'" ?,AA(B)
1353 ("a'" ?,Aa(B)
1354 ("E'" ?,AI(B)
1355 ("e'" ?,Ai(B)
1356 ("I'" ?,AM(B)
1357 ("i'" ?,Am(B)
1358 ("O'" ?,AS(B)
1359 ("o'" ?,As(B)
1360 ("U'" ?,AZ(B)
1361 ("u'" ?,Az(B)
1362 ("N~" ?,AQ(B)
1363 ("n~" ?,Aq(B)
1364 ("?/" ?,A?(B)
1365 ("!/" ?,A!(B)
1366
1367 ("A''" ["A'"])
1368 ("a''" ["a'"])
1369 ("E''" ["E'"])
1370 ("e''" ["e'"])
1371 ("I''" ["I'"])
1372 ("i''" ["i'"])
1373 ("O''" ["O'"])
1374 ("o''" ["o'"])
1375 ("U''" ["U'"])
1376 ("u''" ["u'"])
1377 ("N~~" ["N~"])
1378 ("n~~" ["n~"])
1379 ("?//" ["?/"])
1380 ("!//" ["!/"])
1381 )
1382
1383(quail-define-package
1384 "swedish-alt-postfix" "Latin-1" "SV<" t
1385 "Swedish (Svenska) input method (rule: AA -> ,AE(B, AE -> ,AD(B, OE -> ,AV(B, E' -> ,AI(B)
1386
1387Doubling the postfix separates the letter and postfix: e.g. aee -> ae
1388" nil t nil nil nil nil nil nil nil nil t)
1389
1390(quail-define-rules
1391 ("AA" ?,AE(B)
1392 ("aa" ?,Ae(B)
1393 ("AE" ?,AD(B)
1394 ("ae" ?,Ad(B)
1395 ("OE" ?,AV(B)
1396 ("oe" ?,Av(B)
1397 ("E'" ?,AI(B)
1398 ("e'" ?,Ai(B)
1399
1400 ("AAA" ["AA"])
1401 ("aaa" ["aa"])
1402 ("AEE" ["AE"])
1403 ("aee" ["ae"])
1404 ("OEE" ["OE"])
1405 ("oee" ["oe"])
1406 ("E''" ["E'"])
1407 ("e''" ["e'"])
1408 )
1409 1079
1410(quail-define-package 1080(quail-define-package
1411 "turkish-latin-3-alt-postfix" "Turkish" "TR3<<" t 1081 "turkish-latin-3-alt-postfix" "Turkish" "TR3<<" t
1412 "Turkish (T,A|(Brk,Ag(Be) input method with postfix modifiers. 1082 "Turkish (T,A|(Brk,Ag(Be) input method with postfix modifiers.
1083This input method differs from `turkish-latin-3-postfix' in that
1084comma is not special (use ` instead).
1413 1085
1414This is for those who use Latin-3 (ISO-8859-3) for Turkish. If you 1086This is for those who use Latin-3 (ISO-8859-3) for Turkish. If you
1415use Latin-5 (ISO-8859-9), you should use \"turkish-alt-postfix\" instead. 1087use Latin-5 (ISO-8859-9), you should use \"turkish-alt-postfix\" instead.
@@ -1472,6 +1144,8 @@ Doubling the postfix separates the letter and postfix: e.g. a^^ -> a^
1472(quail-define-package 1144(quail-define-package
1473 "turkish-alt-postfix" "Turkish" "TR,A+(B" t 1145 "turkish-alt-postfix" "Turkish" "TR,A+(B" t
1474 "Turkish (T,A|(Brk,Ag(Be) input method with postfix modifiers. 1146 "Turkish (T,A|(Brk,Ag(Be) input method with postfix modifiers.
1147This input method differs from `turkish-postfix' in that
1148comma is not special (use ` instead).
1475 1149
1476This is for those who use Latin-5 (ISO-8859-9) for Turkish. If you 1150This is for those who use Latin-5 (ISO-8859-9) for Turkish. If you
1477use Latin-3 (ISO-8859-3), you should use 1151use Latin-3 (ISO-8859-3), you should use
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 7caab1fc466..37fe9fa861e 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,72 @@
12007-12-29 Richard Stallman <rms@gnu.org>
2
3 * progmodes/compile.el (compilation-start): Set initial visible
4 point properly even when compilation buffer already current.
5
62007-12-29 Richard Stallman <rms@gnu.org>
7
8 * files.el (conf-mode-maybe): New function.
9 (auto-mode-alist): Use conf-mode-maybe for .conf etc.
10
112007-12-29 Martin Rudalics <rudalics@gmx.at>
12
13 * textmodes/fill.el (fill-find-break-point): Fix doc-string typo.
14
152007-12-29 Dan Nicolaescu <dann@ics.uci.edu>
16
17 * progmodes/asm-mode.el (asm-mode-map): Add a major mode menu.
18
192007-12-29 Richard Stallman <rms@gnu.org>
20
21 * comint.el (comint-mode-map): Explicitly bind `delete' and `kp-delete'
22 so they never do EOF.
23
242007-12-29 Richard Stallman <rms@gnu.org>
25
26 * faces.el (copy-face): Create the new face explicitly if it
27 does not exist already.
28
292007-12-29 Eli Zaretskii <eliz@gnu.org>
30
31 * simple.el (minibuffer-history, shell-command-history)
32 (set-variable-value-history):
33 * replace.el (regexp-history):
34 * international/mule-cmds.el (input-method-history):
35 * files.el (file-name-history): Add reference to history-length in
36 the doc string.
37
382007-12-29 Richard Stallman <rms@gnu.org>
39
40 * comint.el (comint-password-prompt-regexp): Match `Enter Password'.
41
422007-12-29 Jason Rumney <jasonr@gnu.org>
43
44 * find-dired.el (find-name-arg): New custom variable.
45 (find-name-dired): Use it.
46 (find-dired-find-program): Remove.
47 (find-dired): Use find-program.
48 (find-grep-dired): Use grep-program.
49
50 * progmodes/grep.el (rgrep): Use find-name-arg.
51
522007-12-29 Thien-Thi Nguyen <ttn@gnuvola.org>
53
54 * progmodes/cc-vars.el (defcustom-c-stylevar):
55 Revert to pre-2007-12-12 version.
56
572007-12-29 Richard Stallman <rms@gnu.org>
58
59 * emacs-lisp/find-func.el (find-function-after-hook): Add :type.
60
61 * info.el (Info-clone-buffer): Renamed from Info-clone-buffer-hook.
62 Use changed.
63
64 * startup.el (fancy-splash-help-echo): Var deleted.
65 (fancy-splash-insert): Get help-echo from (startup-echo-area-message).
66 (fancy-about-screen): Don't display fancy-splash-help-echo.
67
68 * menu-bar.el (menu-bar-describe-menu): Remove dots from menu text.
69
12007-12-28 Eric S. Raymond <esr@snark.thyrsus.com> 702007-12-28 Eric S. Raymond <esr@snark.thyrsus.com>
2 71
3 * vc-hooks.el, vc.el: Move vc-directory-exclusion-list from vc.el 72 * vc-hooks.el, vc.el: Move vc-directory-exclusion-list from vc.el
diff --git a/lisp/comint.el b/lisp/comint.el
index f1d9243cc60..94b1842fb1c 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -336,8 +336,9 @@ This variable is buffer-local."
336;; plink prints a prompt like `Passphrase for key "root@GNU.ORG": '. 336;; plink prints a prompt like `Passphrase for key "root@GNU.ORG": '.
337;; Ubuntu's sudo prompts like `[sudo] password for user:' 337;; Ubuntu's sudo prompts like `[sudo] password for user:'
338;; Some implementations of passwd use "Password (again)" as the 2nd prompt. 338;; Some implementations of passwd use "Password (again)" as the 2nd prompt.
339;; Something called "perforce" uses "Enter password:".
339(defcustom comint-password-prompt-regexp 340(defcustom comint-password-prompt-regexp
340 "\\(\\([Oo]ld \\|[Nn]ew \\|'s \\|login \\|\ 341 "\\(\\(Enter \\|[Oo]ld \\|[Nn]ew \\|'s \\|login \\|\
341Kerberos \\|CVS \\|UNIX \\| SMB \\|LDAP \\|\\[sudo] \\|^\\)\ 342Kerberos \\|CVS \\|UNIX \\| SMB \\|LDAP \\|\\[sudo] \\|^\\)\
342\[Pp]assword\\( (again)\\)?\\|\ 343\[Pp]assword\\( (again)\\)?\\|\
343pass phrase\\|\\(Enter \\|Repeat \\|Bad \\)?[Pp]assphrase\\)\ 344pass phrase\\|\\(Enter \\|Repeat \\|Bad \\)?[Pp]assphrase\\)\
@@ -452,6 +453,10 @@ executed once when the buffer is created."
452 (define-key map "\e\C-l" 'comint-show-output) 453 (define-key map "\e\C-l" 'comint-show-output)
453 (define-key map "\C-m" 'comint-send-input) 454 (define-key map "\C-m" 'comint-send-input)
454 (define-key map "\C-d" 'comint-delchar-or-maybe-eof) 455 (define-key map "\C-d" 'comint-delchar-or-maybe-eof)
456 ;; The following two are standardly aliased to C-d,
457 ;; but they should never do EOF, just delete.
458 (define-key map [delete] 'delete-char)
459 (define-key map [kp-delete] 'delete-char)
455 (define-key map "\C-c " 'comint-accumulate) 460 (define-key map "\C-c " 'comint-accumulate)
456 (define-key map "\C-c\C-x" 'comint-get-next-from-history) 461 (define-key map "\C-c\C-x" 'comint-get-next-from-history)
457 (define-key map "\C-c\C-a" 'comint-bol-or-process-mark) 462 (define-key map "\C-c\C-a" 'comint-bol-or-process-mark)
diff --git a/lisp/emacs-lisp/find-func.el b/lisp/emacs-lisp/find-func.el
index 24e26827f7c..4aa4590371a 100644
--- a/lisp/emacs-lisp/find-func.el
+++ b/lisp/emacs-lisp/find-func.el
@@ -133,6 +133,7 @@ See `find-function' and `find-variable'."
133 "Hook run after finding symbol definition. 133 "Hook run after finding symbol definition.
134 134
135See the functions `find-function' and `find-variable'." 135See the functions `find-function' and `find-variable'."
136 :type 'hook
136 :group 'find-function 137 :group 'find-function
137 :version "20.3") 138 :version "20.3")
138 139
diff --git a/lisp/faces.el b/lisp/faces.el
index 88b0c54039a..925b76844e9 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -158,13 +158,18 @@ and for each existing frame.
158 158
159If the optional fourth argument NEW-FRAME is given, 159If the optional fourth argument NEW-FRAME is given,
160copy the information from face OLD-FACE on frame FRAME 160copy the information from face OLD-FACE on frame FRAME
161to NEW-FACE on frame NEW-FRAME." 161to NEW-FACE on frame NEW-FRAME. In this case, FRAME may not be nil."
162 (let ((inhibit-quit t)) 162 (let ((inhibit-quit t))
163 (if (null frame) 163 (if (null frame)
164 (progn 164 (progn
165 (when new-frame
166 (error "Copying face %s from all frames to one frame"
167 old-face))
168 (make-empty-face new-face)
165 (dolist (frame (frame-list)) 169 (dolist (frame (frame-list))
166 (copy-face old-face new-face frame)) 170 (copy-face old-face new-face frame))
167 (copy-face old-face new-face t)) 171 (copy-face old-face new-face t))
172 (make-empty-face new-face)
168 (internal-copy-lisp-face old-face new-face frame new-frame)) 173 (internal-copy-lisp-face old-face new-face frame new-frame))
169 new-face)) 174 new-face))
170 175
diff --git a/lisp/files.el b/lisp/files.el
index 70a07ea5eff..dec47ce362e 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -525,7 +525,10 @@ using \\[toggle-read-only]."
525 :group 'view) 525 :group 'view)
526 526
527(defvar file-name-history nil 527(defvar file-name-history nil
528 "History list of file names entered in the minibuffer.") 528 "History list of file names entered in the minibuffer.
529
530Maximum length of the history list is determined by the value
531of `history-length', which see.")
529 532
530(put 'ange-ftp-completion-hook-function 'safe-magic t) 533(put 'ange-ftp-completion-hook-function 'safe-magic t)
531(defun ange-ftp-completion-hook-function (op &rest args) 534(defun ange-ftp-completion-hook-function (op &rest args)
@@ -2092,7 +2095,7 @@ ARC\\|ZIP\\|LZH\\|LHA\\|ZOO\\|[JEW]AR\\|XPI\\|RAR\\)\\'" . archive-mode)
2092 ("java.+\\.conf\\'" . conf-javaprop-mode) 2095 ("java.+\\.conf\\'" . conf-javaprop-mode)
2093 ("\\.properties\\(?:\\.[a-zA-Z0-9._-]+\\)?\\'" . conf-javaprop-mode) 2096 ("\\.properties\\(?:\\.[a-zA-Z0-9._-]+\\)?\\'" . conf-javaprop-mode)
2094 ;; *.cf, *.cfg, *.conf, *.config[.local|.de_DE.UTF8|...], */config 2097 ;; *.cf, *.cfg, *.conf, *.config[.local|.de_DE.UTF8|...], */config
2095 ("[/.]c\\(?:on\\)?f\\(?:i?g\\)?\\(?:\\.[a-zA-Z0-9._-]+\\)?\\'" . conf-mode) 2098 ("[/.]c\\(?:on\\)?f\\(?:i?g\\)?\\(?:\\.[a-zA-Z0-9._-]+\\)?\\'" . conf-mode-maybe)
2096 ("\\`/etc/\\(?:DIR_COLORS\\|ethers\\|.?fstab\\|.*hosts\\|lesskey\\|login\\.?de\\(?:fs\\|vperm\\)\\|magic\\|mtab\\|pam\\.d/.*\\|permissions\\(?:\\.d/.+\\)?\\|protocols\\|rpc\\|services\\)\\'" . conf-space-mode) 2099 ("\\`/etc/\\(?:DIR_COLORS\\|ethers\\|.?fstab\\|.*hosts\\|lesskey\\|login\\.?de\\(?:fs\\|vperm\\)\\|magic\\|mtab\\|pam\\.d/.*\\|permissions\\(?:\\.d/.+\\)?\\|protocols\\|rpc\\|services\\)\\'" . conf-space-mode)
2097 ("\\`/etc/\\(?:acpid?/.+\\|aliases\\(?:\\.d/.+\\)?\\|default/.+\\|group-?\\|hosts\\..+\\|inittab\\|ksysguarddrc\\|opera6rc\\|passwd-?\\|shadow-?\\|sysconfig/.+\\)\\'" . conf-mode) 2100 ("\\`/etc/\\(?:acpid?/.+\\|aliases\\(?:\\.d/.+\\)?\\|default/.+\\|group-?\\|hosts\\..+\\|inittab\\|ksysguarddrc\\|opera6rc\\|passwd-?\\|shadow-?\\|sysconfig/.+\\)\\'" . conf-mode)
2098 ;; ChangeLog.old etc. Other change-log-mode entries are above; 2101 ;; ChangeLog.old etc. Other change-log-mode entries are above;
@@ -2139,6 +2142,16 @@ See also `interpreter-mode-alist', which detects executable script modes
2139based on the interpreters they specify to run, 2142based on the interpreters they specify to run,
2140and `magic-mode-alist', which determines modes based on file contents.") 2143and `magic-mode-alist', which determines modes based on file contents.")
2141 2144
2145(defun conf-mode-maybe ()
2146 "Select Conf mode or XML mode according to start of file."
2147 (if (save-excursion
2148 (save-restriction
2149 (widen)
2150 (goto-char (point-min))
2151 (looking-at "<\\?xml \\|<!-- \\|<!DOCTYPE ")))
2152 (xml-mode)
2153 (conf-mode)))
2154
2142(defvar interpreter-mode-alist 2155(defvar interpreter-mode-alist
2143 ;; Note: The entries for the modes defined in cc-mode.el (awk-mode 2156 ;; Note: The entries for the modes defined in cc-mode.el (awk-mode
2144 ;; and pike-mode) are added through autoload directives in that 2157 ;; and pike-mode) are added through autoload directives in that
diff --git a/lisp/find-dired.el b/lisp/find-dired.el
index 0a3de850762..8a8304c6763 100644
--- a/lisp/find-dired.el
+++ b/lisp/find-dired.el
@@ -36,11 +36,6 @@
36 :group 'dired 36 :group 'dired
37 :prefix "find-") 37 :prefix "find-")
38 38
39(defcustom find-dired-find-program "find"
40 "Program used to find files."
41 :group 'dired
42 :type 'file)
43
44;; find's -ls corresponds to these switches. 39;; find's -ls corresponds to these switches.
45;; Note -b, at least GNU find quotes spaces etc. in filenames 40;; Note -b, at least GNU find quotes spaces etc. in filenames
46;;;###autoload 41;;;###autoload
@@ -77,6 +72,18 @@ On other systems, the closest you can come is to use `-l'."
77 :type 'string 72 :type 'string
78 :group 'find-dired) 73 :group 'find-dired)
79 74
75;;;###autoload
76(defcustom find-name-arg
77 (if read-file-name-completion-ignore-case
78 "-iname"
79 "-name")
80 "*Argument used to specify file name pattern.
81If `read-file-name-completion-ignore-case' is non-nil, -iname is used so that
82find also ignores case. Otherwise, -name is used."
83 :type 'string
84 :group 'find-dired
85 :version "22.2")
86
80(defvar find-args nil 87(defvar find-args nil
81 "Last arguments given to `find' by \\[find-dired].") 88 "Last arguments given to `find' by \\[find-dired].")
82 89
@@ -126,7 +133,7 @@ as the final argument."
126 (erase-buffer) 133 (erase-buffer)
127 (setq default-directory dir 134 (setq default-directory dir
128 find-args args ; save for next interactive call 135 find-args args ; save for next interactive call
129 args (concat find-dired-find-program " . " 136 args (concat find-program " . "
130 (if (string= args "") 137 (if (string= args "")
131 "" 138 ""
132 (concat 139 (concat
@@ -198,7 +205,7 @@ The command run (after changing into DIR) is
198 find . -name 'PATTERN' -ls" 205 find . -name 'PATTERN' -ls"
199 (interactive 206 (interactive
200 "DFind-name (directory): \nsFind-name (filename wildcard): ") 207 "DFind-name (directory): \nsFind-name (filename wildcard): ")
201 (find-dired dir (concat "-name " (shell-quote-argument pattern)))) 208 (find-dired dir (concat find-name-arg " " (shell-quote-argument pattern))))
202 209
203;; This functionality suggested by 210;; This functionality suggested by
204;; From: oblanc@watcgl.waterloo.edu (Olivier Blanc) 211;; From: oblanc@watcgl.waterloo.edu (Olivier Blanc)
@@ -222,7 +229,7 @@ Thus ARG can also contain additional grep options."
222 ;; by FIFOs and devices. I'm not sure what's best to do 229 ;; by FIFOs and devices. I'm not sure what's best to do
223 ;; about symlinks, so as far as I know this is not wrong. 230 ;; about symlinks, so as far as I know this is not wrong.
224 (find-dired dir 231 (find-dired dir
225 (concat "-type f -exec grep " find-grep-options " -e " 232 (concat "-type f -exec " grep-program " " find-grep-options " -e "
226 (shell-quote-argument regexp) 233 (shell-quote-argument regexp)
227 " " 234 " "
228 (shell-quote-argument "{}") 235 (shell-quote-argument "{}")
diff --git a/lisp/info.el b/lisp/info.el
index 2d396a105d8..b842cc2adb6 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -3472,7 +3472,7 @@ Advanced commands:
3472 (setq widen-automatically nil) 3472 (setq widen-automatically nil)
3473 (setq desktop-save-buffer 'Info-desktop-buffer-misc-data) 3473 (setq desktop-save-buffer 'Info-desktop-buffer-misc-data)
3474 (add-hook 'kill-buffer-hook 'Info-kill-buffer nil t) 3474 (add-hook 'kill-buffer-hook 'Info-kill-buffer nil t)
3475 (add-hook 'clone-buffer-hook 'Info-clone-buffer-hook nil t) 3475 (add-hook 'clone-buffer-hook 'Info-clone-buffer nil t)
3476 (add-hook 'change-major-mode-hook 'font-lock-defontify nil t) 3476 (add-hook 'change-major-mode-hook 'font-lock-defontify nil t)
3477 (add-hook 'isearch-mode-hook 'Info-isearch-start nil t) 3477 (add-hook 'isearch-mode-hook 'Info-isearch-start nil t)
3478 (set (make-local-variable 'isearch-search-fun-function) 3478 (set (make-local-variable 'isearch-search-fun-function)
@@ -3495,7 +3495,8 @@ Advanced commands:
3495 Info-tag-table-buffer 3495 Info-tag-table-buffer
3496 (kill-buffer Info-tag-table-buffer))) 3496 (kill-buffer Info-tag-table-buffer)))
3497 3497
3498(defun Info-clone-buffer-hook () 3498;; Placed on `clone-buffer-hook'.
3499(defun Info-clone-buffer ()
3499 (when (bufferp Info-tag-table-buffer) 3500 (when (bufferp Info-tag-table-buffer)
3500 (setq Info-tag-table-buffer 3501 (setq Info-tag-table-buffer
3501 (with-current-buffer Info-tag-table-buffer (clone-buffer)))) 3502 (with-current-buffer Info-tag-table-buffer (clone-buffer))))
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index f8dc141943f..ef3d7fbf13e 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -1339,7 +1339,10 @@ This is the input method activated automatically by the command
1339(put 'input-method-function 'permanent-local t) 1339(put 'input-method-function 'permanent-local t)
1340 1340
1341(defvar input-method-history nil 1341(defvar input-method-history nil
1342 "History list for some commands that read input methods.") 1342 "History list of input methods read from the minibuffer.
1343
1344Maximum length of the history list is determined by the value
1345of `history-length', which see.")
1343(make-variable-buffer-local 'input-method-history) 1346(make-variable-buffer-local 'input-method-history)
1344(put 'input-method-history 'permanent-local t) 1347(put 'input-method-history 'permanent-local t)
1345 1348
diff --git a/lisp/mail/footnote.el b/lisp/mail/footnote.el
index b94f3bc8297..a3a9cfc8058 100644
--- a/lisp/mail/footnote.el
+++ b/lisp/mail/footnote.el
@@ -327,7 +327,8 @@ Conversion is done based upon the current selected style."
327(defun Footnote-current-regexp () 327(defun Footnote-current-regexp ()
328 "Return the regexp of the index of the current style." 328 "Return the regexp of the index of the current style."
329 (concat (nth 2 (or (assq footnote-style footnote-style-alist) 329 (concat (nth 2 (or (assq footnote-style footnote-style-alist)
330 (nth 0 footnote-style-alist))) "*")) 330 (nth 0 footnote-style-alist)))
331 "*"))
331 332
332(defun Footnote-refresh-footnotes (&optional index-regexp) 333(defun Footnote-refresh-footnotes (&optional index-regexp)
333 "Redraw all footnotes. 334 "Redraw all footnotes.
@@ -345,7 +346,7 @@ styles."
345 (search-backward footnote-start-tag nil t) 346 (search-backward footnote-start-tag nil t)
346 (when (looking-at (concat 347 (when (looking-at (concat
347 (regexp-quote footnote-start-tag) 348 (regexp-quote footnote-start-tag)
348 "\\(" index-regexp "\\)" 349 "\\(" index-regexp "+\\)"
349 (regexp-quote footnote-end-tag))) 350 (regexp-quote footnote-end-tag)))
350 (replace-match (concat 351 (replace-match (concat
351 footnote-start-tag 352 footnote-start-tag
@@ -361,7 +362,7 @@ styles."
361 (goto-char (cdr alist)) 362 (goto-char (cdr alist))
362 (when (looking-at (concat 363 (when (looking-at (concat
363 (regexp-quote footnote-start-tag) 364 (regexp-quote footnote-start-tag)
364 "\\(" index-regexp "\\)" 365 "\\(" index-regexp "+\\)"
365 (regexp-quote footnote-end-tag))) 366 (regexp-quote footnote-end-tag)))
366 (replace-match (concat 367 (replace-match (concat
367 footnote-start-tag 368 footnote-start-tag
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index 2f4c95d6484..7a4233018e9 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -1216,7 +1216,7 @@ mail status in mode line"))
1216 :visible default-enable-multibyte-characters 1216 :visible default-enable-multibyte-characters
1217 :help "Display multilingual environment settings")) 1217 :help "Display multilingual environment settings"))
1218(define-key menu-bar-describe-menu [describe-coding-system-briefly] 1218(define-key menu-bar-describe-menu [describe-coding-system-briefly]
1219 '(menu-item "Describe Coding System (Briefly)..." 1219 '(menu-item "Describe Coding System (Briefly)"
1220 describe-current-coding-system-briefly 1220 describe-current-coding-system-briefly
1221 :visible default-enable-multibyte-characters)) 1221 :visible default-enable-multibyte-characters))
1222(define-key menu-bar-describe-menu [describe-coding-system] 1222(define-key menu-bar-describe-menu [describe-coding-system]
diff --git a/lisp/progmodes/asm-mode.el b/lisp/progmodes/asm-mode.el
index d38e6170a23..591adbd4392 100644
--- a/lisp/progmodes/asm-mode.el
+++ b/lisp/progmodes/asm-mode.el
@@ -79,6 +79,14 @@
79 (define-key map "\C-c;" 'comment-region) 79 (define-key map "\C-c;" 'comment-region)
80 (define-key map "\C-j" 'newline-and-indent) 80 (define-key map "\C-j" 'newline-and-indent)
81 (define-key map "\C-m" 'newline-and-indent) 81 (define-key map "\C-m" 'newline-and-indent)
82 (define-key map [menu-bar] (make-sparse-keymap))
83 (define-key map [menu-bar asm-mode] (cons "Asm" map))
84 (define-key map [asm-colon]
85 '("Insert Colon" . asm-colon))
86 (define-key map [comment-region]
87 '("Comment Region" . comment-region))
88 (define-key map [newline-and-indent]
89 '("Insert Newline and Indent" . newline-and-indent))
82 map) 90 map)
83 "Keymap for Asm mode.") 91 "Keymap for Asm mode.")
84 92
diff --git a/lisp/progmodes/cc-vars.el b/lisp/progmodes/cc-vars.el
index 6110ab2250f..b1fcdc22241 100644
--- a/lisp/progmodes/cc-vars.el
+++ b/lisp/progmodes/cc-vars.el
@@ -156,44 +156,34 @@ Useful as last item in a `choice' widget."
156 (setq c-fallback-style (cons (cons name val) c-fallback-style))) 156 (setq c-fallback-style (cons (cons name val) c-fallback-style)))
157 157
158(defmacro defcustom-c-stylevar (name val doc &rest args) 158(defmacro defcustom-c-stylevar (name val doc &rest args)
159 "Define a style variable NAME with VAL and DOC. 159 "Defines a style variable."
160More precisely, convert the given `:type FOO', mined out of ARGS, 160 `(let ((-value- ,val))
161to an aggregate `:type (radio STYLE (PREAMBLE FOO))', append some 161 (c-set-stylevar-fallback ',name -value-)
162some boilerplate documentation to DOC, arrange for the fallback 162 (custom-declare-variable
163value of NAME to be VAL, and call `custom-declare-variable' to 163 ',name ''set-from-style
164do the rest of the work. 164 ,(concat doc "
165
166STYLE stands for the choice where the value is taken from some
167style setting. PREAMBLE is optionally prepended to FOO; that is,
168if FOO contains :tag or :value, the respective two-element list
169component is ignored."
170 (declare (debug (symbolp form stringp &rest)))
171 (let* ((expanded-doc (concat doc "
172 165
173This is a style variable. Apart from the valid values described 166This is a style variable. Apart from the valid values described
174above, it can be set to the symbol `set-from-style'. In that case, 167above, it can be set to the symbol `set-from-style'. In that case, it
175it takes its value from the style system (see `c-default-style' and 168takes its value from the style system (see `c-default-style' and
176`c-style-alist') when a CC Mode buffer is initialized. Otherwise, 169`c-style-alist') when a CC Mode buffer is initialized. Otherwise,
177the value set here overrides the style system (there is a variable 170the value set here overrides the style system (there is a variable
178`c-old-style-variable-behavior' that changes this, though).")) 171`c-old-style-variable-behavior' that changes this, though).")
179 (typ (eval (plist-get args :type))) 172 ,@(plist-put
180 (type (if (consp typ) typ (list typ))) 173 args ':type
181 (head (car type)) 174 `(` (radio
182 (tail (cdr type)) 175 (const :tag "Use style settings"
183 (newt (append (unless (plist-get tail :tag) 176 set-from-style)
184 '(:tag "Override style settings")) 177 ,(, (let ((type (eval (plist-get args ':type))))
185 (unless (plist-get tail :value) 178 (unless (consp type)
186 `(:value ,(eval val))) 179 (setq type (list type)))
187 tail)) 180 (unless (c-safe (plist-get (cdr type) ':value))
188 (aggregate `'(radio 181 (setcdr type (append '(:value (, -value-))
189 (const :tag "Use style settings" set-from-style) 182 (cdr type))))
190 ,(cons head newt)))) 183 (unless (c-safe (plist-get (cdr type) ':tag))
191 `(progn 184 (setcdr type (append '(:tag "Override style settings")
192 (c-set-stylevar-fallback ',name ,val) 185 (cdr type))))
193 (custom-declare-variable 186 (bq-process type)))))))))
194 ',name ''set-from-style
195 ,expanded-doc
196 ,@(plist-put args :type aggregate)))))
197 187
198(defun c-valid-offset (offset) 188(defun c-valid-offset (offset)
199 "Return non-nil if OFFSET is a valid offset for a syntactic symbol. 189 "Return non-nil if OFFSET is a valid offset for a syntactic symbol.
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 9a7b3eb5c08..6781862889c 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -1163,10 +1163,6 @@ Returns the compilation buffer created."
1163 command "\n") 1163 command "\n")
1164 (setq thisdir default-directory)) 1164 (setq thisdir default-directory))
1165 (set-buffer-modified-p nil)) 1165 (set-buffer-modified-p nil))
1166 ;; If we're already in the compilation buffer, go to the end
1167 ;; of the buffer, so point will track the compilation output.
1168 (if (eq outbuf (current-buffer))
1169 (goto-char (point-max)))
1170 ;; Pop up the compilation buffer. 1166 ;; Pop up the compilation buffer.
1171 ;; http://lists.gnu.org/archive/html/emacs-devel/2007-11/msg01638.html 1167 ;; http://lists.gnu.org/archive/html/emacs-devel/2007-11/msg01638.html
1172 (setq outwin (display-buffer outbuf)) 1168 (setq outwin (display-buffer outbuf))
@@ -1192,10 +1188,18 @@ Returns the compilation buffer created."
1192 (set (make-local-variable 'revert-buffer-function) 1188 (set (make-local-variable 'revert-buffer-function)
1193 'compilation-revert-buffer) 1189 'compilation-revert-buffer)
1194 (set-window-start outwin (point-min)) 1190 (set-window-start outwin (point-min))
1195 (or (eq outwin (selected-window)) 1191
1196 (set-window-point outwin (if compilation-scroll-output 1192 ;; Position point as the user will see it.
1197 (point) 1193 (let ((desired-visible-point
1198 (point-min)))) 1194 ;; Put it at the end if `compilation-scroll-output' is set.
1195 (if compilation-scroll-output
1196 (point-max)
1197 ;; Normally put it at the top.
1198 (point-min))))
1199 (if (eq outwin (selected-window))
1200 (goto-char desired-visible-point)
1201 (set-window-point outwin desired-visible-point)))
1202
1199 ;; The setup function is called before compilation-set-window-height 1203 ;; The setup function is called before compilation-set-window-height
1200 ;; so it can set the compilation-window-height buffer locally. 1204 ;; so it can set the compilation-window-height buffer locally.
1201 (if compilation-process-setup-function 1205 (if compilation-process-setup-function
@@ -1219,7 +1223,10 @@ Returns the compilation buffer created."
1219 (setq mode-line-process '(":%s")) 1223 (setq mode-line-process '(":%s"))
1220 (set-process-sentinel proc 'compilation-sentinel) 1224 (set-process-sentinel proc 'compilation-sentinel)
1221 (set-process-filter proc 'compilation-filter) 1225 (set-process-filter proc 'compilation-filter)
1222 (set-marker (process-mark proc) (point) outbuf) 1226 ;; Use (point-max) here so that output comes in
1227 ;; after the initial text,
1228 ;; regardless of where the user sees point.
1229 (set-marker (process-mark proc) (point-max) outbuf)
1223 (when compilation-disable-input 1230 (when compilation-disable-input
1224 (condition-case nil 1231 (condition-case nil
1225 (process-send-eof proc) 1232 (process-send-eof proc)
diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el
index f811fce6e7f..062fce4c346 100644
--- a/lisp/progmodes/grep.el
+++ b/lisp/progmodes/grep.el
@@ -839,10 +839,10 @@ This command shares argument histories with \\[lgrep] and \\[grep-find]."
839 grep-find-template 839 grep-find-template
840 regexp 840 regexp
841 (concat (shell-quote-argument "(") 841 (concat (shell-quote-argument "(")
842 " -name " 842 " " find-name-arg " "
843 (mapconcat #'shell-quote-argument 843 (mapconcat #'shell-quote-argument
844 (split-string files) 844 (split-string files)
845 " -o -name ") 845 (concat " -o " find-name-arg " "))
846 " " 846 " "
847 (shell-quote-argument ")")) 847 (shell-quote-argument ")"))
848 dir 848 dir
diff --git a/lisp/replace.el b/lisp/replace.el
index 8bd3bec20a0..b76c64085c2 100644
--- a/lisp/replace.el
+++ b/lisp/replace.el
@@ -519,7 +519,10 @@ which will run faster and will not set the mark or print anything."
519 519
520 520
521(defvar regexp-history nil 521(defvar regexp-history nil
522 "History list for some commands that read regular expressions.") 522 "History list for some commands that read regular expressions.
523
524Maximum length of the history list is determined by the value
525of `history-length', which see.")
523 526
524 527
525(defalias 'delete-non-matching-lines 'keep-lines) 528(defalias 'delete-non-matching-lines 'keep-lines)
diff --git a/lisp/simple.el b/lisp/simple.el
index 0cbec53fe66..b92967da112 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -1166,7 +1166,10 @@ to get different commands to edit and resubmit."
1166(defvar minibuffer-history nil 1166(defvar minibuffer-history nil
1167 "Default minibuffer history list. 1167 "Default minibuffer history list.
1168This is used for all minibuffer input 1168This is used for all minibuffer input
1169except when an alternate history list is specified.") 1169except when an alternate history list is specified.
1170
1171Maximum length of the history list is determined by the value
1172of `history-length', which see.")
1170(defvar minibuffer-history-sexp-flag nil 1173(defvar minibuffer-history-sexp-flag nil
1171 "Control whether history list elements are expressions or strings. 1174 "Control whether history list elements are expressions or strings.
1172If the value of this variable equals current minibuffer depth, 1175If the value of this variable equals current minibuffer depth,
@@ -1901,7 +1904,10 @@ You can disable the popping up of this buffer by adding the entry
1901 t)) 1904 t))
1902 1905
1903(defvar shell-command-history nil 1906(defvar shell-command-history nil
1904 "History list for some commands that read shell commands.") 1907 "History list for some commands that read shell commands.
1908
1909Maximum length of the history list is determined by the value
1910of `history-length', which see.")
1905 1911
1906(defvar shell-command-switch "-c" 1912(defvar shell-command-switch "-c"
1907 "Switch used to have the shell execute its command line argument.") 1913 "Switch used to have the shell execute its command line argument.")
@@ -5015,7 +5021,10 @@ Each action has the form (FUNCTION . ARGS)."
5015 'switch-to-buffer-other-frame yank-action send-actions)) 5021 'switch-to-buffer-other-frame yank-action send-actions))
5016 5022
5017(defvar set-variable-value-history nil 5023(defvar set-variable-value-history nil
5018 "History of values entered with `set-variable'.") 5024 "History of values entered with `set-variable'.
5025
5026Maximum length of the history list is determined by the value
5027of `history-length', which see.")
5019 5028
5020(defun set-variable (variable value &optional make-local) 5029(defun set-variable (variable value &optional make-local)
5021 "Set VARIABLE to VALUE. VALUE is a Lisp object. 5030 "Set VARIABLE to VALUE. VALUE is a Lisp object.
diff --git a/lisp/startup.el b/lisp/startup.el
index ee06faea022..1faf63efa78 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -1319,8 +1319,6 @@ Each element in the list should be a list of strings or pairs
1319 1319
1320;; These are temporary storage areas for the splash screen display. 1320;; These are temporary storage areas for the splash screen display.
1321 1321
1322(defvar fancy-splash-help-echo nil)
1323
1324(defun fancy-splash-insert (&rest args) 1322(defun fancy-splash-insert (&rest args)
1325 "Insert text into the current buffer, with faces. 1323 "Insert text into the current buffer, with faces.
1326Arguments from ARGS should be either strings; functions called 1324Arguments from ARGS should be either strings; functions called
@@ -1354,7 +1352,7 @@ a face or button specification."
1354 (funcall it) 1352 (funcall it)
1355 it)) 1353 it))
1356 'face current-face 1354 'face current-face
1357 'help-echo fancy-splash-help-echo)))) 1355 'help-echo (startup-echo-area-message)))))
1358 (setq args (cdr args))))) 1356 (setq args (cdr args)))))
1359 1357
1360 1358
diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el
index 5c6638a51e9..54e45d6b28f 100644
--- a/lisp/textmodes/fill.el
+++ b/lisp/textmodes/fill.el
@@ -391,7 +391,7 @@ Don't move back past the buffer position LIMIT.
391This function is called when we are going to break the current line 391This function is called when we are going to break the current line
392after or before a non-ASCII character. If the charset of the 392after or before a non-ASCII character. If the charset of the
393character has the property `fill-find-break-point-function', this 393character has the property `fill-find-break-point-function', this
394function calls the property value as a function with one arg LINEBEG. 394function calls the property value as a function with one arg LIMIT.
395If the charset has no such property, do nothing." 395If the charset has no such property, do nothing."
396 (let* ((ch (following-char)) 396 (let* ((ch (following-char))
397 (charset (char-charset ch)) 397 (charset (char-charset ch))
diff --git a/src/ChangeLog b/src/ChangeLog
index 952f9d7e6e8..be2c5824f51 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,20 @@
12007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * process.c (make_process): Initialize pty_flag to Qnil instead of 0
4 as it is not a bit field on Emacs 22 yet.
5
6 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
7
82007-12-22 Eli Zaretskii <eliz@gnu.org>
9
10 * callint.c (syms_of_callint) <command-history>: Add reference to
11 history-length in the doc string.
12
132007-12-17 Jason Rumney <jasonr@gnu.org>
14
15 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16 before passing as wParam.
17
12007-12-22 Michael Albinus <michael.albinus@gmx.de> 182007-12-22 Michael Albinus <michael.albinus@gmx.de>
2 19
3 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE, 20 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
diff --git a/src/callint.c b/src/callint.c
index a19c424c899..2ac53105afb 100644
--- a/src/callint.c
+++ b/src/callint.c
@@ -941,7 +941,10 @@ This is what `(interactive \"P\")' returns. */);
941 941
942 DEFVAR_LISP ("command-history", &Vcommand_history, 942 DEFVAR_LISP ("command-history", &Vcommand_history,
943 doc: /* List of recent commands that read arguments from terminal. 943 doc: /* List of recent commands that read arguments from terminal.
944Each command is represented as a form to evaluate. */); 944Each command is represented as a form to evaluate.
945
946Maximum length of the history list is determined by the value
947of `history-length', which see. */);
945 Vcommand_history = Qnil; 948 Vcommand_history = Qnil;
946 949
947 DEFVAR_LISP ("command-debug-status", &Vcommand_debug_status, 950 DEFVAR_LISP ("command-debug-status", &Vcommand_debug_status,
diff --git a/src/macmenu.c b/src/macmenu.c
index aa0be0bdc2e..616d136465a 100644
--- a/src/macmenu.c
+++ b/src/macmenu.c
@@ -3272,7 +3272,8 @@ fill_menubar (wv, deep_p)
3272 } 3272 }
3273#endif /* !TARGET_API_MAC_CARBON */ 3273#endif /* !TARGET_API_MAC_CARBON */
3274 } 3274 }
3275 else 3275
3276 if (!menu)
3276 { 3277 {
3277#if TARGET_API_MAC_CARBON 3278#if TARGET_API_MAC_CARBON
3278 err = CreateNewMenu (id, 0, &menu); 3279 err = CreateNewMenu (id, 0, &menu);
diff --git a/src/process.c b/src/process.c
index 0204388e672..e285ed4bde0 100644
--- a/src/process.c
+++ b/src/process.c
@@ -631,7 +631,7 @@ make_process (name)
631 p->tick = 0; 631 p->tick = 0;
632 p->update_tick = 0; 632 p->update_tick = 0;
633 p->pid = 0; 633 p->pid = 0;
634 p->pty_flag = 0; 634 p->pty_flag = Qnil;
635 p->raw_status_new = 0; 635 p->raw_status_new = 0;
636 p->status = Qrun; 636 p->status = Qrun;
637 p->mark = Fmake_marker (); 637 p->mark = Fmake_marker ();
diff --git a/src/w32fns.c b/src/w32fns.c
index 0c5bd1e4cc3..497010e9ad3 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -3130,7 +3130,8 @@ w32_wnd_proc (hwnd, msg, wParam, lParam)
3130 { 3130 {
3131 /* Forward asciified character sequence. */ 3131 /* Forward asciified character sequence. */
3132 post_character_message 3132 post_character_message
3133 (hwnd, WM_CHAR, key.uChar.AsciiChar, lParam, 3133 (hwnd, WM_CHAR,
3134 (unsigned char) key.uChar.AsciiChar, lParam,
3134 w32_get_key_modifiers (wParam, lParam)); 3135 w32_get_key_modifiers (wParam, lParam));
3135 w32_kbd_patch_key (&key); 3136 w32_kbd_patch_key (&key);
3136 } 3137 }
diff --git a/src/xdisp.c b/src/xdisp.c
index 22f51859eff..c352c9355ae 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -23534,6 +23534,24 @@ phys_cursor_in_rect_p (w, r)
23534{ 23534{
23535 XRectangle cr, result; 23535 XRectangle cr, result;
23536 struct glyph *cursor_glyph; 23536 struct glyph *cursor_glyph;
23537 struct glyph_row *row;
23538
23539 if (w->phys_cursor.vpos >= 0
23540 && w->phys_cursor.vpos < w->current_matrix->nrows
23541 && (row = MATRIX_ROW (w->current_matrix, w->phys_cursor.vpos),
23542 row->enabled_p)
23543 && row->cursor_in_fringe_p)
23544 {
23545 /* Cursor is in the fringe. */
23546 cr.x = window_box_right_offset (w,
23547 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)
23548 ? RIGHT_MARGIN_AREA
23549 : TEXT_AREA));
23550 cr.y = row->y;
23551 cr.width = WINDOW_RIGHT_FRINGE_WIDTH (w);
23552 cr.height = row->height;
23553 return x_intersect_rectangles (&cr, r, &result);
23554 }
23537 23555
23538 cursor_glyph = get_phys_cursor_glyph (w); 23556 cursor_glyph = get_phys_cursor_glyph (w);
23539 if (cursor_glyph) 23557 if (cursor_glyph)