diff options
| author | Miles Bader | 2005-01-29 00:06:24 +0000 |
|---|---|---|
| committer | Miles Bader | 2005-01-29 00:06:24 +0000 |
| commit | 5f85994ad17fbe952504bfafb49fbef4ded186af (patch) | |
| tree | 33522e4a7a8ddc7c7efa704bd6264f9722ad4ce8 | |
| parent | 87795686a9e8ea51ec492d01d7dce4698b14f3af (diff) | |
| parent | aba1948af5107ad44c467e4f97792af5ce75a7d7 (diff) | |
| download | emacs-5f85994ad17fbe952504bfafb49fbef4ded186af.tar.gz emacs-5f85994ad17fbe952504bfafb49fbef4ded186af.zip | |
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-7
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-52
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-53
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-54
Update from CVS: lisp/cus-start.el (all): Add `undo-outer-limit'.
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-55
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-57
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-58
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-7
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-8
- miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-11
Update from CVS
| -rw-r--r-- | admin/FOR-RELEASE | 7 | ||||
| -rw-r--r-- | lisp/ChangeLog | 64 | ||||
| -rw-r--r-- | lisp/cus-edit.el | 39 | ||||
| -rw-r--r-- | lisp/cus-start.el | 11 | ||||
| -rw-r--r-- | lisp/descr-text.el | 6 | ||||
| -rw-r--r-- | lisp/emacs-lisp/lisp-mode.el | 4 | ||||
| -rw-r--r-- | lisp/gnus/ChangeLog | 28 | ||||
| -rw-r--r-- | lisp/gnus/gnus-art.el | 19 | ||||
| -rw-r--r-- | lisp/gnus/message.el | 20 | ||||
| -rw-r--r-- | lisp/gnus/mml.el | 6 | ||||
| -rw-r--r-- | lisp/help-at-pt.el | 1 | ||||
| -rw-r--r-- | lisp/international/mule-cmds.el | 37 | ||||
| -rw-r--r-- | lisp/progmodes/gdb-ui.el | 4 | ||||
| -rw-r--r-- | lisp/progmodes/scheme.el | 48 | ||||
| -rw-r--r-- | lisp/speedbar.el | 12 | ||||
| -rw-r--r-- | lisp/textmodes/bibtex.el | 29 | ||||
| -rw-r--r-- | lisp/textmodes/ispell.el | 8 | ||||
| -rw-r--r-- | lisp/textmodes/reftex-global.el | 126 | ||||
| -rw-r--r-- | lisp/textmodes/reftex.el | 4 | ||||
| -rw-r--r-- | man/ChangeLog | 13 | ||||
| -rw-r--r-- | man/cmdargs.texi | 9 | ||||
| -rw-r--r-- | man/gnus.texi | 103 | ||||
| -rw-r--r-- | man/reftex.texi | 22 | ||||
| -rw-r--r-- | src/ChangeLog | 164 | ||||
| -rw-r--r-- | src/dispextern.h | 2 | ||||
| -rw-r--r-- | src/keymap.c | 6 | ||||
| -rw-r--r-- | src/macterm.c | 25 | ||||
| -rw-r--r-- | src/w32term.c | 30 | ||||
| -rw-r--r-- | src/xdisp.c | 85 | ||||
| -rw-r--r-- | src/xterm.c | 67 |
30 files changed, 648 insertions, 351 deletions
diff --git a/admin/FOR-RELEASE b/admin/FOR-RELEASE index d6d9060dbf1..22d36fe42fd 100644 --- a/admin/FOR-RELEASE +++ b/admin/FOR-RELEASE | |||
| @@ -4,9 +4,6 @@ Tasks needed before the next release. | |||
| 4 | 4 | ||
| 5 | ** Face remapping. | 5 | ** Face remapping. |
| 6 | 6 | ||
| 7 | ** Make Rmail find the best version of movemail. | ||
| 8 | To be done by Sergey Poznyakoff <gray@Mirddin.farlep.net>. | ||
| 9 | |||
| 10 | ** Make VC-over-Tramp work where possible, or at least fail | 7 | ** Make VC-over-Tramp work where possible, or at least fail |
| 11 | gracefully if something isn't supported over Tramp. | 8 | gracefully if something isn't supported over Tramp. |
| 12 | To be done by Andre Spiegel <spiegel@gnu.org>. | 9 | To be done by Andre Spiegel <spiegel@gnu.org>. |
| @@ -14,6 +11,8 @@ To be done by Andre Spiegel <spiegel@gnu.org>. | |||
| 14 | ** define-minor-mode should not put :require into defcustom. | 11 | ** define-minor-mode should not put :require into defcustom. |
| 15 | See msg from rms to emacs-devel on 21 Dec. | 12 | See msg from rms to emacs-devel on 21 Dec. |
| 16 | 13 | ||
| 14 | ** Update Speedbar. | ||
| 15 | |||
| 17 | * FATAL ERRORS | 16 | * FATAL ERRORS |
| 18 | 17 | ||
| 19 | ** Investigate face cache related crash. | 18 | ** Investigate face cache related crash. |
| @@ -184,7 +183,7 @@ man/anti.texi | |||
| 184 | man/basic.texi "Luc Teirlinck" | 183 | man/basic.texi "Luc Teirlinck" |
| 185 | man/buffers.texi "Luc Teirlinck" | 184 | man/buffers.texi "Luc Teirlinck" |
| 186 | man/building.texi "Ted Zlatanov" <tzz@lifelogs.com> | 185 | man/building.texi "Ted Zlatanov" <tzz@lifelogs.com> |
| 187 | man/calendar.texi | 186 | man/calendar.texi Joakim Verona <joakim@verona.se> |
| 188 | man/cmdargs.texi | 187 | man/cmdargs.texi |
| 189 | man/commands.texi "Luc Teirlinck" | 188 | man/commands.texi "Luc Teirlinck" |
| 190 | man/custom.texi | 189 | man/custom.texi |
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c70fd38ecd7..6a70d138b0d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,65 @@ | |||
| 1 | 2005-01-29 Nick Roberts <nickrob@snap.net.nz> | ||
| 2 | |||
| 3 | * progmodes/gdb-ui.el (gdb-info-breakpoints-custom) | ||
| 4 | (gdb-goto-breakpoint): Make breakpoint handling work on template | ||
| 5 | functions in C++. Reported by Martin Reed <mjreed@essex.ac.uk> | ||
| 6 | |||
| 7 | 2005-01-28 Eli Zaretskii <eliz@gnu.org> | ||
| 8 | |||
| 9 | * descr-text.el: Add more keywords. | ||
| 10 | |||
| 11 | 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 12 | |||
| 13 | * speedbar.el: Avoid unnecessary use of locate-library. | ||
| 14 | |||
| 15 | * international/mule-cmds.el (standard-display-european-internal): | ||
| 16 | Don't fiddle with latin-1 non-break space any more since it's now | ||
| 17 | special cased in the C code. | ||
| 18 | Don't "do&undo" setting for 160 (especially, don't undo incorrectly). | ||
| 19 | |||
| 20 | 2005-01-26 Luc Teirlinck <teirllm@auburn.edu> | ||
| 21 | |||
| 22 | * cus-start.el (all): Add `undo-outer-limit'. | ||
| 23 | |||
| 24 | 2005-01-25 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de> | ||
| 25 | |||
| 26 | * textmodes/bibtex.el (bibtex-format-entry): | ||
| 27 | Use `bibtex-empty-field-re' only on the text of fields, not on entire | ||
| 28 | field lines. | ||
| 29 | (bibtex-autofill-entry): Use `bibtex-empty-field-re' on a string, | ||
| 30 | not on part of a buffer. | ||
| 31 | |||
| 32 | 2005-01-25 Lute Kamstra <lute@gnu.org> | ||
| 33 | |||
| 34 | * textmodes/bibtex.el (bibtex-empty-field-re): Don't match | ||
| 35 | nonempty field text strings like "{letters\\macro{}more letters}". | ||
| 36 | Clarify docstring. | ||
| 37 | (bibtex-sort-entry-class, bibtex-autokey-titleword-ignore) | ||
| 38 | (bibtex-entry-offset, bibtex-parse-association) | ||
| 39 | (bibtex-parse-field-name): Fix typos in docstrings. | ||
| 40 | (bibtex-field-list, bibtex-find-crossref): Fix typos in error messages. | ||
| 41 | |||
| 42 | 2005-01-24 Carsten Dominik <dominik@science.uva.nl> | ||
| 43 | |||
| 44 | * textmodes/reftex-global.el (reftex-isearch-push-state-function) | ||
| 45 | (reftex-isearch-pop-state-function, reftex-isearch-isearch-search) | ||
| 46 | (reftex-isearch-switch-to-next-file, reftex-isearch-turn-off) | ||
| 47 | (reftex-isearch-turn-on, reftex-isearch-minor-mode): New functions. | ||
| 48 | |||
| 49 | * textmodes/reftex.el (reftex-mode-menu): Add entry for reftex | ||
| 50 | isearch minor mode. | ||
| 51 | |||
| 52 | 2005-01-24 Luc Teirlinck <teirllm@auburn.edu> | ||
| 53 | |||
| 54 | * help-at-pt.el (help-at-pt-display-when-idle): Add autoload cookie. | ||
| 55 | |||
| 56 | 2005-01-24 Lute Kamstra <lute@gnu.org> | ||
| 57 | |||
| 58 | * textmodes/ispell.el (ispell-dictionary-alist-4): Rewrite the | ||
| 59 | CASECHARS and NOT-CASECHARS regular expressions of the | ||
| 60 | "nederlands" and "nederlands8" dictionaries to prevent a "Range | ||
| 61 | striding over charsets" error. | ||
| 62 | |||
| 1 | 2005-01-24 Jay Belanger <belanger@truman.edu> | 63 | 2005-01-24 Jay Belanger <belanger@truman.edu> |
| 2 | 64 | ||
| 3 | * calc/calc-store.el (calc-declare-variable): Use calc-var-name to | 65 | * calc/calc-store.el (calc-declare-variable): Use calc-var-name to |
| @@ -76,7 +138,7 @@ | |||
| 76 | 138 | ||
| 77 | 2005-01-20 Steven Tamm <steventamm@mac.com> | 139 | 2005-01-20 Steven Tamm <steventamm@mac.com> |
| 78 | 140 | ||
| 79 | * term/mac-win.el (process-connection-type): Removed. | 141 | * term/mac-win.el (process-connection-type): Remove. |
| 80 | Controlled now by s/darwin.h:PTY_ITERATION. | 142 | Controlled now by s/darwin.h:PTY_ITERATION. |
| 81 | 143 | ||
| 82 | 2005-01-20 Stefan Monnier <monnier@iro.umontreal.ca> | 144 | 2005-01-20 Stefan Monnier <monnier@iro.umontreal.ca> |
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index 8a60163181a..989a9f16840 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | ;;; cus-edit.el --- tools for customizing Emacs and Lisp packages | 1 | ;;; cus-edit.el --- tools for customizing Emacs and Lisp packages |
| 2 | ;; | 2 | ;; |
| 3 | ;; Copyright (C) 1996,97,1999,2000,01,02,03,2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005 |
| 4 | ;; Free Software Foundation, Inc. | ||
| 4 | ;; | 5 | ;; |
| 5 | ;; Author: Per Abrahamsen <abraham@dina.kvl.dk> | 6 | ;; Author: Per Abrahamsen <abraham@dina.kvl.dk> |
| 6 | ;; Maintainer: FSF | 7 | ;; Maintainer: FSF |
| @@ -898,8 +899,6 @@ then prompt for the MODE to customize." | |||
| 898 | (let ( | 899 | (let ( |
| 899 | ;; Copied from `custom-buffer-create-other-window'. | 900 | ;; Copied from `custom-buffer-create-other-window'. |
| 900 | (pop-up-windows t) | 901 | (pop-up-windows t) |
| 901 | (special-display-buffer-names nil) | ||
| 902 | (special-display-regexps nil) | ||
| 903 | (same-window-buffer-names nil) | 902 | (same-window-buffer-names nil) |
| 904 | (same-window-regexps nil)) | 903 | (same-window-regexps nil)) |
| 905 | (pop-to-buffer name)) | 904 | (pop-to-buffer name)) |
| @@ -1246,8 +1245,6 @@ SYMBOL is a customization option, and WIDGET is a widget for editing | |||
| 1246 | that option." | 1245 | that option." |
| 1247 | (unless name (setq name "*Customization*")) | 1246 | (unless name (setq name "*Customization*")) |
| 1248 | (let ((pop-up-windows t) | 1247 | (let ((pop-up-windows t) |
| 1249 | (special-display-buffer-names nil) | ||
| 1250 | (special-display-regexps nil) | ||
| 1251 | (same-window-buffer-names nil) | 1248 | (same-window-buffer-names nil) |
| 1252 | (same-window-regexps nil)) | 1249 | (same-window-regexps nil)) |
| 1253 | (pop-to-buffer (custom-get-fresh-buffer name)) | 1250 | (pop-to-buffer (custom-get-fresh-buffer name)) |
| @@ -4072,23 +4069,23 @@ The format is suitable for use with `easy-menu-define'." | |||
| 4072 | 4069 | ||
| 4073 | ;;; The Custom Mode. | 4070 | ;;; The Custom Mode. |
| 4074 | 4071 | ||
| 4075 | (defvar custom-mode-map nil | 4072 | (defvar custom-mode-map |
| 4076 | "Keymap for `custom-mode'.") | ||
| 4077 | |||
| 4078 | (unless custom-mode-map | ||
| 4079 | ;; This keymap should be dense, but a dense keymap would prevent inheriting | 4073 | ;; This keymap should be dense, but a dense keymap would prevent inheriting |
| 4080 | ;; "\r" bindings from the parent map. | 4074 | ;; "\r" bindings from the parent map. |
| 4081 | (setq custom-mode-map (make-sparse-keymap)) | 4075 | ;; Actually, this misfeature of dense keymaps was fixed on 2001-11-26. |
| 4082 | (set-keymap-parent custom-mode-map widget-keymap) | 4076 | (let ((map (make-keymap))) |
| 4083 | (suppress-keymap custom-mode-map) | 4077 | (set-keymap-parent map widget-keymap) |
| 4084 | (define-key custom-mode-map " " 'scroll-up) | 4078 | (suppress-keymap map) |
| 4085 | (define-key custom-mode-map "\177" 'scroll-down) | 4079 | (define-key map " " 'scroll-up) |
| 4086 | (define-key custom-mode-map "\C-x\C-s" 'Custom-save) | 4080 | (define-key map "\177" 'scroll-down) |
| 4087 | (define-key custom-mode-map "q" 'Custom-buffer-done) | 4081 | (define-key map "\C-x\C-s" 'Custom-save) |
| 4088 | (define-key custom-mode-map "u" 'Custom-goto-parent) | 4082 | (define-key map "q" 'Custom-buffer-done) |
| 4089 | (define-key custom-mode-map "n" 'widget-forward) | 4083 | (define-key map "u" 'Custom-goto-parent) |
| 4090 | (define-key custom-mode-map "p" 'widget-backward) | 4084 | (define-key map "n" 'widget-forward) |
| 4091 | (define-key custom-mode-map [mouse-1] 'Custom-move-and-invoke)) | 4085 | (define-key map "p" 'widget-backward) |
| 4086 | (define-key map [mouse-1] 'Custom-move-and-invoke) | ||
| 4087 | map) | ||
| 4088 | "Keymap for `custom-mode'.") | ||
| 4092 | 4089 | ||
| 4093 | (defun Custom-move-and-invoke (event) | 4090 | (defun Custom-move-and-invoke (event) |
| 4094 | "Move to where you click, and if it is an active field, invoke it." | 4091 | "Move to where you click, and if it is an active field, invoke it." |
| @@ -4187,5 +4184,5 @@ if that value is non-nil." | |||
| 4187 | 4184 | ||
| 4188 | (provide 'cus-edit) | 4185 | (provide 'cus-edit) |
| 4189 | 4186 | ||
| 4190 | ;;; arch-tag: 64533aa4-1b1a-48c3-8812-f9dc718e8a6f | 4187 | ;; arch-tag: 64533aa4-1b1a-48c3-8812-f9dc718e8a6f |
| 4191 | ;;; cus-edit.el ends here | 4188 | ;;; cus-edit.el ends here |
diff --git a/lisp/cus-start.el b/lisp/cus-start.el index 607c1cfd011..a7df119e497 100644 --- a/lisp/cus-start.el +++ b/lisp/cus-start.el | |||
| @@ -41,6 +41,17 @@ | |||
| 41 | (gc-cons-threshold alloc integer) | 41 | (gc-cons-threshold alloc integer) |
| 42 | (undo-limit undo integer) | 42 | (undo-limit undo integer) |
| 43 | (undo-strong-limit undo integer) | 43 | (undo-strong-limit undo integer) |
| 44 | (undo-outer-limit undo | ||
| 45 | (choice integer | ||
| 46 | (const :tag "No limit" | ||
| 47 | :format "%t\n%d" | ||
| 48 | :doc | ||
| 49 | "With this choice, \ | ||
| 50 | the undo info for the current command never gets discarded. | ||
| 51 | This should only be chosen under exceptional circumstances, | ||
| 52 | since it could result in memory overflow and make Emacs crash." | ||
| 53 | nil)) | ||
| 54 | "21.4") | ||
| 44 | (garbage-collection-messages alloc boolean) | 55 | (garbage-collection-messages alloc boolean) |
| 45 | ;; buffer.c | 56 | ;; buffer.c |
| 46 | (mode-line-format modeline sexp) ;Hard to do right. | 57 | (mode-line-format modeline sexp) ;Hard to do right. |
diff --git a/lisp/descr-text.el b/lisp/descr-text.el index 4b41c2501e5..d7079bcf44c 100644 --- a/lisp/descr-text.el +++ b/lisp/descr-text.el | |||
| @@ -1,10 +1,10 @@ | |||
| 1 | ;;; descr-text.el --- describe text mode | 1 | ;;; descr-text.el --- describe text mode |
| 2 | 2 | ||
| 3 | ;; Copyright (c) 1994, 1995, 1996, 2001, 2002, 2003, 2004 | 3 | ;; Copyright (c) 1994, 1995, 1996, 2001, 2002, 2003, 2004, 2005 |
| 4 | ;; Free Software Foundation, Inc. | 4 | ;; Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: Boris Goldowsky <boris@gnu.org> | 6 | ;; Author: Boris Goldowsky <boris@gnu.org> |
| 7 | ;; Keywords: faces | 7 | ;; Keywords: faces, i18n, Unicode, multilingual |
| 8 | 8 | ||
| 9 | ;; This file is part of GNU Emacs. | 9 | ;; This file is part of GNU Emacs. |
| 10 | 10 | ||
| @@ -217,7 +217,7 @@ otherwise." | |||
| 217 | (defcustom describe-char-unicodedata-file nil | 217 | (defcustom describe-char-unicodedata-file nil |
| 218 | "Location of Unicode data file. | 218 | "Location of Unicode data file. |
| 219 | This is the UnicodeData.txt file from the Unicode consortium, used for | 219 | This is the UnicodeData.txt file from the Unicode consortium, used for |
| 220 | diagnostics. If it is non-nil `describe-char-after' will print data | 220 | diagnostics. If it is non-nil `describe-char' will print data |
| 221 | looked up from it. This facility is mostly of use to people doing | 221 | looked up from it. This facility is mostly of use to people doing |
| 222 | multilingual development. | 222 | multilingual development. |
| 223 | 223 | ||
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index f181f3683f0..86c3ac1bab4 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; lisp-mode.el --- Lisp mode, and its idiosyncratic commands | 1 | ;;; lisp-mode.el --- Lisp mode, and its idiosyncratic commands |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1985, 1986, 1999, 2000, 2001, 2003, 2004 | 3 | ;; Copyright (C) 1985, 1986, 1999, 2000, 2001, 2003, 2004, 2005 |
| 4 | ;; Free Software Foundation, Inc. | 4 | ;; Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Maintainer: FSF | 6 | ;; Maintainer: FSF |
| @@ -602,7 +602,7 @@ Reinitialize the face according to the `defface' specification." | |||
| 602 | (boundp (cadr form))) | 602 | (boundp (cadr form))) |
| 603 | ;; Force variable to be re-set. | 603 | ;; Force variable to be re-set. |
| 604 | `(progn (defvar ,(nth 1 form) nil ,@(nthcdr 3 form)) | 604 | `(progn (defvar ,(nth 1 form) nil ,@(nthcdr 3 form)) |
| 605 | (setq ,(nth 1 form) ,(nth 2 form)))) | 605 | (setq-default ,(nth 1 form) ,(nth 2 form)))) |
| 606 | ;; `defcustom' is now macroexpanded to | 606 | ;; `defcustom' is now macroexpanded to |
| 607 | ;; `custom-declare-variable' with a quoted value arg. | 607 | ;; `custom-declare-variable' with a quoted value arg. |
| 608 | ((and (eq (car form) 'custom-declare-variable) | 608 | ((and (eq (car form) 'custom-declare-variable) |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 77a600427e2..2fbab6bea54 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,24 @@ | |||
| 1 | 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * message.el (message-beginning-of-line): Change the behavior when | ||
| 4 | invoked between BOL and : so that it first moves backward. | ||
| 5 | |||
| 6 | 2005-01-28 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 7 | |||
| 8 | * gnus-art.el (gnus-article-setup-buffer): Kill and re-create the | ||
| 9 | article buffer when editing of the article is discarded. | ||
| 10 | (gnus-article-prepare): Revert. | ||
| 11 | |||
| 12 | 2005-01-28 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 13 | |||
| 14 | * gnus-art.el (gnus-article-prepare): Remove | ||
| 15 | message-strip-forbidden-properties from the local hook. | ||
| 16 | |||
| 17 | 2005-01-24 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 18 | |||
| 19 | * mml.el (mml-generate-mime-1): Convert string into unibyte when | ||
| 20 | inserting " *mml*" buffer's contents into a unibyte temp buffer. | ||
| 21 | |||
| 1 | 2005-01-20 Katsumi Yamaoka <yamaoka@jpl.org> | 22 | 2005-01-20 Katsumi Yamaoka <yamaoka@jpl.org> |
| 2 | 23 | ||
| 3 | * mm-decode.el (mm-insert-part): Switch the multibyteness of data | 24 | * mm-decode.el (mm-insert-part): Switch the multibyteness of data |
| @@ -14,8 +35,7 @@ | |||
| 14 | 35 | ||
| 15 | * mm-bodies.el (mm-body-encoding): Don't permit 7-bit to be used | 36 | * mm-bodies.el (mm-body-encoding): Don't permit 7-bit to be used |
| 16 | when mm-use-ultra-safe-encoding is enabled (e.g., for PGP/MIME) | 37 | when mm-use-ultra-safe-encoding is enabled (e.g., for PGP/MIME) |
| 17 | and we have trailing white space. Reported by Werner Koch | 38 | and we have trailing white space. Reported by Werner Koch <wk@gnupg.org>. |
| 18 | <wk@gnupg.org>. | ||
| 19 | 39 | ||
| 20 | 2004-12-17 Kim F. Storm <storm@cua.dk> | 40 | 2004-12-17 Kim F. Storm <storm@cua.dk> |
| 21 | 41 | ||
| @@ -58,8 +78,8 @@ | |||
| 58 | 78 | ||
| 59 | 2004-12-13 Katsumi Yamaoka <yamaoka@jpl.org> | 79 | 2004-12-13 Katsumi Yamaoka <yamaoka@jpl.org> |
| 60 | 80 | ||
| 61 | * gnus-group.el (gnus-group-make-rss-group): Use | 81 | * gnus-group.el (gnus-group-make-rss-group): |
| 62 | gnus-group-make-group instead of gnus-group-unsubscribe-group. | 82 | Use gnus-group-make-group instead of gnus-group-unsubscribe-group. |
| 63 | 83 | ||
| 64 | * gnus-start.el (gnus-setup-news): Honor user's setting to | 84 | * gnus-start.el (gnus-setup-news): Honor user's setting to |
| 65 | gnus-message-archive-method. Suggested by Lute Kamstra | 85 | gnus-message-archive-method. Suggested by Lute Kamstra |
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index 7450fee69ee..8a81176a5f6 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | ;;; gnus-art.el --- article mode commands for Gnus | 1 | ;;; gnus-art.el --- article mode commands for Gnus |
| 2 | ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 | 2 | ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 |
| 3 | ;; Free Software Foundation, Inc. | 3 | ;; Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> | 5 | ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> |
| @@ -3743,14 +3743,19 @@ commands: | |||
| 3743 | (mm-enable-multibyte) | 3743 | (mm-enable-multibyte) |
| 3744 | (setq major-mode 'gnus-original-article-mode) | 3744 | (setq major-mode 'gnus-original-article-mode) |
| 3745 | (make-local-variable 'gnus-original-article)) | 3745 | (make-local-variable 'gnus-original-article)) |
| 3746 | (if (get-buffer name) | 3746 | (if (and (get-buffer name) |
| 3747 | (with-current-buffer name | ||
| 3748 | (if gnus-article-edit-mode | ||
| 3749 | (if (y-or-n-p "Article mode edit in progress; discard? ") | ||
| 3750 | (progn | ||
| 3751 | (set-buffer-modified-p nil) | ||
| 3752 | (gnus-kill-buffer name) | ||
| 3753 | (message "") | ||
| 3754 | nil) | ||
| 3755 | (error "Action aborted")) | ||
| 3756 | t))) | ||
| 3747 | (save-excursion | 3757 | (save-excursion |
| 3748 | (set-buffer name) | 3758 | (set-buffer name) |
| 3749 | (when (and gnus-article-edit-mode | ||
| 3750 | (buffer-modified-p) | ||
| 3751 | (not | ||
| 3752 | (y-or-n-p "Article mode edit in progress; discard? "))) | ||
| 3753 | (error "Action aborted")) | ||
| 3754 | (set (make-local-variable 'gnus-article-edit-mode) nil) | 3759 | (set (make-local-variable 'gnus-article-edit-mode) nil) |
| 3755 | (when gnus-article-mime-handles | 3760 | (when gnus-article-mime-handles |
| 3756 | (mm-destroy-parts gnus-article-mime-handles) | 3761 | (mm-destroy-parts gnus-article-mime-handles) |
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index 113547741c0..d88fd54b144 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | ;;; message.el --- composing mail and news messages | 1 | ;;; message.el --- composing mail and news messages |
| 2 | ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 | 2 | ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 |
| 3 | ;; Free Software Foundation, Inc. | 3 | ;; Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> | 5 | ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> |
| @@ -800,7 +800,7 @@ variable isn't used." | |||
| 800 | ;; is nil. See: http://article.gmane.org/gmane.emacs.gnus.general/51138 | 800 | ;; is nil. See: http://article.gmane.org/gmane.emacs.gnus.general/51138 |
| 801 | (defcustom message-generate-headers-first '(references) | 801 | (defcustom message-generate-headers-first '(references) |
| 802 | "Which headers should be generated before starting to compose a message. | 802 | "Which headers should be generated before starting to compose a message. |
| 803 | If `t', generate all required headers. This can also be a list of headers to | 803 | If t, generate all required headers. This can also be a list of headers to |
| 804 | generate. The variables `message-required-news-headers' and | 804 | generate. The variables `message-required-news-headers' and |
| 805 | `message-required-mail-headers' specify which headers to generate. | 805 | `message-required-mail-headers' specify which headers to generate. |
| 806 | 806 | ||
| @@ -5295,10 +5295,10 @@ outside the message header or if the option `message-beginning-of-line' | |||
| 5295 | is nil. | 5295 | is nil. |
| 5296 | 5296 | ||
| 5297 | If point is in the message header and on a (non-continued) header | 5297 | If point is in the message header and on a (non-continued) header |
| 5298 | line, move point to the beginning of the header value. If point | 5298 | line, move point to the beginning of the header value or the beginning of line, |
| 5299 | is already there, move point to beginning of line. Therefore, | 5299 | whichever is closer. If point is already at beginning of line, move point to |
| 5300 | repeated calls will toggle point between beginning of field and | 5300 | beginning of header value. Therefore, repeated calls will toggle point |
| 5301 | beginning of line." | 5301 | between beginning of field and beginning of line." |
| 5302 | (interactive "p") | 5302 | (interactive "p") |
| 5303 | (let ((zrs 'zmacs-region-stays)) | 5303 | (let ((zrs 'zmacs-region-stays)) |
| 5304 | (when (and (interactive-p) (boundp zrs)) | 5304 | (when (and (interactive-p) (boundp zrs)) |
| @@ -5309,9 +5309,9 @@ beginning of line." | |||
| 5309 | (bol (progn (beginning-of-line n) (point))) | 5309 | (bol (progn (beginning-of-line n) (point))) |
| 5310 | (eol (gnus-point-at-eol)) | 5310 | (eol (gnus-point-at-eol)) |
| 5311 | (eoh (re-search-forward ": *" eol t))) | 5311 | (eoh (re-search-forward ": *" eol t))) |
| 5312 | (if (or (not eoh) (equal here eoh)) | 5312 | (goto-char |
| 5313 | (goto-char bol) | 5313 | (if (and eoh (or (< eoh here) (= bol here))) |
| 5314 | (goto-char eoh))) | 5314 | eoh bol))) |
| 5315 | (beginning-of-line n))) | 5315 | (beginning-of-line n))) |
| 5316 | 5316 | ||
| 5317 | (defun message-buffer-name (type &optional to group) | 5317 | (defun message-buffer-name (type &optional to group) |
| @@ -6880,5 +6880,5 @@ regexp VARSTR." | |||
| 6880 | ;; coding: iso-8859-1 | 6880 | ;; coding: iso-8859-1 |
| 6881 | ;; End: | 6881 | ;; End: |
| 6882 | 6882 | ||
| 6883 | ;;; arch-tag: 94b32cac-4504-4b6c-8181-030ebf380ee0 | 6883 | ;; arch-tag: 94b32cac-4504-4b6c-8181-030ebf380ee0 |
| 6884 | ;;; message.el ends here | 6884 | ;;; message.el ends here |
diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index d88f6318159..c4c4ccdbd81 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | ;;; mml.el --- A package for parsing and validating MML documents | 1 | ;;; mml.el --- A package for parsing and validating MML documents |
| 2 | ;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 | 2 | ;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 |
| 3 | ;; Free Software Foundation, Inc. | 3 | ;; Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> | 5 | ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> |
| @@ -471,7 +471,9 @@ If MML is non-nil, return the buffer up till the correspondent mml tag." | |||
| 471 | (mm-with-unibyte-buffer | 471 | (mm-with-unibyte-buffer |
| 472 | (cond | 472 | (cond |
| 473 | ((cdr (assq 'buffer cont)) | 473 | ((cdr (assq 'buffer cont)) |
| 474 | (insert-buffer-substring (cdr (assq 'buffer cont)))) | 474 | (insert (with-current-buffer (cdr (assq 'buffer cont)) |
| 475 | (mm-with-unibyte-current-buffer | ||
| 476 | (buffer-string))))) | ||
| 475 | ((and (setq filename (cdr (assq 'filename cont))) | 477 | ((and (setq filename (cdr (assq 'filename cont))) |
| 476 | (not (equal (cdr (assq 'nofile cont)) "yes"))) | 478 | (not (equal (cdr (assq 'nofile cont)) "yes"))) |
| 477 | (let ((coding-system-for-read mm-binary-coding-system)) | 479 | (let ((coding-system-for-read mm-binary-coding-system)) |
diff --git a/lisp/help-at-pt.el b/lisp/help-at-pt.el index 2266c8d5a2a..53af1bdd579 100644 --- a/lisp/help-at-pt.el +++ b/lisp/help-at-pt.el | |||
| @@ -146,6 +146,7 @@ This is done by setting a timer, if none is currently active." | |||
| 146 | (run-with-idle-timer | 146 | (run-with-idle-timer |
| 147 | help-at-pt-timer-delay t #'help-at-pt-maybe-display)))) | 147 | help-at-pt-timer-delay t #'help-at-pt-maybe-display)))) |
| 148 | 148 | ||
| 149 | ;;;###autoload | ||
| 149 | (defcustom help-at-pt-display-when-idle 'never | 150 | (defcustom help-at-pt-display-when-idle 'never |
| 150 | "*Automatically show local help on point-over. | 151 | "*Automatically show local help on point-over. |
| 151 | If the value is t, the string obtained from any `kbd-help' or | 152 | If the value is t, the string obtained from any `kbd-help' or |
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el index 3de363a596f..573481d71d0 100644 --- a/lisp/international/mule-cmds.el +++ b/lisp/international/mule-cmds.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; mule-cmds.el --- commands for mulitilingual environment -*-coding: iso-2022-7bit -*- | 1 | ;;; mule-cmds.el --- commands for mulitilingual environment -*-coding: iso-2022-7bit -*- |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 4 | ;; Copyright (C) 1995, 2003 Electrotechnical Laboratory, JAPAN. | 4 | ;; Copyright (C) 1995, 2003 Electrotechnical Laboratory, JAPAN. |
| 5 | ;; Licensed to the Free Software Foundation. | 5 | ;; Licensed to the Free Software Foundation. |
| 6 | ;; Copyright (C) 2003 | 6 | ;; Copyright (C) 2003 |
| @@ -1839,12 +1839,14 @@ Setting this variable directly does not take effect. See | |||
| 1839 | ;; different there. | 1839 | ;; different there. |
| 1840 | (or (and (eq window-system 'pc) (not default-enable-multibyte-characters)) | 1840 | (or (and (eq window-system 'pc) (not default-enable-multibyte-characters)) |
| 1841 | (progn | 1841 | (progn |
| 1842 | ;; Make non-line-break space display as a plain space. | 1842 | ;; Most X fonts used to do the wrong thing for latin-1 code 160. |
| 1843 | ;; Most X fonts do the wrong thing for code 160. | 1843 | (unless (and (eq window-system 'x) |
| 1844 | (aset standard-display-table 160 [32]) | 1844 | ;; XFree86 4 has fixed the fonts. |
| 1845 | ;; With luck, non-Latin-1 fonts are more recent and so don't | 1845 | (string= "The XFree86 Project, Inc" (x-server-vendor)) |
| 1846 | ;; have this bug. | 1846 | (> (aref (number-to-string (nth 2 (x-server-version))) 0) |
| 1847 | (aset standard-display-table (make-char 'latin-iso8859-1 160) [32]) | 1847 | ?3)) |
| 1848 | ;; Make non-line-break space display as a plain space. | ||
| 1849 | (aset standard-display-table 160 [32])) | ||
| 1848 | ;; Most Windows programs send out apostrophes as \222. Most X fonts | 1850 | ;; Most Windows programs send out apostrophes as \222. Most X fonts |
| 1849 | ;; don't contain a character at that position. Map it to the ASCII | 1851 | ;; don't contain a character at that position. Map it to the ASCII |
| 1850 | ;; apostrophe. [This is actually RIGHT SINGLE QUOTATION MARK, | 1852 | ;; apostrophe. [This is actually RIGHT SINGLE QUOTATION MARK, |
| @@ -1852,23 +1854,7 @@ Setting this variable directly does not take effect. See | |||
| 1852 | ;; fonts probably have the appropriate glyph at this position, | 1854 | ;; fonts probably have the appropriate glyph at this position, |
| 1853 | ;; so they could use standard-display-8bit. It's better to use a | 1855 | ;; so they could use standard-display-8bit. It's better to use a |
| 1854 | ;; proper windows-1252 coding system. --fx] | 1856 | ;; proper windows-1252 coding system. --fx] |
| 1855 | (aset standard-display-table 146 [39]) | 1857 | (aset standard-display-table 146 [39])))) |
| 1856 | ;; XFree86 4 has changed most of the fonts from their designed | ||
| 1857 | ;; versions such that `' no longer appears as balanced quotes. | ||
| 1858 | ;; Assume it has iso10646 fonts installed, so we can display | ||
| 1859 | ;; balanced quotes. | ||
| 1860 | (when (and (eq window-system 'x) | ||
| 1861 | (string= "The XFree86 Project, Inc" (x-server-vendor)) | ||
| 1862 | (> (aref (number-to-string (nth 2 (x-server-version))) 0) | ||
| 1863 | ?3)) | ||
| 1864 | ;; We suppress these setting for the moment because the | ||
| 1865 | ;; above assumption is wrong. | ||
| 1866 | ;; (aset standard-display-table ?' [?,F"(B]) | ||
| 1867 | ;; (aset standard-display-table ?` [?,F!(B]) | ||
| 1868 | ;; The fonts don't have the relevant bug. | ||
| 1869 | (aset standard-display-table 160 nil) | ||
| 1870 | (aset standard-display-table (make-char 'latin-iso8859-1 160) | ||
| 1871 | nil))))) | ||
| 1872 | 1858 | ||
| 1873 | (defun set-language-environment-coding-systems (language-name | 1859 | (defun set-language-environment-coding-systems (language-name |
| 1874 | &optional eol-type) | 1860 | &optional eol-type) |
| @@ -1924,8 +1910,7 @@ of `buffer-file-coding-system' set by this function." | |||
| 1924 | (setq language-name (symbol-name language-name))) | 1910 | (setq language-name (symbol-name language-name))) |
| 1925 | (dolist (feature (get-language-info language-name 'features)) | 1911 | (dolist (feature (get-language-info language-name 'features)) |
| 1926 | (require feature)) | 1912 | (require feature)) |
| 1927 | (let ((doc (get-language-info language-name 'documentation)) | 1913 | (let ((doc (get-language-info language-name 'documentation))) |
| 1928 | pos) | ||
| 1929 | (help-setup-xref (list #'describe-language-environment language-name) | 1914 | (help-setup-xref (list #'describe-language-environment language-name) |
| 1930 | (interactive-p)) | 1915 | (interactive-p)) |
| 1931 | (with-output-to-temp-buffer (help-buffer) | 1916 | (with-output-to-temp-buffer (help-buffer) |
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el index 1827589387e..a89f4b1694f 100644 --- a/lisp/progmodes/gdb-ui.el +++ b/lisp/progmodes/gdb-ui.el | |||
| @@ -1143,7 +1143,7 @@ static char *magick[] = { | |||
| 1143 | (setq bptno (match-string 1)) | 1143 | (setq bptno (match-string 1)) |
| 1144 | (setq flag (char-after (match-beginning 2))) | 1144 | (setq flag (char-after (match-beginning 2))) |
| 1145 | (beginning-of-line) | 1145 | (beginning-of-line) |
| 1146 | (if (re-search-forward "in\\s-+\\S-+\\s-+at\\s-+" nil t) | 1146 | (if (re-search-forward "in.*at\\s-+" nil t) |
| 1147 | (progn | 1147 | (progn |
| 1148 | (looking-at "\\(\\S-+\\):\\([0-9]+\\)") | 1148 | (looking-at "\\(\\S-+\\):\\([0-9]+\\)") |
| 1149 | (let ((line (match-string 2)) (buffer-read-only nil) | 1149 | (let ((line (match-string 2)) (buffer-read-only nil) |
| @@ -1298,7 +1298,7 @@ static char *magick[] = { | |||
| 1298 | (save-excursion | 1298 | (save-excursion |
| 1299 | (beginning-of-line 1) | 1299 | (beginning-of-line 1) |
| 1300 | (if (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) | 1300 | (if (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) |
| 1301 | (looking-at ".*in\\s-+\\S-+\\s-+at\\s-+\\(\\S-*\\):\\([0-9]+\\)") | 1301 | (looking-at ".*in.*at\\s-+\\(\\S-*\\):\\([0-9]+\\)") |
| 1302 | (looking-at | 1302 | (looking-at |
| 1303 | "[0-9]+\\s-*\\S-*\\s-*\\S-*\\s-*.\\s-*\\S-*\\s-*\\(\\S-*\\):\\([0-9]+\\)")) | 1303 | "[0-9]+\\s-*\\S-*\\s-*\\S-*\\s-*.\\s-*\\S-*\\s-*\\(\\S-*\\):\\([0-9]+\\)")) |
| 1304 | (let ((line (match-string 2)) | 1304 | (let ((line (match-string 2)) |
diff --git a/lisp/progmodes/scheme.el b/lisp/progmodes/scheme.el index 13dd790b6a0..bf0f18d5bba 100644 --- a/lisp/progmodes/scheme.el +++ b/lisp/progmodes/scheme.el | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | ;;; scheme.el --- Scheme (and DSSSL) editing mode | 1 | ;;; scheme.el --- Scheme (and DSSSL) editing mode |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1986, 87, 88, 97, 1998 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 1986, 1987, 1988, 1997, 1998, 2005 |
| 4 | ;; Free Software Foundation, Inc. | ||
| 4 | 5 | ||
| 5 | ;; Author: Bill Rozas <jinx@martigny.ai.mit.edu> | 6 | ;; Author: Bill Rozas <jinx@martigny.ai.mit.edu> |
| 6 | ;; Adapted-by: Dave Love <d.love@dl.ac.uk> | 7 | ;; Adapted-by: Dave Love <d.love@dl.ac.uk> |
| @@ -144,6 +145,7 @@ | |||
| 144 | (setq outline-regexp ";;; \\|(....") | 145 | (setq outline-regexp ";;; \\|(....") |
| 145 | (make-local-variable 'comment-start) | 146 | (make-local-variable 'comment-start) |
| 146 | (setq comment-start ";") | 147 | (setq comment-start ";") |
| 148 | (set (make-local-variable 'comment-add) 1) | ||
| 147 | (make-local-variable 'comment-start-skip) | 149 | (make-local-variable 'comment-start-skip) |
| 148 | ;; Look within the line for a ; following an even number of backslashes | 150 | ;; Look within the line for a ; following an even number of backslashes |
| 149 | ;; after either a non-backslash or the line beginning. | 151 | ;; after either a non-backslash or the line beginning. |
| @@ -171,17 +173,11 @@ | |||
| 171 | 173 | ||
| 172 | (defvar scheme-mode-line-process "") | 174 | (defvar scheme-mode-line-process "") |
| 173 | 175 | ||
| 174 | (defvar scheme-mode-map nil | 176 | (defvar scheme-mode-map |
| 175 | "Keymap for Scheme mode. | 177 | (let ((smap (make-sparse-keymap)) |
| 176 | All commands in `lisp-mode-shared-map' are inherited by this map.") | 178 | (map (make-sparse-keymap "Scheme"))) |
| 177 | 179 | (set-keymap-parent smap lisp-mode-shared-map) | |
| 178 | (unless scheme-mode-map | 180 | (define-key smap [menu-bar scheme] (cons "Scheme" map)) |
| 179 | (let ((map (make-sparse-keymap "Scheme"))) | ||
| 180 | (setq scheme-mode-map (make-sparse-keymap)) | ||
| 181 | (set-keymap-parent scheme-mode-map lisp-mode-shared-map) | ||
| 182 | (define-key scheme-mode-map [menu-bar] (make-sparse-keymap)) | ||
| 183 | (define-key scheme-mode-map [menu-bar scheme] | ||
| 184 | (cons "Scheme" map)) | ||
| 185 | (define-key map [run-scheme] '("Run Inferior Scheme" . run-scheme)) | 181 | (define-key map [run-scheme] '("Run Inferior Scheme" . run-scheme)) |
| 186 | (define-key map [uncomment-region] | 182 | (define-key map [uncomment-region] |
| 187 | '("Uncomment Out Region" . (lambda (beg end) | 183 | '("Uncomment Out Region" . (lambda (beg end) |
| @@ -192,7 +188,10 @@ All commands in `lisp-mode-shared-map' are inherited by this map.") | |||
| 192 | (define-key map [indent-line] '("Indent Line" . lisp-indent-line)) | 188 | (define-key map [indent-line] '("Indent Line" . lisp-indent-line)) |
| 193 | (put 'comment-region 'menu-enable 'mark-active) | 189 | (put 'comment-region 'menu-enable 'mark-active) |
| 194 | (put 'uncomment-region 'menu-enable 'mark-active) | 190 | (put 'uncomment-region 'menu-enable 'mark-active) |
| 195 | (put 'indent-region 'menu-enable 'mark-active))) | 191 | (put 'indent-region 'menu-enable 'mark-active) |
| 192 | smap) | ||
| 193 | "Keymap for Scheme mode. | ||
| 194 | All commands in `lisp-mode-shared-map' are inherited by this map.") | ||
| 196 | 195 | ||
| 197 | ;; Used by cmuscheme | 196 | ;; Used by cmuscheme |
| 198 | (defun scheme-mode-commands (map) | 197 | (defun scheme-mode-commands (map) |
| @@ -222,14 +221,11 @@ Entry to this mode calls the value of `scheme-mode-hook' | |||
| 222 | if that value is non-nil." | 221 | if that value is non-nil." |
| 223 | (interactive) | 222 | (interactive) |
| 224 | (kill-all-local-variables) | 223 | (kill-all-local-variables) |
| 225 | (scheme-mode-initialize) | ||
| 226 | (scheme-mode-variables) | ||
| 227 | (run-hooks 'scheme-mode-hook)) | ||
| 228 | |||
| 229 | (defun scheme-mode-initialize () | ||
| 230 | (use-local-map scheme-mode-map) | 224 | (use-local-map scheme-mode-map) |
| 231 | (setq major-mode 'scheme-mode) | 225 | (setq major-mode 'scheme-mode) |
| 232 | (setq mode-name "Scheme")) | 226 | (setq mode-name "Scheme") |
| 227 | (scheme-mode-variables) | ||
| 228 | (run-mode-hooks 'scheme-mode-hook)) | ||
| 233 | 229 | ||
| 234 | (defgroup scheme nil | 230 | (defgroup scheme nil |
| 235 | "Editing Scheme code" | 231 | "Editing Scheme code" |
| @@ -346,7 +342,7 @@ See `run-hooks'." | |||
| 346 | "Default expressions to highlight in Scheme modes.") | 342 | "Default expressions to highlight in Scheme modes.") |
| 347 | 343 | ||
| 348 | ;;;###autoload | 344 | ;;;###autoload |
| 349 | (defun dsssl-mode () | 345 | (define-derived-mode dsssl-mode scheme-mode "DSSSL" |
| 350 | "Major mode for editing DSSSL code. | 346 | "Major mode for editing DSSSL code. |
| 351 | Editing commands are similar to those of `lisp-mode'. | 347 | Editing commands are similar to those of `lisp-mode'. |
| 352 | 348 | ||
| @@ -357,20 +353,16 @@ Blank lines separate paragraphs. Semicolons start comments. | |||
| 357 | Entering this mode runs the hooks `scheme-mode-hook' and then | 353 | Entering this mode runs the hooks `scheme-mode-hook' and then |
| 358 | `dsssl-mode-hook' and inserts the value of `dsssl-sgml-declaration' if | 354 | `dsssl-mode-hook' and inserts the value of `dsssl-sgml-declaration' if |
| 359 | that variable's value is a string." | 355 | that variable's value is a string." |
| 360 | (interactive) | ||
| 361 | (kill-all-local-variables) | ||
| 362 | (use-local-map scheme-mode-map) | ||
| 363 | (scheme-mode-initialize) | ||
| 364 | (make-local-variable 'page-delimiter) | 356 | (make-local-variable 'page-delimiter) |
| 365 | (setq page-delimiter "^;;;" ; ^L not valid SGML char | 357 | (setq page-delimiter "^;;;" ; ^L not valid SGML char |
| 366 | major-mode 'dsssl-mode | 358 | major-mode 'dsssl-mode |
| 367 | mode-name "DSSSL") | 359 | mode-name "DSSSL") |
| 368 | ;; Insert a suitable SGML declaration into an empty buffer. | 360 | ;; Insert a suitable SGML declaration into an empty buffer. |
| 361 | ;; FIXME: This should use `auto-insert-alist' instead. | ||
| 369 | (and (zerop (buffer-size)) | 362 | (and (zerop (buffer-size)) |
| 370 | (stringp dsssl-sgml-declaration) | 363 | (stringp dsssl-sgml-declaration) |
| 371 | (not buffer-read-only) | 364 | (not buffer-read-only) |
| 372 | (insert dsssl-sgml-declaration)) | 365 | (insert dsssl-sgml-declaration)) |
| 373 | (scheme-mode-variables) | ||
| 374 | (setq font-lock-defaults '(dsssl-font-lock-keywords | 366 | (setq font-lock-defaults '(dsssl-font-lock-keywords |
| 375 | nil t (("+-*/.<>=?$%_&~^:" . "w")) | 367 | nil t (("+-*/.<>=?$%_&~^:" . "w")) |
| 376 | beginning-of-defun | 368 | beginning-of-defun |
| @@ -378,9 +370,7 @@ that variable's value is a string." | |||
| 378 | (set (make-local-variable 'imenu-case-fold-search) nil) | 370 | (set (make-local-variable 'imenu-case-fold-search) nil) |
| 379 | (setq imenu-generic-expression dsssl-imenu-generic-expression) | 371 | (setq imenu-generic-expression dsssl-imenu-generic-expression) |
| 380 | (set (make-local-variable 'imenu-syntax-alist) | 372 | (set (make-local-variable 'imenu-syntax-alist) |
| 381 | '(("+-*/.<>=?$%_&~^:" . "w"))) | 373 | '(("+-*/.<>=?$%_&~^:" . "w")))) |
| 382 | (run-hooks 'scheme-mode-hook) | ||
| 383 | (run-hooks 'dsssl-mode-hook)) | ||
| 384 | 374 | ||
| 385 | ;; Extra syntax for DSSSL. This isn't separated from Scheme, but | 375 | ;; Extra syntax for DSSSL. This isn't separated from Scheme, but |
| 386 | ;; shouldn't cause much trouble in scheme-mode. | 376 | ;; shouldn't cause much trouble in scheme-mode. |
| @@ -558,5 +548,5 @@ that variable's value is a string." | |||
| 558 | 548 | ||
| 559 | (provide 'scheme) | 549 | (provide 'scheme) |
| 560 | 550 | ||
| 561 | ;;; arch-tag: a8f06bc1-ad11-42d2-9e36-ce651df37a90 | 551 | ;; arch-tag: a8f06bc1-ad11-42d2-9e36-ce651df37a90 |
| 562 | ;;; scheme.el ends here | 552 | ;;; scheme.el ends here |
diff --git a/lisp/speedbar.el b/lisp/speedbar.el index c182dffdba7..a8f74de0b11 100644 --- a/lisp/speedbar.el +++ b/lisp/speedbar.el | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | ;;; speedbar.el --- quick access to files and tags in a frame | 1 | ;;; speedbar.el --- quick access to files and tags in a frame |
| 2 | 2 | ||
| 3 | ;;; Copyright (C) 1996, 97, 98, 99, 2000, 01 Free Software Foundation | 3 | ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2005 |
| 4 | ;; Free Software Foundation | ||
| 4 | 5 | ||
| 5 | ;; Author: Eric M. Ludlam <zappo@gnu.org> | 6 | ;; Author: Eric M. Ludlam <zappo@gnu.org> |
| 6 | ;; Version: 0.11a | 7 | ;; Version: 0.11a |
| @@ -170,6 +171,8 @@ | |||
| 170 | ;; - More functions to create buttons and options | 171 | ;; - More functions to create buttons and options |
| 171 | ;; - Timeout directories we haven't visited in a while. | 172 | ;; - Timeout directories we haven't visited in a while. |
| 172 | 173 | ||
| 174 | ;;; Code: | ||
| 175 | |||
| 173 | (require 'assoc) | 176 | (require 'assoc) |
| 174 | (require 'easymenu) | 177 | (require 'easymenu) |
| 175 | 178 | ||
| @@ -201,7 +204,6 @@ | |||
| 201 | :prefix "speedbar-" | 204 | :prefix "speedbar-" |
| 202 | :group 'speedbar) | 205 | :group 'speedbar) |
| 203 | 206 | ||
| 204 | ;;; Code: | ||
| 205 | (defvar speedbar-initial-expansion-mode-alist | 207 | (defvar speedbar-initial-expansion-mode-alist |
| 206 | '(("buffers" speedbar-buffer-easymenu-definition speedbar-buffers-key-map | 208 | '(("buffers" speedbar-buffer-easymenu-definition speedbar-buffers-key-map |
| 207 | speedbar-buffer-buttons) | 209 | speedbar-buffer-buttons) |
| @@ -373,7 +375,7 @@ is attached to." | |||
| 373 | (symbol :tag "Property") | 375 | (symbol :tag "Property") |
| 374 | (sexp :tag "Value")))) | 376 | (sexp :tag "Value")))) |
| 375 | 377 | ||
| 376 | (defcustom speedbar-use-imenu-flag (stringp (locate-library "imenu")) | 378 | (defcustom speedbar-use-imenu-flag (fboundp 'imenu) |
| 377 | "*Non-nil means use imenu for file parsing. nil to use etags. | 379 | "*Non-nil means use imenu for file parsing. nil to use etags. |
| 378 | XEmacs prior to 20.4 doesn't support imenu, therefore the default is to | 380 | XEmacs prior to 20.4 doesn't support imenu, therefore the default is to |
| 379 | use etags instead. Etags support is not as robust as imenu support." | 381 | use etags instead. Etags support is not as robust as imenu support." |
| @@ -3749,7 +3751,7 @@ functions to do caching and flushing if appropriate." | |||
| 3749 | 3751 | ||
| 3750 | nil | 3752 | nil |
| 3751 | 3753 | ||
| 3752 | (eval-when-compile (if (locate-library "imenu") (require 'imenu))) | 3754 | (eval-when-compile (condition-case nil (require 'imenu) (error nil))) |
| 3753 | 3755 | ||
| 3754 | (defun speedbar-fetch-dynamic-imenu (file) | 3756 | (defun speedbar-fetch-dynamic-imenu (file) |
| 3755 | "Load FILE into a buffer, and generate tags using Imenu. | 3757 | "Load FILE into a buffer, and generate tags using Imenu. |
| @@ -4359,5 +4361,5 @@ If we have an image associated with it, use that image." | |||
| 4359 | ;; run load-time hooks | 4361 | ;; run load-time hooks |
| 4360 | (run-hooks 'speedbar-load-hook) | 4362 | (run-hooks 'speedbar-load-hook) |
| 4361 | 4363 | ||
| 4362 | ;;; arch-tag: 4477e6d1-f78c-48b9-a503-387d3c9767d5 | 4364 | ;; arch-tag: 4477e6d1-f78c-48b9-a503-387d3c9767d5 |
| 4363 | ;;; speedbar.el ends here | 4365 | ;;; speedbar.el ends here |
diff --git a/lisp/textmodes/bibtex.el b/lisp/textmodes/bibtex.el index c5209456f83..fc677b3de44 100644 --- a/lisp/textmodes/bibtex.el +++ b/lisp/textmodes/bibtex.el | |||
| @@ -173,7 +173,7 @@ See also `bibtex-sort-ignore-string-entries'." | |||
| 173 | If value of `bibtex-maintain-sorted-entries' is `entry-class' | 173 | If value of `bibtex-maintain-sorted-entries' is `entry-class' |
| 174 | entries are ordered according to the classes they belong to. Each | 174 | entries are ordered according to the classes they belong to. Each |
| 175 | class contains a list of entry names. An entry `catch-all' applies | 175 | class contains a list of entry names. An entry `catch-all' applies |
| 176 | to all entries not explicitely mentioned." | 176 | to all entries not explicitly mentioned." |
| 177 | :group 'BibTeX | 177 | :group 'BibTeX |
| 178 | :type '(repeat (choice :tag "Class" | 178 | :type '(repeat (choice :tag "Class" |
| 179 | (const :tag "catch-all" (catch-all)) | 179 | (const :tag "catch-all" (catch-all)) |
| @@ -654,7 +654,7 @@ See `bibtex-generate-autokey' for details." | |||
| 654 | '("A" "An" "On" "The" "Eine?" "Der" "Die" "Das" | 654 | '("A" "An" "On" "The" "Eine?" "Der" "Die" "Das" |
| 655 | "[^A-Z].*" ".*[^A-Z0-9].*") | 655 | "[^A-Z].*" ".*[^A-Z0-9].*") |
| 656 | "Determines words from the title that are not to be used in the key. | 656 | "Determines words from the title that are not to be used in the key. |
| 657 | Each item of the list is a regexp. If a word of the title matchs a | 657 | Each item of the list is a regexp. If a word of the title matches a |
| 658 | regexp from that list, it is not included in the title part of the key. | 658 | regexp from that list, it is not included in the title part of the key. |
| 659 | See `bibtex-generate-autokey' for details." | 659 | See `bibtex-generate-autokey' for details." |
| 660 | :group 'bibtex-autokey | 660 | :group 'bibtex-autokey |
| @@ -730,7 +730,7 @@ and must return a string (the key to use)." | |||
| 730 | 730 | ||
| 731 | (defcustom bibtex-entry-offset 0 | 731 | (defcustom bibtex-entry-offset 0 |
| 732 | "Offset for BibTeX entries. | 732 | "Offset for BibTeX entries. |
| 733 | Added to the value of all other variables which determine colums." | 733 | Added to the value of all other variables which determine columns." |
| 734 | :group 'bibtex | 734 | :group 'bibtex |
| 735 | :type 'integer) | 735 | :type 'integer) |
| 736 | 736 | ||
| @@ -1115,9 +1115,8 @@ The CDRs of the elements are t for header keys and nil for crossref keys.") | |||
| 1115 | t)) | 1115 | t)) |
| 1116 | "Regexp matching the name of any valid BibTeX entry (including string).") | 1116 | "Regexp matching the name of any valid BibTeX entry (including string).") |
| 1117 | 1117 | ||
| 1118 | 1118 | (defconst bibtex-empty-field-re "\\`\\(\"\"\\|{}\\)\\'" | |
| 1119 | (defconst bibtex-empty-field-re "\"\"\\|{}" | 1119 | "Regexp matching the text part (as a string) of an empty field.") |
| 1120 | "Regexp matching an empty field.") | ||
| 1121 | 1120 | ||
| 1122 | (defconst bibtex-font-lock-syntactic-keywords | 1121 | (defconst bibtex-font-lock-syntactic-keywords |
| 1123 | `((,(concat "^[ \t]*\\(" (substring bibtex-comment-start 0 1) "\\)" | 1122 | `((,(concat "^[ \t]*\\(" (substring bibtex-comment-start 0 1) "\\)" |
| @@ -1179,7 +1178,7 @@ ARG is ignored." | |||
| 1179 | "Parse a string of the format <left-hand-side = right-hand-side>. | 1178 | "Parse a string of the format <left-hand-side = right-hand-side>. |
| 1180 | The functions PARSE-LHS and PARSE-RHS are used to parse the corresponding | 1179 | The functions PARSE-LHS and PARSE-RHS are used to parse the corresponding |
| 1181 | substrings. These functions are expected to return nil if parsing is not | 1180 | substrings. These functions are expected to return nil if parsing is not |
| 1182 | successfull. If both functions return non-nil, a pair containing the returned | 1181 | successful. If both functions return non-nil, a pair containing the returned |
| 1183 | values of the functions PARSE-LHS and PARSE-RHS is returned." | 1182 | values of the functions PARSE-LHS and PARSE-RHS is returned." |
| 1184 | (save-match-data | 1183 | (save-match-data |
| 1185 | (save-excursion | 1184 | (save-excursion |
| @@ -1196,7 +1195,7 @@ values of the functions PARSE-LHS and PARSE-RHS is returned." | |||
| 1196 | If the field name is found, return a triple consisting of the position of the | 1195 | If the field name is found, return a triple consisting of the position of the |
| 1197 | very first character of the match, the actual starting position of the name | 1196 | very first character of the match, the actual starting position of the name |
| 1198 | part and end position of the match. Move point to end of field name. | 1197 | part and end position of the match. Move point to end of field name. |
| 1199 | If `bibtex-autoadd-commas' is non-nil add missing comma at end of preceeding | 1198 | If `bibtex-autoadd-commas' is non-nil add missing comma at end of preceding |
| 1200 | BibTeX field as necessary." | 1199 | BibTeX field as necessary." |
| 1201 | (cond ((looking-at ",[ \t\n]*") | 1200 | (cond ((looking-at ",[ \t\n]*") |
| 1202 | (let ((start (point))) | 1201 | (let ((start (point))) |
| @@ -1875,7 +1874,7 @@ Formats current entry according to variable `bibtex-entry-format'." | |||
| 1875 | (if opt-alt (+ beg-name 3) beg-name) end-name)) | 1874 | (if opt-alt (+ beg-name 3) beg-name) end-name)) |
| 1876 | (empty-field (string-match bibtex-empty-field-re | 1875 | (empty-field (string-match bibtex-empty-field-re |
| 1877 | (buffer-substring-no-properties | 1876 | (buffer-substring-no-properties |
| 1878 | beg-field end-field))) | 1877 | beg-text end-text))) |
| 1879 | deleted) | 1878 | deleted) |
| 1880 | 1879 | ||
| 1881 | ;; We have more elegant high-level functions for several | 1880 | ;; We have more elegant high-level functions for several |
| @@ -2824,7 +2823,7 @@ and `bibtex-user-optional-fields'." | |||
| 2824 | (let ((e (assoc-string entry-type bibtex-entry-field-alist t)) | 2823 | (let ((e (assoc-string entry-type bibtex-entry-field-alist t)) |
| 2825 | required optional) | 2824 | required optional) |
| 2826 | (unless e | 2825 | (unless e |
| 2827 | (error "Bibtex entry type %s not defined" entry-type)) | 2826 | (error "BibTeX entry type %s not defined" entry-type)) |
| 2828 | (if (and (member-ignore-case entry-type bibtex-include-OPTcrossref) | 2827 | (if (and (member-ignore-case entry-type bibtex-include-OPTcrossref) |
| 2829 | (nth 2 e)) | 2828 | (nth 2 e)) |
| 2830 | (setq required (nth 0 (nth 2 e)) | 2829 | (setq required (nth 0 (nth 2 e)) |
| @@ -2960,9 +2959,13 @@ entry (for example, the year parts of the keys)." | |||
| 2960 | (while (setq bounds (bibtex-parse-field bibtex-field-name)) | 2959 | (while (setq bounds (bibtex-parse-field bibtex-field-name)) |
| 2961 | (let ((text (assoc-string (bibtex-name-in-field bounds t) | 2960 | (let ((text (assoc-string (bibtex-name-in-field bounds t) |
| 2962 | other t))) | 2961 | other t))) |
| 2963 | (goto-char (bibtex-start-of-text-in-field bounds)) | 2962 | (if (not (and text |
| 2964 | (if (not (and (looking-at bibtex-empty-field-re) text)) | 2963 | (string-match bibtex-empty-field-re |
| 2964 | (buffer-substring-no-properties | ||
| 2965 | (bibtex-start-of-text-in-field bounds) | ||
| 2966 | (bibtex-end-of-text-in-field bounds))))) | ||
| 2965 | (goto-char (bibtex-end-of-field bounds)) | 2967 | (goto-char (bibtex-end-of-field bounds)) |
| 2968 | (goto-char (bibtex-start-of-text-in-field bounds)) | ||
| 2966 | (delete-region (point) (bibtex-end-of-text-in-field bounds)) | 2969 | (delete-region (point) (bibtex-end-of-text-in-field bounds)) |
| 2967 | (insert (cdr text))))) | 2970 | (insert (cdr text))))) |
| 2968 | ;; Finally try to update the text based on the difference between | 2971 | ;; Finally try to update the text based on the difference between |
| @@ -3269,7 +3272,7 @@ entry and SPLIT is t." | |||
| 3269 | (bibtex-reposition-window) | 3272 | (bibtex-reposition-window) |
| 3270 | (beginning-of-line) | 3273 | (beginning-of-line) |
| 3271 | (if (and eqb (> pnt pos)) | 3274 | (if (and eqb (> pnt pos)) |
| 3272 | (error "The referencing entry must preceed the crossrefed entry!"))) | 3275 | (error "The referencing entry must precede the crossrefed entry!"))) |
| 3273 | ;; `bibtex-find-crossref' is called noninteractively during | 3276 | ;; `bibtex-find-crossref' is called noninteractively during |
| 3274 | ;; clean-up of an entry. Then it is not possible to check | 3277 | ;; clean-up of an entry. Then it is not possible to check |
| 3275 | ;; whether the current entry and the crossrefed entry have | 3278 | ;; whether the current entry and the crossrefed entry have |
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el index 13eda06c892..c554b74cf0c 100644 --- a/lisp/textmodes/ispell.el +++ b/lisp/textmodes/ispell.el | |||
| @@ -591,12 +591,12 @@ and then re-start emacs." | |||
| 591 | "[^A-Z\300\301\310\311\314\315\322\323\331\332a-z\340\341\350\351\354\355\363\371\372]" | 591 | "[^A-Z\300\301\310\311\314\315\322\323\331\332a-z\340\341\350\351\354\355\363\371\372]" |
| 592 | "[-]" nil ("-B" "-d" "italian") "~tex" iso-8859-1) | 592 | "[-]" nil ("-B" "-d" "italian") "~tex" iso-8859-1) |
| 593 | ("nederlands" ; Nederlands.aff | 593 | ("nederlands" ; Nederlands.aff |
| 594 | "[A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" | 594 | "[A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" |
| 595 | "[^A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" | 595 | "[^A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" |
| 596 | "[']" t ("-C") nil iso-8859-1) | 596 | "[']" t ("-C") nil iso-8859-1) |
| 597 | ("nederlands8" ; Dutch8.aff | 597 | ("nederlands8" ; Dutch8.aff |
| 598 | "[A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" | 598 | "[A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" |
| 599 | "[^A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" | 599 | "[^A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" |
| 600 | "[']" t ("-C") nil iso-8859-1))) | 600 | "[']" t ("-C") nil iso-8859-1))) |
| 601 | 601 | ||
| 602 | 602 | ||
diff --git a/lisp/textmodes/reftex-global.el b/lisp/textmodes/reftex-global.el index d4d91b476e9..d3ef2dcb788 100644 --- a/lisp/textmodes/reftex-global.el +++ b/lisp/textmodes/reftex-global.el | |||
| @@ -338,5 +338,131 @@ Also checks if buffers visiting the files are in read-only mode." | |||
| 338 | (buffer-name buf))) | 338 | (buffer-name buf))) |
| 339 | (error "Abort")))))) | 339 | (error "Abort")))))) |
| 340 | 340 | ||
| 341 | (defun reftex-isearch-wrap-function () | ||
| 342 | (if (not isearch-word) | ||
| 343 | (switch-to-buffer | ||
| 344 | (funcall isearch-next-buffer-function (current-buffer) t))) | ||
| 345 | (goto-char (if isearch-forward (point-min) (point-max)))) | ||
| 346 | |||
| 347 | (defun reftex-isearch-push-state-function () | ||
| 348 | `(lambda (cmd) | ||
| 349 | (reftex-isearch-pop-state-function cmd ,(current-buffer)))) | ||
| 350 | |||
| 351 | (defun reftex-isearch-pop-state-function (cmd buffer) | ||
| 352 | (switch-to-buffer buffer)) | ||
| 353 | |||
| 354 | (defun reftex-isearch-isearch-search (string bound noerror) | ||
| 355 | (let ((nxt-buff nil) | ||
| 356 | (search-fun | ||
| 357 | (cond | ||
| 358 | (isearch-word | ||
| 359 | (if isearch-forward 'word-search-forward 'word-search-backward)) | ||
| 360 | (isearch-regexp | ||
| 361 | (if isearch-forward 're-search-forward 're-search-backward)) | ||
| 362 | (t | ||
| 363 | (if isearch-forward 'search-forward 'search-backward))))) | ||
| 364 | (or | ||
| 365 | (funcall search-fun string bound noerror) | ||
| 366 | (unless bound | ||
| 367 | (condition-case nil | ||
| 368 | (when isearch-next-buffer-function | ||
| 369 | (while (not (funcall search-fun string bound noerror)) | ||
| 370 | (cond | ||
| 371 | (isearch-forward | ||
| 372 | (setq nxt-buff | ||
| 373 | (funcall isearch-next-buffer-function | ||
| 374 | (current-buffer))) | ||
| 375 | (if (not nxt-buff) | ||
| 376 | (progn | ||
| 377 | (error "Wrap forward")) | ||
| 378 | (switch-to-buffer nxt-buff) | ||
| 379 | (goto-char (point-min)))) | ||
| 380 | (t | ||
| 381 | (setq nxt-buff | ||
| 382 | (funcall isearch-next-buffer-function | ||
| 383 | (current-buffer))) | ||
| 384 | (if (not nxt-buff) | ||
| 385 | (progn | ||
| 386 | (error "Wrap backward")) | ||
| 387 | (switch-to-buffer nxt-buff) | ||
| 388 | (goto-char (point-max)))))) | ||
| 389 | (point)) | ||
| 390 | (error nil)))))) | ||
| 391 | |||
| 392 | ;;; This function is called when isearch reaches the end of a | ||
| 393 | ;;; buffer. For reftex what we want to do is not wrap to the | ||
| 394 | ;;; beginning, but switch to the next buffer in the logical order of | ||
| 395 | ;;; the document. This function looks through list of files in the | ||
| 396 | ;;; document (reftex-all-document-files), searches for the current | ||
| 397 | ;;; buffer and switches to the next/previous one in the logical order | ||
| 398 | ;;; of the document. If WRAPP is true then wrap the search to the | ||
| 399 | ;;; beginning/end of the file list, depending of the search direction. | ||
| 400 | (defun reftex-isearch-switch-to-next-file (crt-buf &optional wrapp) | ||
| 401 | (reftex-access-scan-info) | ||
| 402 | (let* ((cb (buffer-file-name crt-buf)) | ||
| 403 | (flist (reftex-all-document-files)) | ||
| 404 | (orig-flist flist)) | ||
| 405 | (when flist | ||
| 406 | (if wrapp | ||
| 407 | (unless isearch-forward | ||
| 408 | (setq flist (last flist))) | ||
| 409 | (unless isearch-forward | ||
| 410 | (setq flist (nreverse (copy-list flist))) | ||
| 411 | (setq orig-flist flist)) | ||
| 412 | (while (not (string= (car flist) cb)) | ||
| 413 | (setq flist (cdr flist))) | ||
| 414 | (setq flist (cdr flist))) | ||
| 415 | (when flist | ||
| 416 | (find-file (car flist)))))) | ||
| 417 | |||
| 418 | ;;;###autoload | ||
| 419 | (defvar reftex-isearch-minor-mode nil) | ||
| 420 | (make-variable-buffer-local 'reftex-isearch-minor-mode) | ||
| 421 | |||
| 422 | ;;;###autoload | ||
| 423 | (defun reftex-isearch-minor-mode (&optional arg) | ||
| 424 | "When on, isearch searches the whole document, not only the current file. | ||
| 425 | This minor mode allows isearch to search through all the files of | ||
| 426 | the current TeX document. | ||
| 427 | |||
| 428 | With no argument, this command toggles | ||
| 429 | `reftex-isearch-minor-mode'. With a prefix argument ARG, turn | ||
| 430 | `reftex-isearch-minor-mode' on iff ARG is positive." | ||
| 431 | (interactive "P") | ||
| 432 | (let ((old-reftex-isearch-minor-mode reftex-isearch-minor-mode)) | ||
| 433 | (setq reftex-isearch-minor-mode | ||
| 434 | (not (or (and (null arg) reftex-isearch-minor-mode) | ||
| 435 | (<= (prefix-numeric-value arg) 0)))) | ||
| 436 | (unless (eq reftex-isearch-minor-mode old-reftex-isearch-minor-mode) | ||
| 437 | (if reftex-isearch-minor-mode | ||
| 438 | (progn | ||
| 439 | (dolist (crt-buf (buffer-list)) | ||
| 440 | (with-current-buffer crt-buf | ||
| 441 | (when reftex-mode | ||
| 442 | (set (make-local-variable 'isearch-wrap-function) | ||
| 443 | 'reftex-isearch-wrap-function) | ||
| 444 | (set (make-local-variable 'isearch-search-fun-function) | ||
| 445 | (lambda () 'reftex-isearch-isearch-search)) | ||
| 446 | (set (make-local-variable 'isearch-push-state-function) | ||
| 447 | 'reftex-isearch-push-state-function) | ||
| 448 | (set (make-local-variable 'isearch-next-buffer-function) | ||
| 449 | 'reftex-isearch-switch-to-next-file) | ||
| 450 | (setq reftex-isearch-minor-mode t)))) | ||
| 451 | (add-hook 'reftex-mode-hook 'reftex-isearch-minor-mode)) | ||
| 452 | (dolist (crt-buf (buffer-list)) | ||
| 453 | (with-current-buffer crt-buf | ||
| 454 | (when reftex-mode | ||
| 455 | (kill-local-variable 'isearch-wrap-function) | ||
| 456 | (kill-local-variable 'isearch-search-fun-function) | ||
| 457 | (kill-local-variable 'isearch-push-state-function) | ||
| 458 | (kill-local-variable 'isearch-next-buffer-function) | ||
| 459 | (setq reftex-isearch-minor-mode nil)))) | ||
| 460 | (remove-hook 'reftex-mode-hook 'reftex-isearch-minor-mode))) | ||
| 461 | ;; Force modeline redisplay. | ||
| 462 | (set-buffer-modified-p (buffer-modified-p)))) | ||
| 463 | |||
| 464 | (add-minor-mode 'reftex-isearch-minor-mode "/I" nil nil | ||
| 465 | 'reftex-isearch-minor-mode) | ||
| 466 | |||
| 341 | ;;; arch-tag: 2dbf7633-92c8-4340-8656-7aa019d0f80d | 467 | ;;; arch-tag: 2dbf7633-92c8-4340-8656-7aa019d0f80d |
| 342 | ;;; reftex-global.el ends here | 468 | ;;; reftex-global.el ends here |
diff --git a/lisp/textmodes/reftex.el b/lisp/textmodes/reftex.el index e177805e9c4..318279b1377 100644 --- a/lisp/textmodes/reftex.el +++ b/lisp/textmodes/reftex.el | |||
| @@ -2487,7 +2487,9 @@ IGNORE-WORDS List of words which should be removed from the string." | |||
| 2487 | "--" | 2487 | "--" |
| 2488 | "MISC" | 2488 | "MISC" |
| 2489 | ["AUC TeX Interface" reftex-toggle-plug-into-AUCTeX | 2489 | ["AUC TeX Interface" reftex-toggle-plug-into-AUCTeX |
| 2490 | :style toggle :selected reftex-plug-into-AUCTeX]) | 2490 | :style toggle :selected reftex-plug-into-AUCTeX] |
| 2491 | ["isearch whole document" reftex-isearch-minor-mode | ||
| 2492 | :style toggle :selected reftex-isearch-minor-mode]) | ||
| 2491 | ("Reference Style" | 2493 | ("Reference Style" |
| 2492 | ["Default" (setq reftex-vref-is-default nil | 2494 | ["Default" (setq reftex-vref-is-default nil |
| 2493 | reftex-fref-is-default nil) | 2495 | reftex-fref-is-default nil) |
diff --git a/man/ChangeLog b/man/ChangeLog index 63e3591265e..5f69fc7d856 100644 --- a/man/ChangeLog +++ b/man/ChangeLog | |||
| @@ -1,3 +1,16 @@ | |||
| 1 | 2005-01-28 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 2 | |||
| 3 | * gnus.texi: Some edits based on comments from David Abrahams. | ||
| 4 | |||
| 5 | 2005-01-24 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 6 | |||
| 7 | * gnus.texi (RSS): Fix the keystroke. | ||
| 8 | |||
| 9 | 2005-01-26 Lute Kamstra <lute@gnu.org> | ||
| 10 | |||
| 11 | * cmdargs.texi (Initial Options): Add a cross reference to `Init | ||
| 12 | File'. Mention the `-Q' option at the `--no-site-file' option. | ||
| 13 | |||
| 1 | 2005-01-24 David Kastrup <dak@gnu.org> | 14 | 2005-01-24 David Kastrup <dak@gnu.org> |
| 2 | 15 | ||
| 3 | * faq.texi: Update AUCTeX version info. | 16 | * faq.texi: Update AUCTeX version info. |
diff --git a/man/cmdargs.texi b/man/cmdargs.texi index b06aac4bdb6..960f2d0bd65 100644 --- a/man/cmdargs.texi +++ b/man/cmdargs.texi | |||
| @@ -169,8 +169,9 @@ sections. | |||
| 169 | Some initial options affect the loading of init files. The normal | 169 | Some initial options affect the loading of init files. The normal |
| 170 | actions of Emacs are to first load @file{site-start.el} if it exists, | 170 | actions of Emacs are to first load @file{site-start.el} if it exists, |
| 171 | then your own init file @file{~/.emacs} if it exists, and finally | 171 | then your own init file @file{~/.emacs} if it exists, and finally |
| 172 | @file{default.el} if it exists; certain options prevent loading of some | 172 | @file{default.el} if it exists. @xref{Init File}. Certain options |
| 173 | of these files or substitute other files for them. | 173 | prevent loading of some of these files or substitute other files for |
| 174 | them. | ||
| 174 | 175 | ||
| 175 | @table @samp | 176 | @table @samp |
| 176 | @item -t @var{device} | 177 | @item -t @var{device} |
| @@ -257,8 +258,8 @@ changed with the @kbd{M-x customize} command and its variants. | |||
| 257 | @opindex --no-site-file | 258 | @opindex --no-site-file |
| 258 | @cindex @file{site-start.el} file, not loading | 259 | @cindex @file{site-start.el} file, not loading |
| 259 | Do not load @file{site-start.el}. The options @samp{-q}, @samp{-u} | 260 | Do not load @file{site-start.el}. The options @samp{-q}, @samp{-u} |
| 260 | and @samp{--batch} have no effect on the loading of this file---this is | 261 | and @samp{--batch} have no effect on the loading of this file---this |
| 261 | the only option that blocks it. | 262 | option and @samp{-Q} are the only options that block it. |
| 262 | 263 | ||
| 263 | @item -Q | 264 | @item -Q |
| 264 | @opindex -Q | 265 | @opindex -Q |
diff --git a/man/gnus.texi b/man/gnus.texi index b0feef1bf25..d2812890a1c 100644 --- a/man/gnus.texi +++ b/man/gnus.texi | |||
| @@ -391,25 +391,25 @@ the program. | |||
| 391 | @end iftex | 391 | @end iftex |
| 392 | 392 | ||
| 393 | @menu | 393 | @menu |
| 394 | * Starting Up:: Finding news can be a pain. | 394 | * Starting Up:: Finding news can be a pain. |
| 395 | * Group Buffer:: Selecting, subscribing and killing groups. | 395 | * Group Buffer:: Selecting, subscribing and killing groups. |
| 396 | * Summary Buffer:: Reading, saving and posting articles. | 396 | * Summary Buffer:: Reading, saving and posting articles. |
| 397 | * Article Buffer:: Displaying and handling articles. | 397 | * Article Buffer:: Displaying and handling articles. |
| 398 | * Composing Messages:: Information on sending mail and news. | 398 | * Composing Messages:: Information on sending mail and news. |
| 399 | * Select Methods:: Gnus reads all messages from various select methods. | 399 | * Select Methods:: Gnus reads all messages from various select methods. |
| 400 | * Scoring:: Assigning values to articles. | 400 | * Scoring:: Assigning values to articles. |
| 401 | * Various:: General purpose settings. | 401 | * Various:: General purpose settings. |
| 402 | * The End:: Farewell and goodbye. | 402 | * The End:: Farewell and goodbye. |
| 403 | * Appendices:: Terminology, Emacs intro, @acronym{FAQ}, History, Internals. | 403 | * Appendices:: Terminology, Emacs intro, @acronym{FAQ}, History, Internals. |
| 404 | * Index:: Variable, function and concept index. | 404 | * Index:: Variable, function and concept index. |
| 405 | * Key Index:: Key Index. | 405 | * Key Index:: Key Index. |
| 406 | 406 | ||
| 407 | Other related manuals | 407 | Other related manuals |
| 408 | 408 | ||
| 409 | * Message:(message). Composing messages. | 409 | * Message:(message). Composing messages. |
| 410 | * Emacs-MIME:(emacs-mime). Composing messages; @acronym{MIME}-specific parts. | 410 | * Emacs-MIME:(emacs-mime). Composing messages; @acronym{MIME}-specific parts. |
| 411 | * Sieve:(sieve). Managing Sieve scripts in Emacs. | 411 | * Sieve:(sieve). Managing Sieve scripts in Emacs. |
| 412 | * PGG:(pgg). @acronym{PGP/MIME} with Gnus. | 412 | * PGG:(pgg). @acronym{PGP/MIME} with Gnus. |
| 413 | 413 | ||
| 414 | @detailmenu | 414 | @detailmenu |
| 415 | --- The Detailed Node Listing --- | 415 | --- The Detailed Node Listing --- |
| @@ -951,17 +951,16 @@ If you puzzle at any terms used in this manual, please refer to the | |||
| 951 | terminology section (@pxref{Terminology}). | 951 | terminology section (@pxref{Terminology}). |
| 952 | 952 | ||
| 953 | @menu | 953 | @menu |
| 954 | * Finding the News:: Choosing a method for getting news. | 954 | * Finding the News:: Choosing a method for getting news. |
| 955 | * The First Time:: What does Gnus do the first time you start it? | 955 | * The First Time:: What does Gnus do the first time you start it? |
| 956 | * The Server is Down:: How can I read my mail then? | 956 | * The Server is Down:: How can I read my mail then? |
| 957 | * Slave Gnusae:: You can have more than one Gnus active at a time. | 957 | * Slave Gnusae:: You can have more than one Gnus active at a time. |
| 958 | * Fetching a Group:: Starting Gnus just to read a group. | 958 | * New Groups:: What is Gnus supposed to do with new groups? |
| 959 | * New Groups:: What is Gnus supposed to do with new groups? | 959 | * Changing Servers:: You may want to move from one server to another. |
| 960 | * Changing Servers:: You may want to move from one server to another. | 960 | * Startup Files:: Those pesky startup files---@file{.newsrc}. |
| 961 | * Startup Files:: Those pesky startup files---@file{.newsrc}. | 961 | * Auto Save:: Recovering from a crash. |
| 962 | * Auto Save:: Recovering from a crash. | 962 | * The Active File:: Reading the active file over a slow line Takes Time. |
| 963 | * The Active File:: Reading the active file over a slow line Takes Time. | 963 | * Startup Variables:: Other variables you might change. |
| 964 | * Startup Variables:: Other variables you might change. | ||
| 965 | @end menu | 964 | @end menu |
| 966 | 965 | ||
| 967 | 966 | ||
| @@ -992,7 +991,8 @@ If you want to read directly from the local spool, say: | |||
| 992 | 991 | ||
| 993 | If you can use a local spool, you probably should, as it will almost | 992 | If you can use a local spool, you probably should, as it will almost |
| 994 | certainly be much faster. But do not use the local spool if your | 993 | certainly be much faster. But do not use the local spool if your |
| 995 | server is running Leafnode; in this case, use @code{(nntp "localhost")}. | 994 | server is running Leafnode (which is a simple, standalone private news |
| 995 | server); in this case, use @code{(nntp "localhost")}. | ||
| 996 | 996 | ||
| 997 | @vindex gnus-nntpserver-file | 997 | @vindex gnus-nntpserver-file |
| 998 | @cindex NNTPSERVER | 998 | @cindex NNTPSERVER |
| @@ -1051,8 +1051,8 @@ you would typically set this variable to | |||
| 1051 | @section The First Time | 1051 | @section The First Time |
| 1052 | @cindex first time usage | 1052 | @cindex first time usage |
| 1053 | 1053 | ||
| 1054 | If no startup files exist, Gnus will try to determine what groups should | 1054 | If no startup files exist (@pxref{Startup Files}), Gnus will try to |
| 1055 | be subscribed by default. | 1055 | determine what groups should be subscribed by default. |
| 1056 | 1056 | ||
| 1057 | @vindex gnus-default-subscribed-newsgroups | 1057 | @vindex gnus-default-subscribed-newsgroups |
| 1058 | If the variable @code{gnus-default-subscribed-newsgroups} is set, Gnus | 1058 | If the variable @code{gnus-default-subscribed-newsgroups} is set, Gnus |
| @@ -1139,16 +1139,6 @@ file. If you answer ``yes'', the unsaved changes to the master will be | |||
| 1139 | incorporated into the slave. If you answer ``no'', the slave may see some | 1139 | incorporated into the slave. If you answer ``no'', the slave may see some |
| 1140 | messages as unread that have been read in the master. | 1140 | messages as unread that have been read in the master. |
| 1141 | 1141 | ||
| 1142 | @node Fetching a Group | ||
| 1143 | @section Fetching a Group | ||
| 1144 | @cindex fetching a group | ||
| 1145 | |||
| 1146 | @findex gnus-fetch-group | ||
| 1147 | It is sometimes convenient to be able to just say ``I want to read this | ||
| 1148 | group and I don't care whether Gnus has been started or not''. This is | ||
| 1149 | perhaps more useful for people who write code than for users, but the | ||
| 1150 | command @code{gnus-fetch-group} provides this functionality in any case. | ||
| 1151 | It takes the group name as a parameter. | ||
| 1152 | 1142 | ||
| 1153 | 1143 | ||
| 1154 | @node New Groups | 1144 | @node New Groups |
| @@ -1400,8 +1390,10 @@ cache for all groups). | |||
| 1400 | @cindex .newsrc.el | 1390 | @cindex .newsrc.el |
| 1401 | @cindex .newsrc.eld | 1391 | @cindex .newsrc.eld |
| 1402 | 1392 | ||
| 1403 | Now, you all know about the @file{.newsrc} file. All subscription | 1393 | Most common Unix news readers use a shared startup file called |
| 1404 | information is traditionally stored in this file. | 1394 | @file{.newsrc}. This file contains all the information about what |
| 1395 | groups are subscribed, and which articles in these groups have been | ||
| 1396 | read. | ||
| 1405 | 1397 | ||
| 1406 | Things got a bit more complicated with @sc{gnus}. In addition to | 1398 | Things got a bit more complicated with @sc{gnus}. In addition to |
| 1407 | keeping the @file{.newsrc} file updated, it also used a file called | 1399 | keeping the @file{.newsrc} file updated, it also used a file called |
| @@ -1426,8 +1418,10 @@ the file and save some space, as well as exiting from Gnus faster. | |||
| 1426 | However, this will make it impossible to use other newsreaders than | 1418 | However, this will make it impossible to use other newsreaders than |
| 1427 | Gnus. But hey, who would want to, right? Similarly, setting | 1419 | Gnus. But hey, who would want to, right? Similarly, setting |
| 1428 | @code{gnus-read-newsrc-file} to @code{nil} makes Gnus ignore the | 1420 | @code{gnus-read-newsrc-file} to @code{nil} makes Gnus ignore the |
| 1429 | @file{.newsrc} file and any @file{.newsrc-SERVER} files, which is | 1421 | @file{.newsrc} file and any @file{.newsrc-SERVER} files, which can be |
| 1430 | convenient if you have a tendency to use Netscape once in a while. | 1422 | convenient if you use a different news reader occasionally, and you |
| 1423 | want to read a different subset of the available groups with that | ||
| 1424 | news reader. | ||
| 1431 | 1425 | ||
| 1432 | @vindex gnus-save-killed-list | 1426 | @vindex gnus-save-killed-list |
| 1433 | If @code{gnus-save-killed-list} (default @code{t}) is @code{nil}, Gnus | 1427 | If @code{gnus-save-killed-list} (default @code{t}) is @code{nil}, Gnus |
| @@ -15884,7 +15878,7 @@ Use @kbd{G R} from the summary buffer to subscribe to a feed---you | |||
| 15884 | will be prompted for the location of the feed. | 15878 | will be prompted for the location of the feed. |
| 15885 | 15879 | ||
| 15886 | An easy way to get started with @code{nnrss} is to say something like | 15880 | An easy way to get started with @code{nnrss} is to say something like |
| 15887 | the following in the group buffer: @kbd{B nnrss RET y}, then | 15881 | the following in the group buffer: @kbd{B nnrss RET RET y}, then |
| 15888 | subscribe to groups. | 15882 | subscribe to groups. |
| 15889 | 15883 | ||
| 15890 | The following @code{nnrss} variables can be altered: | 15884 | The following @code{nnrss} variables can be altered: |
| @@ -20607,6 +20601,7 @@ four days, Gnus will decay the scores four times, for instance. | |||
| 20607 | * Undo:: Some actions can be undone. | 20601 | * Undo:: Some actions can be undone. |
| 20608 | * Predicate Specifiers:: Specifying predicates. | 20602 | * Predicate Specifiers:: Specifying predicates. |
| 20609 | * Moderation:: What to do if you're a moderator. | 20603 | * Moderation:: What to do if you're a moderator. |
| 20604 | * Fetching a Group:: Starting Gnus just to read a group. | ||
| 20610 | * Image Enhancements:: Modern versions of Emacs/XEmacs can display images. | 20605 | * Image Enhancements:: Modern versions of Emacs/XEmacs can display images. |
| 20611 | * Fuzzy Matching:: What's the big fuzz? | 20606 | * Fuzzy Matching:: What's the big fuzz? |
| 20612 | * Thwarting Email Spam:: A how-to on avoiding unsolicited commercial email. | 20607 | * Thwarting Email Spam:: A how-to on avoiding unsolicited commercial email. |
| @@ -21878,6 +21873,18 @@ To use moderation mode in these two groups, say: | |||
| 21878 | @end lisp | 21873 | @end lisp |
| 21879 | 21874 | ||
| 21880 | 21875 | ||
| 21876 | @node Fetching a Group | ||
| 21877 | @section Fetching a Group | ||
| 21878 | @cindex fetching a group | ||
| 21879 | |||
| 21880 | @findex gnus-fetch-group | ||
| 21881 | It is sometimes convenient to be able to just say ``I want to read this | ||
| 21882 | group and I don't care whether Gnus has been started or not''. This is | ||
| 21883 | perhaps more useful for people who write code than for users, but the | ||
| 21884 | command @code{gnus-fetch-group} provides this functionality in any case. | ||
| 21885 | It takes the group name as a parameter. | ||
| 21886 | |||
| 21887 | |||
| 21881 | @node Image Enhancements | 21888 | @node Image Enhancements |
| 21882 | @section Image Enhancements | 21889 | @section Image Enhancements |
| 21883 | 21890 | ||
| @@ -26575,6 +26582,12 @@ The act of asking the server for info on a group and computing the | |||
| 26575 | number of unread articles is called @dfn{activating the group}. | 26582 | number of unread articles is called @dfn{activating the group}. |
| 26576 | Un-activated groups are listed with @samp{*} in the group buffer. | 26583 | Un-activated groups are listed with @samp{*} in the group buffer. |
| 26577 | 26584 | ||
| 26585 | @item spool | ||
| 26586 | @cindex spool | ||
| 26587 | News servers store their articles locally in one fashion or other. | ||
| 26588 | One old-fashioned storage method is to have just one file per | ||
| 26589 | article. That's called a ``traditional spool''. | ||
| 26590 | |||
| 26578 | @item server | 26591 | @item server |
| 26579 | @cindex server | 26592 | @cindex server |
| 26580 | A machine one can connect to and get news (or mail) from. | 26593 | A machine one can connect to and get news (or mail) from. |
diff --git a/man/reftex.texi b/man/reftex.texi index 21090caf2ea..7de16dcb0e1 100644 --- a/man/reftex.texi +++ b/man/reftex.texi | |||
| @@ -3520,13 +3520,15 @@ this manual. | |||
| 3520 | 3520 | ||
| 3521 | Thanks to the people on the Net who have used @b{Ref@TeX{}} and helped | 3521 | Thanks to the people on the Net who have used @b{Ref@TeX{}} and helped |
| 3522 | developing it with their reports. In particular thanks to @i{Fran | 3522 | developing it with their reports. In particular thanks to @i{Fran |
| 3523 | Burstall, Alastair Burt, Lars Clausen, Soren Dayton, Stephen Eglen, Karl | 3523 | Burstall, Alastair Burt, Lars Clausen, Soren Dayton, Stephen Eglen, |
| 3524 | Eichwalder, Erik Frisk, Peter Galbraith, Kai Grossjohann, Frank Harrell, | 3524 | Karl Eichwalder, Erik Frisk, Peter Galbraith, Kai Grossjohann, Frank |
| 3525 | Peter Heslin, Stephan Heuel, Alan Ho, Lute Kamstra, Dieter Kraft, David | 3525 | Harrell, Peter Heslin, Stephan Heuel, Alan Ho, Lute Kamstra, Dieter |
| 3526 | Kastrup, Adrian Lanz, Rory Molinari, Stefan Monnier, Laurent Mugnier, | 3526 | Kraft, David Kastrup, Adrian Lanz, Juri Linkov, Rory Molinari, Stefan |
| 3527 | Sudeep Kumar Palat, Daniel Polani, Alan Shutko, Robin Socha, Richard | 3527 | Monnier, Laurent Mugnier, Dan Nicolaescu, Sudeep Kumar Palat, Daniel |
| 3528 | Stanton, Allan Strand, Jan Vroonhof, Christoph Wedler, Alan Williams, | 3528 | Polani, Alan Shutko, Robin Socha, Richard Stanton, Allan Strand, Jan |
| 3529 | Roland Winkler, Hans-Christoph Wirth, Eli Zaretskii}. | 3529 | Vroonhof, Christoph Wedler, Alan Williams, Roland Winkler, |
| 3530 | Hans-Christoph Wirth, Eli Zaretskii}. | ||
| 3531 | |||
| 3530 | 3532 | ||
| 3531 | The @code{view-crossref} feature was inspired by @i{Peter Galbraith's} | 3533 | The @code{view-crossref} feature was inspired by @i{Peter Galbraith's} |
| 3532 | @file{bib-cite.el}. | 3534 | @file{bib-cite.el}. |
| @@ -3668,6 +3670,12 @@ document. With prefix arg, replace only word-delimited matches. No | |||
| 3668 | active TAGS table is required. | 3670 | active TAGS table is required. |
| 3669 | @end deffn | 3671 | @end deffn |
| 3670 | 3672 | ||
| 3673 | @deffn Command reftex-isearch-minor-mode | ||
| 3674 | Toggle a minor mode which enables incremental search to work globally | ||
| 3675 | on the entire multifile document. Files will be searched in th | ||
| 3676 | sequence they appear in the document. | ||
| 3677 | @end deffn | ||
| 3678 | |||
| 3671 | @deffn Command reftex-goto-label | 3679 | @deffn Command reftex-goto-label |
| 3672 | Prompt for a label (with completion) and jump to the location of this | 3680 | Prompt for a label (with completion) and jump to the location of this |
| 3673 | label. Optional prefix argument @var{other-window} goes to the label in | 3681 | label. Optional prefix argument @var{other-window} goes to the label in |
diff --git a/src/ChangeLog b/src/ChangeLog index e9a38a7d64c..3bb83dc10e2 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,38 @@ | |||
| 1 | 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * keymap.c (access_keymap): YAILOM. | ||
| 4 | |||
| 5 | 2005-01-27 Kim F. Storm <storm@cua.dk> | ||
| 6 | |||
| 7 | * xdisp.c (get_phys_cursor_geometry): New function to calculate | ||
| 8 | phys cursor position and size for hollow cursor. Position is | ||
| 9 | aligned with get_glyph_string_clip_rect and ensures that a hollow | ||
| 10 | cursor is shown, even when the actual glyph is not visible. | ||
| 11 | |||
| 12 | * dispextern.h (get_phys_cursor_geometry): Add prototype. | ||
| 13 | |||
| 14 | * xterm.c (x_clip_to_row): Ensure y >= 0. | ||
| 15 | (x_draw_hollow_cursor): Use get_phys_cursor_geometry. | ||
| 16 | |||
| 17 | * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry. | ||
| 18 | |||
| 19 | * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry. | ||
| 20 | |||
| 21 | 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 22 | |||
| 23 | * xterm.c (x_error_quitter): Add a prototype. Make it static again. | ||
| 24 | |||
| 25 | 2005-01-27 Kim F. Storm <storm@cua.dk> | ||
| 26 | |||
| 27 | * xdisp.c (get_glyph_string_clip_rect): Always show a cursor | ||
| 28 | glyph, even when row is only partially visible and actual cursor | ||
| 29 | position is not visible. | ||
| 30 | |||
| 31 | 2005-01-24 Richard M. Stallman <rms@gnu.org> | ||
| 32 | |||
| 33 | * xterm.c (x_error_quitter): No longer static, and moved after | ||
| 34 | x_error_handler. | ||
| 35 | |||
| 1 | 2005-01-24 Kim F. Storm <storm@cua.dk> | 36 | 2005-01-24 Kim F. Storm <storm@cua.dk> |
| 2 | 37 | ||
| 3 | * xdisp.c (move_it_by_lines): If we move forward after going too | 38 | * xdisp.c (move_it_by_lines): If we move forward after going too |
| @@ -51,7 +86,7 @@ | |||
| 51 | 2005-01-22 Steven Tamm <steventamm@mac.com> | 86 | 2005-01-22 Steven Tamm <steventamm@mac.com> |
| 52 | 87 | ||
| 53 | * s/darwin.h: Removed PTY_ITERATION from here. | 88 | * s/darwin.h: Removed PTY_ITERATION from here. |
| 54 | (DARWIN): Defined. | 89 | (DARWIN): Define. |
| 55 | * process.c (init_process): Default process-connection-type to | 90 | * process.c (init_process): Default process-connection-type to |
| 56 | nil on darwin 6 or less, t if it is 7 or higher. This way the | 91 | nil on darwin 6 or less, t if it is 7 or higher. This way the |
| 57 | broken pty behavior is still allowed on darwin 6 for interactive | 92 | broken pty behavior is still allowed on darwin 6 for interactive |
| @@ -94,17 +129,16 @@ | |||
| 94 | 129 | ||
| 95 | 2005-01-20 Steven Tamm <steventamm@mac.com> | 130 | 2005-01-20 Steven Tamm <steventamm@mac.com> |
| 96 | 131 | ||
| 97 | * editfns.c (Voperating_system_release): Added. | 132 | * editfns.c (Voperating_system_release): Add. |
| 98 | (init_editfns): Assign new variable operating-system-release | 133 | (init_editfns): Assign new variable operating-system-release |
| 99 | based on call to uname if available. | 134 | based on call to uname if available. |
| 100 | (get_operating_system_release): Added function to | 135 | (get_operating_system_release): Add function to |
| 101 | allow c-level access to operating system release. | 136 | allow c-level access to operating system release. |
| 102 | 137 | ||
| 103 | * config.h: Regenerated. | 138 | * config.h: Regenerated. |
| 104 | 139 | ||
| 105 | * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or | 140 | * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less. |
| 106 | less. | 141 | (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for |
| 107 | (MIN_PTY_KERNEL_VERSION): Defined minimum kernel version for | ||
| 108 | using ptys as '7'. | 142 | using ptys as '7'. |
| 109 | 143 | ||
| 110 | 2005-01-20 Kim F. Storm <storm@cua.dk> | 144 | 2005-01-20 Kim F. Storm <storm@cua.dk> |
| @@ -146,8 +180,8 @@ | |||
| 146 | 180 | ||
| 147 | 2005-01-17 Kim F. Storm <storm@cua.dk> | 181 | 2005-01-17 Kim F. Storm <storm@cua.dk> |
| 148 | 182 | ||
| 149 | * dispnew.c (mode_line_string, marginal_area_string): Fix | 183 | * dispnew.c (mode_line_string, marginal_area_string): |
| 150 | off-by-one error in search for glyph. | 184 | Fix off-by-one error in search for glyph. |
| 151 | 185 | ||
| 152 | 2005-01-16 Kim F. Storm <storm@cua.dk> | 186 | 2005-01-16 Kim F. Storm <storm@cua.dk> |
| 153 | 187 | ||
| @@ -155,7 +189,7 @@ | |||
| 155 | 189 | ||
| 156 | 2005-01-16 Steven Tamm <steventamm@mac.com> | 190 | 2005-01-16 Steven Tamm <steventamm@mac.com> |
| 157 | 191 | ||
| 158 | * macterm.c (mac_to_x_fontname): Removed spurious argument. | 192 | * macterm.c (mac_to_x_fontname): Remove spurious argument. |
| 159 | 193 | ||
| 160 | 2005-01-16 Andreas Schwab <schwab@suse.de> | 194 | 2005-01-16 Andreas Schwab <schwab@suse.de> |
| 161 | 195 | ||
| @@ -171,7 +205,7 @@ | |||
| 171 | * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW) | 205 | * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW) |
| 172 | (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES): | 206 | (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES): |
| 173 | New flags for readable_events. | 207 | New flags for readable_events. |
| 174 | (get_filtered_input_pending, readable_filtered_events): Removed. | 208 | (get_filtered_input_pending, readable_filtered_events): Remove. |
| 175 | (tracking_off): Call readable_events and get_input_pending with | 209 | (tracking_off): Call readable_events and get_input_pending with |
| 176 | flag READABLE_EVENTS_DO_TIMERS_NOW. | 210 | flag READABLE_EVENTS_DO_TIMERS_NOW. |
| 177 | (readable_events): Move code from old readable_filtered_events here, | 211 | (readable_events): Move code from old readable_filtered_events here, |
| @@ -211,8 +245,8 @@ | |||
| 211 | 245 | ||
| 212 | 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | 246 | 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> |
| 213 | 247 | ||
| 214 | * macfns.c (x_set_foreground_color, x_set_background_color): Sync | 248 | * macfns.c (x_set_foreground_color, x_set_background_color): |
| 215 | with xfns.c. | 249 | Sync with xfns.c. |
| 216 | (mac_window, x_create_tip_frame): Use XSetWindowBackground. | 250 | (mac_window, x_create_tip_frame): Use XSetWindowBackground. |
| 217 | * macterm.c (XSetBackground, XSetWindowBackground): New functions. | 251 | * macterm.c (XSetBackground, XSetWindowBackground): New functions. |
| 218 | * macterm.h (XSetBackground, XSetWindowBackground): Add externs. | 252 | * macterm.h (XSetBackground, XSetWindowBackground): Add externs. |
| @@ -269,8 +303,8 @@ | |||
| 269 | (get_next_display_element): Test Vshow_nonbreak_escape. | 303 | (get_next_display_element): Test Vshow_nonbreak_escape. |
| 270 | Do not setup escape_glyph_face. | 304 | Do not setup escape_glyph_face. |
| 271 | Properly merge escape-glyph face or face from display table with | 305 | Properly merge escape-glyph face or face from display table with |
| 272 | current face for escape and control characters. Set | 306 | current face for escape and control characters. |
| 273 | it->dpvec_face_id to relevant face id instead of adding it to each | 307 | Set it->dpvec_face_id to relevant face id instead of adding it to each |
| 274 | element of display vector. | 308 | element of display vector. |
| 275 | (next_element_from_display_vector): If it->dpvec_face_id is set, | 309 | (next_element_from_display_vector): If it->dpvec_face_id is set, |
| 276 | use that instead of lface_id from glyph itself. | 310 | use that instead of lface_id from glyph itself. |
| @@ -294,8 +328,7 @@ | |||
| 294 | 328 | ||
| 295 | * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar) | 329 | * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar) |
| 296 | (xg_tool_bar_callback, xg_tool_bar_help_callback) | 330 | (xg_tool_bar_callback, xg_tool_bar_help_callback) |
| 297 | (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler | 331 | (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning. |
| 298 | warning. | ||
| 299 | 332 | ||
| 300 | * xselect.c (x_get_foreign_selection, x_fill_property_data) | 333 | * xselect.c (x_get_foreign_selection, x_fill_property_data) |
| 301 | (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with | 334 | (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with |
| @@ -353,8 +386,8 @@ | |||
| 353 | [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. | 386 | [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. |
| 354 | [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a | 387 | [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a |
| 355 | file dialog is in action. | 388 | file dialog is in action. |
| 356 | [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise. Reject | 389 | [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise. |
| 357 | only when there are no filename items. Set background color | 390 | Reject only when there are no filename items. Set background color |
| 358 | before (un)highlighting the window below the dragged items. | 391 | before (un)highlighting the window below the dragged items. |
| 359 | (XTread_socket) [!USE_CARBON_EVENTS]: Don't call do_window_update. | 392 | (XTread_socket) [!USE_CARBON_EVENTS]: Don't call do_window_update. |
| 360 | 393 | ||
| @@ -438,8 +471,7 @@ | |||
| 438 | 471 | ||
| 439 | * fileio.c (Finsert_file_contents): Don't use | 472 | * fileio.c (Finsert_file_contents): Don't use |
| 440 | current_buffer->buffer_file_coding_system even if REPLACE is | 473 | current_buffer->buffer_file_coding_system even if REPLACE is |
| 441 | non-nil. Call Qafter_insert_file_set_coding with the second arg | 474 | non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT. |
| 442 | VISIT. | ||
| 443 | 475 | ||
| 444 | * fontset.h (struct font_info): New members space_width and | 476 | * fontset.h (struct font_info): New members space_width and |
| 445 | average_width. | 477 | average_width. |
| @@ -452,8 +484,7 @@ | |||
| 452 | * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to | 484 | * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to |
| 453 | fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to | 485 | fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to |
| 454 | fontp->space_width. | 486 | fontp->space_width. |
| 455 | (x_load_font): Calculate fontp->space_width and | 487 | (x_load_font): Calculate fontp->space_width and fontp->average_width. |
| 456 | fontp->average_width. | ||
| 457 | (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH. | 488 | (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH. |
| 458 | 489 | ||
| 459 | * xdisp.c (x_produce_glyphs): Calculate tab width by | 490 | * xdisp.c (x_produce_glyphs): Calculate tab width by |
| @@ -462,8 +493,7 @@ | |||
| 462 | 2004-12-29 Sanghyuk Suh <han9kin@mac.com> | 493 | 2004-12-29 Sanghyuk Suh <han9kin@mac.com> |
| 463 | 494 | ||
| 464 | * macterm.c (SelectionRange): Add Xcode position apple event struct. | 495 | * macterm.c (SelectionRange): Add Xcode position apple event struct. |
| 465 | (do_ae_open_documents): Handle Xcode-style file position open | 496 | (do_ae_open_documents): Handle Xcode-style file position open events. |
| 466 | events. | ||
| 467 | 497 | ||
| 468 | 2004-12-29 Luc Teirlinck <teirllm@auburn.edu> | 498 | 2004-12-29 Luc Teirlinck <teirllm@auburn.edu> |
| 469 | 499 | ||
| @@ -489,11 +519,16 @@ | |||
| 489 | init_mac_drag_n_drop. | 519 | init_mac_drag_n_drop. |
| 490 | (mac_do_track_drag): New function and declaration. | 520 | (mac_do_track_drag): New function and declaration. |
| 491 | (install_window_handler): Return OSErr value. | 521 | (install_window_handler): Return OSErr value. |
| 492 | (install_window_handler) [TARGET_API_MAC_CARBON]: Register | 522 | (install_window_handler) [TARGET_API_MAC_CARBON]: |
| 493 | handlers for tracking/receiving drag-and-drop items. | 523 | Register handlers for tracking/receiving drag-and-drop items. |
| 494 | (do_ae_open_documents): Generate unibyte strings for filenames. | 524 | (do_ae_open_documents): Generate unibyte strings for filenames. |
| 495 | (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise. Reject | 525 | <<<<<<< ChangeLog |
| 496 | only non-filename items. Set event modifiers. Set return value. | 526 | (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise. |
| 527 | Reject only non-filename items. Set event modifiers and return value. | ||
| 528 | ======= | ||
| 529 | (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise. | ||
| 530 | Reject only non-filename items. Set event modifiers, and return value. | ||
| 531 | >>>>>>> 1.4187 | ||
| 497 | 532 | ||
| 498 | 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu> | 533 | 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu> |
| 499 | 534 | ||
| @@ -517,8 +552,8 @@ | |||
| 517 | * xmenu.c (popup_get_selection): Only pop down dialogs | 552 | * xmenu.c (popup_get_selection): Only pop down dialogs |
| 518 | on C-g and Escape. | 553 | on C-g and Escape. |
| 519 | (popup_get_selection): Remove parameter down_on_keypress. | 554 | (popup_get_selection): Remove parameter down_on_keypress. |
| 520 | (create_and_show_popup_menu, create_and_show_dialog): Remove | 555 | (create_and_show_popup_menu, create_and_show_dialog): |
| 521 | parameter down_on_keypress to popup_get_selection. | 556 | Remove parameter down_on_keypress to popup_get_selection. |
| 522 | 557 | ||
| 523 | 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | 558 | 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> |
| 524 | 559 | ||
| @@ -535,8 +570,8 @@ | |||
| 535 | 570 | ||
| 536 | * frame.c (x_set_frame_parameters, x_report_frame_params) | 571 | * frame.c (x_set_frame_parameters, x_report_frame_params) |
| 537 | (x_set_fullscreen): Remove #ifndef HAVE_CARBON. | 572 | (x_set_fullscreen): Remove #ifndef HAVE_CARBON. |
| 538 | (x_set_border_width, Vdefault_frame_scroll_bars): Change | 573 | (x_set_border_width, Vdefault_frame_scroll_bars): |
| 539 | HAVE_CARBON to MAC_OS. | 574 | Change HAVE_CARBON to MAC_OS. |
| 540 | 575 | ||
| 541 | * image.c [MAC_OS]: Include sys/stat.h. | 576 | * image.c [MAC_OS]: Include sys/stat.h. |
| 542 | [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and | 577 | [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and |
| @@ -544,8 +579,7 @@ | |||
| 544 | 579 | ||
| 545 | * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern. | 580 | * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern. |
| 546 | [!MAC_OSX] (select): Use mac_wait_next_event. | 581 | [!MAC_OSX] (select): Use mac_wait_next_event. |
| 547 | [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to | 582 | [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes. |
| 548 | Vexec_suffixes. | ||
| 549 | [!MAC_OSX] (select, run_mac_command): Change `#ifdef | 583 | [!MAC_OSX] (select, run_mac_command): Change `#ifdef |
| 550 | TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'. | 584 | TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'. |
| 551 | (mac_clear_font_name_table): Add extern. | 585 | (mac_clear_font_name_table): Add extern. |
| @@ -564,21 +598,19 @@ | |||
| 564 | * macfns.c (mac_initialized): Remove extern. | 598 | * macfns.c (mac_initialized): Remove extern. |
| 565 | (stricmp): Put in #if 0. All callers changed to use xstricmp in | 599 | (stricmp): Put in #if 0. All callers changed to use xstricmp in |
| 566 | xfaces.c. | 600 | xfaces.c. |
| 567 | (strnicmp): Decrement `n' at the end of each loop, not the | 601 | (strnicmp): Decrement `n' at the end of each loop, not the beginning. |
| 568 | beginning. | 602 | (check_mac): Use the term "Mac native windows" instead of "Mac OS". |
| 569 | (check_mac): Use the term "Mac native windows" instead of "Mac | ||
| 570 | OS". | ||
| 571 | (check_x_display_info, x_display_info_for_name): Sync with xfns.c. | 603 | (check_x_display_info, x_display_info_for_name): Sync with xfns.c. |
| 572 | (mac_get_rdb_resource): New function (from w32reg.c). | 604 | (mac_get_rdb_resource): New function (from w32reg.c). |
| 573 | (x_get_string_resource): Use it. | 605 | (x_get_string_resource): Use it. |
| 574 | (install_window_handler): Add extern. | 606 | (install_window_handler): Add extern. |
| 575 | (mac_window): New function. | 607 | (mac_window): New function. |
| 576 | (Fx_create_frame): Use it instead of make_mac_frame. Set | 608 | (Fx_create_frame): Use it instead of make_mac_frame. |
| 577 | parameter for Qfullscreen. Call x_wm_set_size_hint. | 609 | Set parameter for Qfullscreen. Call x_wm_set_size_hint. |
| 578 | (Fx_open_connection, Fx_close_connection): New defuns. | 610 | (Fx_open_connection, Fx_close_connection): New defuns. |
| 579 | (syms_of_macfns): Defsubr them. | 611 | (syms_of_macfns): Defsubr them. |
| 580 | (x_create_tip_frame) [TARGET_API_MAC_CARBON]: Add | 612 | (x_create_tip_frame) [TARGET_API_MAC_CARBON]: |
| 581 | kWindowNoUpdatesAttribute to the window attribute. | 613 | Add kWindowNoUpdatesAttribute to the window attribute. |
| 582 | (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow. | 614 | (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow. |
| 583 | (x_create_tip_frame): Don't call ShowWindow. | 615 | (x_create_tip_frame): Don't call ShowWindow. |
| 584 | (Fx_show_tip): Call ShowWindow. | 616 | (Fx_show_tip): Call ShowWindow. |
| @@ -587,8 +619,7 @@ | |||
| 587 | (mac_frame_parm_handlers): Set handlers for Qfullscreen. | 619 | (mac_frame_parm_handlers): Set handlers for Qfullscreen. |
| 588 | (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0. | 620 | (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0. |
| 589 | 621 | ||
| 590 | * macgui.h [!MAC_OSX]: Don't include Controls.h. Include | 622 | * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h. |
| 591 | Windows.h. | ||
| 592 | (Window): Typedef to WindowPtr and move outside `#if | 623 | (Window): Typedef to WindowPtr and move outside `#if |
| 593 | TARGET_API_MAC_CARBON'. | 624 | TARGET_API_MAC_CARBON'. |
| 594 | (XSizeHints): New struct. | 625 | (XSizeHints): New struct. |
| @@ -607,8 +638,12 @@ | |||
| 607 | (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window | 638 | (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window |
| 608 | if the position is neither user-specified nor program-specified. | 639 | if the position is neither user-specified nor program-specified. |
| 609 | (x_free_frame_resources): Free size_hints. | 640 | (x_free_frame_resources): Free size_hints. |
| 610 | (x_wm_set_size_hint): Allocate size_hints if needed. Set | 641 | <<<<<<< ChangeLog |
| 611 | size_hints. | 642 | (x_wm_set_size_hint): Allocate size_hints if needed. |
| 643 | Set size_hints. | ||
| 644 | ======= | ||
| 645 | (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints. | ||
| 646 | >>>>>>> 1.4187 | ||
| 612 | (mac_clear_font_name_table): New function. | 647 | (mac_clear_font_name_table): New function. |
| 613 | (mac_do_list_fonts): Initialize font_name_table if needed. | 648 | (mac_do_list_fonts): Initialize font_name_table if needed. |
| 614 | (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT | 649 | (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT |
| @@ -622,8 +657,7 @@ | |||
| 622 | (do_window_update): Add BeginUpdate/EndUpdate for the tooltip | 657 | (do_window_update): Add BeginUpdate/EndUpdate for the tooltip |
| 623 | window. Use UpdateControls. Get the rectangle that should be | 658 | window. Use UpdateControls. Get the rectangle that should be |
| 624 | updated and restrict the target of expose_frame to it. | 659 | updated and restrict the target of expose_frame to it. |
| 625 | (do_grow_window): Set minimum height/width according to | 660 | (do_grow_window): Set minimum height/width according to size_hints. |
| 626 | size_hints. | ||
| 627 | (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow. | 661 | (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow. |
| 628 | (do_zoom_window): Don't use x_set_window_size. | 662 | (do_zoom_window): Don't use x_set_window_size. |
| 629 | [USE_CARBON_EVENTS] (mac_handle_window_event): New function. | 663 | [USE_CARBON_EVENTS] (mac_handle_window_event): New function. |
| @@ -635,10 +669,10 @@ | |||
| 635 | (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event. | 669 | (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event. |
| 636 | Update mouse_region when mouse is moved. | 670 | Update mouse_region when mouse is moved. |
| 637 | (make_mac_frame): Remove. | 671 | (make_mac_frame): Remove. |
| 638 | (make_mac_terminal_frame): Put in #ifdef MAC_OS8. Initialize | 672 | (make_mac_terminal_frame): Put in #ifdef MAC_OS8. |
| 639 | mouse pointer shapes. Change values of f->left_pos and | 673 | Initialize mouse pointer shapes. Change values of f->left_pos and |
| 640 | f->top_pos. Don't use make_mac_frame. Use NewCWindow. Don't | 674 | f->top_pos. Don't use make_mac_frame. Use NewCWindow. |
| 641 | call ShowWindow. | 675 | Don't call ShowWindow. |
| 642 | (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from | 676 | (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from |
| 643 | Vinvocation_name and Vsystem_name. | 677 | Vinvocation_name and Vsystem_name. |
| 644 | (mac_make_rdb): New function (from w32term.c). | 678 | (mac_make_rdb): New function (from w32term.c). |
| @@ -661,17 +695,21 @@ | |||
| 661 | 695 | ||
| 662 | 2004-12-27 Richard M. Stallman <rms@gnu.org> | 696 | 2004-12-27 Richard M. Stallman <rms@gnu.org> |
| 663 | 697 | ||
| 664 | * buffer.c (Fbuffer_disable_undo): Deleted (moved to simple.el). | 698 | <<<<<<< ChangeLog |
| 699 | * buffer.c (Fbuffer_disable_undo): Delete (moved to simple.el). | ||
| 700 | ======= | ||
| 701 | * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el). | ||
| 702 | >>>>>>> 1.4187 | ||
| 665 | (syms_of_buffer): Don't defsubr it. | 703 | (syms_of_buffer): Don't defsubr it. |
| 666 | 704 | ||
| 667 | * process.c (list_processes_1): Set undo_list instead | 705 | * process.c (list_processes_1): Set undo_list instead |
| 668 | of calling Fbuffer_disable_undo. | 706 | of calling Fbuffer_disable_undo. |
| 669 | 707 | ||
| 670 | * xdisp.c (single_display_spec_string_p): Renamed from | 708 | * xdisp.c (single_display_spec_string_p): Rename from |
| 671 | single_display_prop_string_p. | 709 | single_display_prop_string_p. |
| 672 | (single_display_spec_intangible_p): Renamed from | 710 | (single_display_spec_intangible_p): Rename from |
| 673 | single_display_prop_intangible_p. | 711 | single_display_prop_intangible_p. |
| 674 | (handle_single_display_spec): Renamed from handle_single_display_prop. | 712 | (handle_single_display_spec): Rename from handle_single_display_prop. |
| 675 | Rewritten to be easier to understand. | 713 | Rewritten to be easier to understand. |
| 676 | 714 | ||
| 677 | Change in load-history format. Functions now get (defun . NAME), | 715 | Change in load-history format. Functions now get (defun . NAME), |
| @@ -755,7 +793,7 @@ | |||
| 755 | 793 | ||
| 756 | * alloc.c (Fgarbage_collect): Update call to truncate_undo_list. | 794 | * alloc.c (Fgarbage_collect): Update call to truncate_undo_list. |
| 757 | Call that at the very start. | 795 | Call that at the very start. |
| 758 | (undo_limit, undo_strong_limit, undo_outer_limit): Moved to undo.c. | 796 | (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c. |
| 759 | (syms_of_alloc): Don't define undo-limit, | 797 | (syms_of_alloc): Don't define undo-limit, |
| 760 | undo-strong-limit and undo-outer-limit here. | 798 | undo-strong-limit and undo-outer-limit here. |
| 761 | 799 | ||
| @@ -790,8 +828,8 @@ | |||
| 790 | 828 | ||
| 791 | 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | 829 | 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> |
| 792 | 830 | ||
| 793 | * macterm.c (endif, x_font_name_to_mac_font_name): Use | 831 | * macterm.c (endif, x_font_name_to_mac_font_name): |
| 794 | maccentraleurroman instead of maccentraleuropean | 832 | Use maccentraleurroman instead of maccentraleuropean |
| 795 | (mac_c_string_match, mac_do_list_fonts): Speed up font search by | 833 | (mac_c_string_match, mac_do_list_fonts): Speed up font search by |
| 796 | quickly finding a specific font without needing regexps. | 834 | quickly finding a specific font without needing regexps. |
| 797 | 835 | ||
| @@ -817,8 +855,8 @@ | |||
| 817 | 855 | ||
| 818 | * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK. | 856 | * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK. |
| 819 | 857 | ||
| 820 | * process.c (send_process_trap, sigchld_handler): Call | 858 | * process.c (send_process_trap, sigchld_handler): |
| 821 | SIGNAL_THREAD_CHECK. | 859 | Call SIGNAL_THREAD_CHECK. |
| 822 | 860 | ||
| 823 | * data.c (arith_error): Call SIGNAL_THREAD_CHECK. | 861 | * data.c (arith_error): Call SIGNAL_THREAD_CHECK. |
| 824 | 862 | ||
| @@ -908,7 +946,7 @@ | |||
| 908 | 946 | ||
| 909 | * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC. | 947 | * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC. |
| 910 | 948 | ||
| 911 | 2004-12-07 Stefan <monnier@iro.umontreal.ca> | 949 | 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca> |
| 912 | 950 | ||
| 913 | * eval.c (init_eval_once): Increase max_specpdl_size to 1000. | 951 | * eval.c (init_eval_once): Increase max_specpdl_size to 1000. |
| 914 | 952 | ||
| @@ -2056,7 +2094,7 @@ | |||
| 2056 | 2094 | ||
| 2057 | * window.c (Fspecial_display_p): Doc fix. | 2095 | * window.c (Fspecial_display_p): Doc fix. |
| 2058 | 2096 | ||
| 2059 | 2004-10-15 Stefan <monnier@iro.umontreal.ca> | 2097 | 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2060 | 2098 | ||
| 2061 | * doc.c (Fsubstitute_command_keys): Fix remap-handling. | 2099 | * doc.c (Fsubstitute_command_keys): Fix remap-handling. |
| 2062 | Don't ignore menus, because where-is-internal already does it for us. | 2100 | Don't ignore menus, because where-is-internal already does it for us. |
diff --git a/src/dispextern.h b/src/dispextern.h index ac56cdd31f2..5edc213fba1 100644 --- a/src/dispextern.h +++ b/src/dispextern.h | |||
| @@ -2640,6 +2640,8 @@ extern void x_fix_overlapping_area P_ ((struct window *, struct glyph_row *, | |||
| 2640 | extern void draw_phys_cursor_glyph P_ ((struct window *, | 2640 | extern void draw_phys_cursor_glyph P_ ((struct window *, |
| 2641 | struct glyph_row *, | 2641 | struct glyph_row *, |
| 2642 | enum draw_glyphs_face)); | 2642 | enum draw_glyphs_face)); |
| 2643 | extern int get_phys_cursor_geometry P_ ((struct window *, struct glyph_row *, | ||
| 2644 | struct glyph *, int *)); | ||
| 2643 | extern void erase_phys_cursor P_ ((struct window *)); | 2645 | extern void erase_phys_cursor P_ ((struct window *)); |
| 2644 | extern void display_and_set_cursor P_ ((struct window *, | 2646 | extern void display_and_set_cursor P_ ((struct window *, |
| 2645 | int, int, int, int, int)); | 2647 | int, int, int, int, int)); |
diff --git a/src/keymap.c b/src/keymap.c index 074cc1706bf..2977b4dec09 100644 --- a/src/keymap.c +++ b/src/keymap.c | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | /* Manipulation of keymaps | 1 | /* Manipulation of keymaps |
| 2 | Copyright (C) 1985, 86,87,88,93,94,95,98,99, 2000, 01, 2004 | 2 | Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995, 1998, 1999, 2000, |
| 3 | Free Software Foundation, Inc. | 3 | 2001, 2004, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | This file is part of GNU Emacs. | 5 | This file is part of GNU Emacs. |
| 6 | 6 | ||
| @@ -527,7 +527,7 @@ access_keymap (map, idx, t_ok, noinherit, autoload) | |||
| 527 | GCPRO1 (map); | 527 | GCPRO1 (map); |
| 528 | /* A strange value in which Meta is set would cause | 528 | /* A strange value in which Meta is set would cause |
| 529 | infinite recursion. Protect against that. */ | 529 | infinite recursion. Protect against that. */ |
| 530 | if (meta_prefix_char & CHAR_META) | 530 | if (XINT (meta_prefix_char) & CHAR_META) |
| 531 | meta_prefix_char = make_number (27); | 531 | meta_prefix_char = make_number (27); |
| 532 | meta_map = get_keymap (access_keymap (map, meta_prefix_char, | 532 | meta_map = get_keymap (access_keymap (map, meta_prefix_char, |
| 533 | t_ok, noinherit, autoload), | 533 | t_ok, noinherit, autoload), |
diff --git a/src/macterm.c b/src/macterm.c index 9a1ee834ce5..aeed88013e5 100644 --- a/src/macterm.c +++ b/src/macterm.c | |||
| @@ -4737,29 +4737,10 @@ x_draw_hollow_cursor (w, row) | |||
| 4737 | if (cursor_glyph == NULL) | 4737 | if (cursor_glyph == NULL) |
| 4738 | return; | 4738 | return; |
| 4739 | 4739 | ||
| 4740 | /* Compute the width of the rectangle to draw. If on a stretch | 4740 | /* Compute frame-relative coordinates for phys cursor. */ |
| 4741 | glyph, and `x-stretch-block-cursor' is nil, don't draw a | ||
| 4742 | rectangle as wide as the glyph, but use a canonical character | ||
| 4743 | width instead. */ | ||
| 4744 | wd = cursor_glyph->pixel_width - 1; | ||
| 4745 | if (cursor_glyph->type == STRETCH_GLYPH | ||
| 4746 | && !x_stretch_cursor_p) | ||
| 4747 | wd = min (FRAME_COLUMN_WIDTH (f), wd); | ||
| 4748 | w->phys_cursor_width = wd; | ||
| 4749 | |||
| 4750 | /* Compute frame-relative coordinates from window-relative | ||
| 4751 | coordinates. */ | ||
| 4752 | x = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x); | 4741 | x = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x); |
| 4753 | y = WINDOW_TO_FRAME_PIXEL_Y (w, w->phys_cursor.y); | 4742 | y = get_phys_cursor_geometry (w, row, cursor_glyph, &h); |
| 4754 | 4743 | wd = w->phys_cursor_width; | |
| 4755 | /* Compute the proper height and ascent of the rectangle, based | ||
| 4756 | on the actual glyph. Using the full height of the row looks | ||
| 4757 | bad when there are tall images on that row. */ | ||
| 4758 | h = max (min (FRAME_LINE_HEIGHT (f), row->height), | ||
| 4759 | cursor_glyph->ascent + cursor_glyph->descent); | ||
| 4760 | if (h < row->height) | ||
| 4761 | y += row->ascent /* - w->phys_cursor_ascent */ + cursor_glyph->descent - h; | ||
| 4762 | h--; | ||
| 4763 | 4744 | ||
| 4764 | /* The foreground of cursor_gc is typically the same as the normal | 4745 | /* The foreground of cursor_gc is typically the same as the normal |
| 4765 | background color, which can cause the cursor box to be invisible. */ | 4746 | background color, which can cause the cursor box to be invisible. */ |
diff --git a/src/w32term.c b/src/w32term.c index bffdd8f2565..151afb7e841 100644 --- a/src/w32term.c +++ b/src/w32term.c | |||
| @@ -5088,7 +5088,7 @@ x_draw_hollow_cursor (w, row) | |||
| 5088 | struct frame *f = XFRAME (WINDOW_FRAME (w)); | 5088 | struct frame *f = XFRAME (WINDOW_FRAME (w)); |
| 5089 | HDC hdc; | 5089 | HDC hdc; |
| 5090 | RECT rect; | 5090 | RECT rect; |
| 5091 | int wd, h; | 5091 | int h; |
| 5092 | struct glyph *cursor_glyph; | 5092 | struct glyph *cursor_glyph; |
| 5093 | HBRUSH hb = CreateSolidBrush (f->output_data.w32->cursor_pixel); | 5093 | HBRUSH hb = CreateSolidBrush (f->output_data.w32->cursor_pixel); |
| 5094 | 5094 | ||
| @@ -5098,34 +5098,12 @@ x_draw_hollow_cursor (w, row) | |||
| 5098 | if (cursor_glyph == NULL) | 5098 | if (cursor_glyph == NULL) |
| 5099 | return; | 5099 | return; |
| 5100 | 5100 | ||
| 5101 | /* Compute frame-relative coordinates from window-relative | 5101 | /* Compute frame-relative coordinates for phys cursor. */ |
| 5102 | coordinates. */ | ||
| 5103 | rect.left = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x); | 5102 | rect.left = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x); |
| 5104 | rect.top = (WINDOW_TO_FRAME_PIXEL_Y (w, w->phys_cursor.y) | 5103 | rect.top = get_phys_cursor_geometry (w, row, cursor_glyph, &h); |
| 5105 | + row->ascent - w->phys_cursor_ascent); | ||
| 5106 | |||
| 5107 | /* Compute the proper height and ascent of the rectangle, based | ||
| 5108 | on the actual glyph. Using the full height of the row looks | ||
| 5109 | bad when there are tall images on that row. */ | ||
| 5110 | h = max (min (FRAME_LINE_HEIGHT (f), row->height), | ||
| 5111 | cursor_glyph->ascent + cursor_glyph->descent); | ||
| 5112 | if (h < row->height) | ||
| 5113 | rect.top += row->ascent /* - w->phys_cursor_ascent */ + cursor_glyph->descent - h; | ||
| 5114 | h--; | ||
| 5115 | |||
| 5116 | rect.bottom = rect.top + h; | 5104 | rect.bottom = rect.top + h; |
| 5105 | rect.right = rect.left + w->phys_cursor_width; | ||
| 5117 | 5106 | ||
| 5118 | /* Compute the width of the rectangle to draw. If on a stretch | ||
| 5119 | glyph, and `x-stretch-block-cursor' is nil, don't draw a | ||
| 5120 | rectangle as wide as the glyph, but use a canonical character | ||
| 5121 | width instead. */ | ||
| 5122 | wd = cursor_glyph->pixel_width; /* TODO: Why off by one compared with X? */ | ||
| 5123 | if (cursor_glyph->type == STRETCH_GLYPH | ||
| 5124 | && !x_stretch_cursor_p) | ||
| 5125 | wd = min (FRAME_COLUMN_WIDTH (f), wd); | ||
| 5126 | w->phys_cursor_width = wd; | ||
| 5127 | |||
| 5128 | rect.right = rect.left + wd; | ||
| 5129 | hdc = get_frame_dc (f); | 5107 | hdc = get_frame_dc (f); |
| 5130 | /* Set clipping, draw the rectangle, and reset clipping again. */ | 5108 | /* Set clipping, draw the rectangle, and reset clipping again. */ |
| 5131 | w32_clip_to_row (w, row, TEXT_AREA, hdc); | 5109 | w32_clip_to_row (w, row, TEXT_AREA, hdc); |
diff --git a/src/xdisp.c b/src/xdisp.c index a8f36e04e38..7d7e510892b 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -1840,7 +1840,7 @@ get_glyph_string_clip_rect (s, nr) | |||
| 1840 | if (s->hl == DRAW_CURSOR) | 1840 | if (s->hl == DRAW_CURSOR) |
| 1841 | { | 1841 | { |
| 1842 | struct glyph *glyph = s->first_glyph; | 1842 | struct glyph *glyph = s->first_glyph; |
| 1843 | int height; | 1843 | int height, max_y; |
| 1844 | 1844 | ||
| 1845 | if (s->x > r.x) | 1845 | if (s->x > r.x) |
| 1846 | { | 1846 | { |
| @@ -1849,13 +1849,26 @@ get_glyph_string_clip_rect (s, nr) | |||
| 1849 | } | 1849 | } |
| 1850 | r.width = min (r.width, glyph->pixel_width); | 1850 | r.width = min (r.width, glyph->pixel_width); |
| 1851 | 1851 | ||
| 1852 | /* Don't draw cursor glyph taller than our actual glyph. */ | 1852 | /* If r.y is below window bottom, ensure that we still see a cursor. */ |
| 1853 | height = max (FRAME_LINE_HEIGHT (s->f), glyph->ascent + glyph->descent); | 1853 | height = min (glyph->ascent + glyph->descent, |
| 1854 | if (height < r.height) | 1854 | min (FRAME_LINE_HEIGHT (s->f), s->row->visible_height)); |
| 1855 | max_y = window_text_bottom_y (s->w) - height; | ||
| 1856 | max_y = WINDOW_TO_FRAME_PIXEL_Y (s->w, max_y); | ||
| 1857 | if (s->ybase - glyph->ascent > max_y) | ||
| 1855 | { | 1858 | { |
| 1856 | int max_y = r.y + r.height; | 1859 | r.y = max_y; |
| 1857 | r.y = min (max_y, s->ybase + glyph->descent - height); | 1860 | r.height = height; |
| 1858 | r.height = min (max_y - r.y, height); | 1861 | } |
| 1862 | else | ||
| 1863 | { | ||
| 1864 | /* Don't draw cursor glyph taller than our actual glyph. */ | ||
| 1865 | height = max (FRAME_LINE_HEIGHT (s->f), glyph->ascent + glyph->descent); | ||
| 1866 | if (height < r.height) | ||
| 1867 | { | ||
| 1868 | max_y = r.y + r.height; | ||
| 1869 | r.y = min (max_y, max (r.y, s->ybase + glyph->descent - height)); | ||
| 1870 | r.height = min (max_y - r.y, height); | ||
| 1871 | } | ||
| 1859 | } | 1872 | } |
| 1860 | } | 1873 | } |
| 1861 | 1874 | ||
| @@ -1866,6 +1879,64 @@ get_glyph_string_clip_rect (s, nr) | |||
| 1866 | #endif | 1879 | #endif |
| 1867 | } | 1880 | } |
| 1868 | 1881 | ||
| 1882 | |||
| 1883 | /* EXPORT: | ||
| 1884 | Return the position and height of the phys cursor in window W. | ||
| 1885 | Set w->phys_cursor_width to width of phys cursor. | ||
| 1886 | */ | ||
| 1887 | |||
| 1888 | int | ||
| 1889 | get_phys_cursor_geometry (w, row, glyph, heightp) | ||
| 1890 | struct window *w; | ||
| 1891 | struct glyph_row *row; | ||
| 1892 | struct glyph *glyph; | ||
| 1893 | int *heightp; | ||
| 1894 | { | ||
| 1895 | struct frame *f = XFRAME (WINDOW_FRAME (w)); | ||
| 1896 | int x, y, wd, h, h0, y0; | ||
| 1897 | |||
| 1898 | /* Compute the width of the rectangle to draw. If on a stretch | ||
| 1899 | glyph, and `x-stretch-block-cursor' is nil, don't draw a | ||
| 1900 | rectangle as wide as the glyph, but use a canonical character | ||
| 1901 | width instead. */ | ||
| 1902 | wd = glyph->pixel_width - 1; | ||
| 1903 | #ifdef HAVE_NTGUI | ||
| 1904 | wd++; /* Why? */ | ||
| 1905 | #endif | ||
| 1906 | if (glyph->type == STRETCH_GLYPH | ||
| 1907 | && !x_stretch_cursor_p) | ||
| 1908 | wd = min (FRAME_COLUMN_WIDTH (f), wd); | ||
| 1909 | w->phys_cursor_width = wd; | ||
| 1910 | |||
| 1911 | y = w->phys_cursor.y + row->ascent - glyph->ascent; | ||
| 1912 | |||
| 1913 | /* If y is below window bottom, ensure that we still see a cursor. */ | ||
| 1914 | h0 = min (FRAME_LINE_HEIGHT (f), row->visible_height); | ||
| 1915 | |||
| 1916 | h = max (h0, glyph->ascent + glyph->descent); | ||
| 1917 | h0 = min (h0, glyph->ascent + glyph->descent); | ||
| 1918 | |||
| 1919 | y0 = WINDOW_HEADER_LINE_HEIGHT (w); | ||
| 1920 | if (y < y0) | ||
| 1921 | { | ||
| 1922 | h = max (h - (y0 - y) + 1, h0); | ||
| 1923 | y = y0 - 1; | ||
| 1924 | } | ||
| 1925 | else | ||
| 1926 | { | ||
| 1927 | y0 = window_text_bottom_y (w) - h0; | ||
| 1928 | if (y > y0) | ||
| 1929 | { | ||
| 1930 | h += y - y0; | ||
| 1931 | y = y0; | ||
| 1932 | } | ||
| 1933 | } | ||
| 1934 | |||
| 1935 | *heightp = h - 1; | ||
| 1936 | return WINDOW_TO_FRAME_PIXEL_Y (w, y); | ||
| 1937 | } | ||
| 1938 | |||
| 1939 | |||
| 1869 | #endif /* HAVE_WINDOW_SYSTEM */ | 1940 | #endif /* HAVE_WINDOW_SYSTEM */ |
| 1870 | 1941 | ||
| 1871 | 1942 | ||
diff --git a/src/xterm.c b/src/xterm.c index a68725a463c..c54b96a19b7 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | /* X Communication module for terminals which understand the X protocol. | 1 | /* X Communication module for terminals which understand the X protocol. |
| 2 | Copyright (C) 1989, 93, 94, 95, 96, 97, 98, 1999, 2000,01,02,03,04 | 2 | Copyright (C) 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, |
| 3 | Free Software Foundation, Inc. | 3 | 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | This file is part of GNU Emacs. | 5 | This file is part of GNU Emacs. |
| 6 | 6 | ||
| @@ -7157,7 +7157,7 @@ x_clip_to_row (w, row, area, gc) | |||
| 7157 | window_box (w, area, &window_x, &window_y, &window_width, 0); | 7157 | window_box (w, area, &window_x, &window_y, &window_width, 0); |
| 7158 | 7158 | ||
| 7159 | clip_rect.x = window_x; | 7159 | clip_rect.x = window_x; |
| 7160 | clip_rect.y = WINDOW_TO_FRAME_PIXEL_Y (w, row->y); | 7160 | clip_rect.y = WINDOW_TO_FRAME_PIXEL_Y (w, max (0, row->y)); |
| 7161 | clip_rect.y = max (clip_rect.y, window_y); | 7161 | clip_rect.y = max (clip_rect.y, window_y); |
| 7162 | clip_rect.width = window_width; | 7162 | clip_rect.width = window_width; |
| 7163 | clip_rect.height = row->visible_height; | 7163 | clip_rect.height = row->visible_height; |
| @@ -7187,29 +7187,10 @@ x_draw_hollow_cursor (w, row) | |||
| 7187 | if (cursor_glyph == NULL) | 7187 | if (cursor_glyph == NULL) |
| 7188 | return; | 7188 | return; |
| 7189 | 7189 | ||
| 7190 | /* Compute the width of the rectangle to draw. If on a stretch | 7190 | /* Compute frame-relative coordinates for phys cursor. */ |
| 7191 | glyph, and `x-stretch-block-cursor' is nil, don't draw a | ||
| 7192 | rectangle as wide as the glyph, but use a canonical character | ||
| 7193 | width instead. */ | ||
| 7194 | wd = cursor_glyph->pixel_width - 1; | ||
| 7195 | if (cursor_glyph->type == STRETCH_GLYPH | ||
| 7196 | && !x_stretch_cursor_p) | ||
| 7197 | wd = min (FRAME_COLUMN_WIDTH (f), wd); | ||
| 7198 | w->phys_cursor_width = wd; | ||
| 7199 | |||
| 7200 | /* Compute frame-relative coordinates from window-relative | ||
| 7201 | coordinates. */ | ||
| 7202 | x = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x); | 7191 | x = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x); |
| 7203 | y = WINDOW_TO_FRAME_PIXEL_Y (w, w->phys_cursor.y); | 7192 | y = get_phys_cursor_geometry (w, row, cursor_glyph, &h); |
| 7204 | 7193 | wd = w->phys_cursor_width; | |
| 7205 | /* Compute the proper height and ascent of the rectangle, based | ||
| 7206 | on the actual glyph. Using the full height of the row looks | ||
| 7207 | bad when there are tall images on that row. */ | ||
| 7208 | h = max (min (FRAME_LINE_HEIGHT (f), row->height), | ||
| 7209 | cursor_glyph->ascent + cursor_glyph->descent); | ||
| 7210 | if (h < row->height) | ||
| 7211 | y += row->ascent /* - w->phys_cursor_ascent */ + cursor_glyph->descent - h; | ||
| 7212 | h--; | ||
| 7213 | 7194 | ||
| 7214 | /* The foreground of cursor_gc is typically the same as the normal | 7195 | /* The foreground of cursor_gc is typically the same as the normal |
| 7215 | background color, which can cause the cursor box to be invisible. */ | 7196 | background color, which can cause the cursor box to be invisible. */ |
| @@ -7773,11 +7754,32 @@ x_connection_closed (dpy, error_message) | |||
| 7773 | error ("%s", error_msg); | 7754 | error ("%s", error_msg); |
| 7774 | } | 7755 | } |
| 7775 | 7756 | ||
| 7757 | /* We specifically use it before defining it, so that gcc doesn't inline it, | ||
| 7758 | otherwise gdb doesn't know how to properly put a breakpoint on it. */ | ||
| 7759 | static void x_error_quitter (Display *display, XErrorEvent *error); | ||
| 7760 | |||
| 7761 | /* This is the first-level handler for X protocol errors. | ||
| 7762 | It calls x_error_quitter or x_error_catcher. */ | ||
| 7763 | |||
| 7764 | static int | ||
| 7765 | x_error_handler (display, error) | ||
| 7766 | Display *display; | ||
| 7767 | XErrorEvent *error; | ||
| 7768 | { | ||
| 7769 | if (! NILP (x_error_message_string)) | ||
| 7770 | x_error_catcher (display, error); | ||
| 7771 | else | ||
| 7772 | x_error_quitter (display, error); | ||
| 7773 | return 0; | ||
| 7774 | } | ||
| 7776 | 7775 | ||
| 7777 | /* This is the usual handler for X protocol errors. | 7776 | /* This is the usual handler for X protocol errors. |
| 7778 | It kills all frames on the display that we got the error for. | 7777 | It kills all frames on the display that we got the error for. |
| 7779 | If that was the only one, it prints an error message and kills Emacs. */ | 7778 | If that was the only one, it prints an error message and kills Emacs. */ |
| 7780 | 7779 | ||
| 7780 | /* It is after x_error_handler so that it won't get inlined in | ||
| 7781 | x_error_handler. */ | ||
| 7782 | |||
| 7781 | static void | 7783 | static void |
| 7782 | x_error_quitter (display, error) | 7784 | x_error_quitter (display, error) |
| 7783 | Display *display; | 7785 | Display *display; |
| @@ -7795,21 +7797,6 @@ x_error_quitter (display, error) | |||
| 7795 | } | 7797 | } |
| 7796 | 7798 | ||
| 7797 | 7799 | ||
| 7798 | /* This is the first-level handler for X protocol errors. | ||
| 7799 | It calls x_error_quitter or x_error_catcher. */ | ||
| 7800 | |||
| 7801 | static int | ||
| 7802 | x_error_handler (display, error) | ||
| 7803 | Display *display; | ||
| 7804 | XErrorEvent *error; | ||
| 7805 | { | ||
| 7806 | if (! NILP (x_error_message_string)) | ||
| 7807 | x_error_catcher (display, error); | ||
| 7808 | else | ||
| 7809 | x_error_quitter (display, error); | ||
| 7810 | return 0; | ||
| 7811 | } | ||
| 7812 | |||
| 7813 | /* This is the handler for X IO errors, always. | 7800 | /* This is the handler for X IO errors, always. |
| 7814 | It kills all frames on the display that we lost touch with. | 7801 | It kills all frames on the display that we lost touch with. |
| 7815 | If that was the only one, it prints an error message and kills Emacs. */ | 7802 | If that was the only one, it prints an error message and kills Emacs. */ |