diff options
| author | Karoly Lorentey | 2005-03-16 15:59:10 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2005-03-16 15:59:10 +0000 |
| commit | a810eaf92838985d9648acb470dc3c8d26847c15 (patch) | |
| tree | 026be88abb42bb9bbfcf6574e532f4339b82f211 | |
| parent | 3453bb3a36766b297909a2b1aae2681258ab3118 (diff) | |
| parent | 613f367343dc8e9ab03519472d7b49895f184ab1 (diff) | |
| download | emacs-a810eaf92838985d9648acb470dc3c8d26847c15.tar.gz emacs-a810eaf92838985d9648acb470dc3c8d26847c15.zip | |
Merged from miles@gnu.org--gnu-2005 (patch 159)
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-159
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-307
56 files changed, 748 insertions, 748 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d65a446a376..a3826bf9a4b 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,50 @@ | |||
| 1 | 2005-03-06 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * menu-bar.el (menu-bar-file-menu): Add the same :enable to | ||
| 4 | "Open Directory" as for "Open File". | ||
| 5 | |||
| 6 | 2005-03-06 Chong Yidong <cyd@stupidchicken.com> | ||
| 7 | |||
| 8 | * simple.el (activate-mark-hook, deactivate-mark-hook): Add defvars. | ||
| 9 | (push-mark-command): Run activate-mark-hook. | ||
| 10 | |||
| 11 | 2005-03-06 Richard M. Stallman <rms@gnu.org> | ||
| 12 | |||
| 13 | * help-mode.el (help-mode-finish): Don't alter the element | ||
| 14 | in view-return-to-alist if there already is one. | ||
| 15 | |||
| 16 | * jit-lock.el (jit-lock-stealth-fontify): When calling sit-for, | ||
| 17 | make sure the current buffer is the expected one. | ||
| 18 | |||
| 19 | * novice.el (disabled-command-function): Output in *Disabled Command*. | ||
| 20 | Explicitly ignore non-keyboard events, and explicitly handle C-g. | ||
| 21 | |||
| 22 | * textmodes/flyspell.el (flyspell-large-region): | ||
| 23 | Pass args differently for aspell. | ||
| 24 | |||
| 25 | * files.el (mode-require-final-newline): Doc fix. | ||
| 26 | |||
| 27 | 2005-03-03 Stephan Stahl <stahl@eos.franken.de> (tiny change) | ||
| 28 | |||
| 29 | * progmodes/which-func.el (which-function): | ||
| 30 | Specify NOERROR when calling imenu--make-index-alist. | ||
| 31 | |||
| 32 | 2005-03-05 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 33 | |||
| 34 | * simple.el (normal-erase-is-backspace): Define default value. | ||
| 35 | |||
| 36 | * custom.el (custom-theme-set-variables): Remove unused var `immediate'. | ||
| 37 | (custom-reevaluate-setting): Simple function to handle | ||
| 38 | variables that are defined before their default value can really | ||
| 39 | be computed. | ||
| 40 | |||
| 41 | * startup.el (command-line): Use it for temporary-file-directory, | ||
| 42 | small-emporary-file-directory, auto-save-file-name-transforms, | ||
| 43 | blink-cursor-mode, and normal-erase-is-backspace. | ||
| 44 | |||
| 45 | * font-lock.el (font-lock-fontify-keywords-region): Ensure forward | ||
| 46 | progress, even with buggy anchored keywords. | ||
| 47 | |||
| 1 | 2005-03-05 Luc Teirlinck <teirllm@auburn.edu> | 48 | 2005-03-05 Luc Teirlinck <teirllm@auburn.edu> |
| 2 | 49 | ||
| 3 | * simple.el (goto-line): Remove unbalanced final parenthesis. | 50 | * simple.el (goto-line): Remove unbalanced final parenthesis. |
diff --git a/lisp/bindings.el b/lisp/bindings.el index 7d67095566c..a581027993c 100644 --- a/lisp/bindings.el +++ b/lisp/bindings.el | |||
| @@ -701,6 +701,7 @@ language you are using." | |||
| 701 | (define-key global-map "\C-p" 'previous-line) | 701 | (define-key global-map "\C-p" 'previous-line) |
| 702 | (define-key ctl-x-map "\C-n" 'set-goal-column) | 702 | (define-key ctl-x-map "\C-n" 'set-goal-column) |
| 703 | (define-key global-map "\C-e" 'move-end-of-line) | 703 | (define-key global-map "\C-e" 'move-end-of-line) |
| 704 | (define-key esc-map "g" 'goto-line) | ||
| 704 | 705 | ||
| 705 | ;;(defun function-key-error () | 706 | ;;(defun function-key-error () |
| 706 | ;; (interactive) | 707 | ;; (interactive) |
diff --git a/lisp/custom.el b/lisp/custom.el index 13195c7f78f..77b54a109c5 100644 --- a/lisp/custom.el +++ b/lisp/custom.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; custom.el --- tools for declaring and initializing options | 1 | ;;; custom.el --- tools for declaring and initializing options |
| 2 | ;; | 2 | ;; |
| 3 | ;; Copyright (C) 1996, 1997, 1999, 2001, 2002, 2004 | 3 | ;; Copyright (C) 1996, 1997, 1999, 2001, 2002, 2004, 2005 |
| 4 | ;; Free Software Foundation, Inc. | 4 | ;; Free Software Foundation, Inc. |
| 5 | ;; | 5 | ;; |
| 6 | ;; Author: Per Abrahamsen <abraham@dina.kvl.dk> | 6 | ;; Author: Per Abrahamsen <abraham@dina.kvl.dk> |
| @@ -726,6 +726,15 @@ handle SYMBOL properly. | |||
| 726 | COMMENT is a comment string about SYMBOL." | 726 | COMMENT is a comment string about SYMBOL." |
| 727 | (apply 'custom-theme-set-variables 'user args)) | 727 | (apply 'custom-theme-set-variables 'user args)) |
| 728 | 728 | ||
| 729 | (defun custom-reevaluate-setting (symbol) | ||
| 730 | "Reset the value of SYMBOL by re-evaluating its saved or default value. | ||
| 731 | This is useful for variables that are defined before their default value | ||
| 732 | can really be computed. E.g. dumped variables whose default depends on | ||
| 733 | run-time information." | ||
| 734 | (funcall (or (get symbol 'custom-set) 'set-default) | ||
| 735 | symbol | ||
| 736 | (eval (car (or (get symbol 'saved-value) (get symbol 'standard-value)))))) | ||
| 737 | |||
| 729 | (defun custom-theme-set-variables (theme &rest args) | 738 | (defun custom-theme-set-variables (theme &rest args) |
| 730 | "Initialize variables for theme THEME according to settings in ARGS. | 739 | "Initialize variables for theme THEME according to settings in ARGS. |
| 731 | Each of the arguments in ARGS should be a list of this form: | 740 | Each of the arguments in ARGS should be a list of this form: |
| @@ -753,44 +762,43 @@ SYMBOL's property `force-value' is set to the symbol `immediate'. | |||
| 753 | EXP itself is saved unevaluated as SYMBOL property `saved-value' and | 762 | EXP itself is saved unevaluated as SYMBOL property `saved-value' and |
| 754 | in SYMBOL's list property `theme-value' \(using `custom-push-theme')." | 763 | in SYMBOL's list property `theme-value' \(using `custom-push-theme')." |
| 755 | (custom-check-theme theme) | 764 | (custom-check-theme theme) |
| 756 | (let ((immediate (get theme 'theme-immediate))) | 765 | (setq args |
| 757 | (setq args | 766 | (sort args |
| 758 | (sort args | 767 | (lambda (a1 a2) |
| 759 | (lambda (a1 a2) | 768 | (let* ((sym1 (car a1)) |
| 760 | (let* ((sym1 (car a1)) | 769 | (sym2 (car a2)) |
| 761 | (sym2 (car a2)) | 770 | (1-then-2 (memq sym1 (get sym2 'custom-dependencies))) |
| 762 | (1-then-2 (memq sym1 (get sym2 'custom-dependencies))) | 771 | (2-then-1 (memq sym2 (get sym1 'custom-dependencies)))) |
| 763 | (2-then-1 (memq sym2 (get sym1 'custom-dependencies)))) | 772 | (cond ((and 1-then-2 2-then-1) |
| 764 | (cond ((and 1-then-2 2-then-1) | 773 | (error "Circular custom dependency between `%s' and `%s'" |
| 765 | (error "Circular custom dependency between `%s' and `%s'" | 774 | sym1 sym2)) |
| 766 | sym1 sym2)) | 775 | (2-then-1 nil) |
| 767 | (2-then-1 nil) | 776 | ;; Put symbols with :require last. The macro |
| 768 | ;; Put symbols with :require last. The macro | 777 | ;; define-minor-mode generates a defcustom |
| 769 | ;; define-minor-mode generates a defcustom | 778 | ;; with a :require and a :set, where the |
| 770 | ;; with a :require and a :set, where the | 779 | ;; setter function calls the mode function. |
| 771 | ;; setter function calls the mode function. | 780 | ;; Putting symbols with :require last ensures |
| 772 | ;; Putting symbols with :require last ensures | 781 | ;; that the mode function will see other |
| 773 | ;; that the mode function will see other | 782 | ;; customized values rather than default |
| 774 | ;; customized values rather than default | 783 | ;; values. |
| 775 | ;; values. | 784 | (t (nth 3 a2))))))) |
| 776 | (t (nth 3 a2))))))) | 785 | (while args |
| 777 | (while args | 786 | (let ((entry (car args))) |
| 778 | (let ((entry (car args))) | 787 | (if (listp entry) |
| 779 | (if (listp entry) | 788 | (let* ((symbol (indirect-variable (nth 0 entry))) |
| 780 | (let* ((symbol (indirect-variable (nth 0 entry))) | 789 | (value (nth 1 entry)) |
| 781 | (value (nth 1 entry)) | 790 | (now (nth 2 entry)) |
| 782 | (now (nth 2 entry)) | 791 | (requests (nth 3 entry)) |
| 783 | (requests (nth 3 entry)) | 792 | (comment (nth 4 entry)) |
| 784 | (comment (nth 4 entry)) | 793 | set) |
| 785 | set) | 794 | (when requests |
| 786 | (when requests | 795 | (put symbol 'custom-requests requests) |
| 787 | (put symbol 'custom-requests requests) | 796 | (mapc 'require requests)) |
| 788 | (mapc 'require requests)) | 797 | (setq set (or (get symbol 'custom-set) 'custom-set-default)) |
| 789 | (setq set (or (get symbol 'custom-set) 'custom-set-default)) | 798 | (put symbol 'saved-value (list value)) |
| 790 | (put symbol 'saved-value (list value)) | 799 | (put symbol 'saved-variable-comment comment) |
| 791 | (put symbol 'saved-variable-comment comment) | 800 | (custom-push-theme 'theme-value symbol theme 'set value) |
| 792 | (custom-push-theme 'theme-value symbol theme 'set value) | 801 | ;; Allow for errors in the case where the setter has |
| 793 | ;; Allow for errors in the case where the setter has | ||
| 794 | ;; changed between versions, say, but let the user know. | 802 | ;; changed between versions, say, but let the user know. |
| 795 | (condition-case data | 803 | (condition-case data |
| 796 | (cond (now | 804 | (cond (now |
| @@ -802,18 +810,18 @@ in SYMBOL's list property `theme-value' \(using `custom-push-theme')." | |||
| 802 | (funcall set symbol (eval value)))) | 810 | (funcall set symbol (eval value)))) |
| 803 | (error | 811 | (error |
| 804 | (message "Error setting %s: %s" symbol data))) | 812 | (message "Error setting %s: %s" symbol data))) |
| 805 | (setq args (cdr args)) | 813 | (setq args (cdr args)) |
| 806 | (and (or now (default-boundp symbol)) | 814 | (and (or now (default-boundp symbol)) |
| 807 | (put symbol 'variable-comment comment))) | 815 | (put symbol 'variable-comment comment))) |
| 808 | ;; Old format, a plist of SYMBOL VALUE pairs. | 816 | ;; Old format, a plist of SYMBOL VALUE pairs. |
| 809 | (message "Warning: old format `custom-set-variables'") | 817 | (message "Warning: old format `custom-set-variables'") |
| 810 | (ding) | 818 | (ding) |
| 811 | (sit-for 2) | 819 | (sit-for 2) |
| 812 | (let ((symbol (indirect-variable (nth 0 args))) | 820 | (let ((symbol (indirect-variable (nth 0 args))) |
| 813 | (value (nth 1 args))) | 821 | (value (nth 1 args))) |
| 814 | (put symbol 'saved-value (list value)) | 822 | (put symbol 'saved-value (list value)) |
| 815 | (custom-push-theme 'theme-value symbol theme 'set value)) | 823 | (custom-push-theme 'theme-value symbol theme 'set value)) |
| 816 | (setq args (cdr (cdr args)))))))) | 824 | (setq args (cdr (cdr args))))))) |
| 817 | 825 | ||
| 818 | (defun custom-set-default (variable value) | 826 | (defun custom-set-default (variable value) |
| 819 | "Default :set function for a customizable variable. | 827 | "Default :set function for a customizable variable. |
| @@ -1091,5 +1099,5 @@ This means reset VARIABLE to its value in TO-THEME." | |||
| 1091 | 1099 | ||
| 1092 | (provide 'custom) | 1100 | (provide 'custom) |
| 1093 | 1101 | ||
| 1094 | ;;; arch-tag: 041b6116-aabe-4f9a-902d-74092bc3dab2 | 1102 | ;; arch-tag: 041b6116-aabe-4f9a-902d-74092bc3dab2 |
| 1095 | ;;; custom.el ends here | 1103 | ;;; custom.el ends here |
diff --git a/lisp/facemenu.el b/lisp/facemenu.el index 127b8fe608b..a996d4c15e7 100644 --- a/lisp/facemenu.el +++ b/lisp/facemenu.el | |||
| @@ -39,8 +39,8 @@ | |||
| 39 | ;; modifications before inserting or typing anything. | 39 | ;; modifications before inserting or typing anything. |
| 40 | ;; | 40 | ;; |
| 41 | ;; Faces can be selected from the keyboard as well. | 41 | ;; Faces can be selected from the keyboard as well. |
| 42 | ;; The standard keybindings are M-g (or ESC g) + letter: | 42 | ;; The standard keybindings are M-o (or ESC o) + letter: |
| 43 | ;; M-g i = "set italic", M-g b = "set bold", etc. | 43 | ;; M-o i = "set italic", M-o b = "set bold", etc. |
| 44 | 44 | ||
| 45 | ;;; Customization: | 45 | ;;; Customization: |
| 46 | ;; An alternative set of keybindings that may be easier to type can be set up | 46 | ;; An alternative set of keybindings that may be easier to type can be set up |
| @@ -91,12 +91,12 @@ | |||
| 91 | (require 'button)) | 91 | (require 'button)) |
| 92 | 92 | ||
| 93 | ;;; Provide some binding for startup: | 93 | ;;; Provide some binding for startup: |
| 94 | ;;;###autoload (define-key global-map "\M-g" 'facemenu-keymap) | 94 | ;;;###autoload (define-key global-map "\M-o" 'facemenu-keymap) |
| 95 | ;;;###autoload (autoload 'facemenu-keymap "facemenu" "Keymap for face-changing commands." t 'keymap) | 95 | ;;;###autoload (autoload 'facemenu-keymap "facemenu" "Keymap for face-changing commands." t 'keymap) |
| 96 | 96 | ||
| 97 | ;; Global bindings: | 97 | ;; Global bindings: |
| 98 | (define-key global-map [C-down-mouse-2] 'facemenu-menu) | 98 | (define-key global-map [C-down-mouse-2] 'facemenu-menu) |
| 99 | (define-key global-map "\M-g" 'facemenu-keymap) | 99 | (define-key global-map "\M-o" 'facemenu-keymap) |
| 100 | 100 | ||
| 101 | (defgroup facemenu nil | 101 | (defgroup facemenu nil |
| 102 | "Create a face menu for interactively adding fonts to text" | 102 | "Create a face menu for interactively adding fonts to text" |
diff --git a/lisp/font-lock.el b/lisp/font-lock.el index 0b82e738014..f2cd0985958 100644 --- a/lisp/font-lock.el +++ b/lisp/font-lock.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; font-lock.el --- Electric font lock mode | 1 | ;;; font-lock.el --- Electric font lock mode |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, | 3 | ;; Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
| 4 | ;; 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | 4 | ;; 2000, 2001, 2002, 2003, 2004 2005 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: jwz, then rms, then sm | 6 | ;; Author: jwz, then rms, then sm |
| 7 | ;; Maintainer: FSF | 7 | ;; Maintainer: FSF |
| @@ -1425,7 +1425,10 @@ LOUDLY, if non-nil, allows progress-meter bar." | |||
| 1425 | (while highlights | 1425 | (while highlights |
| 1426 | (if (numberp (car (car highlights))) | 1426 | (if (numberp (car (car highlights))) |
| 1427 | (font-lock-apply-highlight (car highlights)) | 1427 | (font-lock-apply-highlight (car highlights)) |
| 1428 | (font-lock-fontify-anchored-keywords (car highlights) end)) | 1428 | (let ((pos (point))) |
| 1429 | (font-lock-fontify-anchored-keywords (car highlights) end) | ||
| 1430 | ;; Ensure forward progress. | ||
| 1431 | (if (< (point) pos) (goto-char pos)))) | ||
| 1429 | (setq highlights (cdr highlights)))) | 1432 | (setq highlights (cdr highlights)))) |
| 1430 | (setq keywords (cdr keywords))))) | 1433 | (setq keywords (cdr keywords))))) |
| 1431 | 1434 | ||
diff --git a/lisp/help-mode.el b/lisp/help-mode.el index e9d3561d251..8b0284089fc 100644 --- a/lisp/help-mode.el +++ b/lisp/help-mode.el | |||
| @@ -194,8 +194,12 @@ Commands: | |||
| 194 | ;;;###autoload | 194 | ;;;###autoload |
| 195 | (defun help-mode-finish () | 195 | (defun help-mode-finish () |
| 196 | (let ((entry (assq (selected-window) view-return-to-alist))) | 196 | (let ((entry (assq (selected-window) view-return-to-alist))) |
| 197 | (if entry (setcdr entry (cons (selected-window) | 197 | (if entry |
| 198 | help-return-method)) | 198 | ;; When entering Help mode from the Help window, |
| 199 | ;; such as by following a link, preserve the same | ||
| 200 | ;; meaning for the q command. | ||
| 201 | ;; (setcdr entry (cons (selected-window) help-return-method)) | ||
| 202 | nil | ||
| 199 | (setq view-return-to-alist | 203 | (setq view-return-to-alist |
| 200 | (cons (cons (selected-window) help-return-method) | 204 | (cons (cons (selected-window) help-return-method) |
| 201 | view-return-to-alist)))) | 205 | view-return-to-alist)))) |
diff --git a/lisp/jit-lock.el b/lisp/jit-lock.el index 43c8457c80b..fe64d871d96 100644 --- a/lisp/jit-lock.el +++ b/lisp/jit-lock.el | |||
| @@ -415,6 +415,7 @@ This functions is called after Emacs has been idle for | |||
| 415 | (unless (or executing-kbd-macro | 415 | (unless (or executing-kbd-macro |
| 416 | (window-minibuffer-p (selected-window))) | 416 | (window-minibuffer-p (selected-window))) |
| 417 | (let ((buffers (buffer-list)) | 417 | (let ((buffers (buffer-list)) |
| 418 | (outer-buffer (current-buffer)) | ||
| 418 | minibuffer-auto-raise | 419 | minibuffer-auto-raise |
| 419 | message-log-max) | 420 | message-log-max) |
| 420 | (with-local-quit | 421 | (with-local-quit |
| @@ -449,7 +450,10 @@ This functions is called after Emacs has been idle for | |||
| 449 | (point (point-min))) | 450 | (point (point-min))) |
| 450 | (while (and (setq start | 451 | (while (and (setq start |
| 451 | (jit-lock-stealth-chunk-start point)) | 452 | (jit-lock-stealth-chunk-start point)) |
| 452 | (sit-for nice)) | 453 | ;; In case sit-for runs any timers, |
| 454 | ;; give them the expected current buffer. | ||
| 455 | (with-current-buffer outer-buffer | ||
| 456 | (sit-for nice))) | ||
| 453 | 457 | ||
| 454 | ;; fontify a block. | 458 | ;; fontify a block. |
| 455 | (jit-lock-fontify-now start (+ start jit-lock-chunk-size)) | 459 | (jit-lock-fontify-now start (+ start jit-lock-chunk-size)) |
| @@ -461,7 +465,10 @@ This functions is called after Emacs has been idle for | |||
| 461 | ;; Wait a little if load is too high. | 465 | ;; Wait a little if load is too high. |
| 462 | (when (and jit-lock-stealth-load | 466 | (when (and jit-lock-stealth-load |
| 463 | (> (car (load-average)) jit-lock-stealth-load)) | 467 | (> (car (load-average)) jit-lock-stealth-load)) |
| 464 | (sit-for (or jit-lock-stealth-time 30))))))))))))) | 468 | ;; In case sit-for runs any timers, |
| 469 | ;; give them the expected current buffer. | ||
| 470 | (with-current-buffer outer-buffer | ||
| 471 | (sit-for (or jit-lock-stealth-time 30)))))))))))))) | ||
| 465 | 472 | ||
| 466 | 473 | ||
| 467 | 474 | ||
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index 093969d5725..8dfb6a792df 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el | |||
| @@ -184,6 +184,8 @@ A large number or nil slows down menu responsiveness." | |||
| 184 | :help "Insert another file into current buffer")) | 184 | :help "Insert another file into current buffer")) |
| 185 | (define-key menu-bar-file-menu [dired] | 185 | (define-key menu-bar-file-menu [dired] |
| 186 | '(menu-item "Open Directory..." dired | 186 | '(menu-item "Open Directory..." dired |
| 187 | :enable (not (window-minibuffer-p | ||
| 188 | (frame-selected-window menu-updating-frame))) | ||
| 187 | :help "Read a directory, operate on its files")) | 189 | :help "Read a directory, operate on its files")) |
| 188 | (define-key menu-bar-file-menu [open-file] | 190 | (define-key menu-bar-file-menu [open-file] |
| 189 | '(menu-item "Open File..." find-file-existing | 191 | '(menu-item "Open File..." find-file-existing |
diff --git a/lisp/novice.el b/lisp/novice.el index de92857980b..3e63f0a7bc6 100644 --- a/lisp/novice.el +++ b/lisp/novice.el | |||
| @@ -49,7 +49,7 @@ If nil, the feature is disabled, i.e., all commands work normally.") | |||
| 49 | (defun disabled-command-function (&rest ignore) | 49 | (defun disabled-command-function (&rest ignore) |
| 50 | (let (char) | 50 | (let (char) |
| 51 | (save-window-excursion | 51 | (save-window-excursion |
| 52 | (with-output-to-temp-buffer "*Help*" | 52 | (with-output-to-temp-buffer "*Disabled Command*" |
| 53 | (let ((keys (this-command-keys))) | 53 | (let ((keys (this-command-keys))) |
| 54 | (if (or (eq (aref keys 0) | 54 | (if (or (eq (aref keys 0) |
| 55 | (if (stringp keys) | 55 | (if (stringp keys) |
| @@ -68,7 +68,7 @@ If nil, the feature is disabled, i.e., all commands work normally.") | |||
| 68 | (princ "It is disabled because new users often find it confusing.\n") | 68 | (princ "It is disabled because new users often find it confusing.\n") |
| 69 | (princ "Here's the first part of its description:\n\n") | 69 | (princ "Here's the first part of its description:\n\n") |
| 70 | ;; Keep only the first paragraph of the documentation. | 70 | ;; Keep only the first paragraph of the documentation. |
| 71 | (with-current-buffer "*Help*" | 71 | (with-current-buffer "*Disabled Command*" |
| 72 | (goto-char (point-max)) | 72 | (goto-char (point-max)) |
| 73 | (let ((start (point))) | 73 | (let ((start (point))) |
| 74 | (save-excursion | 74 | (save-excursion |
| @@ -91,10 +91,15 @@ SPC to try the command just this once, but leave it disabled. | |||
| 91 | (help-mode))) | 91 | (help-mode))) |
| 92 | (message "Type y, n, ! or SPC (the space bar): ") | 92 | (message "Type y, n, ! or SPC (the space bar): ") |
| 93 | (let ((cursor-in-echo-area t)) | 93 | (let ((cursor-in-echo-area t)) |
| 94 | (while (not (memq (setq char (downcase (read-char))) | 94 | (while (progn (setq char (read-event)) |
| 95 | '(?! ?y ?n ?\ ))) | 95 | (or (not (numberp char)) |
| 96 | (not (memq (downcase char) | ||
| 97 | '(?! ?y ?n ?\ ?\C-g))))) | ||
| 96 | (ding) | 98 | (ding) |
| 97 | (message "Please type y, n, ! or SPC (the space bar): ")))) | 99 | (message "Please type y, n, ! or SPC (the space bar): ")))) |
| 100 | (setq char (downcase char)) | ||
| 101 | (if (= char ?\C-g) | ||
| 102 | (setq quit-flag t)) | ||
| 98 | (if (= char ?!) | 103 | (if (= char ?!) |
| 99 | (setq disabled-command-function nil)) | 104 | (setq disabled-command-function nil)) |
| 100 | (if (= char ?y) | 105 | (if (= char ?y) |
diff --git a/lisp/simple.el b/lisp/simple.el index 0b40d53b756..50a727aa15f 100644 --- a/lisp/simple.el +++ b/lisp/simple.el | |||
| @@ -2917,6 +2917,14 @@ START and END specify the portion of the current buffer to be copied." | |||
| 2917 | (put 'mark-inactive 'error-conditions '(mark-inactive error)) | 2917 | (put 'mark-inactive 'error-conditions '(mark-inactive error)) |
| 2918 | (put 'mark-inactive 'error-message "The mark is not active now") | 2918 | (put 'mark-inactive 'error-message "The mark is not active now") |
| 2919 | 2919 | ||
| 2920 | (defvar activate-mark-hook nil | ||
| 2921 | "Hook run when the mark becomes active. | ||
| 2922 | It is also run at the end of a command, if the mark is active and | ||
| 2923 | it is possible that the region may have changed") | ||
| 2924 | |||
| 2925 | (defvar deactivate-mark-hook nil | ||
| 2926 | "Hook run when the mark becomes inactive.") | ||
| 2927 | |||
| 2920 | (defun mark (&optional force) | 2928 | (defun mark (&optional force) |
| 2921 | "Return this buffer's mark value as integer; error if mark inactive. | 2929 | "Return this buffer's mark value as integer; error if mark inactive. |
| 2922 | If optional argument FORCE is non-nil, access the mark value | 2930 | If optional argument FORCE is non-nil, access the mark value |
| @@ -3008,6 +3016,7 @@ Display `Mark set' unless the optional second arg NOMSG is non-nil." | |||
| 3008 | (if (or arg (null mark) (/= mark (point))) | 3016 | (if (or arg (null mark) (/= mark (point))) |
| 3009 | (push-mark nil nomsg t) | 3017 | (push-mark nil nomsg t) |
| 3010 | (setq mark-active t) | 3018 | (setq mark-active t) |
| 3019 | (run-hooks 'activate-mark-hook) | ||
| 3011 | (unless nomsg | 3020 | (unless nomsg |
| 3012 | (message "Mark activated"))))) | 3021 | (message "Mark activated"))))) |
| 3013 | 3022 | ||
| @@ -5029,7 +5038,17 @@ the front of the list of recently selected ones." | |||
| 5029 | 5038 | ||
| 5030 | ;;; Handling of Backspace and Delete keys. | 5039 | ;;; Handling of Backspace and Delete keys. |
| 5031 | 5040 | ||
| 5032 | (defcustom normal-erase-is-backspace nil | 5041 | (defcustom normal-erase-is-backspace |
| 5042 | (and (not noninteractive) | ||
| 5043 | (or (memq system-type '(ms-dos windows-nt)) | ||
| 5044 | (and (memq initial-window-system '(x)) | ||
| 5045 | (fboundp 'x-backspace-delete-keys-p) | ||
| 5046 | (x-backspace-delete-keys-p)) | ||
| 5047 | ;; If the terminal Emacs is running on has erase char | ||
| 5048 | ;; set to ^H, use the Backspace key for deleting | ||
| 5049 | ;; backward and, and the Delete key for deleting forward. | ||
| 5050 | (and (null initial-window-system) | ||
| 5051 | (eq tty-erase-char ?\^H)))) | ||
| 5033 | "If non-nil, Delete key deletes forward and Backspace key deletes backward. | 5052 | "If non-nil, Delete key deletes forward and Backspace key deletes backward. |
| 5034 | 5053 | ||
| 5035 | On window systems, the default value of this option is chosen | 5054 | On window systems, the default value of this option is chosen |
diff --git a/lisp/startup.el b/lisp/startup.el index b16cfdeb0c9..d0eca538f96 100644 --- a/lisp/startup.el +++ b/lisp/startup.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; startup.el --- process Emacs shell arguments | 1 | ;;; startup.el --- process Emacs shell arguments |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1985, 86, 92, 94, 95, 96, 97, 98, 99, 2000, 01, 02, 2004 | 3 | ;; Copyright (C) 1985, 1986, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000, |
| 4 | ;; Free Software Foundation, Inc. | 4 | ;; 2001, 2002, 2004, 2005 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Maintainer: FSF | 6 | ;; Maintainer: FSF |
| 7 | ;; Keywords: internal | 7 | ;; Keywords: internal |
| @@ -568,22 +568,9 @@ opening the first frame (e.g. open a connection to the server).") | |||
| 568 | (setq command-line-default-directory default-directory) | 568 | (setq command-line-default-directory default-directory) |
| 569 | 569 | ||
| 570 | ;; Choose a reasonable location for temporary files. | 570 | ;; Choose a reasonable location for temporary files. |
| 571 | (setq temporary-file-directory | 571 | (custom-reevaluate-setting 'temporary-file-directory) |
| 572 | (file-name-as-directory | 572 | (custom-reevaluate-setting 'small-emporary-file-directory) |
| 573 | (cond ((memq system-type '(ms-dos windows-nt)) | 573 | (custom-reevaluate-setting 'auto-save-file-name-transforms) |
| 574 | (or (getenv "TEMP") (getenv "TMPDIR") (getenv "TMP") "c:/temp")) | ||
| 575 | ((memq system-type '(vax-vms axp-vms)) | ||
| 576 | (or (getenv "TMPDIR") (getenv "TMP") (getenv "TEMP") "SYS$SCRATCH:")) | ||
| 577 | (t | ||
| 578 | (or (getenv "TMPDIR") (getenv "TMP") (getenv "TEMP") "/tmp"))))) | ||
| 579 | (setq small-temporary-file-directory | ||
| 580 | (if (eq system-type 'ms-dos) | ||
| 581 | (getenv "TMPDIR"))) | ||
| 582 | (setq auto-save-file-name-transforms | ||
| 583 | (list (list (car (car auto-save-file-name-transforms)) | ||
| 584 | ;; Don't put "\\2" inside expand-file-name, since | ||
| 585 | ;; it will be transformed to "/2" on DOS/Windows. | ||
| 586 | (concat temporary-file-directory "\\2") t))) | ||
| 587 | 574 | ||
| 588 | ;; See if we should import version-control from the environment variable. | 575 | ;; See if we should import version-control from the environment variable. |
| 589 | (let ((vc (getenv "VERSION_CONTROL"))) | 576 | (let ((vc (getenv "VERSION_CONTROL"))) |
| @@ -749,35 +736,14 @@ opening the first frame (e.g. open a connection to the server).") | |||
| 749 | (tool-bar-mode 1)) | 736 | (tool-bar-mode 1)) |
| 750 | 737 | ||
| 751 | ;; Can't do this init in defcustom because the relevant variables | 738 | ;; Can't do this init in defcustom because the relevant variables |
| 752 | ;; are not set. If you make any changes to the `or' form below, | 739 | ;; are not set. |
| 753 | ;; you should also change the corresponding expression in the | 740 | (custom-reevaluate-setting 'blink-cursor-mode) |
| 754 | ;; defcustom in frame.el, or Custom will be badly confused. | 741 | (custom-reevaluate-setting 'normal-erase-is-backspace) |
| 755 | (unless (or noninteractive | ||
| 756 | no-blinking-cursor | ||
| 757 | (eq system-type 'ms-dos) | ||
| 758 | (not (memq initial-window-system '(x w32)))) | ||
| 759 | (blink-cursor-mode 1)) | ||
| 760 | |||
| 761 | (unless noninteractive | ||
| 762 | ;; DOS/Windows systems have a PC-type keyboard which has both | ||
| 763 | ;; <delete> and <backspace> keys. | ||
| 764 | (when (or (memq system-type '(ms-dos windows-nt)) | ||
| 765 | (and (memq initial-window-system '(x)) | ||
| 766 | (fboundp 'x-backspace-delete-keys-p) | ||
| 767 | (x-backspace-delete-keys-p)) | ||
| 768 | ;; If the terminal Emacs is running on has erase char | ||
| 769 | ;; set to ^H, use the Backspace key for deleting | ||
| 770 | ;; backward and, and the Delete key for deleting forward. | ||
| 771 | (and (null initial-window-system) | ||
| 772 | (eq tty-erase-char 8))) | ||
| 773 | (setq-default normal-erase-is-backspace t) | ||
| 774 | (normal-erase-is-backspace-mode 1))) | ||
| 775 | 742 | ||
| 776 | (unless (or noninteractive | 743 | (unless (or noninteractive |
| 777 | emacs-quick-startup | 744 | emacs-quick-startup |
| 778 | (not (display-graphic-p)) | 745 | (not (display-graphic-p)) |
| 779 | (not (fboundp 'x-show-tip))) | 746 | (not (fboundp 'x-show-tip))) |
| 780 | (setq-default tooltip-mode t) | ||
| 781 | (tooltip-mode 1)) | 747 | (tooltip-mode 1)) |
| 782 | 748 | ||
| 783 | ;; Register default TTY colors for the case the terminal hasn't a | 749 | ;; Register default TTY colors for the case the terminal hasn't a |
| @@ -1757,5 +1723,5 @@ normal otherwise." | |||
| 1757 | (setq file (replace-match "/" t t file))) | 1723 | (setq file (replace-match "/" t t file))) |
| 1758 | file)) | 1724 | file)) |
| 1759 | 1725 | ||
| 1760 | ;;; arch-tag: 7e294698-244d-4758-984b-4047f887a5db | 1726 | ;; arch-tag: 7e294698-244d-4758-984b-4047f887a5db |
| 1761 | ;;; startup.el ends here | 1727 | ;;; startup.el ends here |
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el index c224a970e01..7020426b9a8 100644 --- a/lisp/textmodes/flyspell.el +++ b/lisp/textmodes/flyspell.el | |||
| @@ -1329,7 +1329,7 @@ Word syntax described by `ispell-dictionary-alist' (which see)." | |||
| 1329 | nil | 1329 | nil |
| 1330 | buffer | 1330 | buffer |
| 1331 | nil | 1331 | nil |
| 1332 | "-l" | 1332 | (if ispell-really-aspell "list" "-l") |
| 1333 | (let (args) | 1333 | (let (args) |
| 1334 | ;; Local dictionary becomes the global dictionary in use. | 1334 | ;; Local dictionary becomes the global dictionary in use. |
| 1335 | (if ispell-local-dictionary | 1335 | (if ispell-local-dictionary |
diff --git a/lispref/ChangeLog b/lispref/ChangeLog index 105fbec9a7d..a9dd276796a 100644 --- a/lispref/ChangeLog +++ b/lispref/ChangeLog | |||
| @@ -1,3 +1,52 @@ | |||
| 1 | 2005-03-06 Richard M. Stallman <rms@gnu.org> | ||
| 2 | |||
| 3 | * windows.texi (Vertical Scrolling): Get rid of "Emacs 21". | ||
| 4 | (Resizing Windows): Likewise. | ||
| 5 | |||
| 6 | * text.texi (Change Hooks): Get rid of "Emacs 21". | ||
| 7 | |||
| 8 | * strings.texi (Formatting Strings): Get rid of "Emacs 21". | ||
| 9 | |||
| 10 | * streams.texi (Output Variables): Get rid of "Emacs 21". | ||
| 11 | |||
| 12 | * searching.texi (Regexp Special, Char Classes): Get rid of "Emacs 21". | ||
| 13 | |||
| 14 | * os.texi (Translating Input): Replace flow-control example | ||
| 15 | with a less obsolete example that uses `keyboard-translate'. | ||
| 16 | |||
| 17 | * objects.texi (Hash Table Type, Circular Objects): | ||
| 18 | Get rid of "Emacs 21". | ||
| 19 | |||
| 20 | * modes.texi (Mode Line Format): Get rid of "Emacs 21". | ||
| 21 | (Mode Line Data, Properties in Mode, Header Lines): Likewise. | ||
| 22 | |||
| 23 | * minibuf.texi (Minibuffer Misc): Get rid of "Emacs 21". | ||
| 24 | |||
| 25 | * lists.texi (List Elements, Building Lists): Get rid of "Emacs 21". | ||
| 26 | |||
| 27 | * keymaps.texi (Menu Separators, Tool Bar): Get rid of "Emacs 21". | ||
| 28 | (Menu Bar): Fix when menu-bar-update-hook is called. | ||
| 29 | |||
| 30 | * hash.texi (Hash Tables): Get rid of "Emacs 21". | ||
| 31 | |||
| 32 | * frames.texi (Text Terminal Colors): Get rid of "Emacs 21", | ||
| 33 | and make it read better. | ||
| 34 | |||
| 35 | * files.texi (Writing to Files): Get rid of "Emacs 21". | ||
| 36 | (Unique File Names): Likewise. | ||
| 37 | |||
| 38 | * elisp.texi: Update Emacs version to 22. | ||
| 39 | |||
| 40 | * display.texi (Forcing Redisplay): Get rid of "Emacs 21". | ||
| 41 | (Overlay Properties, Face Attributes): Likewise. | ||
| 42 | (Managing Overlays): Fix punctuation. | ||
| 43 | (Attribute Functions): Clarify set-face-font; get rid of | ||
| 44 | info about old Emacs versions. | ||
| 45 | (Auto Faces, Font Lookup, Display Property, Images): | ||
| 46 | Get rid of "Emacs 21". | ||
| 47 | |||
| 48 | * calendar.texi (Calendar Customizing): Get rid of "Emacs 21". | ||
| 49 | |||
| 1 | 2005-03-05 Richard M. Stallman <rms@gnu.org> | 50 | 2005-03-05 Richard M. Stallman <rms@gnu.org> |
| 2 | 51 | ||
| 3 | * debugging.texi (Error Debugging): Remove stack-trace-on-error. | 52 | * debugging.texi (Error Debugging): Remove stack-trace-on-error. |
diff --git a/lispref/calendar.texi b/lispref/calendar.texi index f132ea8868b..8c5ca54221c 100644 --- a/lispref/calendar.texi +++ b/lispref/calendar.texi | |||
| @@ -115,8 +115,8 @@ the default for this variable. | |||
| 115 | the current date is @emph{not} visible in the window. | 115 | the current date is @emph{not} visible in the window. |
| 116 | 116 | ||
| 117 | @vindex calendar-move-hook | 117 | @vindex calendar-move-hook |
| 118 | Starting in Emacs 21, each of the calendar cursor motion commands | 118 | Each of the calendar cursor motion commands runs the hook |
| 119 | runs the hook @code{calendar-move-hook} after it moves the cursor. | 119 | @code{calendar-move-hook} after it moves the cursor. |
| 120 | 120 | ||
| 121 | @node Holiday Customizing | 121 | @node Holiday Customizing |
| 122 | @section Customizing the Holidays | 122 | @section Customizing the Holidays |
diff --git a/lispref/display.texi b/lispref/display.texi index e873b112fa2..de2ab26cf96 100644 --- a/lispref/display.texi +++ b/lispref/display.texi | |||
| @@ -102,8 +102,7 @@ binding @code{redisplay-dont-pause} to a non-@code{nil} value. | |||
| 102 | @defvar redisplay-dont-pause | 102 | @defvar redisplay-dont-pause |
| 103 | If this variable is non-@code{nil}, pending input does not | 103 | If this variable is non-@code{nil}, pending input does not |
| 104 | prevent or halt redisplay; redisplay occurs, and finishes, | 104 | prevent or halt redisplay; redisplay occurs, and finishes, |
| 105 | regardless of whether input is available. This feature is available | 105 | regardless of whether input is available. |
| 106 | as of Emacs 21. | ||
| 107 | @end defvar | 106 | @end defvar |
| 108 | 107 | ||
| 109 | You can request a display update, but only if no input is pending, | 108 | You can request a display update, but only if no input is pending, |
| @@ -1180,12 +1179,12 @@ then each element can be any of these possibilities: | |||
| 1180 | A face name (a symbol or string). | 1179 | A face name (a symbol or string). |
| 1181 | 1180 | ||
| 1182 | @item | 1181 | @item |
| 1183 | Starting in Emacs 21, a property list of face attributes. This has the | 1182 | A property list of face attributes. This has the form (@var{keyword} |
| 1184 | form (@var{keyword} @var{value} @dots{}), where each @var{keyword} is a | 1183 | @var{value} @dots{}), where each @var{keyword} is a face attribute |
| 1185 | face attribute name and @var{value} is a meaningful value for that | 1184 | name and @var{value} is a meaningful value for that attribute. With |
| 1186 | attribute. With this feature, you do not need to create a face each | 1185 | this feature, you do not need to create a face each time you want to |
| 1187 | time you want to specify a particular attribute for certain text. | 1186 | specify a particular attribute for certain text. @xref{Face |
| 1188 | @xref{Face Attributes}. | 1187 | Attributes}. |
| 1189 | 1188 | ||
| 1190 | @item | 1189 | @item |
| 1191 | A cons cell of the form @code{(foreground-color . @var{color-name})} or | 1190 | A cons cell of the form @code{(foreground-color . @var{color-name})} or |
| @@ -1340,7 +1339,7 @@ as an integer. | |||
| 1340 | 1339 | ||
| 1341 | @defun overlay-buffer overlay | 1340 | @defun overlay-buffer overlay |
| 1342 | This function returns the buffer that @var{overlay} belongs to. It | 1341 | This function returns the buffer that @var{overlay} belongs to. It |
| 1343 | returns @code{nil}, if @var{overlay} has been deleted. | 1342 | returns @code{nil} if @var{overlay} has been deleted. |
| 1344 | @end defun | 1343 | @end defun |
| 1345 | 1344 | ||
| 1346 | @defun delete-overlay overlay | 1345 | @defun delete-overlay overlay |
| @@ -1909,11 +1908,11 @@ mean. Note that in general, more than one face can be specified for a | |||
| 1909 | given piece of text; when that happens, the attributes of all the faces | 1908 | given piece of text; when that happens, the attributes of all the faces |
| 1910 | are merged to specify how to display the text. @xref{Displaying Faces}. | 1909 | are merged to specify how to display the text. @xref{Displaying Faces}. |
| 1911 | 1910 | ||
| 1912 | In Emacs 21, any attribute in a face can have the value | 1911 | Any attribute in a face can have the value @code{unspecified}. This |
| 1913 | @code{unspecified}. This means the face doesn't specify that attribute. | 1912 | means the face doesn't specify that attribute. In face merging, when |
| 1914 | In face merging, when the first face fails to specify a particular | 1913 | the first face fails to specify a particular attribute, that means the |
| 1915 | attribute, that means the next face gets a chance. However, the | 1914 | next face gets a chance. However, the @code{default} face must |
| 1916 | @code{default} face must specify all attributes. | 1915 | specify all attributes. |
| 1917 | 1916 | ||
| 1918 | Some of these font attributes are meaningful only on certain kinds of | 1917 | Some of these font attributes are meaningful only on certain kinds of |
| 1919 | displays---if your display cannot handle a certain attribute, the | 1918 | displays---if your display cannot handle a certain attribute, the |
| @@ -2043,11 +2042,10 @@ that is being pressed. If it is @code{nil} or omitted, a plain 2D box | |||
| 2043 | is used. | 2042 | is used. |
| 2044 | @end table | 2043 | @end table |
| 2045 | 2044 | ||
| 2046 | The attributes @code{:overline}, @code{:strike-through} and | 2045 | In older versions of Emacs, before @code{:family}, @code{:height}, |
| 2047 | @code{:box} are new in Emacs 21. The attributes @code{:family}, | 2046 | @code{:width}, @code{:weight}, and @code{:slant} existed, these |
| 2048 | @code{:height}, @code{:width}, @code{:weight}, @code{:slant} are also | 2047 | attributes were used to specify the type face. They are now |
| 2049 | new; previous versions used the following attributes, now semi-obsolete, | 2048 | semi-obsolete, but they still work: |
| 2050 | to specify some of the same information: | ||
| 2051 | 2049 | ||
| 2052 | @table @code | 2050 | @table @code |
| 2053 | @item :font | 2051 | @item :font |
| @@ -2060,8 +2058,8 @@ A non-@code{nil} value specifies a bold font. | |||
| 2060 | A non-@code{nil} value specifies an italic font. | 2058 | A non-@code{nil} value specifies an italic font. |
| 2061 | @end table | 2059 | @end table |
| 2062 | 2060 | ||
| 2063 | For compatibility, you can still set these ``attributes'' in Emacs 21, | 2061 | For compatibility, you can still set these ``attributes'', even |
| 2064 | even though they are not real face attributes. Here is what that does: | 2062 | though they are not real face attributes. Here is what that does: |
| 2065 | 2063 | ||
| 2066 | @table @code | 2064 | @table @code |
| 2067 | @item :font | 2065 | @item :font |
| @@ -2195,31 +2193,22 @@ they are used automatically to handle certain shades of gray. | |||
| 2195 | @end defun | 2193 | @end defun |
| 2196 | 2194 | ||
| 2197 | @defun set-face-font face font &optional frame | 2195 | @defun set-face-font face font &optional frame |
| 2198 | This function sets the font of face @var{face}. | 2196 | This function sets the font of face @var{face}. This actually sets |
| 2199 | 2197 | the attributes @code{:family}, @code{:width}, @code{:height}, | |
| 2200 | In Emacs 21, this actually sets the attributes @code{:family}, | 2198 | @code{:weight}, and @code{:slant} according to the font name |
| 2201 | @code{:width}, @code{:height}, @code{:weight}, and @code{:slant} | 2199 | @var{font}. |
| 2202 | according to the font name @var{font}. | ||
| 2203 | |||
| 2204 | In Emacs 20, this sets the font attribute. Once you set the font | ||
| 2205 | explicitly, the bold and italic attributes cease to have any effect, | ||
| 2206 | because the precise font that you specified is used. | ||
| 2207 | @end defun | 2200 | @end defun |
| 2208 | 2201 | ||
| 2209 | @defun set-face-bold-p face bold-p &optional frame | 2202 | @defun set-face-bold-p face bold-p &optional frame |
| 2210 | This function specifies whether @var{face} should be bold. If | 2203 | This function specifies whether @var{face} should be bold. If |
| 2211 | @var{bold-p} is non-@code{nil}, that means yes; @code{nil} means no. | 2204 | @var{bold-p} is non-@code{nil}, that means yes; @code{nil} means no. |
| 2212 | 2205 | This actually sets the @code{:weight} attribute. | |
| 2213 | In Emacs 21, this sets the @code{:weight} attribute. | ||
| 2214 | In Emacs 20, it sets the @code{:bold} attribute. | ||
| 2215 | @end defun | 2206 | @end defun |
| 2216 | 2207 | ||
| 2217 | @defun set-face-italic-p face italic-p &optional frame | 2208 | @defun set-face-italic-p face italic-p &optional frame |
| 2218 | This function specifies whether @var{face} should be italic. If | 2209 | This function specifies whether @var{face} should be italic. If |
| 2219 | @var{italic-p} is non-@code{nil}, that means yes; @code{nil} means no. | 2210 | @var{italic-p} is non-@code{nil}, that means yes; @code{nil} means no. |
| 2220 | 2211 | This actually sets the @code{:slant} attribute. | |
| 2221 | In Emacs 21, this sets the @code{:slant} attribute. | ||
| 2222 | In Emacs 20, it sets the @code{:italic} attribute. | ||
| 2223 | @end defun | 2212 | @end defun |
| 2224 | 2213 | ||
| 2225 | @defun set-face-underline-p face underline-p &optional frame | 2214 | @defun set-face-underline-p face underline-p &optional frame |
| @@ -2519,9 +2508,8 @@ differently from the default face. | |||
| 2519 | @cindex faces, automatic choice | 2508 | @cindex faces, automatic choice |
| 2520 | 2509 | ||
| 2521 | @cindex Font-Lock mode | 2510 | @cindex Font-Lock mode |
| 2522 | Starting with Emacs 21, a hook is available for automatically | 2511 | This hook is used for automatically assigning faces to text in the |
| 2523 | assigning faces to text in the buffer. This hook is used for part of | 2512 | buffer. It is part of the implementation of Font-Lock mode. |
| 2524 | the implementation of Font-Lock mode. | ||
| 2525 | 2513 | ||
| 2526 | @tindex fontification-functions | 2514 | @tindex fontification-functions |
| 2527 | @defvar fontification-functions | 2515 | @defvar fontification-functions |
| @@ -2572,8 +2560,6 @@ for @var{maximum} can make this function much faster, in cases where | |||
| 2572 | many fonts match the pattern. | 2560 | many fonts match the pattern. |
| 2573 | @end defun | 2561 | @end defun |
| 2574 | 2562 | ||
| 2575 | These additional functions are available starting in Emacs 21. | ||
| 2576 | |||
| 2577 | @defun x-family-fonts &optional family frame | 2563 | @defun x-family-fonts &optional family frame |
| 2578 | @tindex x-family-fonts | 2564 | @tindex x-family-fonts |
| 2579 | This function returns a list describing the available fonts for family | 2565 | This function returns a list describing the available fonts for family |
| @@ -3031,11 +3017,10 @@ buffer. The default is to use the @code{arrow} (non-text) pointer. | |||
| 3031 | 3017 | ||
| 3032 | The @code{display} text property (or overlay property) is used to | 3018 | The @code{display} text property (or overlay property) is used to |
| 3033 | insert images into text, and also control other aspects of how text | 3019 | insert images into text, and also control other aspects of how text |
| 3034 | displays. These features are available starting in Emacs 21. The value | 3020 | displays. The value of the @code{display} property should be a |
| 3035 | of the @code{display} property should be a display specification, or a | 3021 | display specification, or a list or vector containing several display |
| 3036 | list or vector containing several display specifications. The rest of | 3022 | specifications. The rest of this section describes several kinds of |
| 3037 | this section describes several kinds of display specifications and what | 3023 | display specifications and what they mean. |
| 3038 | they mean. | ||
| 3039 | 3024 | ||
| 3040 | @menu | 3025 | @menu |
| 3041 | * Specified Space:: Displaying one space with a specified width. | 3026 | * Specified Space:: Displaying one space with a specified width. |
| @@ -3344,8 +3329,7 @@ string. | |||
| 3344 | 3329 | ||
| 3345 | To display an image in an Emacs buffer, you must first create an image | 3330 | To display an image in an Emacs buffer, you must first create an image |
| 3346 | descriptor, then use it as a display specifier in the @code{display} | 3331 | descriptor, then use it as a display specifier in the @code{display} |
| 3347 | property of text that is displayed (@pxref{Display Property}). Like the | 3332 | property of text that is displayed (@pxref{Display Property}). |
| 3348 | @code{display} property, this feature is available starting in Emacs 21. | ||
| 3349 | 3333 | ||
| 3350 | Emacs can display a number of different image formats; some of them | 3334 | Emacs can display a number of different image formats; some of them |
| 3351 | are supported only if particular support libraries are installed on | 3335 | are supported only if particular support libraries are installed on |
diff --git a/lispref/elisp.texi b/lispref/elisp.texi index 19b87e765db..b2cec876d79 100644 --- a/lispref/elisp.texi +++ b/lispref/elisp.texi | |||
| @@ -26,7 +26,7 @@ | |||
| 26 | 26 | ||
| 27 | @ifnottex | 27 | @ifnottex |
| 28 | This Info file contains edition @value{VERSION} of the GNU Emacs Lisp | 28 | This Info file contains edition @value{VERSION} of the GNU Emacs Lisp |
| 29 | Reference Manual, corresponding to Emacs version 21.3. | 29 | Reference Manual, corresponding to Emacs version 22.1. |
| 30 | @c Please REMEMBER to update edition number in *four* places in this file | 30 | @c Please REMEMBER to update edition number in *four* places in this file |
| 31 | @c and also in *one* place in intro.texi and *one* in README. | 31 | @c and also in *one* place in intro.texi and *one* in README. |
| 32 | 32 | ||
| @@ -52,7 +52,7 @@ Software Foundation raise funds for GNU development.'' | |||
| 52 | 52 | ||
| 53 | @titlepage | 53 | @titlepage |
| 54 | @title GNU Emacs Lisp Reference Manual | 54 | @title GNU Emacs Lisp Reference Manual |
| 55 | @subtitle For Emacs Version 21 | 55 | @subtitle For Emacs Version 22 |
| 56 | @c The edition number appears in several places in this file | 56 | @c The edition number appears in several places in this file |
| 57 | @c and also in the file intro.texi. | 57 | @c and also in the file intro.texi. |
| 58 | @subtitle Revision @value{VERSION}, January 2002 | 58 | @subtitle Revision @value{VERSION}, January 2002 |
| @@ -66,7 +66,7 @@ Copyright @copyright{} 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998,@* | |||
| 66 | 66 | ||
| 67 | @sp 2 | 67 | @sp 2 |
| 68 | Edition @value{VERSION} @* | 68 | Edition @value{VERSION} @* |
| 69 | Revised for Emacs Version 21.3,@* | 69 | Revised for Emacs Version 22.1,@* |
| 70 | January 2002.@* | 70 | January 2002.@* |
| 71 | @sp 2 | 71 | @sp 2 |
| 72 | ISBN 1-882114-73-6 | 72 | ISBN 1-882114-73-6 |
| @@ -96,7 +96,7 @@ Cover art by Etienne Suvasa. | |||
| 96 | 96 | ||
| 97 | @ifnottex | 97 | @ifnottex |
| 98 | This Info file contains edition @value{VERSION} of the GNU Emacs Lisp | 98 | This Info file contains edition @value{VERSION} of the GNU Emacs Lisp |
| 99 | Reference Manual, corresponding to GNU Emacs version 21.3. | 99 | Reference Manual, corresponding to GNU Emacs version 22.1. |
| 100 | @end ifnottex | 100 | @end ifnottex |
| 101 | 101 | ||
| 102 | @menu | 102 | @menu |
| @@ -173,7 +173,7 @@ Appendices | |||
| 173 | * Index:: Index including concepts, functions, variables, | 173 | * Index:: Index including concepts, functions, variables, |
| 174 | and other terms. | 174 | and other terms. |
| 175 | 175 | ||
| 176 | * New Symbols:: New functions and variables in Emacs 21. | 176 | * New Symbols:: New functions and variables in Emacs 22. |
| 177 | 177 | ||
| 178 | --- The Detailed Node Listing --- | 178 | --- The Detailed Node Listing --- |
| 179 | 179 | ||
diff --git a/lispref/files.texi b/lispref/files.texi index aa97ff83d30..18a98a406c4 100644 --- a/lispref/files.texi +++ b/lispref/files.texi | |||
| @@ -578,16 +578,15 @@ that string, rather than text from the buffer. @var{end} is ignored in | |||
| 578 | this case. | 578 | this case. |
| 579 | 579 | ||
| 580 | If @var{append} is non-@code{nil}, then the specified text is appended | 580 | If @var{append} is non-@code{nil}, then the specified text is appended |
| 581 | to the existing file contents (if any). Starting in Emacs 21, if | 581 | to the existing file contents (if any). If @var{append} is an |
| 582 | @var{append} is an integer, then @code{write-region} seeks to that byte | 582 | integer, @code{write-region} seeks to that byte offset from the start |
| 583 | offset from the start of the file and writes the data from there. | 583 | of the file and writes the data from there. |
| 584 | 584 | ||
| 585 | If @var{mustbenew} is non-@code{nil}, then @code{write-region} asks | 585 | If @var{mustbenew} is non-@code{nil}, then @code{write-region} asks |
| 586 | for confirmation if @var{filename} names an existing file. | 586 | for confirmation if @var{filename} names an existing file. If |
| 587 | Starting in Emacs 21, if @var{mustbenew} is the symbol @code{excl}, | 587 | @var{mustbenew} is the symbol @code{excl}, then @code{write-region} |
| 588 | then @code{write-region} does not ask for confirmation, but instead | 588 | does not ask for confirmation, but instead it signals an error |
| 589 | it signals an error @code{file-already-exists} if the file already | 589 | @code{file-already-exists} if the file already exists. |
| 590 | exists. | ||
| 591 | 590 | ||
| 592 | The test for an existing file, when @var{mustbenew} is @code{excl}, uses | 591 | The test for an existing file, when @var{mustbenew} is @code{excl}, uses |
| 593 | a special system feature. At least for files on a local disk, there is | 592 | a special system feature. At least for files on a local disk, there is |
| @@ -2013,7 +2012,7 @@ on VMS except discard superfluous initial components as shown above. | |||
| 2013 | @subsection Generating Unique File Names | 2012 | @subsection Generating Unique File Names |
| 2014 | 2013 | ||
| 2015 | Some programs need to write temporary files. Here is the usual way to | 2014 | Some programs need to write temporary files. Here is the usual way to |
| 2016 | construct a name for such a file, starting in Emacs 21: | 2015 | construct a name for such a file: |
| 2017 | 2016 | ||
| 2018 | @example | 2017 | @example |
| 2019 | (make-temp-file @var{name-of-application}) | 2018 | (make-temp-file @var{name-of-application}) |
| @@ -2106,7 +2105,7 @@ non-@code{nil}. | |||
| 2106 | 2105 | ||
| 2107 | @tindex small-temporary-file-directory | 2106 | @tindex small-temporary-file-directory |
| 2108 | @defvar small-temporary-file-directory | 2107 | @defvar small-temporary-file-directory |
| 2109 | This variable (new in Emacs 21) specifies the directory name for | 2108 | This variable specifies the directory name for |
| 2110 | creating certain temporary files, which are likely to be small. | 2109 | creating certain temporary files, which are likely to be small. |
| 2111 | 2110 | ||
| 2112 | If you want to write a temporary file which is likely to be small, you | 2111 | If you want to write a temporary file which is likely to be small, you |
diff --git a/lispref/frames.texi b/lispref/frames.texi index f50be70f473..712f05df597 100644 --- a/lispref/frames.texi +++ b/lispref/frames.texi | |||
| @@ -1700,13 +1700,12 @@ and that name is still supported as an alias. | |||
| 1700 | @section Text Terminal Colors | 1700 | @section Text Terminal Colors |
| 1701 | @cindex colors on text-only terminals | 1701 | @cindex colors on text-only terminals |
| 1702 | 1702 | ||
| 1703 | Emacs can display color on text-only terminals, starting with version | 1703 | Text-only terminals usually support only a small number of colors, |
| 1704 | 21. These terminals usually support only a small number of colors, and | 1704 | and the computer uses small integers to select colors on the terminal. |
| 1705 | the computer uses small integers to select colors on the terminal. This | 1705 | This means that the computer cannot reliably tell what the selected |
| 1706 | means that the computer cannot reliably tell what the selected color | 1706 | color looks like; instead, you have to inform your application which |
| 1707 | looks like; instead, you have to inform your application which small | 1707 | small integers correspond to which colors. However, Emacs does know |
| 1708 | integers correspond to which colors. However, Emacs does know the | 1708 | the standard set of colors and will try to use them automatically. |
| 1709 | standard set of colors and will try to use them automatically. | ||
| 1710 | 1709 | ||
| 1711 | The functions described in this section control how terminal colors | 1710 | The functions described in this section control how terminal colors |
| 1712 | are used by Emacs. | 1711 | are used by Emacs. |
diff --git a/lispref/hash.texi b/lispref/hash.texi index 9343196a238..b8ddd0ee6a4 100644 --- a/lispref/hash.texi +++ b/lispref/hash.texi | |||
| @@ -27,9 +27,9 @@ There is no way to share structure between two hash tables, | |||
| 27 | the way two alists can share a common tail. | 27 | the way two alists can share a common tail. |
| 28 | @end itemize | 28 | @end itemize |
| 29 | 29 | ||
| 30 | Emacs Lisp (starting with Emacs 21) provides a general-purpose hash | 30 | Emacs Lisp provides a general-purpose hash table data type, along |
| 31 | table data type, along with a series of functions for operating on them. | 31 | with a series of functions for operating on them. Hash tables have no |
| 32 | Hash tables have no read syntax, and print in hash notation, like this: | 32 | read syntax, and print in hash notation, like this: |
| 33 | 33 | ||
| 34 | @example | 34 | @example |
| 35 | (make-hash-table) | 35 | (make-hash-table) |
diff --git a/lispref/keymaps.texi b/lispref/keymaps.texi index 9cf73053291..f374472e101 100644 --- a/lispref/keymaps.texi +++ b/lispref/keymaps.texi | |||
| @@ -1930,8 +1930,8 @@ where @var{separator-type} is a string starting with two or more dashes. | |||
| 1930 | That specifies the default kind of separator. (For compatibility, | 1930 | That specifies the default kind of separator. (For compatibility, |
| 1931 | @code{""} and @code{-} also count as separators.) | 1931 | @code{""} and @code{-} also count as separators.) |
| 1932 | 1932 | ||
| 1933 | Starting in Emacs 21, certain other values of @var{separator-type} | 1933 | Certain other values of @var{separator-type} specify a different |
| 1934 | specify a different style of separator. Here is a table of them: | 1934 | style of separator. Here is a table of them: |
| 1935 | 1935 | ||
| 1936 | @table @code | 1936 | @table @code |
| 1937 | @item "--no-line" | 1937 | @item "--no-line" |
| @@ -2247,9 +2247,11 @@ at the end of the menu bar, following local menu items. | |||
| 2247 | @end defvar | 2247 | @end defvar |
| 2248 | 2248 | ||
| 2249 | @defvar menu-bar-update-hook | 2249 | @defvar menu-bar-update-hook |
| 2250 | This normal hook is run whenever the user clicks on the menu bar, before | 2250 | This normal hook is run by redisplay to update the menu bar contents, |
| 2251 | displaying a submenu. You can use it to update submenus whose contents | 2251 | before redisplaying the menu bar. You can use it to update submenus |
| 2252 | should vary. | 2252 | whose contents should vary. Since this hook is run frequently, we |
| 2253 | advise you to ensure that the functions it calls do not take much time | ||
| 2254 | in the usual case. | ||
| 2253 | @end defvar | 2255 | @end defvar |
| 2254 | 2256 | ||
| 2255 | @node Tool Bar | 2257 | @node Tool Bar |
| @@ -2258,7 +2260,7 @@ should vary. | |||
| 2258 | 2260 | ||
| 2259 | A @dfn{tool bar} is a row of icons at the top of a frame, that execute | 2261 | A @dfn{tool bar} is a row of icons at the top of a frame, that execute |
| 2260 | commands when you click on them---in effect, a kind of graphical menu | 2262 | commands when you click on them---in effect, a kind of graphical menu |
| 2261 | bar. Emacs supports tool bars starting with version 21. | 2263 | bar. |
| 2262 | 2264 | ||
| 2263 | The frame parameter @code{tool-bar-lines} (X resource @samp{toolBar}) | 2265 | The frame parameter @code{tool-bar-lines} (X resource @samp{toolBar}) |
| 2264 | controls how many lines' worth of height to reserve for the tool bar. A | 2266 | controls how many lines' worth of height to reserve for the tool bar. A |
diff --git a/lispref/lists.texi b/lispref/lists.texi index dbcddd741b3..47ea5b7d541 100644 --- a/lispref/lists.texi +++ b/lispref/lists.texi | |||
| @@ -248,7 +248,7 @@ This is in contrast to @code{cdr}, which signals an error if | |||
| 248 | @tindex pop | 248 | @tindex pop |
| 249 | @defmac pop listname | 249 | @defmac pop listname |
| 250 | This macro is a way of examining the @sc{car} of a list, | 250 | This macro is a way of examining the @sc{car} of a list, |
| 251 | and taking it off the list, all at once. It is new in Emacs 21. | 251 | and taking it off the list, all at once. |
| 252 | 252 | ||
| 253 | It operates on the list which is stored in the symbol @var{listname}. | 253 | It operates on the list which is stored in the symbol @var{listname}. |
| 254 | It removes this element from the list by setting @var{listname} | 254 | It removes this element from the list by setting @var{listname} |
| @@ -436,7 +436,6 @@ any symbol can serve both purposes. | |||
| 436 | @defmac push newelt listname | 436 | @defmac push newelt listname |
| 437 | This macro provides an alternative way to write | 437 | This macro provides an alternative way to write |
| 438 | @code{(setq @var{listname} (cons @var{newelt} @var{listname}))}. | 438 | @code{(setq @var{listname} (cons @var{newelt} @var{listname}))}. |
| 439 | It is new in Emacs 21. | ||
| 440 | 439 | ||
| 441 | @example | 440 | @example |
| 442 | (setq l '(a b)) | 441 | (setq l '(a b)) |
diff --git a/lispref/minibuf.texi b/lispref/minibuf.texi index eb60d99fa62..288bacc5e93 100644 --- a/lispref/minibuf.texi +++ b/lispref/minibuf.texi | |||
| @@ -1731,14 +1731,14 @@ minibuffer. If no minibuffer is active, it returns @code{nil}. | |||
| 1731 | 1731 | ||
| 1732 | @defun minibuffer-prompt-end | 1732 | @defun minibuffer-prompt-end |
| 1733 | @tindex minibuffer-prompt-end | 1733 | @tindex minibuffer-prompt-end |
| 1734 | This function, available starting in Emacs 21, returns the current | 1734 | This function returns the current |
| 1735 | position of the end of the minibuffer prompt, if a minibuffer is | 1735 | position of the end of the minibuffer prompt, if a minibuffer is |
| 1736 | current. Otherwise, it returns the minimum valid buffer position. | 1736 | current. Otherwise, it returns the minimum valid buffer position. |
| 1737 | @end defun | 1737 | @end defun |
| 1738 | 1738 | ||
| 1739 | @defun minibuffer-contents | 1739 | @defun minibuffer-contents |
| 1740 | @tindex minibuffer-contents | 1740 | @tindex minibuffer-contents |
| 1741 | This function, available starting in Emacs 21, returns the editable | 1741 | This function returns the editable |
| 1742 | contents of the minibuffer (that is, everything except the prompt) as | 1742 | contents of the minibuffer (that is, everything except the prompt) as |
| 1743 | a string, if a minibuffer is current. Otherwise, it returns the | 1743 | a string, if a minibuffer is current. Otherwise, it returns the |
| 1744 | entire contents of the current buffer. | 1744 | entire contents of the current buffer. |
| @@ -1752,7 +1752,7 @@ properties, just the characters themselves. @xref{Text Properties}. | |||
| 1752 | 1752 | ||
| 1753 | @defun delete-minibuffer-contents | 1753 | @defun delete-minibuffer-contents |
| 1754 | @tindex delete-minibuffer-contents | 1754 | @tindex delete-minibuffer-contents |
| 1755 | This function, available starting in Emacs 21, erases the editable | 1755 | This function erases the editable |
| 1756 | contents of the minibuffer (that is, everything except the prompt), if | 1756 | contents of the minibuffer (that is, everything except the prompt), if |
| 1757 | a minibuffer is current. Otherwise, it erases the entire buffer. | 1757 | a minibuffer is current. Otherwise, it erases the entire buffer. |
| 1758 | @end defun | 1758 | @end defun |
diff --git a/lispref/modes.texi b/lispref/modes.texi index 530044ac037..f7510540d08 100644 --- a/lispref/modes.texi +++ b/lispref/modes.texi | |||
| @@ -1220,7 +1220,7 @@ displayed in the window. The mode line contains information about the | |||
| 1220 | buffer, such as its name, associated file, depth of recursive editing, | 1220 | buffer, such as its name, associated file, depth of recursive editing, |
| 1221 | and major and minor modes. A window can also have a @dfn{header | 1221 | and major and minor modes. A window can also have a @dfn{header |
| 1222 | line}, which is much like the mode line but appears at the top of the | 1222 | line}, which is much like the mode line but appears at the top of the |
| 1223 | window (starting in Emacs 21). | 1223 | window. |
| 1224 | 1224 | ||
| 1225 | This section describes how to control the contents of the mode line | 1225 | This section describes how to control the contents of the mode line |
| 1226 | and header line. We include it in this chapter because much of the | 1226 | and header line. We include it in this chapter because much of the |
| @@ -1295,7 +1295,7 @@ controls which other variables are used to form the mode-line text, and | |||
| 1295 | where they appear. | 1295 | where they appear. |
| 1296 | 1296 | ||
| 1297 | If you set this variable to @code{nil} in a buffer, that buffer does not | 1297 | If you set this variable to @code{nil} in a buffer, that buffer does not |
| 1298 | have a mode line. (This feature was added in Emacs 21.) | 1298 | have a mode line. |
| 1299 | @end defvar | 1299 | @end defvar |
| 1300 | 1300 | ||
| 1301 | A mode-line construct may be as simple as a fixed string of text, but | 1301 | A mode-line construct may be as simple as a fixed string of text, but |
| @@ -1349,7 +1349,6 @@ common form of mode-line construct. | |||
| 1349 | @item (:eval @var{form}) | 1349 | @item (:eval @var{form}) |
| 1350 | A list whose first element is the symbol @code{:eval} says to evaluate | 1350 | A list whose first element is the symbol @code{:eval} says to evaluate |
| 1351 | @var{form}, and use the result as a string to display. | 1351 | @var{form}, and use the result as a string to display. |
| 1352 | (This feature is new as of Emacs 21.) | ||
| 1353 | 1352 | ||
| 1354 | @item (:propertize @var{elt} @var{props}@dots{}) | 1353 | @item (:propertize @var{elt} @var{props}@dots{}) |
| 1355 | A list whose first element is the symbol @code{:propertize} says to | 1354 | A list whose first element is the symbol @code{:propertize} says to |
| @@ -1713,7 +1712,7 @@ The value of @code{global-mode-string}. Currently, only | |||
| 1713 | @subsection Properties in the Mode Line | 1712 | @subsection Properties in the Mode Line |
| 1714 | @cindex text properties in the mode line | 1713 | @cindex text properties in the mode line |
| 1715 | 1714 | ||
| 1716 | Starting in Emacs 21, certain text properties are meaningful in the | 1715 | Certain text properties are meaningful in the |
| 1717 | mode line. The @code{face} property affects the appearance of text; the | 1716 | mode line. The @code{face} property affects the appearance of text; the |
| 1718 | @code{help-echo} property associate help strings with the text, and | 1717 | @code{help-echo} property associate help strings with the text, and |
| 1719 | @code{local-map} can make the text mouse-sensitive. | 1718 | @code{local-map} can make the text mouse-sensitive. |
| @@ -1757,7 +1756,7 @@ local variables. | |||
| 1757 | @cindex header line (of a window) | 1756 | @cindex header line (of a window) |
| 1758 | @cindex window header line | 1757 | @cindex window header line |
| 1759 | 1758 | ||
| 1760 | Starting in Emacs 21, a window can have a @dfn{header line} at the | 1759 | A window can have a @dfn{header line} at the |
| 1761 | top, just as it can have a mode line at the bottom. The header line | 1760 | top, just as it can have a mode line at the bottom. The header line |
| 1762 | feature works just like the mode-line feature, except that it's | 1761 | feature works just like the mode-line feature, except that it's |
| 1763 | controlled by different variables. | 1762 | controlled by different variables. |
diff --git a/lispref/objects.texi b/lispref/objects.texi index f0bef593f29..93d7c51b08d 100644 --- a/lispref/objects.texi +++ b/lispref/objects.texi | |||
| @@ -1166,7 +1166,7 @@ only the first 3 bits are used: | |||
| 1166 | 1166 | ||
| 1167 | A hash table is a very fast kind of lookup table, somewhat like an | 1167 | A hash table is a very fast kind of lookup table, somewhat like an |
| 1168 | alist in that it maps keys to corresponding values, but much faster. | 1168 | alist in that it maps keys to corresponding values, but much faster. |
| 1169 | Hash tables are a new feature in Emacs 21; they have no read syntax, and | 1169 | Hash tables have no read syntax, and |
| 1170 | print using hash notation. @xref{Hash Tables}. | 1170 | print using hash notation. @xref{Hash Tables}. |
| 1171 | 1171 | ||
| 1172 | @example | 1172 | @example |
| @@ -1549,9 +1549,9 @@ positions. | |||
| 1549 | @cindex @samp{#@var{n}=} read syntax | 1549 | @cindex @samp{#@var{n}=} read syntax |
| 1550 | @cindex @samp{#@var{n}#} read syntax | 1550 | @cindex @samp{#@var{n}#} read syntax |
| 1551 | 1551 | ||
| 1552 | In Emacs 21, to represent shared or circular structures within a | 1552 | To represent shared or circular structures within a complex of Lisp |
| 1553 | complex of Lisp objects, you can use the reader constructs | 1553 | objects, you can use the reader constructs @samp{#@var{n}=} and |
| 1554 | @samp{#@var{n}=} and @samp{#@var{n}#}. | 1554 | @samp{#@var{n}#}. |
| 1555 | 1555 | ||
| 1556 | Use @code{#@var{n}=} before an object to label it for later reference; | 1556 | Use @code{#@var{n}=} before an object to label it for later reference; |
| 1557 | subsequently, you can use @code{#@var{n}#} to refer the same object in | 1557 | subsequently, you can use @code{#@var{n}#} to refer the same object in |
diff --git a/lispref/os.texi b/lispref/os.texi index 58bab17e139..1358e3421db 100644 --- a/lispref/os.texi +++ b/lispref/os.texi | |||
| @@ -1618,35 +1618,6 @@ If @code{keyboard-translate-table} is a char-table | |||
| 1618 | looked up in this char-table. If the value found there is | 1618 | looked up in this char-table. If the value found there is |
| 1619 | non-@code{nil}, then it is used instead of the actual input character. | 1619 | non-@code{nil}, then it is used instead of the actual input character. |
| 1620 | 1620 | ||
| 1621 | In the example below, we set @code{keyboard-translate-table} to a | ||
| 1622 | char-table. Then we fill it in to swap the characters @kbd{C-s} and | ||
| 1623 | @kbd{C-\} and the characters @kbd{C-q} and @kbd{C-^}. Subsequently, | ||
| 1624 | typing @kbd{C-\} has all the usual effects of typing @kbd{C-s}, and vice | ||
| 1625 | versa. | ||
| 1626 | |||
| 1627 | @cindex flow control example | ||
| 1628 | @example | ||
| 1629 | @group | ||
| 1630 | (defun evade-flow-control () | ||
| 1631 | "Replace C-s with C-\ and C-q with C-^." | ||
| 1632 | (interactive) | ||
| 1633 | @end group | ||
| 1634 | @group | ||
| 1635 | (setq keyboard-translate-table | ||
| 1636 | (make-char-table 'keyboard-translate-table nil)) | ||
| 1637 | @end group | ||
| 1638 | @group | ||
| 1639 | ;; @r{Swap @kbd{C-s} and @kbd{C-\}.} | ||
| 1640 | (aset keyboard-translate-table ?\034 ?\^s) | ||
| 1641 | (aset keyboard-translate-table ?\^s ?\034) | ||
| 1642 | @end group | ||
| 1643 | @group | ||
| 1644 | ;; @r{Swap @kbd{C-q} and @kbd{C-^}.} | ||
| 1645 | (aset keyboard-translate-table ?\036 ?\^q) | ||
| 1646 | (aset keyboard-translate-table ?\^q ?\036)) | ||
| 1647 | @end group | ||
| 1648 | @end example | ||
| 1649 | |||
| 1650 | Note that this translation is the first thing that happens to a | 1621 | Note that this translation is the first thing that happens to a |
| 1651 | character after it is read from the terminal. Record-keeping features | 1622 | character after it is read from the terminal. Record-keeping features |
| 1652 | such as @code{recent-keys} and dribble files record the characters after | 1623 | such as @code{recent-keys} and dribble files record the characters after |
| @@ -1664,6 +1635,26 @@ character code @var{from} into character code @var{to}. It creates | |||
| 1664 | the keyboard translate table if necessary. | 1635 | the keyboard translate table if necessary. |
| 1665 | @end defun | 1636 | @end defun |
| 1666 | 1637 | ||
| 1638 | Here's an example of using the @code{keyboard-translate-table} to | ||
| 1639 | make @kbd{C-x}, @kbd{C-c} and @kbd{C-v} perform the cut, copy and paste | ||
| 1640 | operations: | ||
| 1641 | |||
| 1642 | @example | ||
| 1643 | (keyboard-translate ?\C-x 'control-x) | ||
| 1644 | (keyboard-translate ?\C-c 'control-c) | ||
| 1645 | (keyboard-translate ?\C-v 'control-v) | ||
| 1646 | (global-set-key [control-x] 'kill-region) | ||
| 1647 | (global-set-key [control-c] 'kill-ring-save) | ||
| 1648 | (global-set-key [control-v] 'yank) | ||
| 1649 | @end example | ||
| 1650 | |||
| 1651 | @noindent | ||
| 1652 | On a graphical terminal that supports extended @acronym{ASCII} input, | ||
| 1653 | you can still get the standard Emacs meanings of one of those | ||
| 1654 | characters by typing it with the shift key. That makes it a different | ||
| 1655 | character as far as keyboard translation is concerned, but it has the | ||
| 1656 | same usual meaning. | ||
| 1657 | |||
| 1667 | The remaining translation features translate subsequences of key | 1658 | The remaining translation features translate subsequences of key |
| 1668 | sequences being read. They are implemented in @code{read-key-sequence} | 1659 | sequences being read. They are implemented in @code{read-key-sequence} |
| 1669 | and have no effect on input read with @code{read-event}. | 1660 | and have no effect on input read with @code{read-event}. |
diff --git a/lispref/searching.texi b/lispref/searching.texi index 23eab9fc928..8a4c46f1ba2 100644 --- a/lispref/searching.texi +++ b/lispref/searching.texi | |||
| @@ -338,7 +338,7 @@ does match all non-@acronym{ASCII} characters (see below regarding @samp{^}), | |||
| 338 | in both multibyte and unibyte representations, because only the | 338 | in both multibyte and unibyte representations, because only the |
| 339 | @acronym{ASCII} characters are excluded. | 339 | @acronym{ASCII} characters are excluded. |
| 340 | 340 | ||
| 341 | Starting in Emacs 21, a character alternative can also specify named | 341 | A character alternative can also specify named |
| 342 | character classes (@pxref{Char Classes}). This is a POSIX feature whose | 342 | character classes (@pxref{Char Classes}). This is a POSIX feature whose |
| 343 | syntax is @samp{[:@var{class}:]}. Using a character class is equivalent | 343 | syntax is @samp{[:@var{class}:]}. Using a character class is equivalent |
| 344 | to mentioning each of the characters in that class; but the latter is | 344 | to mentioning each of the characters in that class; but the latter is |
| @@ -416,7 +416,7 @@ special character anyway, regardless of where it appears.@refill | |||
| 416 | @cindex character classes in regexp | 416 | @cindex character classes in regexp |
| 417 | 417 | ||
| 418 | Here is a table of the classes you can use in a character alternative, | 418 | Here is a table of the classes you can use in a character alternative, |
| 419 | in Emacs 21, and what they mean: | 419 | and what they mean: |
| 420 | 420 | ||
| 421 | @table @samp | 421 | @table @samp |
| 422 | @item [:ascii:] | 422 | @item [:ascii:] |
diff --git a/lispref/streams.texi b/lispref/streams.texi index 2f27fe193dc..f459c1c821a 100644 --- a/lispref/streams.texi +++ b/lispref/streams.texi | |||
| @@ -790,7 +790,7 @@ Emacs-Lisp Expressions, emacs, The GNU Emacs Manual}). | |||
| 790 | @end defopt | 790 | @end defopt |
| 791 | 791 | ||
| 792 | These variables are used for detecting and reporting circular | 792 | These variables are used for detecting and reporting circular |
| 793 | and shared structure---but they are only defined in Emacs 21. | 793 | and shared structure: |
| 794 | 794 | ||
| 795 | @tindex print-circle | 795 | @tindex print-circle |
| 796 | @defvar print-circle | 796 | @defvar print-circle |
diff --git a/lispref/strings.texi b/lispref/strings.texi index cca19ffbe92..30802709311 100644 --- a/lispref/strings.texi +++ b/lispref/strings.texi | |||
| @@ -691,8 +691,8 @@ in the copy with encodings of the corresponding @var{objects}. The | |||
| 691 | arguments @var{objects} are the computed values to be formatted. | 691 | arguments @var{objects} are the computed values to be formatted. |
| 692 | 692 | ||
| 693 | The characters in @var{string}, other than the format specifications, | 693 | The characters in @var{string}, other than the format specifications, |
| 694 | are copied directly into the output; starting in Emacs 21, if they have | 694 | are copied directly into the output; if they have text properties, |
| 695 | text properties, these are copied into the output also. | 695 | these are copied into the output also. |
| 696 | @end defun | 696 | @end defun |
| 697 | 697 | ||
| 698 | @cindex @samp{%} in format | 698 | @cindex @samp{%} in format |
| @@ -732,7 +732,7 @@ made without quoting (that is, using @code{princ}, not | |||
| 732 | by their contents alone, with no @samp{"} characters, and symbols appear | 732 | by their contents alone, with no @samp{"} characters, and symbols appear |
| 733 | without @samp{\} characters. | 733 | without @samp{\} characters. |
| 734 | 734 | ||
| 735 | Starting in Emacs 21, if the object is a string, its text properties are | 735 | If the object is a string, its text properties are |
| 736 | copied into the output. The text properties of the @samp{%s} itself | 736 | copied into the output. The text properties of the @samp{%s} itself |
| 737 | are also copied, but those of the object take priority. | 737 | are also copied, but those of the object take priority. |
| 738 | 738 | ||
diff --git a/lispref/text.texi b/lispref/text.texi index f60dd9282b8..cd63a756add 100644 --- a/lispref/text.texi +++ b/lispref/text.texi | |||
| @@ -4225,8 +4225,6 @@ disabled; none of them run. This affects all the hook variables | |||
| 4225 | described above in this section, as well as the hooks attached to | 4225 | described above in this section, as well as the hooks attached to |
| 4226 | certain special text properties (@pxref{Special Properties}) and overlay | 4226 | certain special text properties (@pxref{Special Properties}) and overlay |
| 4227 | properties (@pxref{Overlay Properties}). | 4227 | properties (@pxref{Overlay Properties}). |
| 4228 | |||
| 4229 | This variable is available starting in Emacs 21. | ||
| 4230 | @end defvar | 4228 | @end defvar |
| 4231 | 4229 | ||
| 4232 | @ignore | 4230 | @ignore |
diff --git a/lispref/windows.texi b/lispref/windows.texi index 671175a550d..042ede6ed4c 100644 --- a/lispref/windows.texi +++ b/lispref/windows.texi | |||
| @@ -1583,7 +1583,7 @@ Replaces three keystroke sequence C-u 0 C-l." | |||
| 1583 | 1583 | ||
| 1584 | @dfn{Vertical fractional scrolling} means shifting the image in the | 1584 | @dfn{Vertical fractional scrolling} means shifting the image in the |
| 1585 | window up or down by a specified multiple or fraction of a line. | 1585 | window up or down by a specified multiple or fraction of a line. |
| 1586 | Starting in Emacs 21, each window has a @dfn{vertical scroll position}, | 1586 | Each window has a @dfn{vertical scroll position}, |
| 1587 | which is a number, never less than zero. It specifies how far to raise | 1587 | which is a number, never less than zero. It specifies how far to raise |
| 1588 | the contents of the window. Raising the window contents generally makes | 1588 | the contents of the window. Raising the window contents generally makes |
| 1589 | all or part of some lines disappear off the top, and all or part of some | 1589 | all or part of some lines disappear off the top, and all or part of some |
| @@ -2053,7 +2053,6 @@ and @code{nil} otherwise. | |||
| 2053 | If this variable is non-@code{nil}, in any given buffer, | 2053 | If this variable is non-@code{nil}, in any given buffer, |
| 2054 | then the size of any window displaying the buffer remains fixed | 2054 | then the size of any window displaying the buffer remains fixed |
| 2055 | unless you explicitly change it or Emacs has no other choice. | 2055 | unless you explicitly change it or Emacs has no other choice. |
| 2056 | (This feature is new in Emacs 21.) | ||
| 2057 | 2056 | ||
| 2058 | If the value is @code{height}, then only the window's height is fixed; | 2057 | If the value is @code{height}, then only the window's height is fixed; |
| 2059 | if the value is @code{width}, then only the window's width is fixed. | 2058 | if the value is @code{width}, then only the window's width is fixed. |
diff --git a/man/ChangeLog b/man/ChangeLog index 6e6b48ddd8d..e529e8dfb97 100644 --- a/man/ChangeLog +++ b/man/ChangeLog | |||
| @@ -1,3 +1,77 @@ | |||
| 1 | 2005-03-06 Richard M. Stallman <rms@gnu.org> | ||
| 2 | |||
| 3 | * building.texi (Starting GUD): Don't explain text vs graphical | ||
| 4 | GDB here. Just mention it and xref. | ||
| 5 | Delete "just one debugger process". | ||
| 6 | (Debugger Operation): Move GUD tooltip info here. | ||
| 7 | (GUD Tooltips): Node deleted. | ||
| 8 | (GDB Graphical Interface): Explain the two GDB modes here. | ||
| 9 | |||
| 10 | * woman.texi (Introduction): Minor cleanups. | ||
| 11 | |||
| 12 | * url.texi (HTTP language/coding): Get rid of "Emacs 21". | ||
| 13 | |||
| 14 | * sending.texi (Sending Mail): Minor cleanup. | ||
| 15 | (Mail Aliases): Explain quoting conventions. | ||
| 16 | Update key rebinding example. | ||
| 17 | (Header Editing): C-M-i is like M-TAB. | ||
| 18 | (Mail Mode Misc): mail-attach-file does not do MIME. | ||
| 19 | |||
| 20 | * rmail.texi (Rmail Inbox): Move text from Remote Mailboxes | ||
| 21 | that really belongs here. | ||
| 22 | (Remote Mailboxes): Text moved to Rmail Inbox. | ||
| 23 | (Rmail Display): Mention Mouse-1. | ||
| 24 | (Movemail): Clarify two movemail versions. | ||
| 25 | Clarify rmail-movemail-program. | ||
| 26 | |||
| 27 | * pcl-cvs.texi (About PCL-CVS): Get rid of "Emacs 21". | ||
| 28 | (Installation): Node deleted. | ||
| 29 | |||
| 30 | * misc.texi (Single Shell): Replace uudecode example with gpg example. | ||
| 31 | Document async shell commands. | ||
| 32 | (Shell History): Clarify. | ||
| 33 | (Shell Ring): Mention C-UP an C-DOWN. | ||
| 34 | (Shell Options): Add comint-prompt-read-only. | ||
| 35 | (Invoking emacsclient): Set EDITOR to run Emacs. | ||
| 36 | (Sorting): No need to explain what region is. | ||
| 37 | (Saving Emacs Sessions): Fix typo. | ||
| 38 | (Recursive Edit): Fix punctuation. | ||
| 39 | (Emulation): Don't mention "PC bindings" which are standard. | ||
| 40 | (Hyperlinking): Explain Mouse-1 convention here. | ||
| 41 | (Find Func): Node deleted. | ||
| 42 | |||
| 43 | * mh-e.texi (Preface): Get rid of "Emacs 21". | ||
| 44 | |||
| 45 | * help.texi (Name Help): Xref to Hyperlinking. | ||
| 46 | |||
| 47 | * glossary.texi (Glossary): | ||
| 48 | Rename "Balance Parentheses" to "Balancing...". | ||
| 49 | Add "Byte Compilation". Correct "Copyleft". | ||
| 50 | New xref in "Customization". | ||
| 51 | Clarify "Current Line", "Echoing", "Fringe", "Frame", "Speedbar". | ||
| 52 | Add "Graphical Terminal" "Keybinding", "Margin", "Window System". | ||
| 53 | Rename "Registers" to "Register". | ||
| 54 | Replace "Selecting" with "Selected Frame", | ||
| 55 | "Selected Window", and "Selecting a Buffer". | ||
| 56 | |||
| 57 | * files.texi (Types of Log File): Explain how projects' | ||
| 58 | methods can vary. | ||
| 59 | |||
| 60 | * eshell.texi (Installation): Delete node (for Emacs 20). | ||
| 61 | |||
| 62 | * display.texi (Faces): Delete "Emacs 21". | ||
| 63 | |||
| 64 | * custom.texi (Changing a Variable): C-M-i like M-TAB. | ||
| 65 | * fixit.texi (Spelling): C-M-i like M-TAB. | ||
| 66 | * mini.texi (Completion Options): C-M-i like M-TAB. | ||
| 67 | * programs.texi (Symbol Completion): C-M-i like M-TAB. | ||
| 68 | * text.texi (Text Mode): C-M-i like M-TAB. | ||
| 69 | |||
| 70 | * commands.texi (Keys): Mention F1 and F2 in list of prefixes. | ||
| 71 | |||
| 72 | * calendar.texi (Specified Dates): Mention `g w'. | ||
| 73 | (Appointments): appt-activate toggles with no arg. | ||
| 74 | |||
| 1 | 2005-03-05 Thien-Thi Nguyen <ttn@gnu.org> | 75 | 2005-03-05 Thien-Thi Nguyen <ttn@gnu.org> |
| 2 | 76 | ||
| 3 | * flymake.texi: Refill and tweak style in @lisp blocks. | 77 | * flymake.texi: Refill and tweak style in @lisp blocks. |
| @@ -32,6 +106,10 @@ | |||
| 32 | Mention additional functions. | 106 | Mention additional functions. |
| 33 | (Algebraic Simplifications): Mention additional simplifications. | 107 | (Algebraic Simplifications): Mention additional simplifications. |
| 34 | 108 | ||
| 109 | 2005-02-27 Richard M. Stallman <rms@gnu.org> | ||
| 110 | |||
| 111 | * building.texi (Compilation): Update mode line status info. | ||
| 112 | |||
| 35 | 2005-02-27 Matt Hodges <MPHodges@member.fsf.org> | 113 | 2005-02-27 Matt Hodges <MPHodges@member.fsf.org> |
| 36 | 114 | ||
| 37 | * calendar.texi (General Calendar): Document binding of | 115 | * calendar.texi (General Calendar): Document binding of |
diff --git a/man/building.texi b/man/building.texi index 10ac5142d61..0adb55e38e7 100644 --- a/man/building.texi +++ b/man/building.texi | |||
| @@ -325,7 +325,6 @@ Lisp programs. | |||
| 325 | * Debugger Operation:: Connection between the debugger and source buffers. | 325 | * Debugger Operation:: Connection between the debugger and source buffers. |
| 326 | * Commands of GUD:: Key bindings for common commands. | 326 | * Commands of GUD:: Key bindings for common commands. |
| 327 | * GUD Customization:: Defining your own commands for GUD. | 327 | * GUD Customization:: Defining your own commands for GUD. |
| 328 | * GUD Tooltips:: Showing variable values by pointing with the mouse. | ||
| 329 | * GDB Graphical Interface:: An enhanced mode that uses GDB features to | 328 | * GDB Graphical Interface:: An enhanced mode that uses GDB features to |
| 330 | implement a graphical debugging environment through | 329 | implement a graphical debugging environment through |
| 331 | Emacs. | 330 | Emacs. |
| @@ -340,18 +339,9 @@ to a particular debugger program. | |||
| 340 | @table @kbd | 339 | @table @kbd |
| 341 | @item M-x gdb @key{RET} @var{file} @key{RET} | 340 | @item M-x gdb @key{RET} @var{file} @key{RET} |
| 342 | @findex gdb | 341 | @findex gdb |
| 343 | Run GDB as a subprocess of Emacs. By default, GDB starts as for | 342 | Run GDB as a subprocess of Emacs. By default, this operates in |
| 344 | @kbd{M-x gdba} below. If you want GDB to start as in Emacs 21.3 and | 343 | graphical mode; @xref{GDB Graphical Interface}. Graphical mode |
| 345 | earlier then edit the string in the minibuffer or set | 344 | does not support any other debuggers. |
| 346 | @code{gud-gdb-command-name} to ``gdb --fullname''. You need to do | ||
| 347 | this if you want to run multiple debugging sessions within one Emacs | ||
| 348 | session. In this case, the command creates a buffer for input and | ||
| 349 | output to GDB, and switches to it. If a GDB buffer already exists, it | ||
| 350 | just switches to that buffer. | ||
| 351 | |||
| 352 | @item M-x gdba @key{RET} @var{file} @key{RET} | ||
| 353 | Run GDB as a subprocess of Emacs, providing a graphical interface | ||
| 354 | to GDB features through Emacs. @xref{GDB Graphical Interface}. | ||
| 355 | 345 | ||
| 356 | @item M-x dbx @key{RET} @var{file} @key{RET} | 346 | @item M-x dbx @key{RET} @var{file} @key{RET} |
| 357 | @findex dbx | 347 | @findex dbx |
| @@ -396,8 +386,6 @@ debugger supports. However, shell wildcards and variables are not | |||
| 396 | allowed. GUD assumes that the first argument not starting with a | 386 | allowed. GUD assumes that the first argument not starting with a |
| 397 | @samp{-} is the executable file name. | 387 | @samp{-} is the executable file name. |
| 398 | 388 | ||
| 399 | Emacs can only run one debugger process at a time. | ||
| 400 | |||
| 401 | @node Debugger Operation | 389 | @node Debugger Operation |
| 402 | @subsection Debugger Operation | 390 | @subsection Debugger Operation |
| 403 | 391 | ||
| @@ -424,6 +412,14 @@ debugger buffer, which uses a variant of Shell mode. All the usual | |||
| 424 | commands for your debugger are available, and you can use the Shell mode | 412 | commands for your debugger are available, and you can use the Shell mode |
| 425 | history commands to repeat them. @xref{Shell Mode}. | 413 | history commands to repeat them. @xref{Shell Mode}. |
| 426 | 414 | ||
| 415 | @cindex tooltips with GUD | ||
| 416 | @vindex tooltip-gud-modes | ||
| 417 | The Tooltip facility (@pxref{Tooltips}) provides support for GUD@. | ||
| 418 | You activate this feature by customizing the @code{tooltip} group. | ||
| 419 | Then you can display a variable's value in a tooltip simply by | ||
| 420 | pointing at it with the mouse. This operates in the GUD buffer and in | ||
| 421 | source buffers with major modes in the list @code{tooltip-gud-modes}. | ||
| 422 | |||
| 427 | @node Commands of GUD | 423 | @node Commands of GUD |
| 428 | @subsection Commands of GUD | 424 | @subsection Commands of GUD |
| 429 | 425 | ||
| @@ -653,28 +649,24 @@ If you don't use @samp{%p} in the command string, the command you define | |||
| 653 | ignores any numeric argument. | 649 | ignores any numeric argument. |
| 654 | @end table | 650 | @end table |
| 655 | 651 | ||
| 656 | @node GUD Tooltips | ||
| 657 | @subsection GUD Tooltips | ||
| 658 | |||
| 659 | @cindex tooltips with GUD | ||
| 660 | The Tooltip facility (@pxref{Tooltips}) provides support for GUD@. If | ||
| 661 | GUD support is activated by customizing the @code{tooltip} group, | ||
| 662 | variable values can be displayed in tooltips by pointing at them with | ||
| 663 | the mouse in the GUD buffer or in source buffers with major modes in the | ||
| 664 | customizable list @code{tooltip-gud-modes}. | ||
| 665 | |||
| 666 | @node GDB Graphical Interface | 652 | @node GDB Graphical Interface |
| 667 | @subsection GDB Graphical Interface | 653 | @subsection GDB Graphical Interface |
| 668 | 654 | ||
| 669 | By default, the command @code{gdb} starts GDB using a graphical | 655 | By default, the command @code{gdb} starts GDB using a graphical |
| 670 | interface where you view and control the program's data using Emacs | 656 | interface where you view and control the program's data using Emacs |
| 671 | windows. You can still interact with GDB through the GUD buffer, but | 657 | windows. You can still interact with GDB through the GUD buffer, but |
| 672 | the point of this mode is that you can do it through menus and clicks, | 658 | the point of this mode is that you can do it through menus and clicks, |
| 673 | without needing to know GDB commands. | 659 | without needing to know GDB commands. |
| 674 | 660 | ||
| 661 | @vindex gud-gdb-command-name | ||
| 675 | @findex gdba | 662 | @findex gdba |
| 676 | If you have customised @code{gud-gdb-command-name}, then start this | 663 | You can also run GDB in text command mode, which creates a buffer |
| 677 | mode with the command @code{gdba}. | 664 | for input and output to GDB. To do this, set |
| 665 | @code{gud-gdb-command-name} to @code{"gdb --fullname"} or edit the | ||
| 666 | startup command in the minibuffer to say that. You need to do use | ||
| 667 | text command mode to run multiple debugging sessions within one Emacs | ||
| 668 | session. If you have customised @code{gud-gdb-command-name} in that | ||
| 669 | way, then you can use @kbd{M-x gdba} to invoke GDB in graphical mode. | ||
| 678 | 670 | ||
| 679 | @menu | 671 | @menu |
| 680 | * Layout:: Control the number of displayed buffers. | 672 | * Layout:: Control the number of displayed buffers. |
diff --git a/man/calendar.texi b/man/calendar.texi index e0d6577780f..7f90dfcb641 100644 --- a/man/calendar.texi +++ b/man/calendar.texi | |||
| @@ -186,6 +186,8 @@ specified in various ways. | |||
| 186 | Move point to specified date (@code{calendar-goto-date}). | 186 | Move point to specified date (@code{calendar-goto-date}). |
| 187 | @item g D | 187 | @item g D |
| 188 | Move point to specified day of year (@code{calendar-goto-day-of-year}). | 188 | Move point to specified day of year (@code{calendar-goto-day-of-year}). |
| 189 | @item g w | ||
| 190 | Move point to specified week of year (@code{calendar-goto-iso-week}). | ||
| 189 | @item o | 191 | @item o |
| 190 | Center calendar around specified month (@code{calendar-other-month}). | 192 | Center calendar around specified month (@code{calendar-other-month}). |
| 191 | @item . | 193 | @item . |
| @@ -201,9 +203,13 @@ entirety; that is, type @samp{1990}, not @samp{90}. | |||
| 201 | 203 | ||
| 202 | @kindex g D @r{(Calendar mode)} | 204 | @kindex g D @r{(Calendar mode)} |
| 203 | @findex calendar-goto-day-of-year | 205 | @findex calendar-goto-day-of-year |
| 206 | @kindex g w @r{(Calendar mode)} | ||
| 207 | @findex calendar-goto-iso-week | ||
| 204 | @kbd{g D} (@code{calendar-goto-day-of-year}) prompts for a year and | 208 | @kbd{g D} (@code{calendar-goto-day-of-year}) prompts for a year and |
| 205 | day number, and moves to that date. Negative day numbers count backward | 209 | day number, and moves to that date. Negative day numbers count |
| 206 | from the end of the year. | 210 | backward from the end of the year. @kbd{g w} |
| 211 | (@code{calendar-goto-iso-week}) prompts for a year and week number, | ||
| 212 | and moves to that week. | ||
| 207 | 213 | ||
| 208 | @kindex o @r{(Calendar mode)} | 214 | @kindex o @r{(Calendar mode)} |
| 209 | @findex calendar-other-month | 215 | @findex calendar-other-month |
| @@ -1351,7 +1357,7 @@ of @code{appt-audible} is non-@code{nil}, an audible reminder is also given. | |||
| 1351 | appointment list for today from the diary file, giving all diary entries | 1357 | appointment list for today from the diary file, giving all diary entries |
| 1352 | found with recognizable times of day, and reminds you just before each | 1358 | found with recognizable times of day, and reminds you just before each |
| 1353 | of them. Calling @code{appt-activate} with a negative argument disables | 1359 | of them. Calling @code{appt-activate} with a negative argument disables |
| 1354 | the appointment package. | 1360 | the appointment package. With no argument, it toggles. |
| 1355 | 1361 | ||
| 1356 | For example, suppose the diary file contains these lines: | 1362 | For example, suppose the diary file contains these lines: |
| 1357 | 1363 | ||
diff --git a/man/commands.texi b/man/commands.texi index cc8537c1271..fe70983286f 100644 --- a/man/commands.texi +++ b/man/commands.texi | |||
| @@ -168,11 +168,13 @@ the @kbd{C-f} is a complete key in itself. It's impossible to give | |||
| 168 | key sequences, not one.@refill | 168 | key sequences, not one.@refill |
| 169 | 169 | ||
| 170 | All told, the prefix keys in Emacs are @kbd{C-c}, @kbd{C-h}, | 170 | All told, the prefix keys in Emacs are @kbd{C-c}, @kbd{C-h}, |
| 171 | @kbd{C-x}, @kbd{C-x @key{RET}}, @kbd{C-x @@}, @kbd{C-x a}, @kbd{C-x n}, @w{@kbd{C-x | 171 | @kbd{C-x}, @kbd{C-x @key{RET}}, @kbd{C-x @@}, @kbd{C-x a}, @kbd{C-x |
| 172 | r}}, @kbd{C-x v}, @kbd{C-x 4}, @kbd{C-x 5}, @kbd{C-x 6}, @key{ESC}, and | 172 | n}, @w{@kbd{C-x r}}, @kbd{C-x v}, @kbd{C-x 4}, @kbd{C-x 5}, @kbd{C-x |
| 173 | @kbd{M-g}. But this list is not cast in concrete; it is | 173 | 6}, @key{ESC}, and @kbd{M-g}. (@key{F1} and @key{F2} are aliases for |
| 174 | just a matter of Emacs's standard key bindings. If you customize Emacs, | 174 | @kbd{C-h} and @kbd{C-x 6}.) But this list is not cast in concrete; it |
| 175 | you can make new prefix keys, or eliminate these. @xref{Key Bindings}. | 175 | is just a matter of Emacs's standard key bindings. If you customize |
| 176 | Emacs, you can make new prefix keys, or eliminate these. @xref{Key | ||
| 177 | Bindings}. | ||
| 176 | 178 | ||
| 177 | If you do make or eliminate prefix keys, that changes the set of | 179 | If you do make or eliminate prefix keys, that changes the set of |
| 178 | possible key sequences. For example, if you redefine @kbd{C-f} as a | 180 | possible key sequences. For example, if you redefine @kbd{C-f} as a |
diff --git a/man/custom.texi b/man/custom.texi index a6a4490d467..6c5c26b3451 100644 --- a/man/custom.texi +++ b/man/custom.texi | |||
| @@ -345,8 +345,9 @@ unacceptable value. | |||
| 345 | @kindex M-TAB @r{(customization buffer)} | 345 | @kindex M-TAB @r{(customization buffer)} |
| 346 | @findex widget-complete | 346 | @findex widget-complete |
| 347 | While editing a value or field that is a file name, directory name, | 347 | While editing a value or field that is a file name, directory name, |
| 348 | command name, or anything else for which completion is defined, you can | 348 | command name, or anything else for which completion is defined, you |
| 349 | type @kbd{M-@key{TAB}} (@code{widget-complete}) to do completion. | 349 | can type @kbd{M-@key{TAB}} (@code{widget-complete}) to do completion. |
| 350 | (@kbd{@key{ESC} @key{TAB}} and @kbd{C-M-i} do the same thing.) | ||
| 350 | 351 | ||
| 351 | Some variables have a small fixed set of possible legitimate values. | 352 | Some variables have a small fixed set of possible legitimate values. |
| 352 | These variables don't let you edit the value textually. Instead, an | 353 | These variables don't let you edit the value textually. Instead, an |
diff --git a/man/display.texi b/man/display.texi index c652b47787a..e96ce21f748 100644 --- a/man/display.texi +++ b/man/display.texi | |||
| @@ -81,14 +81,14 @@ those to be created in the future. (You can also set foreground and | |||
| 81 | background colors for the current frame only; see @ref{Frame | 81 | background colors for the current frame only; see @ref{Frame |
| 82 | Parameters}.) | 82 | Parameters}.) |
| 83 | 83 | ||
| 84 | Emacs 21 can correctly display variable-width fonts, but Emacs | 84 | Emacs can correctly display variable-width fonts, but Emacs commands |
| 85 | commands that calculate width and indentation do not know how to | 85 | that calculate width and indentation do not know how to calculate |
| 86 | calculate variable widths. This can sometimes lead to incorrect | 86 | variable widths. This can sometimes lead to incorrect results when |
| 87 | results when you use variable-width fonts. In particular, indentation | 87 | you use variable-width fonts. In particular, indentation commands can |
| 88 | commands can give inconsistent results, so we recommend you avoid | 88 | give inconsistent results, so we recommend you avoid variable-width |
| 89 | variable-width fonts for editing program source code. Filling will | 89 | fonts for editing program source code. Filling will sometimes make |
| 90 | sometimes make lines too long or too short. We plan to address these | 90 | lines too long or too short. We plan to address these issues in |
| 91 | issues in future Emacs versions. | 91 | future Emacs versions. |
| 92 | 92 | ||
| 93 | @findex list-faces-display | 93 | @findex list-faces-display |
| 94 | To see what faces are currently defined, and what they look like, type | 94 | To see what faces are currently defined, and what they look like, type |
diff --git a/man/eshell.texi b/man/eshell.texi index fafc60ed186..82e957f4de8 100644 --- a/man/eshell.texi +++ b/man/eshell.texi | |||
| @@ -80,7 +80,6 @@ handling the sort of tasks accomplished by those tools. | |||
| 80 | 80 | ||
| 81 | @menu | 81 | @menu |
| 82 | * What is Eshell?:: A brief introduction to the Emacs Shell. | 82 | * What is Eshell?:: A brief introduction to the Emacs Shell. |
| 83 | * Installation:: For users of Emacs 20 and XEmacs. | ||
| 84 | * Command basics:: The basics of command usage. | 83 | * Command basics:: The basics of command usage. |
| 85 | * Commands:: | 84 | * Commands:: |
| 86 | * Arguments:: | 85 | * Arguments:: |
| @@ -146,8 +145,6 @@ Any tool you use often deserves the time spent learning to master it. | |||
| 146 | looks like: But don't let it fool you; once you know what's going on, | 145 | looks like: But don't let it fool you; once you know what's going on, |
| 147 | it's easier than it looks: @code{ls -lt **/*.doc(Lk+50aM+5)}.} | 146 | it's easier than it looks: @code{ls -lt **/*.doc(Lk+50aM+5)}.} |
| 148 | 147 | ||
| 149 | As of Emacs 21, Eshell is part of the standard Emacs distribution. | ||
| 150 | |||
| 151 | @menu | 148 | @menu |
| 152 | * Contributors to Eshell:: People who have helped out! | 149 | * Contributors to Eshell:: People who have helped out! |
| 153 | @end menu | 150 | @end menu |
| @@ -192,196 +189,6 @@ Apart from these, a lot of people have sent suggestions, ideas, | |||
| 192 | requests, bug reports and encouragement. Thanks a lot! Without you | 189 | requests, bug reports and encouragement. Thanks a lot! Without you |
| 193 | there would be no new releases of Eshell. | 190 | there would be no new releases of Eshell. |
| 194 | 191 | ||
| 195 | @node Installation | ||
| 196 | @chapter Installation | ||
| 197 | @cindex installation | ||
| 198 | |||
| 199 | As mentioned above, Eshell comes preinstalled as of Emacs 21. If you're | ||
| 200 | using Emacs 20.4 or later, or XEmacs 21, you can download the most | ||
| 201 | recent version of Eshell from | ||
| 202 | @url{http://www.gci-net.com/users/j/johnw/Emacs/packages/eshell.tar.gz}. | ||
| 203 | |||
| 204 | However, if you are using Emacs 21, you may skip this section. | ||
| 205 | |||
| 206 | @section Short Form | ||
| 207 | |||
| 208 | Here's exactly what to do, with no explanation why: | ||
| 209 | |||
| 210 | @enumerate | ||
| 211 | @item | ||
| 212 | @samp{M-x load-file RET eshell-auto.el RET}. | ||
| 213 | |||
| 214 | @item | ||
| 215 | @samp{ESC : (add-to-list 'load-path "<path where Eshell resides>") RET}. | ||
| 216 | |||
| 217 | @item | ||
| 218 | @samp{ESC : (add-to-list 'load-path "<path where Pcomplete resides>") RET}. | ||
| 219 | |||
| 220 | @item | ||
| 221 | @samp{M-x eshell RET}. | ||
| 222 | |||
| 223 | You should see a version banner displayed. | ||
| 224 | |||
| 225 | @item | ||
| 226 | @samp{ls RET}. | ||
| 227 | |||
| 228 | Confirm that you see a file listing. | ||
| 229 | |||
| 230 | @item | ||
| 231 | @samp{eshell-test RET}. | ||
| 232 | |||
| 233 | Confirm that everything runs correctly. Use @kbd{M-x eshell-report-bug} if | ||
| 234 | not. | ||
| 235 | |||
| 236 | @item | ||
| 237 | @samp{cd $@{dirname (locate-library "eshell-auto")@} RET}. | ||
| 238 | |||
| 239 | @item | ||
| 240 | @samp{find-file Makefile RET}. | ||
| 241 | |||
| 242 | @item | ||
| 243 | Edit the Makefile to reflect your site. | ||
| 244 | |||
| 245 | @item | ||
| 246 | @samp{M-x eshell RET}. | ||
| 247 | |||
| 248 | @item | ||
| 249 | @samp{make install RET}. | ||
| 250 | |||
| 251 | @item | ||
| 252 | @samp{find-file $user-init-file RET}. | ||
| 253 | |||
| 254 | @item | ||
| 255 | Add the following lines to your @file{.emacs} file: | ||
| 256 | |||
| 257 | @example | ||
| 258 | (add-to-list 'load-path "<directory where you install Eshell>") | ||
| 259 | (load "eshell-auto") | ||
| 260 | @end example | ||
| 261 | |||
| 262 | @item | ||
| 263 | @samp{M-x eshell RET}. | ||
| 264 | |||
| 265 | @item | ||
| 266 | @samp{customize-option #'eshell-modules-list RET}. | ||
| 267 | |||
| 268 | @item | ||
| 269 | Select the extension modules you prefer. | ||
| 270 | |||
| 271 | @item | ||
| 272 | Restart Emacs! | ||
| 273 | |||
| 274 | @item | ||
| 275 | @samp{M-x info RET m Eshell RET}. | ||
| 276 | |||
| 277 | Read the manual and enjoy! | ||
| 278 | @end enumerate | ||
| 279 | |||
| 280 | @section Long Form | ||
| 281 | |||
| 282 | @enumerate | ||
| 283 | @item | ||
| 284 | Before building and installing Eshell, it is important to test that it | ||
| 285 | will work properly on your system. To do this, first load the file | ||
| 286 | @file{eshell-auto}, which will define certain autoloads required to run | ||
| 287 | Eshell. This can be done using the command @kbd{M-x load-file}, and | ||
| 288 | then selecting the file @file{eshell-auto.el}. | ||
| 289 | |||
| 290 | @item | ||
| 291 | In order for Emacs to find Eshell's files, the Eshell directory must be | ||
| 292 | added to the @code{load-path} variable. This can be done within Emacs by | ||
| 293 | typing: | ||
| 294 | |||
| 295 | @example | ||
| 296 | ESC : (add-to-list 'load-path "<path where Eshell resides>") RET | ||
| 297 | ESC : (add-to-list 'load-path "<path where Pcomplete resides>") RET | ||
| 298 | @end example | ||
| 299 | |||
| 300 | @item | ||
| 301 | Start Eshell from the distributed sources, using default settings, by | ||
| 302 | typing @kbd{M-x eshell}. | ||
| 303 | |||
| 304 | @item | ||
| 305 | Verify that Eshell is functional by typing @command{ls} followed by | ||
| 306 | @key{RET}. You should have already seen a version banner announcing the | ||
| 307 | version number of this release, followed by a prompt. | ||
| 308 | |||
| 309 | @item | ||
| 310 | Run the test suite by typing @command{eshell-test} followed by @key{RET} | ||
| 311 | in the Eshell buffer. It is important that Emacs be left alone while | ||
| 312 | the tests are running, since extraneous command input may cause some of | ||
| 313 | the tests to fail (they were never intended to run in the background). | ||
| 314 | If all of the tests pass, Eshell should work just fine on your system. | ||
| 315 | If any of the tests fail, please send e-mail to the Eshell maintainer | ||
| 316 | using the command @kbd{M-x eshell-report-bug}. | ||
| 317 | |||
| 318 | @item | ||
| 319 | Edit the file @file{Makefile} in the directory containing the Eshell | ||
| 320 | sources to reflect the location of certain Emacs directories at your | ||
| 321 | site. The only things you really have to change are the definitions of | ||
| 322 | @code{lispdir} and @code{infodir}. The elisp files will be copied to | ||
| 323 | @code{lispdir}, and the info file to @code{infodir}. | ||
| 324 | |||
| 325 | @item | ||
| 326 | Type @kbd{make install} in the directory containing the Eshell sources. | ||
| 327 | This will byte-compile all of the @file{*.el} files and copy both the | ||
| 328 | source and compiled versions to the directories specified in the | ||
| 329 | previous step. It will also copy the info file, and add a corresponding | ||
| 330 | entry to your @file{dir} file----if the program @code{install-info} can | ||
| 331 | be found on your system. | ||
| 332 | |||
| 333 | If you only want to create the compiled elisp files, but don't want to | ||
| 334 | install them, you can type just @kbd{make} instead. | ||
| 335 | |||
| 336 | @item | ||
| 337 | Add the directory into which Eshell was installed to your | ||
| 338 | @code{load-path} variable. This can be done by adding the following | ||
| 339 | line to your @file{.emacs} file: | ||
| 340 | |||
| 341 | @example | ||
| 342 | (add-to-list 'load-path "/usr/local/share/emacs/site-lisp/eshell") | ||
| 343 | @end example | ||
| 344 | |||
| 345 | The actual directory on your system may differ. | ||
| 346 | |||
| 347 | @item | ||
| 348 | To install Eshell privately, edit your @file{.emacs} file; to install | ||
| 349 | Eshell site-wide, edit the file @file{site-start.el} in your | ||
| 350 | @file{site-lisp} directory (usually | ||
| 351 | @file{/usr/local/share/emacs/site-lisp} or something similar). In | ||
| 352 | either case enter the following line into the appropriate file: | ||
| 353 | |||
| 354 | @example | ||
| 355 | (load "eshell-auto") | ||
| 356 | @end example | ||
| 357 | |||
| 358 | @item | ||
| 359 | Restart Emacs. After restarting, customize the variable | ||
| 360 | @code{eshell-modules-list}. This variable selects which Eshell | ||
| 361 | extension modules you want to use. You will find documentation on each | ||
| 362 | of those modules in the Info manual. | ||
| 363 | @end enumerate | ||
| 364 | |||
| 365 | @cindex documentation, printed version | ||
| 366 | @cindex printed version of documentation | ||
| 367 | If you have @TeX{} installed at your site, you can make a typeset manual | ||
| 368 | from @file{eshell.texi}. | ||
| 369 | |||
| 370 | @enumerate | ||
| 371 | @item | ||
| 372 | Run @TeX{} by typing @kbd{texi2dvi eshell.texi}. (With Emacs 21.1 or | ||
| 373 | later, typing @kbd{make eshell.dvi} in the @file{man/} subdirectory of | ||
| 374 | the Emacs source distribution will do that.) | ||
| 375 | |||
| 376 | @item | ||
| 377 | Convert the resulting device independent file @file{eshell.dvi} to a | ||
| 378 | form which your printer can output and print it. If you have a | ||
| 379 | postscript printer, there is a program, @code{dvi2ps}, which does that; there | ||
| 380 | is also a program which comes together with @TeX{}, @code{dvips}, which | ||
| 381 | you can use. For other printers, use a suitable DVI driver, | ||
| 382 | e.g., @code{dvilj4} for LaserJet-compatible printers. | ||
| 383 | @end enumerate | ||
| 384 | |||
| 385 | @node Command basics | 192 | @node Command basics |
| 386 | @chapter Basic overview | 193 | @chapter Basic overview |
| 387 | 194 | ||
diff --git a/man/files.texi b/man/files.texi index df7809309e8..fff30e21217 100644 --- a/man/files.texi +++ b/man/files.texi | |||
| @@ -1297,23 +1297,27 @@ check-in time. However, CVS can also be set up to require locking. | |||
| 1297 | @cindex log File, types of | 1297 | @cindex log File, types of |
| 1298 | @cindex version control log | 1298 | @cindex version control log |
| 1299 | 1299 | ||
| 1300 | GNU projects under a revision control system generally possess | 1300 | Projects that use a revision control system can have @emph{two} |
| 1301 | @emph{two} types of log for changes. One is the per-file log | 1301 | types of log for changes. One is the per-file log maintained by the |
| 1302 | maintained by the revision control system: each time you check in a | 1302 | revision control system: each time you check in a change, you must |
| 1303 | change, you must fill out a @dfn{log entry} for the change (@pxref{Log | 1303 | fill out a @dfn{log entry} for the change (@pxref{Log Buffer}). This |
| 1304 | Buffer}). This kind of log is called the @dfn{version control log}, | 1304 | kind of log is called the @dfn{version control log}, also the |
| 1305 | also the @dfn{revision control log}, @dfn{RCS log}, or @dfn{CVS log}. | 1305 | @dfn{revision control log}, @dfn{RCS log}, or @dfn{CVS log}. |
| 1306 | 1306 | ||
| 1307 | The other kind of log is the change log file, typically a file called | 1307 | The other kind of log is the file @file{ChangeLog} (@pxref{Change |
| 1308 | @file{ChangeLog}. It provides a chronological record of all changes | 1308 | Log}). It provides a chronological record of all changes to a large |
| 1309 | to a large portion of a program---one directory and its | 1309 | portion of a program---typically one directory and its subdirectories. |
| 1310 | subdirectories. A small program would use one @file{ChangeLog} file; | 1310 | A small program would use one @file{ChangeLog} file; a large program |
| 1311 | a large program may well merit a @file{ChangeLog} file in each major | 1311 | may well merit a @file{ChangeLog} file in each major directory. |
| 1312 | directory. @xref{Change Log}. | 1312 | @xref{Change Log}. |
| 1313 | 1313 | ||
| 1314 | When you use version control, you can use just the per-file log if you | 1314 | A project maintained with version control can use just the per-file |
| 1315 | wish, or you can use both kinds of logs. When you use both, you | 1315 | log, or it can use both kinds of logs. It can handle some files one |
| 1316 | typically want to write just one entry for each change. You can write | 1316 | way and some files the other way. Each project has its policy, which |
| 1317 | you should follow. | ||
| 1318 | |||
| 1319 | When the policy is to use both, you typically want to write an entry | ||
| 1320 | for each change just once, then put it into both logs. You can write | ||
| 1317 | the entry in @file{ChangeLog}, then copy it to the log buffer when you | 1321 | the entry in @file{ChangeLog}, then copy it to the log buffer when you |
| 1318 | check in the change. Or you can write the entry in the log buffer | 1322 | check in the change. Or you can write the entry in the log buffer |
| 1319 | while checking in the change, and later use the @kbd{C-x v a} command | 1323 | while checking in the change, and later use the @kbd{C-x v a} command |
diff --git a/man/fixit.texi b/man/fixit.texi index 104297b974e..23f385fc158 100644 --- a/man/fixit.texi +++ b/man/fixit.texi | |||
| @@ -311,9 +311,10 @@ Show the list of options. | |||
| 311 | completions based on spelling correction. Insert the beginning of a | 311 | completions based on spelling correction. Insert the beginning of a |
| 312 | word, and then type @kbd{M-@key{TAB}}; the command displays a | 312 | word, and then type @kbd{M-@key{TAB}}; the command displays a |
| 313 | completion list window. (If your window manager intercepts | 313 | completion list window. (If your window manager intercepts |
| 314 | @kbd{M-@key{TAB}}, type @kbd{@key{ESC} @key{TAB}}.) To choose one of | 314 | @kbd{M-@key{TAB}}, type @kbd{@key{ESC} @key{TAB}} or @kbd{C-M-i}.) To |
| 315 | the completions listed, click @kbd{Mouse-2} on it, or move the cursor | 315 | choose one of the completions listed, click @kbd{Mouse-2} or |
| 316 | there in the completions window and type @key{RET}. @xref{Text Mode}. | 316 | @kbd{Mouse-1} fast on it, or move the cursor there in the completions |
| 317 | window and type @key{RET}. @xref{Text Mode}. | ||
| 317 | 318 | ||
| 318 | @ignore | 319 | @ignore |
| 319 | @findex reload-ispell | 320 | @findex reload-ispell |
diff --git a/man/glossary.texi b/man/glossary.texi index 5782ee7f2d8..c9dbcc952cf 100644 --- a/man/glossary.texi +++ b/man/glossary.texi | |||
| @@ -65,7 +65,7 @@ A backup file records the contents that a file had before the current | |||
| 65 | editing session. Emacs makes backup files automatically to help you | 65 | editing session. Emacs makes backup files automatically to help you |
| 66 | track down or cancel changes you later regret making. @xref{Backup}. | 66 | track down or cancel changes you later regret making. @xref{Backup}. |
| 67 | 67 | ||
| 68 | @item Balance Parentheses | 68 | @item Balancing Parentheses |
| 69 | Emacs can balance parentheses (or other matching delimiters) either | 69 | Emacs can balance parentheses (or other matching delimiters) either |
| 70 | manually or automatically. You do manual balancing with the commands | 70 | manually or automatically. You do manual balancing with the commands |
| 71 | to move over parenthetical groupings (@pxref{Moving by Parens}). | 71 | to move over parenthetical groupings (@pxref{Moving by Parens}). |
| @@ -139,6 +139,9 @@ you press down on a mouse button. @xref{Mouse Buttons}. | |||
| 139 | @item By Default | 139 | @item By Default |
| 140 | See `default.' | 140 | See `default.' |
| 141 | 141 | ||
| 142 | @item Byte Compilation | ||
| 143 | See `compilation.' | ||
| 144 | |||
| 142 | @item @kbd{C-} | 145 | @item @kbd{C-} |
| 143 | @kbd{C-} in the name of a character is an abbreviation for Control. | 146 | @kbd{C-} in the name of a character is an abbreviation for Control. |
| 144 | @xref{User Input,C-}. | 147 | @xref{User Input,C-}. |
| @@ -246,15 +249,16 @@ characters. @xref{User Input}. | |||
| 246 | 249 | ||
| 247 | @item Copyleft | 250 | @item Copyleft |
| 248 | A copyleft is a notice giving the public legal permission to | 251 | A copyleft is a notice giving the public legal permission to |
| 249 | redistribute a program or other work of art. Copyright is normally used | 252 | redistribute and modify a program or other work of art, but requiring |
| 250 | to keep users divided and helpless; with copyleft we turn that around | 253 | modified versions to carry similar permission. Copyright is normally |
| 251 | to empower users and encourage them to cooperate. | 254 | used to keep users divided and helpless; with copyleft we turn that |
| 255 | around to empower users and encourage them to cooperate. | ||
| 252 | 256 | ||
| 253 | The particular form of copyleft used by the GNU project is called the | 257 | The particular form of copyleft used by the GNU project is called the |
| 254 | GNU General Public License. @xref{Copying}. | 258 | GNU General Public License. @xref{Copying}. |
| 255 | 259 | ||
| 256 | @item @key{CTRL} | 260 | @item @key{CTRL} |
| 257 | The @key{CTLR} or ``control'' key is what you hold down | 261 | The @key{CTRL} or ``control'' key is what you hold down |
| 258 | in order to enter a control character (q.v.). | 262 | in order to enter a control character (q.v.). |
| 259 | 263 | ||
| 260 | @item Current Buffer | 264 | @item Current Buffer |
| @@ -263,7 +267,7 @@ commands operate. You can select any Emacs buffer as the current one. | |||
| 263 | @xref{Buffers}. | 267 | @xref{Buffers}. |
| 264 | 268 | ||
| 265 | @item Current Line | 269 | @item Current Line |
| 266 | The current line is a line point is on (@pxref{Point}). | 270 | The current line is the line that point is on (@pxref{Point}). |
| 267 | 271 | ||
| 268 | @item Current Paragraph | 272 | @item Current Paragraph |
| 269 | The current paragraph is the paragraph that point is in. If point is | 273 | The current paragraph is the paragraph that point is in. If point is |
| @@ -284,8 +288,9 @@ people speak of `the cursor' when, strictly speaking, they mean | |||
| 284 | 288 | ||
| 285 | @item Customization | 289 | @item Customization |
| 286 | Customization is making minor changes in the way Emacs works. It is | 290 | Customization is making minor changes in the way Emacs works. It is |
| 287 | often done by setting variables (@pxref{Variables}) or by rebinding | 291 | often done by setting variables (@pxref{Variables}) or faces |
| 288 | key sequences (@pxref{Keymaps}). | 292 | (@pxref{Face Customization}), or by rebinding key sequences |
| 293 | (@pxref{Keymaps}). | ||
| 289 | 294 | ||
| 290 | @cindex cut and paste | 295 | @cindex cut and paste |
| 291 | @item Cut and Paste | 296 | @item Cut and Paste |
| @@ -372,9 +377,10 @@ arguments to commands, for asking questions, and showing brief messages | |||
| 372 | @samp{*Messages*} so you can review them later. @xref{Echo Area}. | 377 | @samp{*Messages*} so you can review them later. @xref{Echo Area}. |
| 373 | 378 | ||
| 374 | @item Echoing | 379 | @item Echoing |
| 375 | Echoing is acknowledging the receipt of commands by displaying them (in | 380 | Echoing is acknowledging the receipt of input events by displaying |
| 376 | the echo area). Emacs never echoes single-character key sequences; | 381 | them (in the echo area). Emacs never echoes single-character key |
| 377 | longer key sequences echo only if you pause while typing them. | 382 | sequences; longer key sequences echo only if you pause while typing |
| 383 | them. | ||
| 378 | 384 | ||
| 379 | @item Electric | 385 | @item Electric |
| 380 | We say that a character is electric if it is normally self-inserting | 386 | We say that a character is electric if it is normally self-inserting |
| @@ -493,16 +499,16 @@ See `page.' | |||
| 493 | @item Frame | 499 | @item Frame |
| 494 | A frame is a rectangular cluster of Emacs windows. Emacs starts out | 500 | A frame is a rectangular cluster of Emacs windows. Emacs starts out |
| 495 | with one frame, but you can create more. You can subdivide each frame | 501 | with one frame, but you can create more. You can subdivide each frame |
| 496 | into Emacs windows (q.v.@:). When you are using a windowing system, all | 502 | into Emacs windows (q.v.@:). When you are using a window system |
| 497 | the frames can be visible at the same time. @xref{Frames}. Some | 503 | (q.v.@:), all the frames can be visible at the same time. |
| 498 | other editors use the term ``window'' for this, but in Emacs a window | 504 | @xref{Frames}. Some other editors use the term ``window'' for this, |
| 499 | means something else. | 505 | but in Emacs a window means something else. |
| 500 | 506 | ||
| 501 | @item Fringe | 507 | @item Fringe |
| 502 | On windowed displays, there's a narrow portion of the frame (q.v.@:) | 508 | On a graphical terminal (q.v.@:), there's a narrow portion of the |
| 503 | between the text area and the window's border. Emacs displays the | 509 | frame (q.v.@:) between the text area and the window's border. Emacs |
| 504 | fringe using a special face (q.v.@:) called @code{fringe}. | 510 | displays the fringe using a special face (q.v.@:) called |
| 505 | @xref{Faces,fringe}. | 511 | @code{fringe}. @xref{Faces,fringe}. |
| 506 | 512 | ||
| 507 | @item FTP | 513 | @item FTP |
| 508 | FTP is an acronym for File Transfer Protocol. Emacs uses an FTP client | 514 | FTP is an acronym for File Transfer Protocol. Emacs uses an FTP client |
| @@ -550,6 +556,10 @@ letters, digits, punctuation, and spaces; they do not include | |||
| 550 | @key{RET} or @key{ESC}. In Emacs, typing a graphic character inserts | 556 | @key{RET} or @key{ESC}. In Emacs, typing a graphic character inserts |
| 551 | that character (in ordinary editing modes). @xref{Inserting Text}. | 557 | that character (in ordinary editing modes). @xref{Inserting Text}. |
| 552 | 558 | ||
| 559 | @item Graphical Terminal | ||
| 560 | A graphical terminal is one that can display images and multiple fonts. | ||
| 561 | Usually it also has a window system (q.v.@:). | ||
| 562 | |||
| 553 | @item Highlighting | 563 | @item Highlighting |
| 554 | Highlighting text means displaying it with a different foreground and/or | 564 | Highlighting text means displaying it with a different foreground and/or |
| 555 | background color to make it stand out from the rest of the text in the | 565 | background color to make it stand out from the rest of the text in the |
| @@ -642,6 +652,9 @@ Justification means adding extra spaces within lines of text to make | |||
| 642 | them extend exactly to a specified width. | 652 | them extend exactly to a specified width. |
| 643 | @xref{Format Justification}. | 653 | @xref{Format Justification}. |
| 644 | 654 | ||
| 655 | @item Keybinding | ||
| 656 | See `binding.' | ||
| 657 | |||
| 645 | @item Keyboard Macro | 658 | @item Keyboard Macro |
| 646 | Keyboard macros are a way of defining new Emacs commands from | 659 | Keyboard macros are a way of defining new Emacs commands from |
| 647 | sequences of existing ones, with no need to write a Lisp program. | 660 | sequences of existing ones, with no need to write a Lisp program. |
| @@ -761,6 +774,10 @@ The Emacs major modes are a mutually exclusive set of options, each of | |||
| 761 | which configures Emacs for editing a certain sort of text. Ideally, | 774 | which configures Emacs for editing a certain sort of text. Ideally, |
| 762 | each programming language has its own major mode. @xref{Major Modes}. | 775 | each programming language has its own major mode. @xref{Major Modes}. |
| 763 | 776 | ||
| 777 | @item Margin | ||
| 778 | The space between the usable part of a window (including the | ||
| 779 | fringe) and the window edge. | ||
| 780 | |||
| 764 | @item Mark | 781 | @item Mark |
| 765 | The mark points to a position in the text. It specifies one end of the | 782 | The mark points to a position in the text. It specifies one end of the |
| 766 | region (q.v.@:), point being the other end. Many commands operate on | 783 | region (q.v.@:), point being the other end. Many commands operate on |
| @@ -981,7 +998,7 @@ See `regular expression.' | |||
| 981 | The region is the text between point (q.v.@:) and the mark (q.v.@:). | 998 | The region is the text between point (q.v.@:) and the mark (q.v.@:). |
| 982 | Many commands operate on the text of the region. @xref{Mark,Region}. | 999 | Many commands operate on the text of the region. @xref{Mark,Region}. |
| 983 | 1000 | ||
| 984 | @item Registers | 1001 | @item Register |
| 985 | Registers are named slots in which text or buffer positions or | 1002 | Registers are named slots in which text or buffer positions or |
| 986 | rectangles can be saved for later use. @xref{Registers}. A related | 1003 | rectangles can be saved for later use. @xref{Registers}. A related |
| 987 | Emacs feature is `bookmarks' (q.v.@:). | 1004 | Emacs feature is `bookmarks' (q.v.@:). |
| @@ -1054,7 +1071,15 @@ applications can use it for transferring text to and from other | |||
| 1054 | applications. Emacs has special mouse commands for transferring text | 1071 | applications. Emacs has special mouse commands for transferring text |
| 1055 | using the secondary selection. @xref{Secondary Selection}. | 1072 | using the secondary selection. @xref{Secondary Selection}. |
| 1056 | 1073 | ||
| 1057 | @item Selecting | 1074 | @item Selected Frame |
| 1075 | The selected frame is the one your input currently operates on. | ||
| 1076 | @xref{Frames}. | ||
| 1077 | |||
| 1078 | @item Selected Window | ||
| 1079 | The selected frame is the one your input currently operates on. | ||
| 1080 | @xref{Basic Windows}. | ||
| 1081 | |||
| 1082 | @item Selecting a Buffer | ||
| 1058 | Selecting a buffer means making it the current (q.v.@:) buffer. | 1083 | Selecting a buffer means making it the current (q.v.@:) buffer. |
| 1059 | @xref{Select Buffer}. | 1084 | @xref{Select Buffer}. |
| 1060 | 1085 | ||
| @@ -1100,7 +1125,7 @@ warns one of the users to investigate. | |||
| 1100 | space bar. | 1125 | space bar. |
| 1101 | 1126 | ||
| 1102 | @item Speedbar | 1127 | @item Speedbar |
| 1103 | Speedbar is a special tall frame that provides fast access to Emacs | 1128 | The speedbar is a special tall frame that provides fast access to Emacs |
| 1104 | buffers, functions within those buffers, Info nodes, and other | 1129 | buffers, functions within those buffers, Info nodes, and other |
| 1105 | interesting parts of text within Emacs. @xref{Speedbar}. | 1130 | interesting parts of text within Emacs. @xref{Speedbar}. |
| 1106 | 1131 | ||
| @@ -1262,6 +1287,10 @@ can display the contents of one buffer (q.v.@:) at any time. | |||
| 1262 | other editors use the term ``window'' for what we call a `frame' | 1287 | other editors use the term ``window'' for what we call a `frame' |
| 1263 | (q.v.@:) in Emacs. | 1288 | (q.v.@:) in Emacs. |
| 1264 | 1289 | ||
| 1290 | @item Window System | ||
| 1291 | A window system is a graphical terminal (q.v.@:) that can display multiple | ||
| 1292 | windows for different programs at the same time. | ||
| 1293 | |||
| 1265 | @item Word Abbrev | 1294 | @item Word Abbrev |
| 1266 | See `abbrev.' | 1295 | See `abbrev.' |
| 1267 | 1296 | ||
diff --git a/man/help.texi b/man/help.texi index d546440e114..ebc650412b4 100644 --- a/man/help.texi +++ b/man/help.texi | |||
| @@ -249,15 +249,15 @@ f} command, then go on editing. | |||
| 249 | @kbd{C-h v} (@code{describe-variable}) is like @kbd{C-h f} but describes | 249 | @kbd{C-h v} (@code{describe-variable}) is like @kbd{C-h f} but describes |
| 250 | Lisp variables instead of Lisp functions. Its default is the Lisp symbol | 250 | Lisp variables instead of Lisp functions. Its default is the Lisp symbol |
| 251 | around or before point, but only if that is the name of a known Lisp | 251 | around or before point, but only if that is the name of a known Lisp |
| 252 | variable. @xref{Variables}.@refill | 252 | variable. @xref{Variables}. |
| 253 | 253 | ||
| 254 | Help buffers describing variables or functions defined in Lisp | 254 | Help buffers describing Emacs variables and functions normally have |
| 255 | normally have hyperlinks to the Lisp definition, if you have the Lisp | 255 | hyperlinks to the definition, if you have the source files installed. |
| 256 | source files installed. If you know Lisp, this provides the ultimate | 256 | (@xref{Hyperlinking}.) If you know Lisp (or C), this provides the |
| 257 | documentation. If you don't know Lisp, you should learn it. If you | 257 | ultimate documentation. If you don't know Lisp, you should learn it. |
| 258 | are just @emph{using} Emacs, treating Emacs as an object (file), then | 258 | If you are just @emph{using} Emacs, treating Emacs as an object |
| 259 | you don't really love it. For true intimacy with your editor, you | 259 | (file), then you don't really love it. For true intimacy with your |
| 260 | need to read the source code. | 260 | editor, you need to read the source code. |
| 261 | 261 | ||
| 262 | @node Apropos | 262 | @node Apropos |
| 263 | @section Apropos | 263 | @section Apropos |
diff --git a/man/mh-e.texi b/man/mh-e.texi index 77fcbbc7254..c998debb16b 100644 --- a/man/mh-e.texi +++ b/man/mh-e.texi | |||
| @@ -99,7 +99,7 @@ GNU Emacs and MH@. Now I'm fully hooked on both of them. | |||
| 99 | @cindex history | 99 | @cindex history |
| 100 | 100 | ||
| 101 | The mh-e package is distributed with GNU Emacs, @footnote{Note that | 101 | The mh-e package is distributed with GNU Emacs, @footnote{Note that |
| 102 | mh-e is supported with MH 6 and @w{Emacs 18} through @w{Emacs 21}. | 102 | mh-e is supported with MH 6 and @w{Emacs 18} and up. |
| 103 | Reportedly, large parts of it work with @w{MH 5} and also with | 103 | Reportedly, large parts of it work with @w{MH 5} and also with |
| 104 | Lucid/XEmacs and Epoch, but there are no guarantees. It is also | 104 | Lucid/XEmacs and Epoch, but there are no guarantees. It is also |
| 105 | distributed with Lucid/XEmacs, as well as with MH itself.} so you | 105 | distributed with Lucid/XEmacs, as well as with MH itself.} so you |
diff --git a/man/mini.texi b/man/mini.texi index 4345a947a75..844fcbf686c 100644 --- a/man/mini.texi +++ b/man/mini.texi | |||
| @@ -400,8 +400,8 @@ complete to @file{/usr/bin/foo}. | |||
| 400 | partial-completion-mode}, or customize the variable | 400 | partial-completion-mode}, or customize the variable |
| 401 | @code{partial-completion-mode}. This binds the partial completion | 401 | @code{partial-completion-mode}. This binds the partial completion |
| 402 | commands to @key{TAB}, @key{SPC}, @key{RET}, and @kbd{?}. The usual | 402 | commands to @key{TAB}, @key{SPC}, @key{RET}, and @kbd{?}. The usual |
| 403 | completion commands are available on @kbd{M-@key{TAB}}, | 403 | completion commands are available on @kbd{M-@key{TAB}} (or |
| 404 | @kbd{M-@key{SPC}}, @kbd{M-@key{RET}} and @kbd{M-?}. | 404 | @mbd{C-M-i}), @kbd{M-@key{SPC}}, @kbd{M-@key{RET}} and @kbd{M-?}. |
| 405 | 405 | ||
| 406 | @vindex PC-include-file-path | 406 | @vindex PC-include-file-path |
| 407 | @vindex PC-disable-includes | 407 | @vindex PC-disable-includes |
diff --git a/man/misc.texi b/man/misc.texi index 8068de4c25f..9dae303fb05 100644 --- a/man/misc.texi +++ b/man/misc.texi | |||
| @@ -389,12 +389,11 @@ insert the output in the current buffer, then the old region is deleted | |||
| 389 | first and the output replaces it as the contents of the region. It | 389 | first and the output replaces it as the contents of the region. It |
| 390 | returns the command's exit status when it is called from a Lisp program. | 390 | returns the command's exit status when it is called from a Lisp program. |
| 391 | 391 | ||
| 392 | One use for @kbd{M-|} is to run @code{uudecode}. For instance, if | 392 | One use for @kbd{M-|} is to run @code{gpg} to see what keys are in |
| 393 | the buffer contains uuencoded text, type @kbd{C-x h M-| uudecode | 393 | the buffer. For instance, if the buffer contains a GPG key, type |
| 394 | @key{RET}} to feed the entire buffer contents to the @code{uudecode} | 394 | @kbd{C-x h M-| uudecode @key{RET}} to feed the entire buffer contents |
| 395 | program. That program will ignore everything except the encoded text, | 395 | to the @code{gpg} program. That program will ignore everything except |
| 396 | and will store the decoded output into the file whose name is | 396 | the encoded keys, and will output a list of the keys it contains. |
| 397 | specified in the encoded text. | ||
| 398 | 397 | ||
| 399 | @vindex shell-file-name | 398 | @vindex shell-file-name |
| 400 | Both @kbd{M-!} and @kbd{M-|} use @code{shell-file-name} to specify the | 399 | Both @kbd{M-!} and @kbd{M-|} use @code{shell-file-name} to specify the |
| @@ -405,13 +404,18 @@ searched; this list is initialized based on the environment variable | |||
| 405 | @env{PATH} when Emacs is started. Your @file{.emacs} file can override | 404 | @env{PATH} when Emacs is started. Your @file{.emacs} file can override |
| 406 | either or both of these default initializations.@refill | 405 | either or both of these default initializations.@refill |
| 407 | 406 | ||
| 408 | Both @kbd{M-!} and @kbd{M-|} wait for the shell command to complete. | 407 | Both @kbd{M-!} and @kbd{M-|} wait for the shell command to complete, |
| 409 | To stop waiting, type @kbd{C-g} to quit; that terminates the shell | 408 | unless you end the command with @samp{&} to make it asyncronous. To |
| 409 | stop waiting, type @kbd{C-g} to quit; that terminates the shell | ||
| 410 | command with the signal @code{SIGINT}---the same signal that @kbd{C-c} | 410 | command with the signal @code{SIGINT}---the same signal that @kbd{C-c} |
| 411 | normally generates in the shell. Emacs waits until the command actually | 411 | normally generates in the shell. Emacs waits until the command |
| 412 | terminates. If the shell command doesn't stop (because it ignores the | 412 | actually terminates. If the shell command doesn't stop (because it |
| 413 | @code{SIGINT} signal), type @kbd{C-g} again; this sends the command a | 413 | ignores the @code{SIGINT} signal), type @kbd{C-g} again; this sends |
| 414 | @code{SIGKILL} signal which is impossible to ignore. | 414 | the command a @code{SIGKILL} signal which is impossible to ignore. |
| 415 | |||
| 416 | Asynchronous commands ending in @samp{&} feed their output into | ||
| 417 | the buffer @samp{*Async Shell Command*}. Output arrives in that | ||
| 418 | buffer regardless of whether it is visible in a window. | ||
| 415 | 419 | ||
| 416 | To specify a coding system for @kbd{M-!} or @kbd{M-|}, use the command | 420 | To specify a coding system for @kbd{M-!} or @kbd{M-|}, use the command |
| 417 | @kbd{C-x @key{RET} c} immediately beforehand. @xref{Specify Coding}. | 421 | @kbd{C-x @key{RET} c} immediately beforehand. @xref{Specify Coding}. |
| @@ -704,12 +708,12 @@ specializations of Shell mode. | |||
| 704 | @subsection Shell Command History | 708 | @subsection Shell Command History |
| 705 | 709 | ||
| 706 | Shell buffers support three ways of repeating earlier commands. You | 710 | Shell buffers support three ways of repeating earlier commands. You |
| 707 | can use the same keys used in the minibuffer; these work much as they do | 711 | can use keys like those used for the minibuffer history; these work |
| 708 | in the minibuffer, inserting text from prior commands while point | 712 | much as they do in the minibuffer, inserting text from prior commands |
| 709 | remains always at the end of the buffer. You can move through the | 713 | while point remains always at the end of the buffer. You can move |
| 710 | buffer to previous inputs in their original place, then resubmit them or | 714 | through the buffer to previous inputs in their original place, then |
| 711 | copy them to the end. Or you can use a @samp{!}-style history | 715 | resubmit them or copy them to the end. Or you can use a |
| 712 | reference. | 716 | @samp{!}-style history reference. |
| 713 | 717 | ||
| 714 | @menu | 718 | @menu |
| 715 | * Ring: Shell Ring. Fetching commands from the history list. | 719 | * Ring: Shell Ring. Fetching commands from the history list. |
| @@ -724,11 +728,13 @@ reference. | |||
| 724 | @findex comint-previous-input | 728 | @findex comint-previous-input |
| 725 | @kindex M-p @r{(Shell mode)} | 729 | @kindex M-p @r{(Shell mode)} |
| 726 | @item M-p | 730 | @item M-p |
| 731 | @itemx C-@key{UP} | ||
| 727 | Fetch the next earlier old shell command. | 732 | Fetch the next earlier old shell command. |
| 728 | 733 | ||
| 729 | @kindex M-n @r{(Shell mode)} | 734 | @kindex M-n @r{(Shell mode)} |
| 730 | @findex comint-next-input | 735 | @findex comint-next-input |
| 731 | @item M-n | 736 | @item M-n |
| 737 | @itemx C-@key{DOWN} | ||
| 732 | Fetch the next later old shell command. | 738 | Fetch the next later old shell command. |
| 733 | 739 | ||
| 734 | @kindex M-r @r{(Shell mode)} | 740 | @kindex M-r @r{(Shell mode)} |
| @@ -762,11 +768,13 @@ reuse shell commands from the history, use the editing commands @kbd{M-p}, | |||
| 762 | history commands except that they operate on the text at the end of the | 768 | history commands except that they operate on the text at the end of the |
| 763 | shell buffer, where you would normally insert text to send to the shell. | 769 | shell buffer, where you would normally insert text to send to the shell. |
| 764 | 770 | ||
| 765 | @kbd{M-p} fetches an earlier shell command to the end of the shell buffer. | 771 | @kbd{M-p} fetches an earlier shell command to the end of the shell |
| 766 | Successive use of @kbd{M-p} fetches successively earlier shell commands, | 772 | buffer. Successive use of @kbd{M-p} fetches successively earlier |
| 767 | each replacing any text that was already present as potential shell input. | 773 | shell commands, each replacing any text that was already present as |
| 768 | @kbd{M-n} does likewise except that it finds successively more recent shell | 774 | potential shell input. @kbd{M-n} does likewise except that it finds |
| 769 | commands from the buffer. | 775 | successively more recent shell commands from the buffer. |
| 776 | @kbd{C-@key{UP}} works like @kbd{M-p}, and @kbd{C-@key{DOWN}} like | ||
| 777 | @kbd{M-n}. | ||
| 770 | 778 | ||
| 771 | The history search commands @kbd{M-r} and @kbd{M-s} read a regular | 779 | The history search commands @kbd{M-r} and @kbd{M-s} read a regular |
| 772 | expression and search through the history for a matching command. Aside | 780 | expression and search through the history for a matching command. Aside |
| @@ -948,6 +956,10 @@ the value is @code{other}, point jumps in all nonselected windows that | |||
| 948 | show the current buffer. The default value is @code{nil}, which means | 956 | show the current buffer. The default value is @code{nil}, which means |
| 949 | point does not jump to the end. | 957 | point does not jump to the end. |
| 950 | 958 | ||
| 959 | @vindex comint-prompt-read-only | ||
| 960 | If you set @code{comint-prompt-read-only}, the prompts in the Comint | ||
| 961 | buffer a read-only. | ||
| 962 | |||
| 951 | @vindex comint-input-ignoredups | 963 | @vindex comint-input-ignoredups |
| 952 | The variable @code{comint-input-ignoredups} controls whether successive | 964 | The variable @code{comint-input-ignoredups} controls whether successive |
| 953 | identical inputs are stored in the input history. A non-@code{nil} | 965 | identical inputs are stored in the input history. A non-@code{nil} |
| @@ -1297,10 +1309,10 @@ long as you like to edit the files in Emacs.) | |||
| 1297 | running @code{emacsclient} in a script. It specifies a command to run | 1309 | running @code{emacsclient} in a script. It specifies a command to run |
| 1298 | if @code{emacsclient} fails to contact Emacs. For example, the | 1310 | if @code{emacsclient} fails to contact Emacs. For example, the |
| 1299 | following setting for the @var{EDITOR} environment variable will | 1311 | following setting for the @var{EDITOR} environment variable will |
| 1300 | always give an editor, even if Emacs is not running: | 1312 | always give you an editor, even if no Emacs server is running: |
| 1301 | 1313 | ||
| 1302 | @example | 1314 | @example |
| 1303 | EDITOR="emacsclient --alternate-editor vi +%d %s" | 1315 | EDITOR="emacsclient --alternate-editor emacs +%d %s" |
| 1304 | @end example | 1316 | @end example |
| 1305 | 1317 | ||
| 1306 | @noindent | 1318 | @noindent |
| @@ -1537,8 +1549,8 @@ described in the Lisp files @file{ps-print.el} and @file{ps-mule.el}. | |||
| 1537 | @cindex sorting | 1549 | @cindex sorting |
| 1538 | 1550 | ||
| 1539 | Emacs provides several commands for sorting text in the buffer. All | 1551 | Emacs provides several commands for sorting text in the buffer. All |
| 1540 | operate on the contents of the region (the text between point and the | 1552 | operate on the contents of the region. |
| 1541 | mark). They divide the text of the region into many @dfn{sort records}, | 1553 | They divide the text of the region into many @dfn{sort records}, |
| 1542 | identify a @dfn{sort key} for each record, and then reorder the records | 1554 | identify a @dfn{sort key} for each record, and then reorder the records |
| 1543 | into the order determined by the sort keys. The records are ordered so | 1555 | into the order determined by the sort keys. The records are ordered so |
| 1544 | that their keys are in alphabetical order, or, for numeric sorting, in | 1556 | that their keys are in alphabetical order, or, for numeric sorting, in |
| @@ -1895,7 +1907,7 @@ subsequent Emacs sessions reload the saved desktop. | |||
| 1895 | @findex desktop-save | 1907 | @findex desktop-save |
| 1896 | @vindex desktop-save-mode | 1908 | @vindex desktop-save-mode |
| 1897 | You can save the desktop manually with the command @kbd{M-x | 1909 | You can save the desktop manually with the command @kbd{M-x |
| 1898 | desktop-save}. You can also enable automatical desktop saving when | 1910 | desktop-save}. You can also enable automatic desktop saving when |
| 1899 | you exit Emacs: use the Customization buffer (@pxref{Easy | 1911 | you exit Emacs: use the Customization buffer (@pxref{Easy |
| 1900 | Customization}) to set @code{desktop-save-mode} to @code{t} for future | 1912 | Customization}) to set @code{desktop-save-mode} to @code{t} for future |
| 1901 | sessions, or add this line in your @file{~/.emacs} file: | 1913 | sessions, or add this line in your @file{~/.emacs} file: |
| @@ -1962,7 +1974,7 @@ for the debugger, within the recursive editing level for @kbd{C-r}. | |||
| 1962 | Mode lines display a pair of square brackets for each recursive editing | 1974 | Mode lines display a pair of square brackets for each recursive editing |
| 1963 | level currently in progress. | 1975 | level currently in progress. |
| 1964 | 1976 | ||
| 1965 | Exiting the inner recursive edit (such as, with the debugger @kbd{c} | 1977 | Exiting the inner recursive edit (such as with the debugger @kbd{c} |
| 1966 | command) resumes the command running in the next level up. When that | 1978 | command) resumes the command running in the next level up. When that |
| 1967 | command finishes, you can then use @kbd{C-M-c} to exit another recursive | 1979 | command finishes, you can then use @kbd{C-M-c} to exit another recursive |
| 1968 | editing level, and so on. Exiting applies to the innermost level only. | 1980 | editing level, and so on. Exiting applies to the innermost level only. |
| @@ -2041,11 +2053,7 @@ buffers or major modes while in EDT emulation. | |||
| 2041 | @cindex ``PC'' key bindings | 2053 | @cindex ``PC'' key bindings |
| 2042 | The command @kbd{M-x pc-bindings-mode} sets up certain key bindings | 2054 | The command @kbd{M-x pc-bindings-mode} sets up certain key bindings |
| 2043 | for ``PC compatibility''---what people are often used to on PCs---as | 2055 | for ``PC compatibility''---what people are often used to on PCs---as |
| 2044 | follows: @kbd{Delete} and its variants delete forward instead of | 2056 | follows: @kbd{M-Backspace} does undo, and @kbd{C-Escape} does |
| 2045 | backward, @kbd{C-Backspace} kills backward a word (as @kbd{C-Delete} | ||
| 2046 | normally would), @kbd{M-Backspace} does undo, @kbd{Home} and @kbd{End} | ||
| 2047 | move to beginning and end of line, @kbd{C-Home} and @kbd{C-End} move | ||
| 2048 | to beginning and end of buffer and @kbd{C-Escape} does | ||
| 2049 | @code{list-buffers}. | 2057 | @code{list-buffers}. |
| 2050 | 2058 | ||
| 2051 | @item PC Selection mode | 2059 | @item PC Selection mode |
| @@ -2132,9 +2140,13 @@ key bindings. | |||
| 2132 | @cindex navigation | 2140 | @cindex navigation |
| 2133 | Various modes documented elsewhere have hypertext features so that | 2141 | Various modes documented elsewhere have hypertext features so that |
| 2134 | you can follow links, usually by clicking @kbd{Mouse-2} on the link or | 2142 | you can follow links, usually by clicking @kbd{Mouse-2} on the link or |
| 2135 | typing @key{RET} while point is on the link. Info mode, Help mode and | 2143 | typing @key{RET} while point is on the link. Clicking @kbd{Mouse-1} |
| 2136 | the Dired-like modes are examples. The Tags facility links between | 2144 | quickly on the link also follows it. (Hold @kbd{Mouse-1} for longer |
| 2137 | uses and definitions in source files, see @ref{Tags}. Imenu provides | 2145 | if you want to set point instead.) |
| 2146 | |||
| 2147 | Info mode, Help mode and the Dired-like modes are examples of modes | ||
| 2148 | that have links in the buffer. The Tags facility links between uses | ||
| 2149 | and definitions in source files, see @ref{Tags}. Imenu provides | ||
| 2138 | navigation amongst items indexed in the current buffer, see | 2150 | navigation amongst items indexed in the current buffer, see |
| 2139 | @ref{Imenu}. Info-lookup provides mode-specific lookup of definitions | 2151 | @ref{Imenu}. Info-lookup provides mode-specific lookup of definitions |
| 2140 | in Info indexes, see @ref{Documentation}. Speedbar maintains a frame | 2152 | in Info indexes, see @ref{Documentation}. Speedbar maintains a frame |
| @@ -2149,7 +2161,6 @@ fashion. | |||
| 2149 | * Browse-URL:: Following URLs. | 2161 | * Browse-URL:: Following URLs. |
| 2150 | * Goto-address:: Activating URLs. | 2162 | * Goto-address:: Activating URLs. |
| 2151 | * FFAP:: Finding files etc. at point. | 2163 | * FFAP:: Finding files etc. at point. |
| 2152 | * Find-func:: Finding function and variable definitions. | ||
| 2153 | @end menu | 2164 | @end menu |
| 2154 | 2165 | ||
| 2155 | @node Browse-URL | 2166 | @node Browse-URL |
| @@ -2288,41 +2299,6 @@ Display a menu of files and URLs mentioned in current buffer, then | |||
| 2288 | find the one you select (@code{ffap-menu}). | 2299 | find the one you select (@code{ffap-menu}). |
| 2289 | @end table | 2300 | @end table |
| 2290 | 2301 | ||
| 2291 | @node Find-func | ||
| 2292 | @subsection Finding Function and Variable Definitions | ||
| 2293 | @cindex definitions, finding in Lisp sources | ||
| 2294 | @cindex Lisp definitions, finding in sources | ||
| 2295 | |||
| 2296 | @table @kbd | ||
| 2297 | @item M-x find-function @key{RET} @var{function} @key{RET} | ||
| 2298 | Find the definition of @var{function} in its source file. | ||
| 2299 | @item M-x find-variable @key{RET} @var{variable} @key{RET} | ||
| 2300 | Find the definition of @var{variable} in its source file. | ||
| 2301 | @item M-x find-function-on-key @key{RET} @var{key} | ||
| 2302 | Find the definition of the function that @var{key} invokes. | ||
| 2303 | @end table | ||
| 2304 | |||
| 2305 | These commands provide an easy way to find the definitions of Emacs | ||
| 2306 | Lisp functions and variables. They are similar in purpose to the Tags | ||
| 2307 | facility (@pxref{Tags}), but don't require a tags table; on the other | ||
| 2308 | hand, they only work for function and variable definitions that are | ||
| 2309 | already loaded in the Emacs session. | ||
| 2310 | |||
| 2311 | @findex find-function | ||
| 2312 | @findex find-function-on-key | ||
| 2313 | @findex find-variable | ||
| 2314 | To find the definition of a function, use @kbd{M-x find-function}. | ||
| 2315 | @kbd{M-x find-variable} finds the definition of a specified variable. | ||
| 2316 | @kbd{M-x find-function-on-key} finds the definition of the function | ||
| 2317 | bound to a specified key. | ||
| 2318 | |||
| 2319 | To use these commands, you must have the Lisp source (@samp{.el}) | ||
| 2320 | files available along with the compiled (@samp{.elc}) files, in | ||
| 2321 | directories in @code{load-path}. You can use compressed source files | ||
| 2322 | if you enable Auto Compression mode. These commands only handle | ||
| 2323 | definitions written in Lisp, not primitive functions or variables | ||
| 2324 | defined in the C code of Emacs. | ||
| 2325 | |||
| 2326 | @node Dissociated Press, Amusements, Hyperlinking, Top | 2302 | @node Dissociated Press, Amusements, Hyperlinking, Top |
| 2327 | @section Dissociated Press | 2303 | @section Dissociated Press |
| 2328 | 2304 | ||
diff --git a/man/pcl-cvs.texi b/man/pcl-cvs.texi index a99cd39a8d9..de9b962e4a5 100644 --- a/man/pcl-cvs.texi +++ b/man/pcl-cvs.texi | |||
| @@ -77,7 +77,7 @@ of the various commands and major modes for further information. | |||
| 77 | @end ifnottex | 77 | @end ifnottex |
| 78 | 78 | ||
| 79 | @menu | 79 | @menu |
| 80 | * About PCL-CVS:: Installation, credits, history, @dots{} | 80 | * About PCL-CVS:: Credits, history, @dots{} |
| 81 | 81 | ||
| 82 | * Getting started:: An introduction with a walk-through example. | 82 | * Getting started:: An introduction with a walk-through example. |
| 83 | * Buffer contents:: An explanation of the buffer contents. | 83 | * Buffer contents:: An explanation of the buffer contents. |
| @@ -100,7 +100,6 @@ of the various commands and major modes for further information. | |||
| 100 | About PCL-CVS | 100 | About PCL-CVS |
| 101 | 101 | ||
| 102 | * Contributors:: Contributors to PCL-CVS. | 102 | * Contributors:: Contributors to PCL-CVS. |
| 103 | * Installation:: | ||
| 104 | 103 | ||
| 105 | Commands | 104 | Commands |
| 106 | 105 | ||
| @@ -152,14 +151,11 @@ separate XEmacs version was slowly splitting away. In late 1998, | |||
| 152 | Stefan Monnier picked up development again, adding some major new | 151 | Stefan Monnier picked up development again, adding some major new |
| 153 | functionality and taking over the maintenance. | 152 | functionality and taking over the maintenance. |
| 154 | 153 | ||
| 155 | As of Emacs 21, PCL-CVS is part of the standard Emacs distribution. | ||
| 156 | |||
| 157 | @menu | 154 | @menu |
| 158 | * Contributors:: Contributors to PCL-CVS. | 155 | * Contributors:: Contributors to PCL-CVS. |
| 159 | * Installation:: | ||
| 160 | @end menu | 156 | @end menu |
| 161 | 157 | ||
| 162 | @node Contributors, Installation, About PCL-CVS, About PCL-CVS | 158 | @node Contributors,, About PCL-CVS, About PCL-CVS |
| 163 | @section Contributors to PCL-CVS | 159 | @section Contributors to PCL-CVS |
| 164 | @cindex Contributors | 160 | @cindex Contributors |
| 165 | @cindex Authors | 161 | @cindex Authors |
| @@ -236,39 +232,6 @@ requests, bug reports and encouragement. Thanks a lot! Without you | |||
| 236 | there would be no new releases of PCL-CVS. | 232 | there would be no new releases of PCL-CVS. |
| 237 | 233 | ||
| 238 | 234 | ||
| 239 | @node Installation, , Contributors, About PCL-CVS | ||
| 240 | @section Installation | ||
| 241 | @cindex Installation | ||
| 242 | |||
| 243 | As mentioned above, PCL-CVS comes bundled with Emacs version 21.1 and | ||
| 244 | later. If you're using Emacs 20, you can download an older version of | ||
| 245 | PCL-CVS from @uref{ftp://flint.cs.yale.edu/pub/monnier/pcl-cvs}. That | ||
| 246 | version also works on XEmacs. | ||
| 247 | |||
| 248 | If you are running XEmacs 21.0 or later, PCL-CVS is available in | ||
| 249 | pre-compiled package form. Please refer to the XEmacs manual for | ||
| 250 | instructions regarding package selection and installation. Currently, | ||
| 251 | that PCL-CVS package also requires you to have installed the | ||
| 252 | @file{xemacs-base}, @file{elib}, and @file{dired} packages. | ||
| 253 | |||
| 254 | If you have @TeX{} installed at your site, you can make a typeset manual | ||
| 255 | from @file{pcl-cvs.texi}. | ||
| 256 | |||
| 257 | @enumerate | ||
| 258 | @item | ||
| 259 | If PCL-CVS came with the Emacs distribution, type @kbd{make pcl-cvs.dvi} | ||
| 260 | in the @file{man} subdirectory of the Emacs source tree. | ||
| 261 | @item | ||
| 262 | Alternatively, run @TeX{} by typing @kbd{texi2dvi pcl-cvs.texi}. | ||
| 263 | @item | ||
| 264 | Convert the resulting device independent file @file{pcl-cvs.dvi} to a | ||
| 265 | form which your printer can output and print it. If you have a | ||
| 266 | PostScript printer, there is a program, @code{dvi2ps}, which does. There | ||
| 267 | is also a program which comes together with @TeX{}, @code{dvips}, which | ||
| 268 | you can use. | ||
| 269 | @end enumerate | ||
| 270 | |||
| 271 | |||
| 272 | @node Getting started, Buffer contents, About PCL-CVS, Top | 235 | @node Getting started, Buffer contents, About PCL-CVS, Top |
| 273 | @chapter Getting started | 236 | @chapter Getting started |
| 274 | @cindex Introduction | 237 | @cindex Introduction |
diff --git a/man/programs.texi b/man/programs.texi index f884e019d22..2a631a23b5f 100644 --- a/man/programs.texi +++ b/man/programs.texi | |||
| @@ -1326,8 +1326,8 @@ symbol names. | |||
| 1326 | partial symbol before point against the set of meaningful symbol | 1326 | partial symbol before point against the set of meaningful symbol |
| 1327 | names. This command inserts at point any additional characters that | 1327 | names. This command inserts at point any additional characters that |
| 1328 | it can determine from the partial name. (If your window manager | 1328 | it can determine from the partial name. (If your window manager |
| 1329 | defines @kbd{M-@key{TAB}} to switch windows, you can type this Emacs | 1329 | defines @kbd{M-@key{TAB}} to switch windows, you can type |
| 1330 | command as @kbd{@key{ESC} @key{TAB}}.) | 1330 | @kbd{@key{ESC} @key{TAB}} or @kbd{C-M-i}.) |
| 1331 | 1331 | ||
| 1332 | If the partial name in the buffer has multiple possible completions | 1332 | If the partial name in the buffer has multiple possible completions |
| 1333 | that differ in the very next character, so that it is impossible to | 1333 | that differ in the very next character, so that it is impossible to |
diff --git a/man/rmail.texi b/man/rmail.texi index 3cfa1802a88..ad72b94c3b2 100644 --- a/man/rmail.texi +++ b/man/rmail.texi | |||
| @@ -297,13 +297,14 @@ adding or removing this attribute. @xref{Rmail Attributes}. | |||
| 297 | @section Rmail Files and Inboxes | 297 | @section Rmail Files and Inboxes |
| 298 | @cindex inbox file | 298 | @cindex inbox file |
| 299 | 299 | ||
| 300 | The operating system places incoming mail for you in a file that we | 300 | When you receive mail locally, the operating system places incoming |
| 301 | call your @dfn{inbox}. When you start up Rmail, it runs a C program | 301 | mail for you in a file that we call your @dfn{inbox}. When you start |
| 302 | called @code{movemail} to copy the new messages from your inbox into | 302 | up Rmail, it runs a C program called @code{movemail} to copy the new |
| 303 | your primary Rmail file, which also contains other messages saved from | 303 | messages from your local inbox into your primary Rmail file, which |
| 304 | previous Rmail sessions. It is in this file that you actually read the | 304 | also contains other messages saved from previous Rmail sessions. It |
| 305 | mail with Rmail. This operation is called @dfn{getting new mail}. You | 305 | is in this file that you actually read the mail with Rmail. This |
| 306 | can get new mail at any time in Rmail by typing @kbd{g}. | 306 | operation is called @dfn{getting new mail}. You can get new mail at |
| 307 | any time in Rmail by typing @kbd{g}. | ||
| 307 | 308 | ||
| 308 | @vindex rmail-primary-inbox-list | 309 | @vindex rmail-primary-inbox-list |
| 309 | @cindex @env{MAIL} environment variable | 310 | @cindex @env{MAIL} environment variable |
| @@ -344,6 +345,35 @@ systems is adequate for the job, and we plan to change Rmail to use that | |||
| 344 | as its internal format. However, the Rmail file will still be separate | 345 | as its internal format. However, the Rmail file will still be separate |
| 345 | from the inbox file, even on systems where their format is the same. | 346 | from the inbox file, even on systems where their format is the same. |
| 346 | 347 | ||
| 348 | @vindex rmail-preserve-inbox | ||
| 349 | When getting new mail, Rmail first copies the new mail from the inbox | ||
| 350 | file to the Rmail file; then it saves the Rmail file; then it truncates | ||
| 351 | the inbox file. This way, a system crash may cause duplication of mail | ||
| 352 | between the inbox and the Rmail file, but cannot lose mail. If | ||
| 353 | @code{rmail-preserve-inbox} is non-@code{nil}, then Rmail will copy new | ||
| 354 | mail from the inbox file to the Rmail file without truncating the inbox | ||
| 355 | file. You may wish to set this, for example, on a portable computer you | ||
| 356 | use to check your mail via POP while traveling, so that your mail will | ||
| 357 | remain on the server and you can save it later on your workstation. | ||
| 358 | |||
| 359 | In some cases, Rmail copies the new mail from the inbox file | ||
| 360 | indirectly. First it runs the @code{movemail} program to move the mail | ||
| 361 | from the inbox to an intermediate file called | ||
| 362 | @file{~/.newmail-@var{inboxname}}. Then Rmail merges the new mail from | ||
| 363 | that file, saves the Rmail file, and only then deletes the intermediate | ||
| 364 | file. If there is a crash at the wrong time, this file continues to | ||
| 365 | exist, and Rmail will use it again the next time it gets new mail from | ||
| 366 | that inbox. | ||
| 367 | |||
| 368 | If Rmail is unable to convert the data in | ||
| 369 | @file{~/.newmail-@var{inboxname}} into Babyl format, it renames the file | ||
| 370 | to @file{~/RMAILOSE.@var{n}} (@var{n} is an integer chosen to make the | ||
| 371 | name unique) so that Rmail will not have trouble with the data again. | ||
| 372 | You should look at the file, find whatever message confuses Rmail | ||
| 373 | (probably one that includes the control-underscore character, octal code | ||
| 374 | 037), and delete it. Then you can use @kbd{1 g} to get new mail from | ||
| 375 | the corrected file. | ||
| 376 | |||
| 347 | @node Rmail Files | 377 | @node Rmail Files |
| 348 | @section Multiple Rmail Files | 378 | @section Multiple Rmail Files |
| 349 | 379 | ||
| @@ -1003,8 +1033,9 @@ turn off highlighting entirely in Rmail, set | |||
| 1003 | You can highlight and activate URLs in incoming messages by adding | 1033 | You can highlight and activate URLs in incoming messages by adding |
| 1004 | the function @code{goto-address} to the hook | 1034 | the function @code{goto-address} to the hook |
| 1005 | @code{rmail-show-message-hook}. Then you can browse these URLs by | 1035 | @code{rmail-show-message-hook}. Then you can browse these URLs by |
| 1006 | clicking on them with @kbd{Mouse-2} or by moving to one and typing | 1036 | clicking on them with @kbd{Mouse-2} (or @kbd{Mouse-1} quickly) or by |
| 1007 | @kbd{C-c @key{RET}}. @xref{Goto-address, Activating URLs, Activating URLs}. | 1037 | moving to one and typing @kbd{C-c @key{RET}}. @xref{Goto-address, |
| 1038 | Activating URLs, Activating URLs}. | ||
| 1008 | 1039 | ||
| 1009 | @node Rmail Coding | 1040 | @node Rmail Coding |
| 1010 | @section Rmail and Coding Systems | 1041 | @section Rmail and Coding Systems |
| @@ -1158,30 +1189,27 @@ which applies the code when displaying the text. | |||
| 1158 | @section @code{movemail} program | 1189 | @section @code{movemail} program |
| 1159 | @cindex @code{movemail} program | 1190 | @cindex @code{movemail} program |
| 1160 | 1191 | ||
| 1161 | When invoked for the first time, Rmail attempts to locate | 1192 | When invoked for the first time, Rmail attempts to locate the |
| 1162 | @code{movemail} program and determine its version. There are | 1193 | @code{movemail} program and determine its version. There are two |
| 1163 | two versions of @code{movemail} program: the native one, shipped with | 1194 | versions of @code{movemail} program: the native one, shipped with GNU |
| 1164 | GNU Emacs (we will refer to it as @samp{emacs version}) and the one | 1195 | Emacs (the ``emacs version'') and the one included in GNU mailutils |
| 1165 | coming from GNU mailutils (@xref{movemail,,,mailutils,GNU mailutils}, | 1196 | (the ``mailutils version'', @[xref{movemail,,,mailutils,GNU |
| 1166 | we will refer to it as @samp{mailutils version}). Both versions are | 1197 | mailutils}). They support the same command line syntax and the same |
| 1167 | compatible with each other in the sense that they support the same | 1198 | basic subset of options. However, the @samp{mailutils} version offers |
| 1168 | command line syntax and the same basic subset of options. However, | 1199 | additional features. |
| 1169 | the @samp{mailutils} version offers a much richer set of | ||
| 1170 | features. | ||
| 1171 | |||
| 1172 | The @samp{Emacs version} of @code{movemail} is able to retrieve mail from usual | ||
| 1173 | UNIX mailbox formats and from remote mailboxes using the POP3 protocol. | ||
| 1174 | |||
| 1175 | The @samp{Mailutils version} is able to handle a wide set of mailbox | ||
| 1176 | formats, such as plain UNIX mailboxes, @code{maildir} and @code{MH} | ||
| 1177 | mailboxes, etc. It is able to retrieve remote mail using POP3 or IMAP4 | ||
| 1178 | protocol. In the latter case, @code{mailutils movemail} can be | ||
| 1179 | instructed to retrieve mail using a TLS encrypted channel. | ||
| 1180 | 1200 | ||
| 1181 | The @samp{Mailutils movemail} accepts mailbox argument in the @acronym{URL} | 1201 | The Emacs version of @code{movemail} is able to retrieve mail from |
| 1182 | form. The detailed description of mailbox @acronym{URL}s can be found | 1202 | usual UNIX mailbox formats and from remote mailboxes using the POP3 |
| 1183 | in @ref{URL,,,mailutils,Mailbox URL Formats}. In short, a | 1203 | protocol. |
| 1184 | @acronym{URL} is: | 1204 | |
| 1205 | The Mailutils version is able to handle a wide set of mailbox | ||
| 1206 | formats, such as plain UNIX mailboxes, @code{maildir} and @code{MH} | ||
| 1207 | mailboxes, etc. It is able to retrieve remote mail using POP3 or | ||
| 1208 | IMAP4 protocol, and can retrieve mail from them using a TLS encrypted | ||
| 1209 | channel. It also accepts mailbox argument in the @acronym{URL} form. | ||
| 1210 | The detailed description of mailbox @acronym{URL}s can be found in | ||
| 1211 | @ref{URL,,,mailutils,Mailbox URL Formats}. In short, a @acronym{URL} | ||
| 1212 | is: | ||
| 1185 | 1213 | ||
| 1186 | @smallexample | 1214 | @smallexample |
| 1187 | @var{proto}://[@var{user}[:@var{password}]@@]@var{host-or-file-name} | 1215 | @var{proto}://[@var{user}[:@var{password}]@@]@var{host-or-file-name} |
| @@ -1244,55 +1272,26 @@ address of the remote mail server to connect to; | |||
| 1244 | e.g., @code{imap://smith:guessme@@remote.server.net}. | 1272 | e.g., @code{imap://smith:guessme@@remote.server.net}. |
| 1245 | @end table | 1273 | @end table |
| 1246 | 1274 | ||
| 1247 | Alternatively, the mailbox may be specified as a file name of the | 1275 | Alternatively, you can specify the file name of the mailbox to use. |
| 1248 | mailbox to use. This is equivalent to specifying the @samp{file} protocol: | 1276 | This is equivalent to specifying the @samp{file} protocol: |
| 1249 | 1277 | ||
| 1250 | @smallexample | 1278 | @smallexample |
| 1251 | /var/spool/mail/user @equiv{} file://var/spool/mail/user | 1279 | /var/spool/mail/@var{user} @equiv{} file://var/spool/mail/@var{user} |
| 1252 | @end smallexample | 1280 | @end smallexample |
| 1253 | 1281 | ||
| 1254 | @vindex rmail-movemail-program | 1282 | @vindex rmail-movemail-program |
| 1255 | @vindex rmail-movemail-search-path | 1283 | @vindex rmail-movemail-search-path |
| 1256 | To determine which version of @code{movemail} is being used, Rmail | 1284 | The variable @code{rmail-movemail-program} controls which version of |
| 1257 | examines the value of @code{rmail-movemail-program} variable. If it | 1285 | @code{movemail} to use. If that is a string, it specifies the |
| 1258 | is set, its value is used as a full path to the @code{movemail} binary. | 1286 | absolute file name of the @code{movemail} executable. If it is |
| 1259 | Otherwise, Rmail searches for @code{movemail} in the list of directories | 1287 | @code{nil}, Rmail searches for @code{movemail} in the directories |
| 1260 | constructed by appending the values of @code{rmail-movemail-search-path} and | 1288 | listed in @code{rmail-movemail-search-path} and @code{exec-path}, then |
| 1261 | @code{exec-path} to @code{exec-directory}. | 1289 | in @code{exec-directory}. |
| 1262 | 1290 | ||
| 1263 | @node Remote Mailboxes | 1291 | @node Remote Mailboxes |
| 1264 | @section Retrieving Mail from Remote Mailboxes | 1292 | @section Retrieving Mail from Remote Mailboxes |
| 1265 | @pindex movemail | 1293 | @pindex movemail |
| 1266 | 1294 | ||
| 1267 | @vindex rmail-preserve-inbox | ||
| 1268 | When getting new mail, Rmail first copies the new mail from the inbox | ||
| 1269 | file to the Rmail file; then it saves the Rmail file; then it truncates | ||
| 1270 | the inbox file. This way, a system crash may cause duplication of mail | ||
| 1271 | between the inbox and the Rmail file, but cannot lose mail. If | ||
| 1272 | @code{rmail-preserve-inbox} is non-@code{nil}, then Rmail will copy new | ||
| 1273 | mail from the inbox file to the Rmail file without truncating the inbox | ||
| 1274 | file. You may wish to set this, for example, on a portable computer you | ||
| 1275 | use to check your mail via POP while traveling, so that your mail will | ||
| 1276 | remain on the server and you can save it later on your workstation. | ||
| 1277 | |||
| 1278 | In some cases, Rmail copies the new mail from the inbox file | ||
| 1279 | indirectly. First it runs the @code{movemail} program to move the mail | ||
| 1280 | from the inbox to an intermediate file called | ||
| 1281 | @file{~/.newmail-@var{inboxname}}. Then Rmail merges the new mail from | ||
| 1282 | that file, saves the Rmail file, and only then deletes the intermediate | ||
| 1283 | file. If there is a crash at the wrong time, this file continues to | ||
| 1284 | exist, and Rmail will use it again the next time it gets new mail from | ||
| 1285 | that inbox. | ||
| 1286 | |||
| 1287 | If Rmail is unable to convert the data in | ||
| 1288 | @file{~/.newmail-@var{inboxname}} into Babyl format, it renames the file | ||
| 1289 | to @file{~/RMAILOSE.@var{n}} (@var{n} is an integer chosen to make the | ||
| 1290 | name unique) so that Rmail will not have trouble with the data again. | ||
| 1291 | You should look at the file, find whatever message confuses Rmail | ||
| 1292 | (probably one that includes the control-underscore character, octal code | ||
| 1293 | 037), and delete it. Then you can use @kbd{1 g} to get new mail from | ||
| 1294 | the corrected file. | ||
| 1295 | |||
| 1296 | Some sites use a method called POP for accessing users' inbox data | 1295 | Some sites use a method called POP for accessing users' inbox data |
| 1297 | instead of storing the data in inbox files. The @code{Emacs | 1296 | instead of storing the data in inbox files. The @code{Emacs |
| 1298 | movemail} can work with POP if you compile it with the macro | 1297 | movemail} can work with POP if you compile it with the macro |
diff --git a/man/sending.texi b/man/sending.texi index bb1ac2864ac..fb00f80a683 100644 --- a/man/sending.texi +++ b/man/sending.texi | |||
| @@ -45,7 +45,7 @@ switch to other buffers while in the middle of composing mail, and switch | |||
| 45 | back later (or never). If you use the @kbd{C-x m} command again when you | 45 | back later (or never). If you use the @kbd{C-x m} command again when you |
| 46 | have been composing another message but have not sent it, you are asked to | 46 | have been composing another message but have not sent it, you are asked to |
| 47 | confirm before the old message is erased. If you answer @kbd{n}, the | 47 | confirm before the old message is erased. If you answer @kbd{n}, the |
| 48 | @samp{*mail*} buffer is left selected with its old contents, so you can | 48 | @samp{*mail*} buffer remains selected with its old contents, so you can |
| 49 | finish the old message and send it. @kbd{C-u C-x m} is another way to do | 49 | finish the old message and send it. @kbd{C-u C-x m} is another way to do |
| 50 | this. Sending the message marks the @samp{*mail*} buffer ``unmodified,'' | 50 | this. Sending the message marks the @samp{*mail*} buffer ``unmodified,'' |
| 51 | which avoids the need for confirmation when @kbd{C-x m} is next used. | 51 | which avoids the need for confirmation when @kbd{C-x m} is next used. |
| @@ -289,7 +289,21 @@ this line:@refill | |||
| 289 | alias maingnu gnu@@gnu.org local-gnu | 289 | alias maingnu gnu@@gnu.org local-gnu |
| 290 | @end example | 290 | @end example |
| 291 | 291 | ||
| 292 | Emacs also recognizes include commands in @samp{.mailrc} files. | 292 | @noindent |
| 293 | Addresses specified in this way should use doublequotes around an | ||
| 294 | entire address when the address contains spaces. But you need not | ||
| 295 | include doublequotes around parts of the address, such as the person's | ||
| 296 | full name. Emacs puts them in if they are needed. For example, | ||
| 297 | |||
| 298 | @example | ||
| 299 | alias chief-torturer "George W. Bush <bush@whitehouse.gov>" | ||
| 300 | @end example | ||
| 301 | |||
| 302 | @noindent | ||
| 303 | is correct. Emacs will insert the address as @samp{"George W. Bush" | ||
| 304 | <bush@whitehouse.gov>}. | ||
| 305 | |||
| 306 | Emacs also recognizes ``include'' commands in @samp{.mailrc} files. | ||
| 293 | They look like this: | 307 | They look like this: |
| 294 | 308 | ||
| 295 | @example | 309 | @example |
| @@ -363,12 +377,10 @@ expansion as well. Here's how to do that: | |||
| 363 | @smallexample | 377 | @smallexample |
| 364 | (add-hook 'mail-mode-hook | 378 | (add-hook 'mail-mode-hook |
| 365 | (lambda () | 379 | (lambda () |
| 366 | (substitute-key-definition | 380 | (define-key |
| 367 | 'next-line 'mail-abbrev-next-line | 381 | mail-mode-map [remap next-line] 'mail-abbrev-next-line) |
| 368 | mail-mode-map global-map) | 382 | (define-key |
| 369 | (substitute-key-definition | 383 | mail-mode-map [remap end-of-buffer] 'mail-abbrev-end-of-buffer))) |
| 370 | 'end-of-buffer 'mail-abbrev-end-of-buffer | ||
| 371 | mail-mode-map global-map))) | ||
| 372 | @end smallexample | 384 | @end smallexample |
| 373 | 385 | ||
| 374 | @node Mail Mode | 386 | @node Mail Mode |
| @@ -503,8 +515,8 @@ inserts the full name corresponding to the address, if it can | |||
| 503 | determine the full name. The variable @code{mail-complete-style} | 515 | determine the full name. The variable @code{mail-complete-style} |
| 504 | controls whether to insert the full name, and what style to use, as in | 516 | controls whether to insert the full name, and what style to use, as in |
| 505 | @code{mail-from-style} (@pxref{Mail Headers}). (If your window | 517 | @code{mail-from-style} (@pxref{Mail Headers}). (If your window |
| 506 | manager defines @kbd{M-@key{TAB}} to switch windows, you can type this | 518 | manager defines @kbd{M-@key{TAB}} to switch windows, you can type |
| 507 | Emacs command as @kbd{@key{ESC} @key{TAB}}.) | 519 | @kbd{@key{ESC} @key{TAB}} or @kbd{C-M-i}.) |
| 508 | 520 | ||
| 509 | For completion purposes, the valid mailing addresses are taken to be | 521 | For completion purposes, the valid mailing addresses are taken to be |
| 510 | the local users' names plus your personal mail aliases. You can | 522 | the local users' names plus your personal mail aliases. You can |
| @@ -626,7 +638,8 @@ the usual command to insert a file in the current buffer. But it is | |||
| 626 | often more convenient to use a special command, @kbd{C-c C-i} | 638 | often more convenient to use a special command, @kbd{C-c C-i} |
| 627 | (@code{mail-attach-file}). This command inserts the file contents at | 639 | (@code{mail-attach-file}). This command inserts the file contents at |
| 628 | the end of the buffer, after your signature if any, with a delimiter | 640 | the end of the buffer, after your signature if any, with a delimiter |
| 629 | line that includes the file name. | 641 | line that includes the file name. Note that this is not a MIME |
| 642 | attachment. | ||
| 630 | 643 | ||
| 631 | @vindex mail-mode-hook | 644 | @vindex mail-mode-hook |
| 632 | @vindex mail-setup-hook | 645 | @vindex mail-setup-hook |
diff --git a/man/text.texi b/man/text.texi index 7b262e11abe..4b15eff4f12 100644 --- a/man/text.texi +++ b/man/text.texi | |||
| @@ -857,7 +857,7 @@ as the command @code{ispell-complete-word}, which performs completion | |||
| 857 | of the partial word in the buffer before point, using the spelling | 857 | of the partial word in the buffer before point, using the spelling |
| 858 | dictionary as the space of possible words. @xref{Spelling}. If your | 858 | dictionary as the space of possible words. @xref{Spelling}. If your |
| 859 | window manager defines @kbd{M-@key{TAB}} to switch windows, you can | 859 | window manager defines @kbd{M-@key{TAB}} to switch windows, you can |
| 860 | type this Emacs command as @kbd{@key{ESC} @key{TAB}}. | 860 | type @kbd{@key{ESC} @key{TAB}} or @kbd{C-M-i}. |
| 861 | 861 | ||
| 862 | @vindex text-mode-hook | 862 | @vindex text-mode-hook |
| 863 | Entering Text mode runs the hook @code{text-mode-hook}. Other major | 863 | Entering Text mode runs the hook @code{text-mode-hook}. Other major |
diff --git a/man/url.texi b/man/url.texi index f5c15e2dff5..aa4188b196f 100644 --- a/man/url.texi +++ b/man/url.texi | |||
| @@ -327,10 +327,10 @@ can be served in more than one encoding. | |||
| 327 | 327 | ||
| 328 | HTTP allows specifying a list of MIME charsets which indicate your | 328 | HTTP allows specifying a list of MIME charsets which indicate your |
| 329 | preferred character set encodings, e.g.@: Latin-9 or Big5, and these | 329 | preferred character set encodings, e.g.@: Latin-9 or Big5, and these |
| 330 | can be weighted. In Emacs 21 this list is generated automatically | 330 | can be weighted. This list is generated automatically from the list |
| 331 | from the list of defined coding systems which have associated MIME | 331 | of defined coding systems which have associated MIME types. These are |
| 332 | types. These are sorted by coding priority. @xref{Recognize Coding, | 332 | sorted by coding priority. @xref{Recognize Coding, , Recognizing |
| 333 | , Recognizing Coding Systems, emacs, The GNU Emacs Manual}. | 333 | Coding Systems, emacs, The GNU Emacs Manual}. |
| 334 | @end defopt | 334 | @end defopt |
| 335 | 335 | ||
| 336 | @defopt url-mime-language-string | 336 | @defopt url-mime-language-string |
diff --git a/man/woman.texi b/man/woman.texi index 108225dbbf6..fdcc8901339 100644 --- a/man/woman.texi +++ b/man/woman.texi | |||
| @@ -117,9 +117,10 @@ version of Emacs. It was developed primarily on various versions of | |||
| 117 | Microsoft Windows, but has also been tested on MS-DOS, and various | 117 | Microsoft Windows, but has also been tested on MS-DOS, and various |
| 118 | versions of UNIX and GNU/Linux. | 118 | versions of UNIX and GNU/Linux. |
| 119 | 119 | ||
| 120 | WoMan is distributed with GNU Emacs 21, and the current source code and | 120 | WoMan is distributed with GNU Emacs. In addition, the current source |
| 121 | documentation files are available from | 121 | code and documentation files are available from |
| 122 | @uref{http://centaur.maths.qmw.ac.uk/Emacs/WoMan/, my web server}. | 122 | @uref{http://centaur.maths.qmw.ac.uk/Emacs/WoMan/, the WoMan web |
| 123 | server}. | ||
| 123 | 124 | ||
| 124 | WoMan implements a subset of the formatting performed by the Emacs | 125 | WoMan implements a subset of the formatting performed by the Emacs |
| 125 | @code{man} (or @code{manual-entry}) command to format a Unix-style | 126 | @code{man} (or @code{manual-entry}) command to format a Unix-style |
diff --git a/src/ChangeLog b/src/ChangeLog index dc48d647216..fc2ded6ce94 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,15 @@ | |||
| 1 | 2005-03-06 Richard M. Stallman <rms@gnu.org> | ||
| 2 | |||
| 3 | * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT. | ||
| 4 | |||
| 5 | * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO. | ||
| 6 | (Feval, Ffuncall): Use CHECK_CONS_LIST. | ||
| 7 | |||
| 8 | * lisp.h (CHECK_CONS_LIST): New macro (two definitions). | ||
| 9 | |||
| 10 | * blockinput.h (UNBLOCK_INPUT_TO): New macro. | ||
| 11 | (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any. | ||
| 12 | |||
| 1 | 2005-03-05 Juri Linkov <juri@jurta.org> | 13 | 2005-03-05 Juri Linkov <juri@jurta.org> |
| 2 | 14 | ||
| 3 | * emacs.c (USAGE1): Replace Info node name "command arguments" | 15 | * emacs.c (USAGE1): Replace Info node name "command arguments" |
| @@ -107,6 +119,11 @@ | |||
| 107 | 119 | ||
| 108 | * keyboard.c (Fposn_at_x_y): Check integerness of X and Y. | 120 | * keyboard.c (Fposn_at_x_y): Check integerness of X and Y. |
| 109 | 121 | ||
| 122 | 2005-02-27 Richard M. Stallman <rms@gnu.org> | ||
| 123 | |||
| 124 | * xdisp.c (fast_find_position): Rename END to BEG. | ||
| 125 | (syms_of_xdisp) <menu-bar-update-hook>: Doc fix. | ||
| 126 | |||
| 110 | 2005-02-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | 127 | 2005-02-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> |
| 111 | 128 | ||
| 112 | * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to | 129 | * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to |
diff --git a/src/blockinput.h b/src/blockinput.h index a4c8a9b9c22..a3b50d2a0f2 100644 --- a/src/blockinput.h +++ b/src/blockinput.h | |||
| @@ -94,7 +94,30 @@ extern int pending_atimers; | |||
| 94 | } \ | 94 | } \ |
| 95 | while (0) | 95 | while (0) |
| 96 | 96 | ||
| 97 | #define TOTALLY_UNBLOCK_INPUT (interrupt_input_blocked = 0) | 97 | /* Undo any number of BLOCK_INPUT calls, |
| 98 | and also reinvoke any pending signal. */ | ||
| 99 | |||
| 100 | #define TOTALLY_UNBLOCK_INPUT \ | ||
| 101 | if (interrupt_input_blocked != 0) \ | ||
| 102 | { \ | ||
| 103 | interrupt_input_blocked = 1; \ | ||
| 104 | UNBLOCK_INPUT; \ | ||
| 105 | } \ | ||
| 106 | else | ||
| 107 | |||
| 108 | /* Undo any number of BLOCK_INPUT calls down to level LEVEL, | ||
| 109 | and also (if the level is now 0) reinvoke any pending signal. */ | ||
| 110 | |||
| 111 | #define UNBLOCK_INPUT_TO(LEVEL) \ | ||
| 112 | do \ | ||
| 113 | { \ | ||
| 114 | int oldlevel = interrupt_input_blocked; \ | ||
| 115 | interrupt_input_blocked = (LEVEL) + 1; \ | ||
| 116 | if (interrupt_input_blocked != oldlevel + 1) \ | ||
| 117 | UNBLOCK_INPUT; \ | ||
| 118 | } \ | ||
| 119 | while (0) | ||
| 120 | |||
| 98 | #define UNBLOCK_INPUT_RESIGNAL UNBLOCK_INPUT | 121 | #define UNBLOCK_INPUT_RESIGNAL UNBLOCK_INPUT |
| 99 | 122 | ||
| 100 | /* In critical section ? */ | 123 | /* In critical section ? */ |
diff --git a/src/eval.c b/src/eval.c index 83e16360473..bf4fec4f8a1 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -1176,7 +1176,7 @@ unwind_to_catch (catch, value) | |||
| 1176 | 1176 | ||
| 1177 | /* Restore certain special C variables. */ | 1177 | /* Restore certain special C variables. */ |
| 1178 | set_poll_suppress_count (catch->poll_suppress_count); | 1178 | set_poll_suppress_count (catch->poll_suppress_count); |
| 1179 | interrupt_input_blocked = catch->interrupt_input_blocked; | 1179 | UNBLOCK_INPUT_TO (catch->interrupt_input_blocked); |
| 1180 | handling_signal = 0; | 1180 | handling_signal = 0; |
| 1181 | immediate_quit = 0; | 1181 | immediate_quit = 0; |
| 1182 | 1182 | ||
| @@ -2067,6 +2067,8 @@ DEFUN ("eval", Feval, Seval, 1, 1, 0, | |||
| 2067 | args_left = original_args; | 2067 | args_left = original_args; |
| 2068 | numargs = Flength (args_left); | 2068 | numargs = Flength (args_left); |
| 2069 | 2069 | ||
| 2070 | CHECK_CONS_LIST (); | ||
| 2071 | |||
| 2070 | if (XINT (numargs) < XSUBR (fun)->min_args || | 2072 | if (XINT (numargs) < XSUBR (fun)->min_args || |
| 2071 | (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < XINT (numargs))) | 2073 | (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < XINT (numargs))) |
| 2072 | return Fsignal (Qwrong_number_of_arguments, Fcons (fun, Fcons (numargs, Qnil))); | 2074 | return Fsignal (Qwrong_number_of_arguments, Fcons (fun, Fcons (numargs, Qnil))); |
| @@ -2190,6 +2192,8 @@ DEFUN ("eval", Feval, Seval, 1, 1, 0, | |||
| 2190 | return Fsignal (Qinvalid_function, Fcons (fun, Qnil)); | 2192 | return Fsignal (Qinvalid_function, Fcons (fun, Qnil)); |
| 2191 | } | 2193 | } |
| 2192 | done: | 2194 | done: |
| 2195 | CHECK_CONS_LIST (); | ||
| 2196 | |||
| 2193 | lisp_eval_depth--; | 2197 | lisp_eval_depth--; |
| 2194 | if (backtrace.debug_on_exit) | 2198 | if (backtrace.debug_on_exit) |
| 2195 | val = call_debugger (Fcons (Qexit, Fcons (val, Qnil))); | 2199 | val = call_debugger (Fcons (Qexit, Fcons (val, Qnil))); |
| @@ -2746,6 +2750,8 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */) | |||
| 2746 | 2750 | ||
| 2747 | if (SUBRP (fun)) | 2751 | if (SUBRP (fun)) |
| 2748 | { | 2752 | { |
| 2753 | CHECK_CONS_LIST (); | ||
| 2754 | |||
| 2749 | if (numargs < XSUBR (fun)->min_args | 2755 | if (numargs < XSUBR (fun)->min_args |
| 2750 | || (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < numargs)) | 2756 | || (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < numargs)) |
| 2751 | { | 2757 | { |
| @@ -2844,6 +2850,7 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */) | |||
| 2844 | return Fsignal (Qinvalid_function, Fcons (fun, Qnil)); | 2850 | return Fsignal (Qinvalid_function, Fcons (fun, Qnil)); |
| 2845 | } | 2851 | } |
| 2846 | done: | 2852 | done: |
| 2853 | CHECK_CONS_LIST (); | ||
| 2847 | lisp_eval_depth--; | 2854 | lisp_eval_depth--; |
| 2848 | if (backtrace.debug_on_exit) | 2855 | if (backtrace.debug_on_exit) |
| 2849 | val = call_debugger (Fcons (Qexit, Fcons (val, Qnil))); | 2856 | val = call_debugger (Fcons (Qexit, Fcons (val, Qnil))); |
diff --git a/src/keyboard.c b/src/keyboard.c index 3da16b82271..3fa6240381e 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -1335,11 +1335,6 @@ DEFUN ("top-level", Ftop_level, Stop_level, 0, 0, "", | |||
| 1335 | cancel_hourglass (); | 1335 | cancel_hourglass (); |
| 1336 | #endif | 1336 | #endif |
| 1337 | 1337 | ||
| 1338 | /* Unblock input if we enter with input blocked. This may happen if | ||
| 1339 | redisplay traps e.g. during tool-bar update with input blocked. */ | ||
| 1340 | while (INPUT_BLOCKED_P) | ||
| 1341 | UNBLOCK_INPUT; | ||
| 1342 | |||
| 1343 | return Fthrow (Qtop_level, Qnil); | 1338 | return Fthrow (Qtop_level, Qnil); |
| 1344 | } | 1339 | } |
| 1345 | 1340 | ||
diff --git a/src/lisp.h b/src/lisp.h index cff80f1d090..f677eee0953 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -53,6 +53,11 @@ Boston, MA 02111-1307, USA. */ | |||
| 53 | 53 | ||
| 54 | #endif /* 0 */ | 54 | #endif /* 0 */ |
| 55 | 55 | ||
| 56 | #ifdef GC_CHECK_CONS_LIST | ||
| 57 | #define CHECK_CONS_LIST() check_cons_list() | ||
| 58 | #else | ||
| 59 | #define CHECK_CONS_LIST() 0 | ||
| 60 | #endif | ||
| 56 | 61 | ||
| 57 | /* These are default choices for the types to use. */ | 62 | /* These are default choices for the types to use. */ |
| 58 | #ifdef _LP64 | 63 | #ifdef _LP64 |