# HG changeset patch # User Karoly Lorentey # Date 1119711608 0 # Node ID d07fdd5d7d4ef272333ae32491a63129eb95a5e2 # Parent bdcbdec78dd38daac92d289a2be96b2c435b0086# Parent cad79f2ac120514aaf50206b4de2c6f8ea4b503e Merged from miles@gnu.org--gnu-2005 (patch 441-446) Patches applied: * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-441 Update reference to renamed Buffer-menu-buffer face * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-442 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-443 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-444 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-445 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-446 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-354 diff -r bdcbdec78dd3 -r d07fdd5d7d4e admin/FOR-RELEASE --- a/admin/FOR-RELEASE Wed Jun 22 17:53:21 2005 +0000 +++ b/admin/FOR-RELEASE Sat Jun 25 15:00:08 2005 +0000 @@ -26,6 +26,9 @@ ** Update Speedbar. +** Update vhdl-mode.el based on changes in + http://opensource.ethz.ch/emacs/vhdl-mode.html. + * FATAL ERRORS @@ -139,7 +142,7 @@ man/mini.texi "Luc Teirlinck" Chong Yidong man/misc.texi Chong Yidong man/msdog.texi Chong Yidong -man/mule.texi "Luc Teirlinck" +man/mule.texi "Luc Teirlinck" Kenichi Handa man/m-x.texi "Luc Teirlinck" Chong Yidong man/picture.texi Joakim Verona Chong Yidong man/programs.texi "Stephen Eglen" Chong Yidong diff -r bdcbdec78dd3 -r d07fdd5d7d4e etc/NEWS --- a/etc/NEWS Wed Jun 22 17:53:21 2005 +0000 +++ b/etc/NEWS Sat Jun 25 15:00:08 2005 +0000 @@ -691,9 +691,9 @@ *** New face `escape-glyph' highlights control characters and escape glyphs. +++ -*** Non-breaking space and hyphens are now prefixed with an escape -character, unless the new user variable `show-nonbreak-escape' is set -to nil. +*** Non-breaking space and hyphens are now displayed with a special +face, either nobreak-space or escape-glyph. You can turn this off or +specify a different mode by setting the variable `nobreak-char-display'. +++ *** The parameters of automatic hscrolling can now be customized. @@ -3542,10 +3542,7 @@ +++ *** Functions `match-data' and `set-match-data' now have an optional argument `reseat'. When non-nil, all markers in the match data list -passed to these function will be reseated to point to nowhere, and if -the value of `reseat' is `evaporate', the markers are put onto the -free list. Note that no other references to those markers must exist -if `evaporate' is specified for the `reseat' argument. +passed to these function will be reseated to point to nowhere. +++ *** The default value of `sentence-end' is now defined using the new diff -r bdcbdec78dd3 -r d07fdd5d7d4e etc/TODO --- a/etc/TODO Wed Jun 22 17:53:21 2005 +0000 +++ b/etc/TODO Sat Jun 25 15:00:08 2005 +0000 @@ -30,6 +30,10 @@ See also ESR's proposal for a BROWSER environment variable . +** Enhance scroll-bar to handle tall line (similar to line-move). + +** Make occur handle multi-line matches cleanly with context. + * Important features: ** Provide user-friendly ways to list all available font families, diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/ChangeLog --- a/lisp/ChangeLog Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/ChangeLog Sat Jun 25 15:00:08 2005 +0000 @@ -1,5 +1,78 @@ +2005-06-24 Nick Roberts + + * progmodes/gud.el (gud-tooltip-print-command): Indent properly. + (gud-gdb-marker-filter): Use font-lock-warning-face for any + initial error. + + * progmodes/gdb-ui.el (gdb-send): Remove warning face from errors + after fresh input. + (gdb-var-create-handler): Put name of expression in quotes. + +2005-06-23 Luc Teirlinck + + * emacs-lisp/ring.el (ring-elements): Make it return a list of the + elements of RING in order, and without bogus nil elements. + +2005-06-23 Richard M. Stallman + + * simple.el (set-variable): Args renamed; doc fix. + (line-move-1): When there are overlays around, use vertical-motion. + + * faces.el (escape-glyph): Use brown against light background. + (nobreak-space): Renamed from no-break-space. + Fix previous change. + + * dired-aux.el (dired-do-copy): Fix arg prompt. + + * mail/sendmail.el (mail-setup-with-from): Fix custom type. + +2005-06-23 Glenn Morris + + * mail/emacsbug.el (report-emacs-bug): Use "X server distributor" + rather than "Distributor". + +2005-06-23 Lute Kamstra + + * emacs-lisp/debug.el (debugger-special-form-p): New defun. + (debug-on-entry): Use it. New interactive declaration that uses + function-called-at-point. + +2005-06-23 Kim F. Storm + + * subr.el (save-match-data): Add comment about using evaporate arg + to set-match-data. + +2005-06-22 Glenn Morris + + * cus-edit.el (customize-face) + (customize-face-other-window): Handle face aliases. + + * faces.el (face-documentation, set-face-attribute) + (face-spec-set): Handle face aliases. + +2005-06-22 Juanma Barranquero + + * help-mode.el (help-make-xrefs): If a symbol representing a face + name is not followed by the word "face", it could still be a + function or variable name, so don't bypass other checks. + +2005-06-22 Juri Linkov + + * ps-print.el (ps-face-foreground-name, ps-face-background-name): + Replace aliased functions with calls where second arg `inherit' is t. + +2005-06-22 Nick Roberts + + * progmodes/gdb-ui.el (gdb-error): New variable. + (gdb-error): New function. + (gdb-annotation-rules): Act on error-begin and error annotations. + (gdb-concat-output): Use font-lock-warning-face for errors. + 2005-06-22 Miles Bader + * bindings.el (propertized-buffer-identification): Use renamed + `Buffer-menu-buffer' face. + * faces.el (vertical-border): Renamed from `vertical-divider'. (escape-glyph): Change dark-background color back to `cyan'. @@ -457,10 +530,9 @@ 2005-06-15 Nick Roberts - * progmodes/gdb-ui.el (gdb-tooltip-print): - Respect tooltip-use-echo-area. - (menu): Re-order menu items. - + * progmodes/gdb-ui.el (menu): Re-order menu items. + (gdb-tooltip-print): Respect tooltip-use-echo-area. + * progmodes/gud.el (tooltip-use-echo-area): Remove alias. Define in tooltip.el. (gud-tooltip-process-output): Respect tooltip-use-echo-area. @@ -580,7 +652,6 @@ variables, unless either `gtk' is boundp or this isn't a `windows-nt' build. ->>>>>>> 1.7817 2005-06-13 Lute Kamstra * abbrev.el (edit-abbrevs-mode): Use kill-all-local-variables and @@ -1488,7 +1559,6 @@ * simple.el (filter-buffer-substring): Fix typo in docstring. ->>>>>>> 1.7768 2005-05-31 Richard M. Stallman * progmodes/vhdl-mode.el (vhdl-fill-region): Test ARG, not INTERACTIVE. @@ -1525,7 +1595,6 @@ * textmodes/tex-mode.el (tex-compile-commands, tex-compile) (tex-start-tex): Undo all but the last part of the 2005-05-28 change. ->>>>>>> 1.7646 2005-05-30 Glenn Morris * calendar/diary-lib.el (mark-included-diary-files): Only kill diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/add-log.el --- a/lisp/add-log.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/add-log.el Sat Jun 25 15:00:08 2005 +0000 @@ -232,9 +232,13 @@ (defvar change-log-font-lock-keywords '(;; - ;; Date lines, new and old styles. - ("^\\sw.........[0-9:+ ]*" - (0 'change-log-date) + ;; Date lines, new (2000-01-01) and old (Sat Jan 1 00:00:00 2000) styles. + ;; Fixme: this regepx is just an approximate one and may match + ;; wrongly with a non-date line existing as a random note. In + ;; addition, using any kind of fixed setting like this doesn't + ;; work if a user customizes add-log-time-format. + ("^[0-9-]+ +\\|^\\(Sun\\|Mon\\|Tue\\|Wed\\|Thu\\|Fri\\|Sat\\) [A-z][a-z][a-z] [0-9:+ ]+" + (0 'change-log-date-face) ;; Name and e-mail; some people put e-mail in parens, not angles. ("\\([^<(]+?\\)[ \t]*[(<]\\([A-Za-z0-9_.+-]+@[A-Za-z0-9_.-]+\\)[>)]" nil nil (1 'change-log-name) diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/bindings.el --- a/lisp/bindings.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/bindings.el Sat Jun 25 15:00:08 2005 +0000 @@ -471,7 +471,7 @@ FMT is a format specifier such as \"%12b\". This function adds text properties for face, help-echo, and local-map to it." (list (propertize fmt - 'face 'Buffer-menu-buffer-face + 'face 'Buffer-menu-buffer 'help-echo (purecopy "mouse-1: previous buffer, mouse-3: next buffer") 'mouse-face 'mode-line-highlight diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/cus-edit.el --- a/lisp/cus-edit.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/cus-edit.el Sat Jun 25 15:00:08 2005 +0000 @@ -1116,7 +1116,8 @@ ;;;###autoload (defun customize-face (&optional face) "Customize FACE, which should be a face name or nil. -If FACE is nil, customize all faces. +If FACE is nil, customize all faces. If FACE is actually a +face-alias, customize the face it is aliased to. Interactively, when point is on text which has a face specified, suggest to customize that face, if it's customizable." @@ -1133,6 +1134,9 @@ face) t nil) "*Customize Faces*") + ;; If FACE is actually an alias, customize the face it is aliased to. + (if (get face 'face-alias) + (setq face (get face 'face-alias))) (unless (facep face) (error "Invalid face %S" face)) (custom-buffer-create (list (list face 'custom-face)) @@ -1142,6 +1146,7 @@ ;;;###autoload (defun customize-face-other-window (&optional face) "Show customization buffer for face FACE in other window. +If FACE is actually a face-alias, customize the face it is aliased to. Interactively, when point is on text which has a face specified, suggest to customize that face, if it's customizable." @@ -1159,6 +1164,8 @@ face) t nil) "*Customize Faces*") + (if (get face 'face-alias) + (setq face (get face 'face-alias))) (unless (facep face) (error "Invalid face %S" face)) (custom-buffer-create-other-window diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/dired-aux.el --- a/lisp/dired-aux.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/dired-aux.el Sat Jun 25 15:00:08 2005 +0000 @@ -1509,7 +1509,7 @@ (interactive "P") (let ((dired-recursive-copies dired-recursive-copies)) (dired-do-create-files 'copy (function dired-copy-file) - (if dired-copy-preserve-time "Copy [-p]" "Copy") + "Copy" arg dired-keep-marker-copy nil dired-copy-how-to-fn))) diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/emacs-lisp/debug.el --- a/lisp/emacs-lisp/debug.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/emacs-lisp/debug.el Sat Jun 25 15:00:08 2005 +0000 @@ -653,6 +653,12 @@ nil (funcall debugger 'debug))) +(defun debugger-special-form-p (symbol) + "Return whether SYMBOL is a special form." + (and (fboundp symbol) + (subrp (symbol-function symbol)) + (eq (cdr (subr-arity (symbol-function symbol))) 'unevalled))) + ;;;###autoload (defun debug-on-entry (function) "Request FUNCTION to invoke debugger each time it is called. @@ -668,9 +674,21 @@ Use \\[cancel-debug-on-entry] to cancel the effect of this command. Redefining FUNCTION also cancels it." - (interactive "aDebug on entry (to function): ") - (when (and (subrp (symbol-function function)) - (eq (cdr (subr-arity (symbol-function function))) 'unevalled)) + (interactive + (let ((fn (function-called-at-point)) val) + (when (debugger-special-form-p fn) + (setq fn nil)) + (setq val (completing-read + (if fn + (format "Debug on entry to function (default %s): " fn) + "Debug on entry to function: ") + obarray + #'(lambda (symbol) + (and (fboundp symbol) + (not (debugger-special-form-p symbol)))) + t nil nil (symbol-name fn))) + (list (if (equal val "") fn (intern val))))) + (when (debugger-special-form-p function) (error "Function %s is a special form" function)) (if (or (symbolp (symbol-function function)) (subrp (symbol-function function))) diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/emacs-lisp/ring.el --- a/lisp/emacs-lisp/ring.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/emacs-lisp/ring.el Sat Jun 25 15:00:08 2005 +0000 @@ -155,8 +155,13 @@ (aref vec (ring-index index hd ln (length vec)))))) (defun ring-elements (ring) - "Return a list of the elements of RING." - (mapcar #'identity (cddr ring))) + "Return a list of the elements of RING, in order, newest first." + (let ((start (car ring)) + (size (ring-size ring)) + (vect (cddr ring)) + lst) + (dotimes (var (cadr ring) lst) + (push (aref vect (mod (+ start var) size)) lst)))) ;;; provide ourself: diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/faces.el --- a/lisp/faces.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/faces.el Sat Jun 25 15:00:08 2005 +0000 @@ -513,8 +513,17 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun face-documentation (face) - "Get the documentation string for FACE." - (get face 'face-documentation)) + "Get the documentation string for FACE. +If FACE is a face-alias, get the documentation for the target face." + (let ((alias (get face 'face-alias)) + doc) + (if alias + (progn + (setq doc (get alias 'face-documentation)) + (format "%s is an alias for the face `%s'.%s" face alias + (if doc (format "\n%s" doc) + ""))) + (get face 'face-documentation)))) (defun set-face-documentation (face string) @@ -661,7 +670,7 @@ (setq args (purecopy args)) ;; If we set the new-frame defaults, this face is modified outside Custom. (if (memq where '(0 t)) - (put face 'face-modified t)) + (put (or (get face 'face-alias) face) 'face-modified t)) (while args (internal-set-lisp-face-attribute face (car args) (purecopy (cadr args)) @@ -1443,7 +1452,7 @@ ;; When we reset the face based on its spec, then it is unmodified ;; as far as Custom is concerned. (if (null frame) - (put face 'face-modified nil))) + (put (or (get face 'face-alias) face) 'face-modified nil))) (defun face-attr-match-p (face attrs &optional frame) @@ -2141,17 +2150,18 @@ ;; See the comment in minibuffer-prompt for ;; the reason not to use blue on MS-DOS. (((type pc)) :foreground "magenta") - ;; red4 is too light -- rms. - (t :foreground "blue")) + ;; red4 is too dark, but some say blue is too loud. + ;; brown seems to work ok. -- rms. + (t :foreground "brown")) "Face for characters displayed as ^-sequences or \-sequences." :group 'basic-faces :version "22.1") -(defface no-break-space +(defface nobreak-space '((((class color) (min-colors 88)) :inherit escape-glyph :underline t) - (((class color) (min-colors 8)) :background "magenta" :foreground ) + (((class color) (min-colors 8)) :background "magenta") (t :inverse-video t)) - "Face for non-breaking space." + "Face for displaying nobreak space." :group 'basic-faces :version "22.1") diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/gnus/ChangeLog --- a/lisp/gnus/ChangeLog Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/gnus/ChangeLog Sat Jun 25 15:00:08 2005 +0000 @@ -1,3 +1,10 @@ +2005-06-23 Lute Kamstra + + * gnus-art.el (gnus-article-mode): Use kill-all-local-variables. + + * dig.el (dig-mode): + * smime.el (smime-mode): Use gnus-run-mode-hooks. + 2005-06-21 Juanma Barranquero * nnimap.el (nnimap-split-download-body): Fix spellings. diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/gnus/dig.el --- a/lisp/gnus/dig.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/gnus/dig.el Sat Jun 25 15:00:08 2005 +0000 @@ -148,7 +148,8 @@ (set (make-local-variable 'font-lock-defaults) '(dig-font-lock-keywords t))) (when (featurep 'font-lock) - (font-lock-set-defaults))) + (font-lock-set-defaults)) + (gnus-run-mode-hooks 'dig-mode-hook)) (defun dig-exit () "Quit dig output buffer." diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/gnus/gnus-art.el --- a/lisp/gnus/gnus-art.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/gnus/gnus-art.el Sat Jun 25 15:00:08 2005 +0000 @@ -3732,6 +3732,7 @@ \\[gnus-article-describe-briefly]\t Describe the current mode briefly \\[gnus-info-find-node]\t Go to the Gnus info node" (interactive) + (kill-all-local-variables) (gnus-simplify-mode-line) (setq mode-name "Article") (setq major-mode 'gnus-article-mode) diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/gnus/smime.el --- a/lisp/gnus/smime.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/gnus/smime.el Sat Jun 25 15:00:08 2005 +0000 @@ -596,7 +596,8 @@ (use-local-map smime-mode-map) (buffer-disable-undo) (setq truncate-lines t) - (setq buffer-read-only t)) + (setq buffer-read-only t) + (gnus-run-mode-hooks 'smime-mode-hook)) (defun smime-certificate-info (certfile) (interactive "fCertificate file: ") diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/help-mode.el --- a/lisp/help-mode.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/help-mode.el Sat Jun 25 15:00:08 2005 +0000 @@ -388,9 +388,10 @@ ;;; (pop-to-buffer (car location)) ;;; (goto-char (cdr location)))) (help-xref-button 8 'help-function-def sym)) - ((facep sym) - (if (save-match-data (looking-at "[ \t\n]+face\\W")) - (help-xref-button 8 'help-face sym))) + ((and + (facep sym) + (save-match-data (looking-at "[ \t\n]+face\\W"))) + (help-xref-button 8 'help-face sym)) ((and (boundp sym) (fboundp sym)) ;; We can't intuit whether to use the ;; variable or function doc -- supply both. diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/mail/emacsbug.el --- a/lisp/mail/emacsbug.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/mail/emacsbug.el Sat Jun 25 15:00:08 2005 +0000 @@ -130,7 +130,7 @@ (insert "In " (emacs-version) "\n") (if (fboundp 'x-server-vendor) (condition-case nil - (insert "Distributor `" (x-server-vendor) "', version " + (insert "X server distributor `" (x-server-vendor) "', version " (mapconcat 'number-to-string (x-server-version) ".") "\n") (error t))) (if (and system-configuration-options diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/mail/sendmail.el --- a/lisp/mail/sendmail.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/mail/sendmail.el Sat Jun 25 15:00:08 2005 +0000 @@ -44,7 +44,7 @@ (defcustom mail-setup-with-from t "Non-nil means insert `From:' field when setting up the message." - :type 'binary + :type 'boolean :group 'sendmail :version "22.1") diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/progmodes/gdb-ui.el --- a/lisp/progmodes/gdb-ui.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/progmodes/gdb-ui.el Sat Jun 25 15:00:08 2005 +0000 @@ -85,6 +85,7 @@ (defvar gdb-find-file-unhook nil) (defvar gdb-active-process nil "GUD tooltips display variable values when t, \ and #define directives otherwise.") +(defvar gdb-error "Non-nil when GDB is reporting an error.") (defvar gdb-macro-info nil "Non-nil if GDB knows that the inferior includes preprocessor macro info.") @@ -359,6 +360,7 @@ gdb-flush-pending-output nil gdb-location-alist nil gdb-find-file-unhook nil + gdb-error nil gdb-macro-info nil) ;; (setq gdb-buffer-type 'gdba) @@ -430,7 +432,7 @@ (setq gdb-var-changed t))) (if (re-search-forward "Undefined command" nil t) (message-box "Watching expressions requires gdb 6.0 onwards") - (message "No symbol %s in current context." expr))))) + (message "No symbol \"%s\" in current context." expr))))) (defun gdb-var-evaluate-expression-handler (varnum changed) (with-current-buffer (gdb-get-create-buffer 'gdb-partial-output-buffer) @@ -774,6 +776,8 @@ (defun gdb-send (proc string) "A comint send filter for gdb. This filter may simply queue input for a later time." + (with-current-buffer gud-comint-buffer + (remove-text-properties (point-min) (point-max) '(face))) (let ((item (concat string "\n"))) (if gud-running (progn @@ -860,6 +864,8 @@ ("watchpoint" gdb-stopping) ("frame-begin" gdb-frame-begin) ("stopped" gdb-stopped) + ("error-begin" gdb-error) + ("error" gdb-error) ) "An assoc mapping annotation tags to functions which process them.") (defun gdb-resync() @@ -989,6 +995,9 @@ (gdb-resync) (error "Unexpected stopped annotation"))))) +(defun gdb-error (ignored) + (setq gdb-error (not gdb-error))) + (defun gdb-post-prompt (ignored) "An annotation handler for `post-prompt'. This begins the collection of output from the current command if that @@ -1083,6 +1092,8 @@ output))) (defun gdb-concat-output (so-far new) + (if gdb-error + (put-text-property 0 (length new) 'face font-lock-warning-face new)) (let ((sink gdb-output-sink)) (cond ((eq sink 'user) (concat so-far new)) diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/progmodes/gud.el --- a/lisp/progmodes/gud.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/progmodes/gud.el Sat Jun 25 15:00:08 2005 +0000 @@ -497,18 +497,24 @@ ;; Check for annotations and change gud-minor-mode to 'gdba if ;; they are found. (while (string-match "\n\032\032\\(.*\\)\n" gud-marker-acc) - (when (string-equal (match-string 1 gud-marker-acc) "prompt") - (require 'gdb-ui) - (gdb-prompt nil)) - - (setq - ;; Append any text before the marker to the output we're going - ;; to return - we don't include the marker in this text. - output (concat output - (substring gud-marker-acc 0 (match-beginning 0))) - - ;; Set the accumulator to the remaining text. - gud-marker-acc (substring gud-marker-acc (match-end 0)))) + (let ((match (match-string 1 gud-marker-acc))) + (when (string-equal match "prompt") + (require 'gdb-ui) + (gdb-prompt nil)) + + (setq + ;; Append any text before the marker to the output we're going + ;; to return - we don't include the marker in this text. + output (concat output + (substring gud-marker-acc 0 (match-beginning 0))) + + ;; Set the accumulator to the remaining text. + + gud-marker-acc (substring gud-marker-acc (match-end 0))) + (if (string-equal match "error-begin") + (put-text-property 0 (length gud-marker-acc) + 'face font-lock-warning-face + gud-marker-acc)))) ;; Does the remaining text look like it might end with the ;; beginning of another marker? If it does, then keep it in @@ -3256,11 +3262,11 @@ (when gud-tooltip-dereference (setq expr (concat "*" expr))) (case gud-minor-mode - (gdba (concat "server print " expr)) - ((dbx gdbmi) (concat "print " expr)) - (xdb (concat "p " expr)) - (sdb (concat expr "/")) - (perldb expr))) + (gdba (concat "server print " expr)) + ((dbx gdbmi) (concat "print " expr)) + (xdb (concat "p " expr)) + (sdb (concat expr "/")) + (perldb expr))) (defun gud-tooltip-tips (event) "Show tip for identifier or selection under the mouse. diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/ps-print.el --- a/lisp/ps-print.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/ps-print.el Sat Jun 25 15:00:08 2005 +0000 @@ -1549,9 +1549,10 @@ (defvar mark-active nil) (defun ps-mark-active-p () mark-active) - (defalias 'ps-face-foreground-name 'face-foreground) - (defalias 'ps-face-background-name 'face-background) - )) + (defun ps-face-foreground-name (face) + (face-foreground face nil t)) + (defun ps-face-background-name (face) + (face-background face nil t)))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/simple.el --- a/lisp/simple.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/simple.el Sat Jun 25 15:00:08 2005 +0000 @@ -3437,18 +3437,28 @@ ;; Now move a line. (end-of-line) ;; If there's no invisibility here, move over the newline. - (if (and (not (integerp selective-display)) - (not (line-move-invisible-p (point)))) + (let ((pos-before (point)) + line-done) + (if (eobp) + (if (not noerror) + (signal 'end-of-buffer nil) + (setq done t))) + (when (and (not done) + (not (integerp selective-display)) + (not (line-move-invisible-p (point)))) ;; We avoid vertical-motion when possible ;; because that has to fontify. - (if (eobp) - (if (not noerror) - (signal 'end-of-buffer nil) - (setq done t)) - (forward-line 1)) + (forward-line 1) + ;; If there are overlays in and around + ;; the text we moved over, we need to be + ;; sophisticated. + (unless (overlays-in (max (1- pos-before) (point-min)) + (min (1+ (point)) (point-max))) + (setq line-done t))) ;; Otherwise move a more sophisticated way. ;; (What's the logic behind this code?) - (and (zerop (vertical-motion 1)) + (and (not done) (not line-done) + (zerop (vertical-motion 1)) (if (not noerror) (signal 'end-of-buffer nil) (setq done t)))) @@ -3458,18 +3468,24 @@ ;; it just goes in the other direction. (while (and (< arg 0) (not done)) (beginning-of-line) - (if (or (bobp) - (and (not (integerp selective-display)) - (not (line-move-invisible-p (1- (point)))))) - (if (bobp) - (if (not noerror) - (signal 'beginning-of-buffer nil) - (setq done t)) - (forward-line -1)) - (if (zerop (vertical-motion -1)) + (let ((pos-before (point)) + line-done) + (if (bobp) (if (not noerror) (signal 'beginning-of-buffer nil) - (setq done t)))) + (setq done t))) + (when (and (not done) + (not (integerp selective-display)) + (not (line-move-invisible-p (1- (point))))) + (forward-line -1) + (unless (overlays-in (max (1- (point)) (point-min)) + (min (1+ pos-before) (point-max))) + (setq line-done t))) + (and (not done) (not line-done) + (zerop (vertical-motion -1)) + (if (not noerror) + (signal 'beginning-of-buffer nil) + (setq done t)))) (unless done (setq arg (1+ arg)) (while (and ;; Don't move over previous invis lines @@ -4508,10 +4524,11 @@ (defvar set-variable-value-history nil "History of values entered with `set-variable'.") -(defun set-variable (var val &optional make-local) +(defun set-variable (variable value &optional make-local) "Set VARIABLE to VALUE. VALUE is a Lisp object. -When using this interactively, enter a Lisp object for VALUE. -If you want VALUE to be a string, you must surround it with doublequotes. +VARIABLE should be a user option variable name, a Lisp variable +meant to be customized by users. You should enter VALUE in Lisp syntax, +so if you want VALUE to be a string, you must surround it with doublequotes. VALUE is used literally, not evaluated. If VARIABLE has a `variable-interactive' property, that is used as if @@ -4524,9 +4541,9 @@ (interactive (let* ((default-var (variable-at-point)) (var (if (symbolp default-var) - (read-variable (format "Set variable (default %s): " default-var) - default-var) - (read-variable "Set variable: "))) + (read-variable (format "Set variable (default %s): " default-var) + default-var) + (read-variable "Set variable: "))) (minibuffer-help-form '(describe-variable var)) (prop (get var 'variable-interactive)) (prompt (format "Set %s%s to value: " var @@ -4547,22 +4564,22 @@ 'set-variable-value-history))))) (list var val current-prefix-arg))) - (and (custom-variable-p var) - (not (get var 'custom-type)) - (custom-load-symbol var)) - (let ((type (get var 'custom-type))) + (and (custom-variable-p variable) + (not (get variable 'custom-type)) + (custom-load-symbol variable)) + (let ((type (get variable 'custom-type))) (when type ;; Match with custom type. (require 'cus-edit) (setq type (widget-convert type)) - (unless (widget-apply type :match val) + (unless (widget-apply type :match value) (error "Value `%S' does not match type %S of %S" - val (car type) var)))) + value (car type) variable)))) (if make-local - (make-local-variable var)) - - (set var val) + (make-local-variable variable)) + + (set variable value) ;; Force a thorough redisplay for the case that the variable ;; has an effect on the display, like `tab-width' has. diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/subr.el --- a/lisp/subr.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/subr.el Sat Jun 25 15:00:08 2005 +0000 @@ -2032,6 +2032,8 @@ '((save-match-data-internal (match-data))) (list 'unwind-protect (cons 'progn body) + ;; It is safe to free (evaporate) markers immediately here, + ;; as Lisp programs should not copy from save-match-data-internal. '(set-match-data save-match-data-internal 'evaporate)))) (defun match-string (num &optional string) diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/url/ChangeLog --- a/lisp/url/ChangeLog Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/url/ChangeLog Sat Jun 25 15:00:08 2005 +0000 @@ -1,3 +1,7 @@ +2005-06-23 Richard M. Stallman + + * url-cookie.el (url-cookie-generate-header-lines): Fix autoload cookie. + 2005-06-21 Juanma Barranquero * url-gw.el (url-open-stream): diff -r bdcbdec78dd3 -r d07fdd5d7d4e lisp/url/url-cookie.el --- a/lisp/url/url-cookie.el Wed Jun 22 17:53:21 2005 +0000 +++ b/lisp/url/url-cookie.el Sat Jun 25 15:00:08 2005 +0000 @@ -262,7 +262,7 @@ (setq retval (cons cur retval)))))) retval)) -;;;###autolaod +;;;###autoload (defun url-cookie-generate-header-lines (host path secure) (let* ((cookies (url-cookie-retrieve host path secure)) (retval nil) diff -r bdcbdec78dd3 -r d07fdd5d7d4e lispref/ChangeLog --- a/lispref/ChangeLog Wed Jun 22 17:53:21 2005 +0000 +++ b/lispref/ChangeLog Sat Jun 25 15:00:08 2005 +0000 @@ -1,3 +1,25 @@ +2005-06-23 Richard M. Stallman + + * display.texi (Face Functions): Correct Texinfo usage. + +2005-06-23 Luc Teirlinck + + * lists.texi (Rings): `ring-elements' now returns the elements of + RING in order. + +2005-06-23 Juanma Barranquero + + * markers.texi (The Mark): Texinfo usage fix. + +2005-06-23 Kim F. Storm + + * searching.texi (Entire Match Data): Remove evaporate option for + match-data. Do not mention evaporate option for set-match-data. + +2005-06-22 Glenn Morris + + * display.texi (Face Functions): Mention face aliases. + 2005-06-21 Richard M. Stallman * anti.texi (Antinews): Texinfo usage fix. diff -r bdcbdec78dd3 -r d07fdd5d7d4e lispref/display.texi --- a/lispref/display.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/lispref/display.texi Sat Jun 25 15:00:08 2005 +0000 @@ -2523,6 +2523,17 @@ differently from the default face. @end defun +@cindex face alias +A @dfn{face alias} provides an equivalent name for a face. You can +define a face alias by giving the alias symbol the @code{face-alias} +property, with a value of the target face name. The following example +makes @code{modeline} an alias for the @code{mode-line} face. + +@example +(put 'modeline 'face-alias 'mode-line) +@end example + + @node Auto Faces @subsection Automatic Face Assignment @cindex automatic face assignment @@ -2862,9 +2873,9 @@ the @code{fringe} face, so normally @var{face} need only specify the foreground color for the bitmap. - These are the symbols identify the standard fringe bitmaps. -Evaluate @code{(require 'fringe)} to define them. Fringe bitmap -symbols have their own name space. + These symbols identify the standard fringe bitmaps. Evaluate +@code{(require 'fringe)} to define them. Fringe bitmap symbols have +their own name space. @table @asis @item Truncation and continuation line bitmaps: diff -r bdcbdec78dd3 -r d07fdd5d7d4e lispref/lists.texi --- a/lispref/lists.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/lispref/lists.texi Sat Jun 25 15:00:08 2005 +0000 @@ -1704,8 +1704,7 @@ @end defun @defun ring-elements ring -This returns a list of the objects in @var{ring}, in no particular -order. +This returns a list of the objects in @var{ring}, in order, newest first. @end defun @defun ring-copy ring diff -r bdcbdec78dd3 -r d07fdd5d7d4e lispref/markers.texi --- a/lispref/markers.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/lispref/markers.texi Sat Jun 25 15:00:08 2005 +0000 @@ -557,9 +557,9 @@ Lisp programs can set @code{transient-mark-mode} to @code{only} to enable Transient Mark mode for the following command only. During -that following command, the value of transient-mark-mode is +that following command, the value of @code{transient-mark-mode} is @code{identity}. If it is still @code{identity} at the end of the -command, it changes to nil. +command, it changes to @code{nil}. @end defopt @defopt mark-even-if-inactive diff -r bdcbdec78dd3 -r d07fdd5d7d4e lispref/searching.texi --- a/lispref/searching.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/lispref/searching.texi Sat Jun 25 15:00:08 2005 +0000 @@ -1527,13 +1527,7 @@ garbage collection. If @var{reseat} is non-@code{nil}, all markers on the @var{reuse} list -are reseated to point to nowhere, and if the value is @code{evaporate}, -the markers are put back on the free list. - -@strong{Warning:} When @code{evaporate} is specified for @var{reseat}, -you must ensure that no other references to the markers on the -@var{reuse} list exists; otherwise, Emacs may crash during the next -garbage collection. +are reseated to point to nowhere. As always, there must be no possibility of intervening searches between the call to a search function and the call to @code{match-data} that is @@ -1560,13 +1554,7 @@ an error; that sets the match data in a meaningless but harmless way. If @var{reseat} is non-@code{nil}, all markers on the @var{match-list} list -are reseated to point to nowhere, and if the value is @code{evaporate}, -the markers are put back on the free list. - -@strong{Warning:} When @code{evaporate} is specified for @var{reseat}, -you must ensure that no other references to the markers on the -@var{match-list} list exists; otherwise, Emacs may crash during the -next garbage collection. +are reseated to point to nowhere. @findex store-match-data @code{store-match-data} is a semi-obsolete alias for @code{set-match-data}. diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/ChangeLog --- a/man/ChangeLog Wed Jun 22 17:53:21 2005 +0000 +++ b/man/ChangeLog Sat Jun 25 15:00:08 2005 +0000 @@ -1,3 +1,55 @@ +2005-06-23 Richard M. Stallman + + * anti.texi (Antinews): Renamed show-nonbreak-escape to + nobreak-char-display. + + * emacs.texi (Top): Update detailed node listing. + + * display.texi (Text Display): Renamed show-nonbreak-escape + to nobreak-char-display and no-break-space to nobreak-space. + (Standard Faces): Split up the list of standard faces + and put it in a separate node. Add nobreak-space and + escape-glyph. + + * speedbar.texi (Creating a display): Texinfo usage fixes. + + * tramp.texi (Customizing Completion, Auto-save and Backup): + Texinfo usage fixes. + +2005-06-23 Lute Kamstra + + * mule.texi (Select Input Method): Fix typo. + +2005-06-23 Kenichi Handa + + * mule.texi (International): List all supported scripts. Adjust + text for that leim is now included in the normal Emacs + distribution. + (Language Environments): List all language environments. + Intlfonts contains fonts for most supported scripts, not all.. + (Select Input Method): Refer to C-u C-x = to see how to type to + input a specifc character. + (Recognize Coding): Fix typo, china-iso-8bit -> chinese-iso-8bit. + +2005-06-23 Juanma Barranquero + + * building.texi (Grep Searching): + * dired-x.texi (Miscellaneous Commands): + * ediff.texi (Miscellaneous): + * gnus.texi (MIME Commands, Fancy Mail Splitting, Agent Visuals) + (Agent Variables): + * info.texi (Help-Xref): + * message.texi (Message Headers): + * org.texi (Remember): + * reftex.texi (Options (Defining Label Environments)): + (Options (Index Support)): + (Options (Viewing Cross-References)): + (Options (Misc)): + (Changes): + * speedbar.texi (Creating a display): + * tramp.texi (Customizing Completion, Auto-save and Backup): + Texinfo usage fix. + 2005-06-22 Miles Bader * display.texi (Faces): Change `vertical-divider' to `vertical-border'. @@ -187,7 +239,7 @@ 2005-05-16 Luc Teirlinck - * display.texi: Various minor changes. + * display.texi: Various minor changes. (Faces): Delete text that is repeated in the next section. 2005-05-16 Nick Roberts @@ -941,8 +993,8 @@ * calendar.texi (General Calendar): Document binding of scroll-other-window-down. (Mayan Calendar): Fix earliest date. - (Time Intervals): Document timeclock-change. Fix - timeclock-ask-before-exiting documentation. + (Time Intervals): Document timeclock-change. + Fix timeclock-ask-before-exiting documentation. 2005-02-26 Kim F. Storm @@ -1063,14 +1115,14 @@ 2005-02-10 Jay Belanger - * calc.texi: Change @LaTeX to La@TeX throughout. + * calc.texi: Change @LaTeX to La@TeX throughout. Redefine @expr as @math for TeX output. Redefine @texline as a no-op for TeX output. Define @tfn, replace @t by @tfn throughout. 2005-02-09 Jay Belanger - * calc.texi: Add macro for LaTeX for info output. + * calc.texi: Add macro for LaTeX for info output. 2005-02-08 Kim F. Storm @@ -1233,7 +1285,7 @@ * faq.texi: Update AUCTeX version info. -2005-01-16 Xavier Maillard (tiny change) +2005-01-16 Xavier Maillard (tiny change) * gnus-faq.texi ([4.1]): Typo. @@ -1644,7 +1696,7 @@ 2004-10-18 Jay Belanger - * calc.texi (Reporting Bugs): Changed the address that bugs + * calc.texi (Reporting Bugs): Changed the address that bugs should be sent to. 2004-10-15 Reiner Steib @@ -1663,7 +1715,7 @@ 2004-10-12 Jay Belanger - * calc.texi (Help Commands): Changed the descriptions of + * calc.texi (Help Commands): Changed the descriptions of calc-describe-function and calc-describe-variable to match their current behavior. @@ -1704,7 +1756,7 @@ 2004-10-06 Karl Berry - * info.texi (@kbd{1}--@kbd{9}): no space around --, for + * info.texi (@kbd{1}--@kbd{9}): No space around --, for consistency with other uses of dashes. 2004-10-06 Nick Roberts @@ -1718,7 +1770,7 @@ 2004-10-05 Karl Berry - * info.texi: consistently use --- throughout, periods at end of + * info.texi: Consistently use --- throughout, periods at end of menu descriptions, and a couple typos. 2004-10-05 Luc Teirlinck @@ -1734,7 +1786,7 @@ `selective-display-ellipses' no longer has an effect on Outline mode. (TeX Misc): Add missing @cindex. Replace xref for RefTeX with inforef. - (Requesting Formatted Text): the variable + (Requesting Formatted Text): The variable `enriched-fill-after-visiting' no longer exists. (Editing Format Info): Update names of menu items and commands. (Format Faces): Mention special effect of specifying the default face. @@ -1749,7 +1801,6 @@ (Forcing Enriched Mode): `format-decode-buffer' automatically turns on Enriched mode if the buffer is in text/enriched format. - 2004-10-05 Emilio C. Lopes * calendar.texi (From Other Calendar): Add calendar-goto-iso-week. @@ -1762,7 +1813,7 @@ 2004-09-26 Jesper Harder * sieve.texi (Manage Sieve API): nil -> @code{nil}. - * pgg.texi (User Commands, Backend methods): do. + * pgg.texi (User Commands, Backend methods): Do. * gnus.texi: Markup fixes. (Setting Process Marks): Fix `M P a' entry. * emacs-mime: Fixes. @@ -1855,23 +1906,22 @@ 2004-09-10 Teodor Zlatanov - * gnus.texi (IMAP): add comments about imaps synonym to imap in - netrc syntax + * gnus.texi (IMAP): Add comments about imaps synonym to imap in + netrc syntax. 2004-09-10 Teodor Zlatanov - * gnus.texi (Spam ELisp Package Sequence of Events): some clarifications - (Spam ELisp Package Global Variables) - (Spam ELisp Package Global Variables): more clarifications + * gnus.texi (Spam ELisp Package Sequence of Events): Some clarifications. + (Spam ELisp Package Global Variables): More clarifications. 2004-09-10 Teodor Zlatanov * gnus.texi (Spam ELisp Package Filtering of Incoming Mail): - mention spam-split does not modify incoming mail + Mention spam-split does not modify incoming mail. 2004-09-10 Teodor Zlatanov - * gnus.texi (Spam ELisp Package Sequence of Events): fix typo + * gnus.texi (Spam ELisp Package Sequence of Events): Fix typo. 2004-09-10 Eli Zaretskii @@ -2114,7 +2164,7 @@ 2004-08-30 Reiner Steib * emacs-mime.texi, gnus-faq.texi, gnus.texi, message.texi, - pgg.texi, sieve.texi: Use @copying and @insertcopying. + * pgg.texi, sieve.texi: Use @copying and @insertcopying. 2004-08-22 Reiner Steib @@ -2184,15 +2234,15 @@ 2004-06-21 Karl Berry - * info.texi (Top): mention that only Emacs has mouse support. - (Getting Started): mention this in a few other places. + * info.texi (Top): Mention that only Emacs has mouse support. + (Getting Started): Mention this in a few other places. 2004-06-20 Jesper Harder * msdog.texi (Text and Binary, MS-DOS Printing): Use m-dash. - * custom.texi (Customization): do. - * anti.texi (Antinews): do. - * abbrevs.texi (Defining Abbrevs): do. + * custom.texi (Customization): Do. + * anti.texi (Antinews): Do. + * abbrevs.texi (Defining Abbrevs): Do. * programs.texi (Info Lookup): Fix keybinding for info-lookup-symbol. @@ -2492,7 +2542,7 @@ 2004-02-17 Karl Berry - * info.texi (Help-Int): mention the new line number feature. + * info.texi (Help-Int): Mention the new line number feature. 2004-02-15 Jan Dj,Ad(Brv @@ -2603,7 +2653,7 @@ 2003-10-26 Karl Berry - * info.texi (Info Search): echo area, not echo are. From Debian + * info.texi (Info Search): Echo area, not echo are. From Debian diff. 2003-10-26 Per Abrahamsen @@ -2640,7 +2690,7 @@ 2003-10-06 Luc Teirlinck - * texinfo.tex: Replace `%' in arch tagline by @ignore. + * texinfo.tex: Replace `%' in arch tagline by @ignore. 2003-09-30 Richard M. Stallman @@ -3574,7 +3624,7 @@ 1990-06-26 David Lawrence (tale@geech) - * emacs.tex: Note that completion-ignored-extensions is not used + * emacs.tex: Note that completion-ignored-extensions is not used to filter out names when all completions are displayed in *Completions*. @@ -3603,7 +3653,7 @@ Also add an @finalout command to remove overfull hboxes from the printed output. - * cl.texinfo: Add @bye, \input line and @settitle to file. + * cl.texinfo: Add @bye, \input line and @settitle to file. This file is clearly intended to be a chapter of some other work, but the other work does not yet exist. diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/anti.texi --- a/man/anti.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/anti.texi Sat Jun 25 15:00:08 2005 +0000 @@ -151,9 +151,8 @@ and it can only hold a single function. @item -Non-breaking spaces and hyphens are displayed just like normal -characters. The user option @code{show-nonbreak-escape} is therefore -obsolete, and has been removed. +Nobreak spaces and hyphens are displayed just like normal characters, +and the user option @code{nobreak-char-display} has been removed. @item @kbd{C-w} in an incremental search always grabs an entire word diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/building.texi --- a/man/building.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/building.texi Sat Jun 25 15:00:08 2005 +0000 @@ -344,9 +344,9 @@ Some grep programs accept a @samp{--color} option to output special markers around matches for the purpose of highlighting. You can make -use of this feature by setting @code{grep-highlight-matches} to t. -When displaying a match in the source buffer, the exact match will be -highlighted, instead of the entire source line. +use of this feature by setting @code{grep-highlight-matches} to +@code{t}. When displaying a match in the source buffer, the exact +match will be highlighted, instead of the entire source line. @findex grep-find @findex find-grep diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/dired-x.texi --- a/man/dired-x.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/dired-x.texi Sat Jun 25 15:00:08 2005 +0000 @@ -1154,8 +1154,8 @@ @cindex Reading mail. @kindex V @findex dired-vm -Bound to @kbd{V} if @code{dired-bind-vm} is t. Run VM on this file (assumed -to be a UNIX mail folder). +Bound to @kbd{V} if @code{dired-bind-vm} is @code{t}. Run VM on this +file (assumed to be a UNIX mail folder). @vindex dired-vm-read-only-folders If you give this command a prefix argument, it will visit the folder @@ -1168,8 +1168,8 @@ visited read-only. This is the recommended value if you run VM 5. @vindex dired-bind-vm -If the variable @code{dired-bind-vm} is t, @code{dired-vm} will be bound to -@kbd{V}. Otherwise, @code{dired-bind-rmail} will be bound. +If the variable @code{dired-bind-vm} is @code{t}, @code{dired-vm} will be bound +to @kbd{V}. Otherwise, @code{dired-bind-rmail} will be bound. @item dired-rmail @cindex Reading mail. diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/display.texi --- a/man/display.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/display.texi Sat Jun 25 15:00:08 2005 +0000 @@ -12,6 +12,7 @@ @menu * Faces:: How to change the display style using faces. +* Standard Faces:: Emacs' predefined faces. * Font Lock:: Minor mode for syntactic highlighting using faces. * Highlight Changes:: Using colors to show where you changed the buffer. * Highlight Interactively:: Tell Emacs what text to highlight. @@ -44,6 +45,12 @@ support colors. Character terminals generally do not support changing the height and width or the font family. + The easiest way to use faces is to turn on Font Lock mode. +@xref{Font Lock}, for more information about Font Lock mode and +syntactic highlighting. You can print out the buffer with the +highlighting that appears on your screen using the command +@code{ps-print-buffer-with-faces}. @xref{PostScript}. + Features which rely on text in multiple faces (such as Font Lock mode) will also work on non-windowed terminals that can display more than one face, whether by colors or underlining and emboldening. This includes @@ -90,35 +97,38 @@ lines too long or too short. We plan to address these issues in future Emacs versions. +@node Standard Faces +@section Standard Faces + @findex list-faces-display - To see what faces are currently defined, and what they look like, type -@kbd{M-x list-faces-display}. It's possible for a given face to look -different in different frames; this command shows the appearance in the -frame in which you type it. Here's a list of the standard defined -faces: + To see what faces are currently defined, and what they look like, +type @kbd{M-x list-faces-display}. It's possible for a given face to +look different in different frames; this command shows the appearance +in the frame in which you type it. Here are the standard faces +for specifying text appearance: @table @code @item default This face is used for ordinary text that doesn't specify any other face. -@item mode-line -This face is used for the mode line of the currently selected window. -By default, it's drawn with shadows for a ``raised'' effect on window -systems, and drawn as the inverse of the default face on non-windowed -terminals. @xref{Display Custom}. -@item mode-line-inactive -Like @code{mode-line}, but used for mode lines of the windows other -than the selected one (if @code{mode-line-in-non-selected-windows} is -non-@code{nil}). This face inherits from @code{mode-line}, so changes -in that face affect mode lines in all windows. -@item header-line -Similar to @code{mode-line} for a window's header line. Most modes -don't use the header line, but the Info mode does. -@item vertical-border -This face is used for the vertical divider between windows on -character terminals. By default this face inherits from the -@code{mode-line-inactive} face. -@item minibuffer-prompt -This face is used for the prompt strings displayed in the minibuffer. +@item bold +This face uses a bold variant of the default font, if it has one. +@item italic +This face uses an italic variant of the default font, if it has one. +@item bold-italic +This face uses a bold italic variant of the default font, if it has one. +@item underline +This face underlines text. +@item fixed-pitch +The basic fixed-pitch face. +@item variable-pitch +The basic variable-pitch face. +@end table + + Here's an incomplete list of faces used to highlight parts of the +text temporarily for specific purposes. (Many other modes define +their own faces for this purpose.) + +@table @code @item highlight This face is used for highlighting portions of text, in various modes. For example, mouse-sensitive text is highlighted using this face. @@ -135,44 +145,16 @@ @item secondary-selection This face is used for displaying a secondary X selection (@pxref{Secondary Selection}). -@item bold -This face uses a bold variant of the default font, if it has one. -@item italic -This face uses an italic variant of the default font, if it has one. -@item bold-italic -This face uses a bold italic variant of the default font, if it has one. -@item underline -This face underlines text. -@item fixed-pitch -The basic fixed-pitch face. -@item fringe -@cindex fringe -The face for the fringes to the left and right of windows on graphic -displays. (The fringes are the narrow portions of the Emacs frame -between the text area and the window's right and left borders.) -@item scroll-bar -This face determines the visual appearance of the scroll bar. -@item border -This face determines the color of the frame border. -@item cursor -This face determines the color of the cursor. -@item mouse -This face determines the color of the mouse pointer. -@item tool-bar -This is the basic tool-bar face. No text appears in the tool bar, but the -colors of this face affect the appearance of tool bar icons. -@item tooltip -This face is used for tooltips. -@item menu -This face determines the colors and font of Emacs's menus. Setting the -font of LessTif/Motif menus is currently not supported; attempts to set -the font are ignored in this case. @item trailing-whitespace The face for highlighting trailing whitespace when @code{show-trailing-whitespace} is non-@code{nil}; see @ref{Useless Whitespace}. -@item variable-pitch -The basic variable-pitch face. +@item nobreak-space +The face for displaying the character ``nobreak space''. +@item escape-glyph +The face for highlighting the @samp{\} or @samp{^} that indicates +a control character. It's also used when @samp{\} indicates a +nobreak space or nobreak (soft) hyphen. @item shadow The basic face for making the text less noticeable than the surrounding ordinary text. Usually this is achieved by using shades of grey in @@ -187,13 +169,55 @@ for more information about Transient Mark mode and activation and deactivation of the mark. - One easy way to use faces is to turn on Font Lock mode. @xref{Font -Lock}, for more information about Font Lock mode and syntactic -highlighting. + These faces control the appearance of parts of the Emacs frame. +They exist as faces to provide a consistent way to customize the +appearance of these parts of the frame. - You can print out the buffer with the highlighting that appears -on your screen using the command @code{ps-print-buffer-with-faces}. -@xref{PostScript}. +@table @code +@item mode-line +This face is used for the mode line of the currently selected window. +By default, it's drawn with shadows for a ``raised'' effect on window +systems, and drawn as the inverse of the default face on non-windowed +terminals. +@item mode-line-inactive +Like @code{mode-line}, but used for mode lines of the windows other +than the selected one (if @code{mode-line-in-non-selected-windows} is +non-@code{nil}). This face inherits from @code{mode-line}, so changes +in that face affect mode lines in all windows. +@item header-line +Similar to @code{mode-line} for a window's header line. Most modes +don't use the header line, but the Info mode does. +@item vertical-border +This face is used for the vertical divider between windows on +character terminals. By default this face inherits from the +@code{mode-line-inactive} face. +@item minibuffer-prompt +This face is used for the prompt strings displayed in the minibuffer. +@item fringe +@cindex fringe +The face for the fringes to the left and right of windows on graphic +displays. (The fringes are the narrow portions of the Emacs frame +between the text area and the window's right and left borders.) +@xref{Fringes}. +@item scroll-bar +This face determines the visual appearance of the scroll bar. +@xref{Scroll Bars}. +@item border +This face determines the color of the frame border. +@item cursor +This face determines the color of the cursor. +@item mouse +This face determines the color of the mouse pointer. +@item tool-bar +This is the basic tool-bar face. No text appears in the tool bar, but the +colors of this face affect the appearance of tool bar icons. @xref{Tool Bars}. +@item tooltip +This face is used for tooltips. @xref{Tooltips}. +@item menu +This face determines the colors and font of Emacs's menus. Setting the +font of LessTif/Motif menus is currently not supported; attempts to set +the font are ignored in this case. @xref{Menu Bars}. +@end table @node Font Lock @section Font Lock mode @@ -921,16 +945,17 @@ them), otherwise as escape sequences. @xref{Single-Byte Character Support}. -@vindex show-nonbreak-escape -@cindex no-break space, display -@cindex no-break hyphen, display - Some character sets define ``no-break'' versions of the space -and hyphen characters, which are used where a line should not be -broken. Emacs displays these with an escape character in order to -distinguish them from ordinary spaces and hyphens. For example, a -non-breaking space is displayed as @samp{\ }. You can turn off this -behavior by setting the variable @code{show-nonbreak-escape} to -@code{nil}. +@vindex nobreak-char-display +@cindex nobreak space, display +@cindex nobreak hyphen, display + Some character sets define ``no-break'' versions of the space and +hyphen characters, which are used where a line should not be broken. +Emacs normally displays these characters with special faces +(respectively, @code{nobreak-space} and @code{escape-glyph}) to +distinguish them from ordinary spaces and hyphens. You can turn off +this feature by setting the variable @code{nobreak-char-display} to +@code{nil}. If you set the variable to any other value, that means to +prefix these characters with an escape character. @node Cursor Display @section Displaying the Cursor diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/ediff.texi --- a/man/ediff.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/ediff.texi Sat Jun 25 15:00:08 2005 +0000 @@ -2266,7 +2266,7 @@ @item ediff-make-buffers-readonly-at-startup nil @vindex ediff-make-buffers-readonly-at-startup -If t, all variant buffers are made read-only at Ediff startup. +If @code{t}, all variant buffers are made read-only at Ediff startup. @item ediff-keep-variants @vindex @code{ediff-keep-variants} diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/emacs.texi --- a/man/emacs.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/emacs.texi Sat Jun 25 15:00:08 2005 +0000 @@ -305,6 +305,7 @@ Controlling the Display * Faces:: How to change the display style using faces. +* Standard Faces:: Emacs' predefined faces. * Font Lock:: Minor mode for syntactic highlighting using faces. * Highlight Changes:: Using colors to show where you changed the buffer. * Highlight Interactively:: Tell Emacs what text to highlight. diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/gnus.texi --- a/man/gnus.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/gnus.texi Sat Jun 25 15:00:08 2005 +0000 @@ -9347,12 +9347,13 @@ @code{mm-discouraged-alternatives} in @ref{Display Customization, Display Customization, , emacs-mime, Emacs-Mime Manual}. Images or other material inside a "multipart/related" part might be overlooked -when this variable is nil. +when this variable is @code{nil}. @vindex gnus-mime-display-multipart-as-mixed @item gnus-mime-display-multipart-as-mixed -Display "multipart" parts as "multipart/mixed". If t, it overrides nil -values of @code{gnus-mime-display-multipart-alternative-as-mixed} and +Display "multipart" parts as "multipart/mixed". If @code{t}, it +overrides @code{nil} values of +@code{gnus-mime-display-multipart-alternative-as-mixed} and @code{gnus-mime-display-multipart-related-as-mixed}. @vindex mm-file-name-rewrite-functions @@ -14142,9 +14143,9 @@ In this example, messages sent from @samp{joedavis@@foo.org} will normally not be filed in @samp{joemail}. With -@code{nnmail-split-fancy-match-partial-words} set to t, however, the -match will happen. In effect, the requirement of a word boundary is -removed and instead the match becomes more like a grep. +@code{nnmail-split-fancy-match-partial-words} set to @code{t}, +however, the match will happen. In effect, the requirement of a word +boundary is removed and instead the match becomes more like a grep. @findex nnmail-split-fancy-with-parent @code{nnmail-split-fancy-with-parent} is a function which allows you to @@ -18372,11 +18373,11 @@ situation, you have two choices available. First, you can completely disable the undownload faces by customizing @code{gnus-summary-highlight} to delete the three cons-cells that -refer to the @code{gnus-summary-*-undownloaded-face} faces. Second, if -you prefer to take a more fine-grained approach, you may set the -@code{agent-disable-undownloaded-faces} group parameter to t. This -parameter, like all other agent parameters, may be set on an Agent -Category (@pxref{Agent Categories}), a Group Topic (@pxref{Topic +refer to the @code{gnus-summary-*-undownloaded-face} faces. Second, +if you prefer to take a more fine-grained approach, you may set the +@code{agent-disable-undownloaded-faces} group parameter to @code{t}. +This parameter, like all other agent parameters, may be set on an +Agent Category (@pxref{Agent Categories}), a Group Topic (@pxref{Topic Parameters}), or an individual group (@pxref{Group Parameters}). @node Agent as Cache @@ -18588,7 +18589,7 @@ If @code{gnus-agent-mark-unread-after-downloaded} is non-@code{nil}, mark articles as unread after downloading. This is usually a safe thing to do as the newly downloaded article has obviously not been -read. The default is t. +read. The default is @code{t}. @item gnus-agent-consider-all-articles @vindex gnus-agent-consider-all-articles diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/info.texi --- a/man/info.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/info.texi Sat Jun 25 15:00:08 2005 +0000 @@ -820,11 +820,11 @@ If you always like to have that information available without having to move your mouse over the cross reference, set -@code{Info-hide-note-references} to a value other than t (@pxref{Emacs -Info Variables}). You might also want to do that if you have a lot of -cross references to files on remote machines and have non-permanent or -slow access, since otherwise you might not be able to distinguish -between local and remote links. +@code{Info-hide-note-references} to a value other than @code{t} +(@pxref{Emacs Info Variables}). You might also want to do that if you +have a lot of cross references to files on remote machines and have +non-permanent or slow access, since otherwise you might not be able to +distinguish between local and remote links. @format >> Now type @kbd{n} to learn more commands. diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/message.texi --- a/man/message.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/message.texi Sat Jun 25 15:00:08 2005 +0000 @@ -8,7 +8,7 @@ @copying This file documents Message, the Emacs message composition mode. -Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. @quotation @@ -1372,7 +1372,7 @@ lines. If @code{nil}, leave the subject unchanged. If it is the symbol @code{ask}, query the user what do do. In this case, the subject is matched against @code{message-subject-trailing-was-ask-regexp}. If -@code{message-subject-trailing-was-query} is t, always strip the +@code{message-subject-trailing-was-query} is @code{t}, always strip the trailing old subject. In this case, @code{message-subject-trailing-was-regexp} is used. diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/mule.texi --- a/man/mule.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/mule.texi Sat Jun 25 15:00:08 2005 +0000 @@ -35,11 +35,12 @@ @cindex Dutch @cindex Spanish Emacs supports a wide variety of international character sets, -including European variants of the Latin alphabet, as well as Chinese, -Cyrillic, Devanagari (Hindi and Marathi), Ethiopic, Greek, Hebrew, IPA, -Japanese, Korean, Lao, Thai, Tibetan, and Vietnamese scripts. These features -have been merged from the modified version of Emacs known as MULE (for -``MULti-lingual Enhancement to GNU Emacs'') +including European and Vietnamese variants of the Latin alphabet, as +well as Cyrillic, Devanagari (for Hindi and Marathi), Ethiopic, Greek, +Han (for Chinese and Japanese), Hangul (for Korean), Hebrew, IPA, +Kannada, Lao, Malayalam, Tamil, Thai, Tibetan, and Vietnamese scripts. +These features have been merged from the modified version of Emacs +known as MULE (for ``MULti-lingual Enhancement to GNU Emacs'') Emacs also supports various encodings of these characters used by other internationalized software, such as word processors and mailers. @@ -69,8 +70,7 @@ You can insert non-@acronym{ASCII} characters or search for them. To do that, you can specify an input method (@pxref{Select Input Method}) suitable for your language, or use the default input method set up when you set -your language environment. (Emacs input methods are part of the Leim -package, which must be installed for you to be able to use them.) If +your language environment. If your keyboard can produce non-@acronym{ASCII} characters, you can select an appropriate keyboard coding system (@pxref{Specify Coding}), and Emacs will accept those characters. Latin-1 characters can also be input by @@ -240,13 +240,19 @@ @cindex Euro sign @cindex UTF-8 @quotation -Chinese-BIG5, Chinese-CNS, Chinese-GB, Cyrillic-ALT, Cyrillic-ISO, -Cyrillic-KOI8, Czech, Devanagari, Dutch, English, Ethiopic, German, -Greek, Hebrew, IPA, Japanese, Korean, Lao, Latin-1, Latin-2, Latin-3, -Latin-4, Latin-5, Latin-8 (Celtic), Latin-9 (updated Latin-1, with the -Euro sign), Polish, Romanian, Slovak, Slovenian, Spanish, Thai, Tibetan, -Turkish, UTF-8 (for a setup which prefers Unicode characters and files -encoded in UTF-8), and Vietnamese. +Belarusian, Brazilian Portuguese, Bulgarian, Chinese-BIG5, +Chinese-CNS, Chinese-EUC-TW, Chinese-GB, Croatian, Cyrillic-ALT, +Cyrillic-ISO, Cyrillic-KOI8, Czech, Devanagari, Dutch, English, +Ethiopic, French, Georgian, German, Greek, Hebrew, IPA, Italian, +Japanese, Kannada, Korean, Lao, Latin-1, Latin-2, Latin-3, +Latin-4, Latin-5, Latin-6, Latin-7, Latin-8 (Celtic), +Latin-9 (updated Latin-1 with the Euro sign), Latvian, +Lithuanian, Malayalam, Polish, Romanian, Russian, Slovak, +Slovenian, Spanish, Swedish, Tajik, Tamil, Thai, Tibetan, +Turkish, UTF-8 (for a setup which prefers Unicode characters and +files encoded in UTF-8), Ukrainian, Vietnamese, Welsh, and +Windows-1255 (for a setup which prefers Cyrillic characters and +files encoded in Windows-1255). @end quotation @cindex fonts for various scripts @@ -254,7 +260,7 @@ To display the script(s) used by your language environment on a graphical display, you need to have a suitable font. If some of the characters appear as empty boxes, you should install the GNU Intlfonts -package, which includes fonts for all supported scripts.@footnote{If +package, which includes fonts for most supported scripts.@footnote{If you run Emacs on X, you need to inform the X server about the location of the newly installed fonts with the following commands: @@ -525,9 +531,11 @@ the command @kbd{M-x quail-set-keyboard-layout}. @findex quail-show-key - You can use the command @kbd{M-x quail-show-key} to show what key -(or key sequence) to type in order to input the character following -point, using the selected keyboard layout. + You can use the command @kbd{M-x quail-show-key} to show what key (or +key sequence) to type in order to input the character following point, +using the selected keyboard layout. The command @kbd{C-u C-x =} also +shows that information in addition to the other information about the +character. @findex list-input-methods To display a list of all the supported input methods, type @kbd{M-x @@ -736,7 +744,7 @@ @code{china-iso-8bit}, you can execute this Lisp expression: @smallexample -(modify-coding-system-alist 'file "\\.txt\\'" 'china-iso-8bit) +(modify-coding-system-alist 'file "\\.txt\\'" 'chinese-iso-8bit) @end smallexample @noindent diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/org.texi --- a/man/org.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/org.texi Sat Jun 25 15:00:08 2005 +0000 @@ -9,7 +9,7 @@ @dircategory Emacs @direntry -* Org Mode: (org). Outline-based notes management and organizer +* Org Mode: (org). Outline-based notes management and organizer @end direntry @c Version and Contact Info @@ -264,7 +264,7 @@ @noindent which will select Org-mode for this buffer no matter what the file's name is. See also the variable -@code{org-insert-mode-line-in-empty-file'}. +@code{org-insert-mode-line-in-empty-file'}. @node Feedback, , Installation and Activation, Introduction @section Feedback @@ -710,7 +710,7 @@ @kindex C-c ? @item C-c ? Which table column is the cursor in? Displays number >0 in echo -area. +area. @cindex region, active @cindex active region @@ -721,8 +721,8 @@ the active region. The result is displayed in the echo area and can be inserted with @kbd{C-y}. -@kindex S-@key{RET} -@item S-@key{RET} +@kindex S-@key{RET} +@item S-@key{RET} When current field is empty, copy from first non-empty field above. When not empty, copy current field down to next row and move cursor along with it. Depending on the variable @@ -954,7 +954,7 @@ @item on headline @tab @key{RET} @tab as sublevel of the heading at cursor @item @tab @key{left} @tab as same level, before current heading @item @tab @key{right} @tab as same level, after current heading -@item not on headline @tab @key{RET} +@item not on headline @tab @key{RET} @tab at cursor position, level taken from context. Or use prefix arg to specify level manually. @end multitable @@ -969,8 +969,8 @@ text has a headline, i.e. a first line that starts with a @samp{*}. If not, a headline is constructed from the current date and some additional data. If the variable @code{org-adapt-indentation} is -non-nil, the entire text is also indented so that it starts in the -same column as the headline (after the asterisks). +non-@code{nil}, the entire text is also indented so that it starts in +the same column as the headline (after the asterisks). @node TODO items, Timestamps, Hyperlinks, Top @chapter TODO items @@ -1125,7 +1125,7 @@ parses these lines only when Org-mode is activated after visiting a file. @kbd{C-c C-c} with the cursor in a line starting with @samp{#-} is simply restarting Org-mode, making sure that these changes will be -respected.}. +respected.}. If you want to use very many keywords, for example when working with a large group of people, you may split the names over several lines: @@ -1578,7 +1578,7 @@ @kindex mouse-3 @kindex @key{SPC} @item mouse-3 -@itemx @key{SPC} +@itemx @key{SPC} Display the original location of the item in another window. @kindex l @@ -1680,7 +1680,7 @@ the future. With prefix argument, change it by that many days. For example, @kbd{3 6 5 S-@key{right}} will change it by a year. The stamp is changed in the original org file, but the change is not -directly reflected in the agenda buffer. Use the +directly reflected in the agenda buffer. Use the @kbd{r} key to update the buffer. @kindex S-@key{left} @@ -1859,16 +1859,16 @@ @cindex active region @cindex transient-mark-mode @table @kbd -@kindex C-c C-x a +@kindex C-c C-x a @item C-c C-x a Export as ASCII file. If there is an active region, only the region will be exported. For an org file @file{myfile.org}, the ASCII file will be @file{myfile.txt}. The file will be overwritten without warning. -@kindex C-c C-x h +@kindex C-c C-x h @item C-c C-x h Export as HTML file @file{myfile.html}. -@kindex C-c C-x C-h +@kindex C-c C-x C-h @item C-c C-x C-h Export as HTML file and open it with a browser. @kindex C-c C-x t @@ -1914,7 +1914,7 @@ @cindex fixed width @item Lines starting with @samp{:} are typeset in a fixed-width font, to -allow quoting of computer code etc. +allow quoting of computer code etc. @cindex HTML tags @item @@ -1936,7 +1936,7 @@ The whole set of lines can be inserted into the buffer with @kbd{C-c C-x t}. For individual lines, a good way to make sure the keyword is correct it to type @samp{#+} and then use @kbd{M-@key{TAB}} completion -(@pxref{Completion}). +(@pxref{Completion}). @example #+TITLE: the title to be shown (default is the buffer name) @@ -2162,7 +2162,7 @@ @end example Yes, these are unfortunately more difficult to remember. If you want to have other replacement keys, look at the variable -@code{org-disputed-keys}. +@code{org-disputed-keys}. @end table @@ -2174,30 +2174,30 @@ have found too hard to fix. @itemize @bullet -@item +@item If you call @code{fill-paragraph} (bound to @kbd{M-q}) in a table, the filling is correctly disabled. However, if some text directly (without an empty line in between) preceeds or follws a table, calling @code{fill-paragraph} in that text will also fill the table like normal text. Also, @code{fill-region} does bypass the @code{fill-paragraph} code and will fill tables like normal text. -@item +@item When the application called by @kbd{C-c C-o} to open a file link fails (for example because the application does not exits or refuses to open the file), it does so silently. No error message is displayed. -@item +@item Under XEmacs, if Org-mode entries are included into the diary, it is not possible to jump back from the diary to the org file. Apparently, the text properties are lost when the fancy-diary-display is used. However, from Org-mode's timeline and agenda buffers (created with @kbd{C-c C-r} and @kbd{C-c a}), things do work correctly. -@item +@item Linux should also have a default viewer application, using mailcap. Maybe we can use GNUS or VM mime code? Or dired's guessing commands? Any hints (or even patches) are appreciated. -@item +@item When you write @samp{x = a /b/ c}, b will be exported in italics. -@item +@item The exporters work well, but could be made more efficient. @end itemize diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/reftex.texi --- a/man/reftex.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/reftex.texi Sat Jun 25 15:00:08 2005 +0000 @@ -153,7 +153,7 @@ * Citation Info:: View the corresponding database entry. * Chapterbib and Bibunits:: Multiple bibliographies in a Document. * Citations Outside LaTeX:: How to make citations in Emails etc. -* BibTeX Database Subsets:: Extract parts of a big database. +* BibTeX Database Subsets:: Extract parts of a big database. Index Support @@ -1668,7 +1668,7 @@ * Citation Info:: View the corresponding database entry. * Chapterbib and Bibunits:: Multiple bibliographies in a Document. * Citations Outside LaTeX:: How to make citations in Emails etc. -* BibTeX Database Subsets:: Extract parts of a big database. +* BibTeX Database Subsets:: Extract parts of a big database. @end menu @node Creating Citations, Citation Styles, , Citations @@ -1772,12 +1772,12 @@ @item e Create a new BibTeX database file which contains all @i{marked} entries in the selection buffer. If no entries are marked, all entries are -selected. +selected. @item E Create a new BibTeX database file which contains all @i{unmarked} entries in the selection buffer. If no entries are marked, all entries -are selected. +are selected. @item @key{TAB} Enter a citation key with completion. This may also be a key which does @@ -3211,7 +3211,7 @@ Before calling a @b{Ref@TeX{}} function, the style hook should always test for the availability of the function, so that the style file will -also work for people who do not use @b{Ref@TeX{}}. +also work for people who do not use @b{Ref@TeX{}}. Additions made with style files in the way described below remain local to the current document. For example, if one package uses AMSTeX, the @@ -3492,7 +3492,7 @@ @b{Ref@TeX{}} was written by @i{Carsten Dominik} @email{dominik@@science.uva.nl}, with contributions by @i{Stephen -Eglen}. @b{Ref@TeX{}} is currently maintained by +Eglen}. @b{Ref@TeX{}} is currently maintained by @noindent Carsten Dominik @@ -3712,7 +3712,7 @@ Create a new BibTeX database file with all entries referenced in document. The command prompts for a filename and writes the collected entries to that file. Only entries referenced in the current document with -any @code{\cite}-like macros are used. +any @code{\cite}-like macros are used. The sequence in the new file is the same as it was in the old database. @end deffn @@ -3817,7 +3817,7 @@ ordinary TOC window), the automatic recentering is turned on. When the frame gets destroyed, automatic recentering is turned off again. -This feature can be turned on and off from the menu +This feature can be turned on and off from the menu (Ref->Options). @end defopt @@ -3927,7 +3927,7 @@ This may also be a function to do local parsing and identify point to be in a non-standard label environment. The function must take an argument @var{bound} and limit backward searches to this value. It -should return either nil or a cons cell @code{(@var{function} +should return either @code{nil} or a cons cell @code{(@var{function} . @var{position})} with the function symbol and the position where the special environment starts. See the Info documentation for an example. @@ -4084,7 +4084,7 @@ default does parse around each label to detect the correct label type, but this process can be slow when a document contains thousands of labels. If you use label prefixes consistently, you may speed up -document parsing by setting this variable to a non-nil value. RefTeX +document parsing by setting this variable to a non-@code{nil} value. RefTeX will then compare the label prefix with the prefixes found in `reftex-label-alist' and derive the correct label type in this way. Possible values for this option are: @@ -4093,7 +4093,7 @@ t @r{This means to trust any label prefixes found.} regexp @r{If a regexp, only prefixes matched by the regexp are trusted.} list @r{List of accepted prefixes, as strings. The colon is part of} - @r{the prefix, e.g. ("fn:" "eqn:" "item:").} + @r{the prefix, e.g. ("fn:" "eqn:" "item:").} nil @r{Never trust a label prefix.} @end example The only disadvantage of using this feature is that the label context @@ -4649,7 +4649,7 @@ @defopt reftex-index-verify-function A function which is called at each match during global indexing. -If the function returns nil, the current match is skipped. +If the function returns @code{nil}, the current match is skipped. @end defopt @defopt reftex-index-phrases-skip-indexed-matches @@ -4769,10 +4769,10 @@ @defopt reftex-revisit-to-echo Non-@code{nil} means, automatic citation display will revisit files if -necessary. When nil, citation display in echo area will only be active -for cached echo strings (see @code{reftex-cache-cite-echo}), or for -BibTeX database files which are already visited by a live associated -buffers. +necessary. When @code{nil}, citation display in echo area will only +be active for cached echo strings (see @code{reftex-cache-cite-echo}), +or for BibTeX database files which are already visited by a live +associated buffers. @end defopt @defopt reftex-cache-cite-echo @@ -5113,7 +5113,7 @@ @defopt reftex-revisit-to-follow Non-@code{nil} means, follow-mode will revisit files if necessary. -When nil, follow-mode will be suspended for stuff in unvisited files. +When @code{nil}, follow-mode will be suspended for stuff in unvisited files. @end defopt @defopt reftex-allow-detached-macro-args @@ -5177,11 +5177,11 @@ @noindent @b{Version 4.24} @itemize @bullet -@item +@item Inserting citation commands now prompts for optional arguments when called with a prefix argument. Related new options are @code{reftex-cite-prompt-optional-args} and -@code{reftex-cite-cleanup-optional-args}. +@code{reftex-cite-cleanup-optional-args}. @item New option @code{reftex-trust-label-prefix}. Configure this variable if you'd like RefTeX to base its classification of labels on prefixes. @@ -5189,7 +5189,7 @@ quality of the context used by RefTeX to describe a label. @item Fixed bug in @code{reftex-create-bibtex-file} when @code{reftex-comment-citations} -is non-nil. +is non-@code{nil}. @item Fixed bugs in indexing: Case-sensitive search, quotes before and/or after words. Disabbled indexing in comment lines. @@ -5197,7 +5197,7 @@ @noindent @b{Version 4.22} @itemize @bullet -@item +@item New command @code{reftex-create-bibtex-file} to create a new database with all entries referenced in the current document. @item @@ -5207,7 +5207,7 @@ @noindent @b{Version 4.21} @itemize @bullet -@item +@item Renaming labels from the toc buffer with key @kbd{M-%}. @end itemize @@ -5423,7 +5423,7 @@ document, all labels and associated context. New keys @kbd{i}, @kbd{l}, and @kbd{c}. New options @code{reftex-toc-include-labels}, @code{reftex-toc-include-context}, -@code{reftex-toc-include-file-boundaries}. +@code{reftex-toc-include-file-boundaries}. @end itemize @noindent @b{Version 3.41} @@ -5536,7 +5536,7 @@ @kbd{M-x reftex-reset-mode} now also removes the file with parsing info. @item -Default of @code{reftex-revisit-to-follow} changed to nil. +Default of @code{reftex-revisit-to-follow} changed to @code{nil}. @end itemize @noindent @b{Version 3.24} diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/speedbar.texi --- a/man/speedbar.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/speedbar.texi Sat Jun 25 15:00:08 2005 +0000 @@ -1175,11 +1175,11 @@ Create a tag line with @var{exp-button-type} for the small expansion button. This is the button that expands or contracts a node (if applicable), and @var{exp-button-char} the character in it (@samp{+}, -@samp{-}, @samp{?}, -etc). @var{exp-button-function} is the function to call if it's clicked -on. Button types are @code{'bracket}, @code{'angle}, @code{'curly}, -@code{'expandtag}, @code{'statictag}, or nil. @var{exp-button-data} is -extra data attached to the text forming the expansion button. +@samp{-}, @samp{?}, etc). @var{exp-button-function} is the function +to call if it's clicked on. Button types are @code{bracket}, +@code{angle}, @code{curly}, @code{expandtag}, @code{statictag}, and +@code{nil}. @var{exp-button-data} is extra data attached to the text +forming the expansion button. Next, @var{tag-button} is the text of the tag. @var{tag-button-function} is the function to call if clicked on, and @@ -1221,15 +1221,15 @@ @defvar speedbar-generic-list-group-expand-button-type This is the button type used for groups of tags, whether expanded or added in via a hierarchy method. Two good values are -@code{'curly} and @code{'expandtag}. Curly is the default button, and -@code{'expandtag} is useful if the groups also has a position. +@code{curly} and @code{expandtag}. Curly is the default button, and +@code{expandtag} is useful if the groups also has a position. @end defvar @defvar speedbar-generic-list-tag-button-type This is the button type used for a single tag. -Two good values are @code{nil} and @code{'statictag}. -@code{nil} is the default, and @code{'statictag} has the same width as -@code{'expandtag}. +Two good values are @code{nil} and @code{statictag}. +@code{nil} is the default, and @code{statictag} has the same width as +@code{expandtag}. @end defvar @end defun diff -r bdcbdec78dd3 -r d07fdd5d7d4e man/tramp.texi --- a/man/tramp.texi Wed Jun 22 17:53:21 2005 +0000 +++ b/man/tramp.texi Sat Jun 25 15:00:08 2005 +0000 @@ -1211,7 +1211,8 @@ SSH2 parsing of directories @file{/etc/ssh2/hostkeys/*} and @file{~/ssh2/hostkeys/*}. Hosts are coded in file names -@file{hostkey_PORTNUMBER_HOST-NAME.pub}. User names are always nil. +@file{hostkey_@var{portnumber}_@var{host-name}.pub}. User names +are always @code{nil}. @item @code{tramp-parse-sknownhosts} @findex tramp-parse-shostkeys @@ -1219,7 +1220,7 @@ Another SSH2 style parsing of directories like @file{/etc/ssh2/knownhosts/*} and @file{~/ssh2/knownhosts/*}. This case, hosts names are coded in file names -@file{HOST-NAME.ALGORITHM.pub}. User names are always nil. +@file{@var{host-name}.@var{algorithm}.pub}. User names are always @code{nil}. @item @code{tramp-parse-hosts} @findex tramp-parse-hosts @@ -1522,7 +1523,7 @@ @ifset xemacs @code{bkup-backup-directory-info} @end ifset -is nil (the default), such problems do not occur. +is @code{nil} (the default), such problems do not occur. Therefore, it is usefull to set special values for @value{tramp} files. For example, the following statement effectively `turns off' @@ -1610,7 +1611,7 @@ workaround is to manually set the variable to a sane value. If auto-saved files should go into the same directory as the original -files, @code{auto-save-file-name-transforms} should be set to nil. +files, @code{auto-save-file-name-transforms} should be set to @code{nil}. Another possibility is to set the variable @code{tramp-auto-save-directory} to a proper value. @@ -2125,7 +2126,8 @@ @end example -@item @value{tramp} doesn't transfer strings with more than 500 characters +@item +@value{tramp} doesn't transfer strings with more than 500 characters correctly On some few systems, the implementation of @code{process-send-string} @@ -2133,7 +2135,6 @@ customize the variable @code{tramp-chunksize} to 500. For a description how to determine whether this is necessary see the documentation of @code{tramp-chunksize}. - @end itemize diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/ChangeLog --- a/src/ChangeLog Wed Jun 22 17:53:21 2005 +0000 +++ b/src/ChangeLog Sat Jun 25 15:00:08 2005 +0000 @@ -1,3 +1,45 @@ +2005-06-23 Richard M. Stallman + + * xdisp.c (get_next_display_element): Finish reversing the tests of + Vnobreak_char_display. + + * xdisp.c (Vnobreak_char_display): Renamed from Vshow_nonbreak_escape. + All uses changed. + (Qnobreak_space): Renamed from Qno_break_space. All uses changed. + (syms_of_xdisp): Define nobreak-char-display and nobreak-space. + + * fileio.c (Frename_file): Preserve owner and group, if possible, + when copying. + +2005-06-23 Juanma Barranquero + + * abbrev.c (Funexpand_abbrev): + * category.c (Fmake_category_set): + * dispnew.c (Fsleep_for, Fsit_for): + * editfns.c (Fsubst_char_in_region): + * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall): + * frame.c (make_frame_without_minibuffer): + * lread.c (read_vector): + * macfns.c (check_x_frame): + * process.c (Fstop_process, Fcontinue_process): + * search.c (Freplace_match): + * syntax.c (Fstring_to_syntax): + * w32fns.c (check_x_frame, check_x_display_info): + * xfaces.c (x_supports_face_attributes_p): + * xselect.c (Fx_own_selection_internal): Follow error conventions. + + * image.c (fn_png_init_io): Don't define it. + (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io. + (png_read_from_file): New function, based on png_read_from_memory. + (png_load): Use it, instead of fn_png_init_io. + +2005-06-23 Kim F. Storm + + * search.c (Fmatch_data): Remove evaporate option. + (Fset_match_data): Do not mention evaporate option in doc string. + Add commentary explaining evaporate arg (for internal use only). + (unwind_set_match_data): Add comment on evaporate use. + 2005-06-22 Miles Bader * xfaces.c (Qvertical_border): Renamed from `Qvertical_divider'. @@ -2799,7 +2841,7 @@ * xdisp.c (expose_window, expose_frame): Remove kludges for Mac. - * xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font. + * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font. 2004-12-27 Richard M. Stallman @@ -2838,7 +2880,7 @@ (xmenu_show): In no toolkit version, if menu returns NO_SELECT call Fsignal to quit. - * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g. + * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g. * gtkutil.c (xg_initialize): Install bindings for C-g so that dialogs and menus pop down. @@ -3624,7 +3666,7 @@ 2004-11-12 Jan Dj,Ad(Brv * xmenu.c (x_menu_wait_for_event): New function. - (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event + (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event to handle timers. (popup_widget_loop): Add argument do_timers. (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for @@ -4002,7 +4044,7 @@ 2004-10-28 Will - * macterm.c: allow user to assign key modifiers to the Mac Option + * macterm.c: Allow user to assign key modifiers to the Mac Option key via a 'mac-option-modifier' variable. 2004-10-28 Stefan Monnier @@ -4864,7 +4906,7 @@ * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes. - * keyboard.c (syms_of_keyboard) : Doc fix. + * keyboard.c (syms_of_keyboard) : Doc fix. * callint.c (Fcall_interactively): Doc fix. @@ -8191,7 +8233,7 @@ * fileio.c (Fread_file_name): Check use_file_dialog also before calling Fx_file_dialog. - * fns.c: use_file_dialog: New variable. + * fns.c (use_file_dialog): New variable. (syms_of_fns): DEFVAR_BOOL use-file-dialog. 2003-11-29 Kim F. Storm @@ -11637,7 +11679,7 @@ for USE_GTK. (x_scroll_bar_handle_click): Use this function for toolkit scrollbars also. - (handle_one_xevent): ButtonPress/Release: If event is for a toolkit + (handle_one_xevent): ButtonPress/Release: If event is for a toolkit scrollbar and control is pressed, call x_scroll_bar_handle_click. * gtkutil.h (xg_get_scroll_id_for_window): Declare. diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/abbrev.c --- a/src/abbrev.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/abbrev.c Sat Jun 25 15:00:08 2005 +0000 @@ -442,7 +442,7 @@ val = SYMBOL_VALUE (Vlast_abbrev); if (!STRINGP (val)) - error ("value of abbrev-symbol must be a string"); + error ("Value of `abbrev-symbol' must be a string"); zv_before = ZV; del_range_byte (PT_BYTE, PT_BYTE + SBYTES (val), 1); /* Don't inherit properties here; just copy from old contents. */ diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/category.c --- a/src/category.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/category.c Sat Jun 25 15:00:08 2005 +0000 @@ -67,7 +67,7 @@ val = MAKE_CATEGORY_SET; if (STRING_MULTIBYTE (categories)) - error ("Multibyte string in make-category-set"); + error ("Multibyte string in `make-category-set'"); len = SCHARS (categories); while (--len >= 0) diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/dispnew.c --- a/src/dispnew.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/dispnew.c Sat Jun 25 15:00:08 2005 +0000 @@ -6374,7 +6374,7 @@ #ifndef EMACS_HAS_USECS if (sec == 0 && usec != 0) - error ("millisecond `sleep-for' not supported on %s", SYSTEM_TYPE); + error ("Millisecond `sleep-for' not supported on %s", SYSTEM_TYPE); #endif /* Assure that 0 <= usec < 1000000. */ @@ -6474,7 +6474,7 @@ #ifndef EMACS_HAS_USECS if (usec != 0 && sec == 0) - error ("millisecond `sit-for' not supported on %s", SYSTEM_TYPE); + error ("Millisecond `sit-for' not supported on %s", SYSTEM_TYPE); #endif return sit_for (sec, usec, 0, NILP (nodisp), NILP (nodisp)); diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/editfns.c --- a/src/editfns.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/editfns.c Sat Jun 25 15:00:08 2005 +0000 @@ -2660,7 +2660,7 @@ { len = CHAR_STRING (XFASTINT (fromchar), fromstr); if (CHAR_STRING (XFASTINT (tochar), tostr) != len) - error ("Characters in subst-char-in-region have different byte-lengths"); + error ("Characters in `subst-char-in-region' have different byte-lengths"); if (!ASCII_BYTE_P (*tostr)) { /* If *TOSTR is in the range 0x80..0x9F and TOCHAR is not a diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/eval.c --- a/src/eval.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/eval.c Sat Jun 25 15:00:08 2005 +0000 @@ -785,7 +785,7 @@ sym = Fcar (args); tail = Fcdr (args); if (!NILP (Fcdr (Fcdr (tail)))) - error ("too many arguments"); + error ("Too many arguments"); tem = Fdefault_boundp (sym); if (!NILP (tail)) @@ -845,7 +845,7 @@ sym = Fcar (args); if (!NILP (Fcdr (Fcdr (Fcdr (args))))) - error ("too many arguments"); + error ("Too many arguments"); tem = Feval (Fcar (Fcdr (args))); if (!NILP (Vpurify_flag)) @@ -2037,7 +2037,7 @@ if (max_lisp_eval_depth < 100) max_lisp_eval_depth = 100; if (lisp_eval_depth > max_lisp_eval_depth) - error ("Lisp nesting exceeds max-lisp-eval-depth"); + error ("Lisp nesting exceeds `max-lisp-eval-depth'"); } original_fun = Fcar (form); @@ -2733,7 +2733,7 @@ if (max_lisp_eval_depth < 100) max_lisp_eval_depth = 100; if (lisp_eval_depth > max_lisp_eval_depth) - error ("Lisp nesting exceeds max-lisp-eval-depth"); + error ("Lisp nesting exceeds `max-lisp-eval-depth'"); } backtrace.next = backtrace_list; diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/fileio.c --- a/src/fileio.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/fileio.c Sat Jun 25 15:00:08 2005 +0000 @@ -2777,6 +2777,7 @@ { if (errno == EXDEV) { + struct stat data; #ifdef S_IFLNK symlink_target = Ffile_symlink_p (file); if (! NILP (symlink_target)) @@ -2789,6 +2790,11 @@ so don't have copy-file prompt again. */ NILP (ok_if_already_exists) ? Qnil : Qt, Qt, Qnil); + + /* Preserve owner and group, if possible (if we are root). */ + if (stat (SDATA (encoded_file), &data) >= 0) + chown (SDATA (encoded_file), data.st_uid, data.st_gid); + Fdelete_file (file); } else diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/frame.c --- a/src/frame.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/frame.c Sat Jun 25 15:00:08 2005 +0000 @@ -426,7 +426,7 @@ #ifdef MULTI_KBOARD if (!NILP (mini_window) && XFRAME (XWINDOW (mini_window)->frame)->kboard != kb) - error ("frame and minibuffer must be on the same display"); + error ("Frame and minibuffer must be on the same display"); #endif /* Make a frame containing just a root window. */ @@ -3609,7 +3609,7 @@ extern Display_Info *check_x_display_info P_ ((Lisp_Object)); -/* Get specified attribute from resource database RDB. +/* Get specified attribute from resource database RDB. See Fx_get_resource below for other parameters. */ static Lisp_Object @@ -3746,7 +3746,7 @@ Lisp_Object x_get_arg (dpyinfo, alist, param, attribute, class, type) - Display_Info *dpyinfo; + Display_Info *dpyinfo; Lisp_Object alist, param; char *attribute; char *class; diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/image.c --- a/src/image.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/image.c Sat Jun 25 15:00:08 2005 +0000 @@ -5631,7 +5631,6 @@ DEF_IMGLIB_FN (png_create_info_struct); DEF_IMGLIB_FN (png_destroy_read_struct); DEF_IMGLIB_FN (png_set_read_fn); -DEF_IMGLIB_FN (png_init_io); DEF_IMGLIB_FN (png_set_sig_bytes); DEF_IMGLIB_FN (png_read_info); DEF_IMGLIB_FN (png_get_IHDR); @@ -5663,7 +5662,6 @@ LOAD_IMGLIB_FN (library, png_create_info_struct); LOAD_IMGLIB_FN (library, png_destroy_read_struct); LOAD_IMGLIB_FN (library, png_set_read_fn); - LOAD_IMGLIB_FN (library, png_init_io); LOAD_IMGLIB_FN (library, png_set_sig_bytes); LOAD_IMGLIB_FN (library, png_read_info); LOAD_IMGLIB_FN (library, png_get_IHDR); @@ -5689,7 +5687,6 @@ #define fn_png_create_info_struct png_create_info_struct #define fn_png_destroy_read_struct png_destroy_read_struct #define fn_png_set_read_fn png_set_read_fn -#define fn_png_init_io png_init_io #define fn_png_set_sig_bytes png_set_sig_bytes #define fn_png_read_info png_read_info #define fn_png_get_IHDR png_get_IHDR @@ -5762,6 +5759,23 @@ } +/* Function set as reader function when reading PNG image from a file. + PNG_PTR is a pointer to the PNG control structure. Copy LENGTH + bytes from the input to DATA. */ + +static void +png_read_from_file (png_ptr, data, length) + png_structp png_ptr; + png_bytep data; + png_size_t length; +{ + FILE *fp = (FILE *) fn_png_get_io_ptr (png_ptr); + + if (fread (data, 1, length, fp) < length) + fn_png_error (png_ptr, "Read error"); +} + + /* Load PNG image IMG for use on frame F. Value is non-zero if successful. */ @@ -5895,7 +5909,7 @@ if (!NILP (specified_data)) fn_png_set_read_fn (png_ptr, (void *) &tbr, png_read_from_memory); else - fn_png_init_io (png_ptr, fp); + fn_png_set_read_fn (png_ptr, (void *) fp, png_read_from_file); fn_png_set_sig_bytes (png_ptr, sizeof sig); fn_png_read_info (png_ptr, info_ptr); diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/lread.c --- a/src/lread.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/lread.c Sat Jun 25 15:00:08 2005 +0000 @@ -2846,7 +2846,7 @@ if (i == COMPILED_BYTECODE) { if (!STRINGP (item)) - error ("invalid byte code"); + error ("Invalid byte code"); /* Delay handling the bytecode slot until we know whether it is lazily-loaded (we can tell by whether the @@ -2868,7 +2868,7 @@ item = Fread (bytestr); if (!CONSP (item)) - error ("invalid byte code"); + error ("Invalid byte code"); otem = XCONS (item); bytestr = XCAR (item); diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/macfns.c --- a/src/macfns.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/macfns.c Sat Jun 25 15:00:08 2005 +0000 @@ -208,7 +208,7 @@ CHECK_LIVE_FRAME (frame); f = XFRAME (frame); if (! FRAME_MAC_P (f)) - error ("non-mac frame used"); + error ("Non-Mac frame used"); return f; } @@ -4241,7 +4241,7 @@ NavTypeListHandle fileTypes = NULL; NavUserAction userAction; CFStringRef message=NULL, saveName = NULL; - + BLOCK_INPUT; /* No need for a callback function because we are modal */ NavGetDefaultDialogCreationOptions(&options); @@ -4265,8 +4265,8 @@ if (!NILP (only_dir_p)) status = NavCreateChooseFolderDialog(&options, mac_nav_event_callbackUPP, NULL, NULL, &dialogRef); - else if (NILP (mustmatch)) - { + else if (NILP (mustmatch)) + { /* This is a save dialog */ options.optionFlags |= kNavDontConfirmReplacement; options.actionButtonLabel = CFSTR ("Ok"); @@ -4283,7 +4283,7 @@ options.saveFileName = saveName; options.optionFlags |= kNavSelectDefaultLocation; } - status = NavCreatePutFileDialog(&options, + status = NavCreatePutFileDialog(&options, 'TEXT', kNavGenericSignature, mac_nav_event_callbackUPP, NULL, &dialogRef); @@ -4295,7 +4295,7 @@ mac_nav_event_callbackUPP, NULL, NULL, NULL, &dialogRef); } - + /* Set the default location and continue*/ if (status == noErr) { @@ -4307,7 +4307,7 @@ FSSpec defLoc; status = posix_pathname_to_fsspec (SDATA (ENCODE_FILE (dir)), &defLoc); #endif - if (status == noErr) + if (status == noErr) { #ifdef MAC_OSX AECreateDesc(typeFSRef, &defLoc, sizeof(FSRef), &defLocAed); @@ -4359,7 +4359,7 @@ int len = strlen(filename); if (len && filename[len-1] != '/') filename[len++] = '/'; - CFStringGetCString(reply.saveFileName, filename+len, + CFStringGetCString(reply.saveFileName, filename+len, sizeof (filename) - len, #if MAC_OSX kCFStringEncodingUTF8 @@ -4387,11 +4387,11 @@ } UNGCPRO; - + /* Make "Cancel" equivalent to C-g. */ if (NILP (file)) Fsignal (Qquit, Qnil); - + return unbind_to (count, file); } diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/process.c --- a/src/process.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/process.c Sat Jun 25 15:00:08 2005 +0000 @@ -5835,7 +5835,7 @@ } #endif #ifndef SIGTSTP - error ("no SIGTSTP support"); + error ("No SIGTSTP support"); #else process_send_signal (process, SIGTSTP, current_group, 0); #endif @@ -5869,7 +5869,7 @@ #ifdef SIGCONT process_send_signal (process, SIGCONT, current_group, 0); #else - error ("no SIGCONT support"); + error ("No SIGCONT support"); #endif return process; } diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/search.c --- a/src/search.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/search.c Sat Jun 25 15:00:08 2005 +0000 @@ -2296,7 +2296,7 @@ /* but some C compilers blew it */ if (search_regs.num_regs <= 0) - error ("replace-match called before any match found"); + error ("`replace-match' called before any match found"); if (NILP (subexp)) sub = 0; @@ -2758,9 +2758,6 @@ If optional third arg RESEAT is non-nil, any previous markers on the REUSE list will be modified to point to nowhere. -If RESEAT is `evaporate', put markers back on the free list. -Note: No other references to the markers must exist if you use this. - Return value is undefined if the last search failed. */) (integers, reuse, reseat) Lisp_Object integers, reuse, reseat; @@ -2773,10 +2770,7 @@ for (tail = reuse; CONSP (tail); tail = XCDR (tail)) if (MARKERP (XCAR (tail))) { - if (EQ (reseat, Qevaporate)) - free_marker (XCAR (tail)); - else - unchain_marker (XMARKER (XCAR (tail))); + unchain_marker (XMARKER (XCAR (tail))); XSETCAR (tail, Qnil); } @@ -2851,14 +2845,17 @@ return reuse; } +/* Internal usage only: + If RESEAT is `evaporate', put the markers back on the free list + immediately. No other references to the markers must exist in this case, + so it is used only internally on the unwind stack and save-match-data from + Lisp. */ DEFUN ("set-match-data", Fset_match_data, Sset_match_data, 1, 2, 0, doc: /* Set internal data on last search match from elements of LIST. LIST should have been created by calling `match-data' previously. -If optional arg RESEAT is non-nil, make markers on LIST point nowhere. -If RESEAT is `evaporate', put the markers back on the free list. -Note: No other references to the markers must exist if you use this. */) +If optional arg RESEAT is non-nil, make markers on LIST point nowhere. */) (list, reseat) register Lisp_Object list, reseat; { @@ -3026,6 +3023,7 @@ unwind_set_match_data (list) Lisp_Object list; { + /* It is safe to free (evaporate) the markers immediately. */ return Fset_match_data (list, Qevaporate); } diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/syntax.c --- a/src/syntax.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/syntax.c Sat Jun 25 15:00:08 2005 +0000 @@ -923,7 +923,7 @@ p = SDATA (string); code = (enum syntaxcode) syntax_spec_code[*p++]; if (((int) code & 0377) == 0377) - error ("invalid syntax description letter: %c", p[-1]); + error ("Invalid syntax description letter: %c", p[-1]); if (code == Sinherit) return Qnil; diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/w32fns.c --- a/src/w32fns.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/w32fns.c Sat Jun 25 15:00:08 2005 +0000 @@ -329,7 +329,7 @@ CHECK_LIVE_FRAME (frame); f = XFRAME (frame); if (! FRAME_W32_P (f)) - error ("non-w32 frame used"); + error ("Non-W32 frame used"); return f; } @@ -359,7 +359,7 @@ CHECK_LIVE_FRAME (frame); f = XFRAME (frame); if (! FRAME_W32_P (f)) - error ("non-w32 frame used"); + error ("Non-W32 frame used"); return FRAME_W32_DISPLAY_INFO (f); } } @@ -7771,7 +7771,7 @@ DWORD FlagsEx; } NEWOPENFILENAME; - + DEFUN ("x-file-dialog", Fx_file_dialog, Sx_file_dialog, 2, 5, 0, doc: /* Read file name, prompting with PROMPT in directory DIR. Use a file selection dialog. @@ -7823,7 +7823,7 @@ NEWOPENFILENAME new_file_details; BOOL file_opened = FALSE; OPENFILENAME * file_details = &new_file_details.real_details; - + /* Prevent redisplay. */ specbind (Qinhibit_redisplay, Qt); BLOCK_INPUT; diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/xdisp.c --- a/src/xdisp.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/xdisp.c Sat Jun 25 15:00:08 2005 +0000 @@ -320,7 +320,7 @@ /* Non-nil means escape non-break space and hyphens. */ -Lisp_Object Vshow_nonbreak_escape; +Lisp_Object Vnobreak_char_display; #ifdef HAVE_WINDOW_SYSTEM extern Lisp_Object Voverflow_newline_into_fringe; @@ -352,7 +352,7 @@ /* Name and number of the face used to highlight non-breaking spaces. */ -Lisp_Object Qno_break_space; +Lisp_Object Qnobreak_space; /* The symbol `image' which is the car of the lists used to represent images in Lisp. */ @@ -5084,7 +5084,7 @@ ? ((it->c >= 127 && it->len == 1) || !CHAR_PRINTABLE_P (it->c) - || (!NILP (Vshow_nonbreak_escape) + || (!NILP (Vnobreak_char_display) && (it->c == 0x8a0 || it->c == 0x8ad || it->c == 0x920 || it->c == 0x92d || it->c == 0xe20 || it->c == 0xe2d @@ -5139,12 +5139,12 @@ /* Handle non-break space in the mode where it only gets highlighting. */ - if (EQ (Vshow_nonbreak_escape, Qt) + if (EQ (Vnobreak_char_display, Qt) && (it->c == 0x8a0 || it->c == 0x920 || it->c == 0xe20 || it->c == 0xf20)) { /* Merge the no-break-space face into the current face. */ - face_id = merge_faces (it->f, Qno_break_space, 0, + face_id = merge_faces (it->f, Qnobreak_space, 0, it->face_id); g = it->c = ' '; @@ -5183,7 +5183,7 @@ /* Handle soft hyphens in the mode where they only get highlighting. */ - if (! EQ (Vshow_nonbreak_escape, Qt) + if (EQ (Vnobreak_char_display, Qt) && (it->c == 0x8ad || it->c == 0x92d || it->c == 0xe2d || it->c == 0xf2d)) { @@ -22785,8 +22785,8 @@ staticpro (&Qtrailing_whitespace); Qescape_glyph = intern ("escape-glyph"); staticpro (&Qescape_glyph); - Qno_break_space = intern ("no-break-space"); - staticpro (&Qno_break_space); + Qnobreak_space = intern ("nobreak-space"); + staticpro (&Qnobreak_space); Qimage = intern ("image"); staticpro (&Qimage); QCmap = intern (":map"); @@ -22892,13 +22892,14 @@ The face used for trailing whitespace is `trailing-whitespace'. */); Vshow_trailing_whitespace = Qnil; - DEFVAR_LISP ("show-nonbreak-escape", &Vshow_nonbreak_escape, - doc: /* *Control highlighting of non-break space and soft hyphen. -t means highlight the character itself (for non-break space, -use face `non-break-space'. + DEFVAR_LISP ("nobreak-char-display", &Vnobreak_char_display, + doc: /* *Control highlighting of nobreak space and soft hyphen. +t means highlight the character itself (for nobreak space, +use face `nobreak-space'. nil means no highlighting. -other values mean display the escape glyph before the character. */); - Vshow_nonbreak_escape = Qt; +other values mean display the escape glyph followed by an ordinary +space or ordinary hyphen. */); + Vnobreak_char_display = Qt; DEFVAR_LISP ("void-text-area-pointer", &Vvoid_text_area_pointer, doc: /* *The pointer shape to show in void text areas. diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/xfaces.c --- a/src/xfaces.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/xfaces.c Sat Jun 25 15:00:08 2005 +0000 @@ -5929,7 +5929,7 @@ face = FACE_FROM_ID (f, lookup_face (f, merged_attrs, 0, 0)); if (! face) - error ("cannot make face"); + error ("Cannot make face"); /* If the font is the same, then not supported. */ if (face->font == def_face->font) diff -r bdcbdec78dd3 -r d07fdd5d7d4e src/xselect.c --- a/src/xselect.c Wed Jun 22 17:53:21 2005 +0000 +++ b/src/xselect.c Sat Jun 25 15:00:08 2005 +0000 @@ -2136,7 +2136,7 @@ { check_x (); CHECK_SYMBOL (selection_name); - if (NILP (selection_value)) error ("selection-value may not be nil"); + if (NILP (selection_value)) error ("SELECTION-VALUE may not be nil"); x_own_selection (selection_name, selection_value); return selection_value; }