diff options
| author | Karoly Lorentey | 2005-06-21 15:42:45 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2005-06-21 15:42:45 +0000 |
| commit | a3fbb8977ddcc3f913058d323af6034cb70561a9 (patch) | |
| tree | d5b0488432b505d2a36ee2890f8727c8ac7506f5 | |
| parent | ef85512e51f043d73788f00a2aed13cccde0682c (diff) | |
| parent | 0ff13af938126dca16ec0e1e80e3ac38e177e5d3 (diff) | |
| download | emacs-a3fbb8977ddcc3f913058d323af6034cb70561a9.tar.gz emacs-a3fbb8977ddcc3f913058d323af6034cb70561a9.zip | |
Merged from miles@gnu.org--gnu-2005 (patch 423-434)
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-423
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-424
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-425
Remove "-face" suffix from gnus faces
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-426
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-427
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-428
Remove "-face" suffix from MH-E faces
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-429
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-430
Remove "-face" suffix from cc-mode faces
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-431
Remove "-face" suffix from eshell faces
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Remove "-face" suffix from ediff faces
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-433
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-434
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-351
116 files changed, 2750 insertions, 1218 deletions
diff --git a/admin/FOR-RELEASE b/admin/FOR-RELEASE index 0d2b5d0ee0b..2da2a755f4a 100644 --- a/admin/FOR-RELEASE +++ b/admin/FOR-RELEASE | |||
| @@ -5,6 +5,12 @@ Tasks needed before the next release. | |||
| 5 | ** `undo-ask-before-discard', currently set to t for debugging purposes | 5 | ** `undo-ask-before-discard', currently set to t for debugging purposes |
| 6 | has to be set to nil: when t, it can leak memory and cause other problems. | 6 | has to be set to nil: when t, it can leak memory and cause other problems. |
| 7 | 7 | ||
| 8 | ** Update release dates of manuals. | ||
| 9 | |||
| 10 | ** Spell check the manuals. | ||
| 11 | |||
| 12 | ** Get rid of overfull and underfull boxes in manuals. | ||
| 13 | |||
| 8 | * NEW FEATURES | 14 | * NEW FEATURES |
| 9 | 15 | ||
| 10 | ** Make VC-over-Tramp work where possible, or at least fail | 16 | ** Make VC-over-Tramp work where possible, or at least fail |
| @@ -18,12 +24,11 @@ See msg from rms to emacs-devel on 21 Dec. | |||
| 18 | 24 | ||
| 19 | ** Enhance scroll-bar to handle tall line (similar to line-move). | 25 | ** Enhance scroll-bar to handle tall line (similar to line-move). |
| 20 | 26 | ||
| 21 | ** Adapt mouse-sel-mode to mouse-1-click-follows-link. | ||
| 22 | |||
| 23 | 27 | ||
| 24 | * FATAL ERRORS | 28 | * FATAL ERRORS |
| 25 | 29 | ||
| 26 | ** Make unexec handle memory mapping policy of the latest versions of Linux. | 30 | ** Make unexec handle memory mapping policy of the latest versions of Linux. |
| 31 | This includes exec_shield and a memory-layout randomization feature. | ||
| 27 | 32 | ||
| 28 | ** Investigate reported crashes in compact_small_strings. | 33 | ** Investigate reported crashes in compact_small_strings. |
| 29 | 34 | ||
| @@ -80,13 +85,9 @@ is encountered. | |||
| 80 | 85 | ||
| 81 | ** Document Custom Themes. | 86 | ** Document Custom Themes. |
| 82 | 87 | ||
| 83 | ** Finish updating the Emacs Lisp manual. | 88 | ** Update lispref/README. |
| 84 | 89 | ||
| 85 | *** Update lispref/README. | 90 | ** Update man/info.texi. |
| 86 | |||
| 87 | ** Update the Emacs manual. | ||
| 88 | |||
| 89 | *** Update man/info.texi. | ||
| 90 | 91 | ||
| 91 | ** Add missing years in copyright notices of all files. | 92 | ** Add missing years in copyright notices of all files. |
| 92 | 93 | ||
| @@ -114,8 +115,6 @@ lisp/url working Thien-Thi Nguyen | |||
| 114 | 115 | ||
| 115 | ** Update AUTHORS. | 116 | ** Update AUTHORS. |
| 116 | 117 | ||
| 117 | ** Reorder NEWS entries. | ||
| 118 | |||
| 119 | ** Check the Emacs manual. | 118 | ** Check the Emacs manual. |
| 120 | 119 | ||
| 121 | Each manual section should be checked for factual correctness | 120 | Each manual section should be checked for factual correctness |
| @@ -3066,7 +3066,7 @@ Emacs 21.1, but was not documented then. | |||
| 3066 | 3066 | ||
| 3067 | +++ | 3067 | +++ |
| 3068 | *** New function `add-to-ordered-list' is like `add-to-list' but | 3068 | *** New function `add-to-ordered-list' is like `add-to-list' but |
| 3069 | associates a numeric ordering of each symbol element added to the list. | 3069 | associates a numeric ordering of each element added to the list. |
| 3070 | 3070 | ||
| 3071 | +++ | 3071 | +++ |
| 3072 | *** New function `copy-tree' makes a copy of a tree. | 3072 | *** New function `copy-tree' makes a copy of a tree. |
| @@ -3633,6 +3633,7 @@ of text properties as well as the character code. | |||
| 3633 | *** `syntax-class' extracts the class of a syntax code (as returned | 3633 | *** `syntax-class' extracts the class of a syntax code (as returned |
| 3634 | by `syntax-after'). | 3634 | by `syntax-after'). |
| 3635 | 3635 | ||
| 3636 | +++ | ||
| 3636 | *** The new function `syntax-ppss' rovides an efficient way to find the | 3637 | *** The new function `syntax-ppss' rovides an efficient way to find the |
| 3637 | current syntactic context at point. | 3638 | current syntactic context at point. |
| 3638 | 3639 | ||
| @@ -4926,6 +4927,7 @@ such things as help and apropos buffers. | |||
| 4926 | of hierarchical data as an outline. For example, the tree-widget is | 4927 | of hierarchical data as an outline. For example, the tree-widget is |
| 4927 | well suited to display a hierarchy of directories and files. | 4928 | well suited to display a hierarchy of directories and files. |
| 4928 | 4929 | ||
| 4930 | +++ | ||
| 4929 | ** The new library bindat.el provides functions to unpack and pack | 4931 | ** The new library bindat.el provides functions to unpack and pack |
| 4930 | binary data structures, such as network packets, to and from Lisp | 4932 | binary data structures, such as network packets, to and from Lisp |
| 4931 | data structures. | 4933 | data structures. |
| @@ -40,6 +40,9 @@ to the FSF. | |||
| 40 | ** Implement something better than the current Refill mode. This | 40 | ** Implement something better than the current Refill mode. This |
| 41 | probably needs some primitive support. | 41 | probably needs some primitive support. |
| 42 | 42 | ||
| 43 | ** Add a command to make a local variables list in the current buffer | ||
| 44 | and/or add a variable to the list. | ||
| 45 | |||
| 43 | ** Implement primitive and higher-level functions to allow filling | 46 | ** Implement primitive and higher-level functions to allow filling |
| 44 | properly with variable-pitch faces. | 47 | properly with variable-pitch faces. |
| 45 | 48 | ||
| @@ -61,6 +64,10 @@ to the FSF. | |||
| 61 | 64 | ||
| 62 | ** Internationalize Emacs's messages. | 65 | ** Internationalize Emacs's messages. |
| 63 | 66 | ||
| 67 | ** Add a "current vertical pixel level" value that goes with point, | ||
| 68 | so that motion commands can also move through tall images. | ||
| 69 | This value would be to point as window-vscroll is to window-start. | ||
| 70 | |||
| 64 | ** Address internationalization of symbols names essentially | 71 | ** Address internationalization of symbols names essentially |
| 65 | as documentation, e.g. in command names and Custom. | 72 | as documentation, e.g. in command names and Custom. |
| 66 | 73 | ||
| @@ -361,4 +368,7 @@ to the FSF. | |||
| 361 | For use by sml-mode, python-mode, tex-mode, scheme-mode, lisp-mode, | 368 | For use by sml-mode, python-mode, tex-mode, scheme-mode, lisp-mode, |
| 362 | haskell-mode, tuareg-mode, ... | 369 | haskell-mode, tuareg-mode, ... |
| 363 | 370 | ||
| 371 | ** Fix unexelf.c to handle the .data.rel and .data.rel.local | ||
| 372 | sections made by GCC 3.4 on IRIX. | ||
| 373 | |||
| 364 | ;;; arch-tag: b0a3e40b-726a-457d-9999-ba848321b036 | 374 | ;;; arch-tag: b0a3e40b-726a-457d-9999-ba848321b036 |
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 13d14707284..89f6e6d27ef 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,270 @@ | |||
| 1 | 2005-06-19 Michael Albinus <michael.albinus@gmx.de> | ||
| 2 | |||
| 3 | * net/tramp-ftp.el (top): | ||
| 4 | * net/tramp-smb.el (top): | ||
| 5 | * net/tramp-util.el (top): | ||
| 6 | * net/tramp-uu.el (top): | ||
| 7 | * net/tramp-vc.el (top): | ||
| 8 | * net/tramp.el (top): Revert copyright years back to original | ||
| 9 | ones. Tramp has a life outside GNU Emacs. | ||
| 10 | |||
| 11 | 2005-06-19 Nick Roberts <nickrob@snap.net.nz> | ||
| 12 | |||
| 13 | * tooltip.el: (tooltip-use-echo-area): Don't make it obsolete. | ||
| 14 | |||
| 15 | 2005-06-18 Juri Linkov <juri@jurta.org> | ||
| 16 | |||
| 17 | * progmodes/grep.el (grep-regexp-alist): Use backreference at the | ||
| 18 | end of first regexp to limit the match to the position between | ||
| 19 | line number and source line with same separator character as used | ||
| 20 | between file name and line number. In the second regexp limit | ||
| 21 | mouse-face area to file name and line number by adding new group | ||
| 22 | for them and referring it in HYPERLINK arg. | ||
| 23 | (grep-regexp-alist, grep-mode-font-lock-keywords): Use shy group. | ||
| 24 | (grep-mode): Set font-lock-lines-before to 0 to not refontify the | ||
| 25 | previous line where grep markers may be already removed. | ||
| 26 | |||
| 27 | 2005-06-18 Peter Kleiweg <p.c.j.kleiweg@rug.nl> | ||
| 28 | |||
| 29 | * progmodes/ps-mode.el: Update version and maintainer's email | ||
| 30 | address. | ||
| 31 | |||
| 32 | 2005-06-18 Steve Youngs <steve@xemacs.org> | ||
| 33 | |||
| 34 | * net/browse-url.el (browse-url-browser-function) | ||
| 35 | (browse-url-default-browser): Add firefox. | ||
| 36 | (browse-url-firefox-program, browse-url-firefox-arguments) | ||
| 37 | (browse-url-firefox-startup-arguments) | ||
| 38 | (browse-url-firefox-new-window-is-tab): New defcustoms. | ||
| 39 | (browse-url-firefox, browse-url-firefox-sentinel): New functions. | ||
| 40 | |||
| 41 | 2005-06-17 Richard M. Stallman <rms@gnu.org> | ||
| 42 | |||
| 43 | * startup.el (command-line): Warn if specified user name has | ||
| 44 | no home directory. | ||
| 45 | |||
| 46 | * term.el (term-get-old-input, term-input-filter, term-input-sender) | ||
| 47 | (term-mode-hook, term-exec-hook, term-escape-char): Doc fixes. | ||
| 48 | |||
| 49 | * longlines.el (longlines-mode, longlines-show-hard-newlines): | ||
| 50 | Doc fixes. | ||
| 51 | |||
| 52 | * faces.el (underline): Try bold if terminal doesn't support underline. | ||
| 53 | |||
| 54 | * mail/sendmail.el (mail-setup-with-from): New variable. | ||
| 55 | (mail-insert-from-field): New function. | ||
| 56 | (sendmail-send-it): Call it. | ||
| 57 | (mail-setup): Optionally call it here. | ||
| 58 | |||
| 59 | * term/linux.el: Call tty-no-underline. | ||
| 60 | |||
| 61 | 2005-06-17 Luc Teirlinck <teirllm@auburn.edu> | ||
| 62 | |||
| 63 | * emacs-lisp/edebug.el (edebug-goto-here): Doc fix. | ||
| 64 | |||
| 65 | 2005-06-17 Miles Bader <miles@gnu.org> | ||
| 66 | |||
| 67 | * ediff-init.el (ediff-current-diff-A, ediff-current-diff-B) | ||
| 68 | (ediff-current-diff-C, ediff-current-diff-Ancestor) | ||
| 69 | (ediff-fine-diff-A, ediff-fine-diff-B, ediff-fine-diff-C) | ||
| 70 | (ediff-fine-diff-Ancestor, ediff-even-diff-A, ediff-even-diff-B) | ||
| 71 | (ediff-even-diff-C, ediff-even-diff-Ancestor, ediff-odd-diff-A) | ||
| 72 | (ediff-odd-diff-B, ediff-odd-diff-C, ediff-odd-diff-Ancestor): | ||
| 73 | Remove "-face" suffix from face names. | ||
| 74 | (ediff-current-diff-face-A, ediff-current-diff-face-B) | ||
| 75 | (ediff-current-diff-face-C, ediff-current-diff-face-Ancestor) | ||
| 76 | (ediff-fine-diff-face-A, ediff-fine-diff-face-B) | ||
| 77 | (ediff-fine-diff-face-C, ediff-fine-diff-face-Ancestor) | ||
| 78 | (ediff-even-diff-face-A, ediff-even-diff-face-B) | ||
| 79 | (ediff-even-diff-face-C, ediff-even-diff-face-Ancestor) | ||
| 80 | (ediff-odd-diff-face-A, ediff-odd-diff-face-B) | ||
| 81 | (ediff-odd-diff-face-C, ediff-odd-diff-face-Ancestor): | ||
| 82 | New backward-compatibility aliases for renamed faces. | ||
| 83 | (ediff-current-diff-face-A, ediff-current-diff-face-B) | ||
| 84 | (ediff-current-diff-face-C, ediff-current-diff-face-Ancestor) | ||
| 85 | (ediff-fine-diff-face-A, ediff-fine-diff-face-B) | ||
| 86 | (ediff-fine-diff-face-C, ediff-fine-diff-face-Ancestor) | ||
| 87 | (ediff-even-diff-face-A, ediff-even-diff-face-B) | ||
| 88 | (ediff-even-diff-face-C, ediff-even-diff-face-Ancestor) | ||
| 89 | (ediff-odd-diff-face-A, ediff-odd-diff-face-B) | ||
| 90 | (ediff-odd-diff-face-C, ediff-odd-diff-face-Ancestor): | ||
| 91 | Use renamed ediff faces. | ||
| 92 | |||
| 93 | * eshell/esh-test.el (eshell-test-ok, eshell-test-failed): | ||
| 94 | Remove "-face" suffix from face names. | ||
| 95 | (eshell-test-ok-face, eshell-test-failed-face): | ||
| 96 | New backward-compatibility aliases for renamed faces. | ||
| 97 | (eshell-run-test): Use renamed eshell-test faces. | ||
| 98 | |||
| 99 | * eshell/em-prompt.el (eshell-prompt): | ||
| 100 | Remove "-face" suffix from face name. | ||
| 101 | (eshell-prompt-face): New backward-compatibility alias for renamed face. | ||
| 102 | (eshell-emit-prompt): Use renamed eshell-prompt face. | ||
| 103 | |||
| 104 | * eshell/em-ls.el (eshell-ls-directory, eshell-ls-symlink) | ||
| 105 | (eshell-ls-executable, eshell-ls-readonly, eshell-ls-unreadable) | ||
| 106 | (eshell-ls-special, eshell-ls-missing, eshell-ls-archive) | ||
| 107 | (eshell-ls-backup, eshell-ls-product, eshell-ls-clutter): | ||
| 108 | Remove "-face" suffix from face names. | ||
| 109 | (eshell-ls-directory-face, eshell-ls-symlink-face) | ||
| 110 | (eshell-ls-executable-face, eshell-ls-readonly-face) | ||
| 111 | (eshell-ls-unreadable-face, eshell-ls-special-face) | ||
| 112 | (eshell-ls-missing-face, eshell-ls-archive-face) | ||
| 113 | (eshell-ls-backup-face, eshell-ls-product-face) | ||
| 114 | (eshell-ls-clutter-face): | ||
| 115 | New backward-compatibility aliases for renamed faces. | ||
| 116 | (eshell-ls-decorated-name): Use renamed eshell-ls faces. | ||
| 117 | |||
| 118 | * progmodes/cc-fonts.el (c-nonbreakable-space-face): Remove | ||
| 119 | "-face" suffix from face name. | ||
| 120 | (c-cpp-matchers): Use the variable `c-nonbreakable-space-face' | ||
| 121 | instead of literal face. | ||
| 122 | |||
| 123 | 2005-06-17 Juanma Barranquero <lekktu@gmail.com> | ||
| 124 | |||
| 125 | * emacs-lisp/warnings.el (display-warning, lwarn) | ||
| 126 | (warning-minimum-log-level): Doc fixes. | ||
| 127 | (warning-minimum-level, warning-minimum-log-level): | ||
| 128 | Add :debug to :type choices. | ||
| 129 | |||
| 130 | * progmodes/ada-mode.el (ada-format-paramlist) | ||
| 131 | (ada-get-indent-case, ada-check-matching-start) | ||
| 132 | (ada-check-defun-name, ada-goto-matching-decl-start) | ||
| 133 | (ada-goto-matching-start, ada-goto-matching-end, ada-tab) | ||
| 134 | (ada-untab, ada-move-to-start, ada-fill-comment-paragraph) | ||
| 135 | (ada-make-subprogram-body): Follow error conventions. | ||
| 136 | (ada-case-exception-file, ada-indent-comment-as-code) | ||
| 137 | (ada-indent-handle-comment-special, ada-indent-renames) | ||
| 138 | (ada-indent-return, ada-search-directories-internal) | ||
| 139 | (ada-tab-policy, ada-case-exception-substring) | ||
| 140 | (ada-other-file-alist, ada-matching-start-re) | ||
| 141 | (ada-matching-decl-start-re, ada-contextual-menu-last-point) | ||
| 142 | (ada-imenu-generic-expression, ada-compile-goto-error) | ||
| 143 | (ada-in-comment-p, ada-in-string-p, ada-in-string-or-comment-p) | ||
| 144 | (ada-popup-menu, ada-add-extensions, ada-mode) | ||
| 145 | (ada-region-selected, ada-create-case-exception) | ||
| 146 | (ada-create-case-exception-substring, ada-after-keyword-p) | ||
| 147 | (ada-activate-keys-for-case, ada-adjust-case-region) | ||
| 148 | (ada-adjust-case-buffer, ada-format-paramlist) | ||
| 149 | (ada-scan-paramlist, ada-insert-paramlist) | ||
| 150 | (ada-indent-newline-indent) | ||
| 151 | (ada-indent-newline-indent-conditional) | ||
| 152 | (ada-justified-indent-current, ada-goto-previous-word) | ||
| 153 | (ada-indent-current, ada-get-indent-open-paren) | ||
| 154 | (ada-get-indent-paramlist, ada-get-indent-end) | ||
| 155 | (ada-get-indent-case, ada-get-indent-when, ada-get-indent-if) | ||
| 156 | (ada-get-indent-block-start, ada-get-indent-subprog) | ||
| 157 | (ada-get-indent-noindent, ada-get-indent-label) | ||
| 158 | (ada-get-indent-loop, ada-get-indent-type, ada-goto-stmt-start) | ||
| 159 | (ada-search-prev-end-stmt, ada-goto-next-non-ws) | ||
| 160 | (ada-goto-stmt-end, ada-goto-next-word) | ||
| 161 | (ada-check-matching-start, ada-check-defun-name) | ||
| 162 | (ada-goto-matching-decl-start, ada-goto-matching-start) | ||
| 163 | (ada-goto-matching-end, ada-search-ignore-string-comment) | ||
| 164 | (ada-in-decl-p, ada-looking-at-semi-or) | ||
| 165 | (ada-looking-at-semi-private, ada-in-paramlist-p) | ||
| 166 | (ada-in-open-paren-p, ada-tab, ada-indent-current-function) | ||
| 167 | (ada-untab-hard, ada-move-to-start, ada-move-to-end) | ||
| 168 | (ada-next-procedure, ada-previous-procedure, ada-next-package) | ||
| 169 | (ada-previous-package, ada-create-menu) | ||
| 170 | (ada-fill-comment-paragraph-justify) | ||
| 171 | (ada-fill-comment-paragraph-postfix, ada-fill-comment-paragraph) | ||
| 172 | (ada-other-file-name, ada-last-which-function-line) | ||
| 173 | (ada-last-which-function-subprog, ada-which-function) | ||
| 174 | (ada-get-body-name, ada-outline-level, ada-narrow-to-defun) | ||
| 175 | (ada-gen-treat-proc, ada-check-emacs-version) | ||
| 176 | (ada-continuation-indent, ada-align-region-separate): | ||
| 177 | Fix typos in docstrings. | ||
| 178 | (ada-adjust-case, ada-adjust-case-interactive): Doc fixes. | ||
| 179 | |||
| 180 | 2005-06-16 Lute Kamstra <lute@gnu.org> | ||
| 181 | |||
| 182 | * simple.el (fundamental-mode): Run after-change-major-mode-hook | ||
| 183 | conditionally. | ||
| 184 | |||
| 185 | 2005-06-16 Juanma Barranquero <lekktu@gmail.com> | ||
| 186 | |||
| 187 | * comint.el (comint-replace-by-expanded-filename) | ||
| 188 | (comint-prompt-regexp, comint-delimiter-argument-list) | ||
| 189 | (comint-preinput-scroll-to-bottom): | ||
| 190 | * info.el (Info-hide-cookies-node): | ||
| 191 | * ls-lisp.el (ls-lisp-classify): | ||
| 192 | * find-file.el (ff-search-directories, ff-special-constructs) | ||
| 193 | (ff-find-other-file): | ||
| 194 | * font-lock.el (font-lock-keywords): | ||
| 195 | * shell.el (shell-prompt-pattern) | ||
| 196 | (shell-dynamic-complete-functions, shell-mode) | ||
| 197 | (shell-delimiter-argument-list): | ||
| 198 | * term.el (term-replace-by-expanded-filename) | ||
| 199 | (term-prompt-regexp, term-delimiter-argument-list): | ||
| 200 | * woman.el (woman-ignore, woman0-if): | ||
| 201 | * emacs-lisp/derived.el (derived-mode-init-mode-variables): | ||
| 202 | * emacs-lisp/elint.el (elint-init-env): | ||
| 203 | * emacs-lisp/regexp-opt.el (regexp-opt-depth): | ||
| 204 | * eshell/esh-mode.el (eshell-preinput-scroll-to-bottom): | ||
| 205 | * language/ethio-util.el (ethio-tilde-escape) | ||
| 206 | (ethio-use-three-dot-question): | ||
| 207 | * net/zone-mode.el (zone-mode-load-time-setup): | ||
| 208 | * progmodes/cc-align.el (c-lineup-argcont): | ||
| 209 | * progmodes/cc-awk.el (c-awk-beginning-of-defun): | ||
| 210 | * progmodes/cperl-mode.el (cperl-set-style-back): | ||
| 211 | * progmodes/inf-lisp.el (inferior-lisp-prompt): | ||
| 212 | * progmodes/vhdl-mode.el (vhdl-beginning-of-libunit): | ||
| 213 | Fix spellings in docstrings. | ||
| 214 | |||
| 215 | * textmodes/sgml-mode.el (sgml-calculate-indent, html-tag-help): | ||
| 216 | * progmodes/modula2.el (m2-for): Fix spellings. | ||
| 217 | |||
| 218 | * menu-bar.el (menu-bar-games-menu): Fix typo in menu help string. | ||
| 219 | |||
| 220 | * simple.el (undo-more): Don't use `format' on `error' arguments. | ||
| 221 | Improve argument/docstring consistency. | ||
| 222 | (pending-undo-list): Doc fix. | ||
| 223 | |||
| 224 | * smerge-mode.el (smerge-ensure-match): | ||
| 225 | * emulation/vip.el (vip-ex): | ||
| 226 | * net/zone-mode.el (zone-mode-update-serial): | ||
| 227 | * progmodes/idlwave.el (idlwave-complete): | ||
| 228 | * progmodes/vhdl-mode.el (vhdl-visit-file) | ||
| 229 | (vhdl-compose-wire-components): | ||
| 230 | Don't use `format' on `error' arguments. | ||
| 231 | |||
| 232 | * tooltip.el (tooltip-start-delayed-tip, tooltip-timeout) | ||
| 233 | (tooltip-use-echo-area, tooltip-process-prompt-regexp) | ||
| 234 | (tooltip-help-tips): Fix typos in docstrings. | ||
| 235 | |||
| 236 | 2005-06-16 David Ponce <david@dponce.com> | ||
| 237 | |||
| 238 | * tree-widget.el (tree-widget-value-create): Simplify last change. | ||
| 239 | |||
| 240 | 2005-06-15 Matt Hodges <MPHodges@member.fsf.org> | ||
| 241 | |||
| 242 | * ido.el (ido-incomplete-regexp): New variable. | ||
| 243 | (ido-set-matches-1): Handle invalid-regexp error and set | ||
| 244 | ido-incomplete-regexp. | ||
| 245 | (ido-incomplete-regexp): New face. | ||
| 246 | (ido-completions): Use it. | ||
| 247 | (ido-complete, ido-exit-minibuffer, ido-completions): Handle | ||
| 248 | incomplete regexps. | ||
| 249 | (ido-completions): Add check for complete match when entering a regexp. | ||
| 250 | |||
| 251 | 2005-06-15 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 252 | |||
| 253 | * subr.el (add-to-ordered-list): Use a weak hash-table to avoid leaks. | ||
| 254 | |||
| 255 | 2005-06-15 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de> | ||
| 256 | |||
| 257 | * textmodes/bibtex.el (bibtex-Preamble): Enclose BibTeX preamble | ||
| 258 | by field delimiters. | ||
| 259 | |||
| 260 | 2005-06-15 David Ponce <david@dponce.com> | ||
| 261 | |||
| 262 | * tree-widget.el: eval-and-compile inlined functions so they will | ||
| 263 | be available at run-time too. | ||
| 264 | (tree-widget-super-format-handler) | ||
| 265 | (tree-widget-format-handler): Remove. | ||
| 266 | (tree-widget-value-create): Handle the :indent property. | ||
| 267 | |||
| 1 | 2005-06-15 Miles Bader <miles@gnu.org> | 268 | 2005-06-15 Miles Bader <miles@gnu.org> |
| 2 | 269 | ||
| 3 | * progmodes/which-func.el (which-func): Only inherit | 270 | * progmodes/which-func.el (which-func): Only inherit |
| @@ -11,7 +278,7 @@ | |||
| 11 | 278 | ||
| 12 | * progmodes/ld-script.el (ld-script-location-counter): | 279 | * progmodes/ld-script.el (ld-script-location-counter): |
| 13 | Remove "-face" suffix from face name. | 280 | Remove "-face" suffix from face name. |
| 14 | (ld-script-location-counter-face): | 281 | (ld-script-location-counter-face): |
| 15 | New backward-compatibility alias for renamed face. | 282 | New backward-compatibility alias for renamed face. |
| 16 | (ld-script-location-counter-face): Use renamed face. | 283 | (ld-script-location-counter-face): Use renamed face. |
| 17 | 284 | ||
| @@ -73,7 +340,7 @@ | |||
| 73 | (idlwave-shell-disabled-breakpoint-face) | 340 | (idlwave-shell-disabled-breakpoint-face) |
| 74 | (idlwave-shell-breakpoint-face): Use renamed idlwave-shell faces. | 341 | (idlwave-shell-breakpoint-face): Use renamed idlwave-shell faces. |
| 75 | 342 | ||
| 76 | * progmodes/flymake.el (flymake-errline, flymake-warnline): | 343 | * progmodes/flymake.el (flymake-errline, flymake-warnline): |
| 77 | Remove "-face" suffix from face names. | 344 | Remove "-face" suffix from face names. |
| 78 | (flymake-errline-face, flymake-warnline-face): | 345 | (flymake-errline-face, flymake-warnline-face): |
| 79 | New backward-compatibility aliases for renamed faces. | 346 | New backward-compatibility aliases for renamed faces. |
| @@ -86,7 +353,7 @@ | |||
| 86 | (ebrowse-tree-mark-face, ebrowse-root-class-face) | 353 | (ebrowse-tree-mark-face, ebrowse-root-class-face) |
| 87 | (ebrowse-file-name-face, ebrowse-default-face) | 354 | (ebrowse-file-name-face, ebrowse-default-face) |
| 88 | (ebrowse-member-attribute-face, ebrowse-member-class-face) | 355 | (ebrowse-member-attribute-face, ebrowse-member-class-face) |
| 89 | (ebrowse-progress-face): | 356 | (ebrowse-progress-face): |
| 90 | New backward-compatibility aliases for renamed faces. | 357 | New backward-compatibility aliases for renamed faces. |
| 91 | (ebrowse-show-progress, ebrowse-show-file-name-at-point) | 358 | (ebrowse-show-progress, ebrowse-show-file-name-at-point) |
| 92 | (ebrowse-set-mark-props, ebrowse-draw-tree-fn) | 359 | (ebrowse-set-mark-props, ebrowse-draw-tree-fn) |
| @@ -95,8 +362,7 @@ | |||
| 95 | 362 | ||
| 96 | * progmodes/antlr-mode.el (antlr-default, antlr-keyword, antlr-syntax) | 363 | * progmodes/antlr-mode.el (antlr-default, antlr-keyword, antlr-syntax) |
| 97 | (antlr-ruledef, antlr-tokendef, antlr-ruleref, antlr-tokenref) | 364 | (antlr-ruledef, antlr-tokendef, antlr-ruleref, antlr-tokenref) |
| 98 | (antlr-literal): Remove "-face" suffix and "font-lock-" from face | 365 | (antlr-literal): Remove "-face" suffix and "font-lock-" from face names. |
| 99 | names. | ||
| 100 | (antlr-font-lock-default-face, antlr-font-lock-keyword-face) | 366 | (antlr-font-lock-default-face, antlr-font-lock-keyword-face) |
| 101 | (antlr-font-lock-syntax-face, antlr-font-lock-ruledef-face) | 367 | (antlr-font-lock-syntax-face, antlr-font-lock-ruledef-face) |
| 102 | (antlr-font-lock-tokendef-face, antlr-font-lock-ruleref-face) | 368 | (antlr-font-lock-tokendef-face, antlr-font-lock-ruleref-face) |
| @@ -119,20 +385,20 @@ | |||
| 119 | 385 | ||
| 120 | * progmodes/make-mode.el (makefile-space, makefile-makepp-perl): | 386 | * progmodes/make-mode.el (makefile-space, makefile-makepp-perl): |
| 121 | Eliminate "-face" suffix. | 387 | Eliminate "-face" suffix. |
| 122 | (makefile-targets): Inherit font-lock-variable-name-face and | 388 | (makefile-targets): Inherit from font-lock-function-name-face and |
| 123 | eliminate "-face" suffix. | 389 | eliminate "-face" suffix. |
| 124 | (makefile-shell): Remove attributes and eliminate "-face" suffix. | 390 | (makefile-shell): Remove attributes and eliminate "-face" suffix. |
| 125 | (makefile-*-font-lock-keywords): Append makefile-targets in rule | 391 | (makefile-*-font-lock-keywords): Append makefile-targets in rule |
| 126 | actions, instead of prepending, to make it less visible. | 392 | actions, instead of prepending, to make it less visible. |
| 127 | (makefile-previous-dependency, makefile-match-dependency): Don't | 393 | (makefile-previous-dependency, makefile-match-dependency): |
| 128 | match a target on a continuation line. | 394 | Don't match a target on a continuation line. |
| 129 | 395 | ||
| 130 | * files.el (auto-mode-alist): Put Makefile in gmake mode. | 396 | * files.el (auto-mode-alist): Put Makefile in gmake mode. |
| 131 | 397 | ||
| 132 | 2005-06-15 Nick Roberts <nickrob@snap.net.nz> | 398 | 2005-06-15 Nick Roberts <nickrob@snap.net.nz> |
| 133 | 399 | ||
| 134 | * progmodes/gdb-ui.el (gdb-tooltip-print): Respect | 400 | * progmodes/gdb-ui.el (gdb-tooltip-print): |
| 135 | tooltip-use-echo-area. | 401 | Respect tooltip-use-echo-area. |
| 136 | (menu): Re-order menu items. | 402 | (menu): Re-order menu items. |
| 137 | 403 | ||
| 138 | * progmodes/gud.el (tooltip-use-echo-area): Remove alias. | 404 | * progmodes/gud.el (tooltip-use-echo-area): Remove alias. |
| @@ -181,8 +447,8 @@ | |||
| 181 | * emacs-lisp/byte-run.el (make-obsolete) | 447 | * emacs-lisp/byte-run.el (make-obsolete) |
| 182 | (define-obsolete-function-alias): Rename arguments FUNCTION and | 448 | (define-obsolete-function-alias): Rename arguments FUNCTION and |
| 183 | NEW to OBSOLETE-NAME and CURRENT-NAME respectively. | 449 | NEW to OBSOLETE-NAME and CURRENT-NAME respectively. |
| 184 | (make-obsolete-variable, define-obsolete-variable-alias): Rename | 450 | (make-obsolete-variable, define-obsolete-variable-alias): |
| 185 | arguments VARIABLE and NEW to OBSOLETE-NAME and CURRENT-NAME | 451 | Rename arguments VARIABLE and NEW to OBSOLETE-NAME and CURRENT-NAME |
| 186 | respectively. | 452 | respectively. |
| 187 | 453 | ||
| 188 | * isearchb.el (isearchb-activate): | 454 | * isearchb.el (isearchb-activate): |
diff --git a/lisp/comint.el b/lisp/comint.el index 14913c7ef11..29208d6379c 100644 --- a/lisp/comint.el +++ b/lisp/comint.el | |||
| @@ -155,7 +155,7 @@ | |||
| 155 | :group 'comint) | 155 | :group 'comint) |
| 156 | 156 | ||
| 157 | (defvar comint-prompt-regexp "^" | 157 | (defvar comint-prompt-regexp "^" |
| 158 | "Regexp to recognise prompts in the inferior process. | 158 | "Regexp to recognize prompts in the inferior process. |
| 159 | Defaults to \"^\", the null string at BOL. | 159 | Defaults to \"^\", the null string at BOL. |
| 160 | 160 | ||
| 161 | This variable is only used if the variable | 161 | This variable is only used if the variable |
| @@ -197,7 +197,7 @@ you might wish to use another binding for `comint-kill-whole-line'." | |||
| 197 | :version "22.1") | 197 | :version "22.1") |
| 198 | 198 | ||
| 199 | (defvar comint-delimiter-argument-list () | 199 | (defvar comint-delimiter-argument-list () |
| 200 | "List of characters to recognise as separate arguments in input. | 200 | "List of characters to recognize as separate arguments in input. |
| 201 | Strings comprising a character in this list will separate the arguments | 201 | Strings comprising a character in this list will separate the arguments |
| 202 | surrounding them, and also be regarded as arguments in their own right (unlike | 202 | surrounding them, and also be regarded as arguments in their own right (unlike |
| 203 | whitespace). See `comint-arguments'. | 203 | whitespace). See `comint-arguments'. |
| @@ -1760,7 +1760,7 @@ Make backspaces delete the previous character." | |||
| 1760 | (defun comint-preinput-scroll-to-bottom () | 1760 | (defun comint-preinput-scroll-to-bottom () |
| 1761 | "Go to the end of buffer in all windows showing it. | 1761 | "Go to the end of buffer in all windows showing it. |
| 1762 | Movement occurs if point in the selected window is not after the process mark, | 1762 | Movement occurs if point in the selected window is not after the process mark, |
| 1763 | and `this-command' is an insertion command. Insertion commands recognised | 1763 | and `this-command' is an insertion command. Insertion commands recognized |
| 1764 | are `self-insert-command', `comint-magic-space', `yank', and `hilit-yank'. | 1764 | are `self-insert-command', `comint-magic-space', `yank', and `hilit-yank'. |
| 1765 | Depends on the value of `comint-scroll-to-bottom-on-input'. | 1765 | Depends on the value of `comint-scroll-to-bottom-on-input'. |
| 1766 | 1766 | ||
| @@ -2789,9 +2789,9 @@ See `comint-dynamic-complete-filename'. Returns t if successful." | |||
| 2789 | 2789 | ||
| 2790 | (defun comint-replace-by-expanded-filename () | 2790 | (defun comint-replace-by-expanded-filename () |
| 2791 | "Dynamically expand and complete the filename at point. | 2791 | "Dynamically expand and complete the filename at point. |
| 2792 | Replace the filename with an expanded, canonicalised and completed replacement. | 2792 | Replace the filename with an expanded, canonicalized and completed replacement. |
| 2793 | \"Expanded\" means environment variables (e.g., $HOME) and `~'s are replaced | 2793 | \"Expanded\" means environment variables (e.g., $HOME) and `~'s are replaced |
| 2794 | with the corresponding directories. \"Canonicalised\" means `..' and `.' are | 2794 | with the corresponding directories. \"Canonicalized\" means `..' and `.' are |
| 2795 | removed, and the filename is made absolute instead of relative. For expansion | 2795 | removed, and the filename is made absolute instead of relative. For expansion |
| 2796 | see `expand-file-name' and `substitute-in-file-name'. For completion see | 2796 | see `expand-file-name' and `substitute-in-file-name'. For completion see |
| 2797 | `comint-dynamic-complete-filename'." | 2797 | `comint-dynamic-complete-filename'." |
diff --git a/lisp/ediff-init.el b/lisp/ediff-init.el index 969097b6f76..3933fd760d2 100644 --- a/lisp/ediff-init.el +++ b/lisp/ediff-init.el | |||
| @@ -903,7 +903,7 @@ to temp files when Ediff needs to find fine differences." | |||
| 903 | 903 | ||
| 904 | 904 | ||
| 905 | 905 | ||
| 906 | (defface ediff-current-diff-face-A | 906 | (defface ediff-current-diff-A |
| 907 | (if ediff-emacs-p | 907 | (if ediff-emacs-p |
| 908 | '((((class color) (min-colors 16)) | 908 | '((((class color) (min-colors 16)) |
| 909 | (:foreground "firebrick" :background "pale green")) | 909 | (:foreground "firebrick" :background "pale green")) |
| @@ -915,24 +915,26 @@ to temp files when Ediff needs to find fine differences." | |||
| 915 | (t (:inverse-video t)))) | 915 | (t (:inverse-video t)))) |
| 916 | "Face for highlighting the selected difference in buffer A." | 916 | "Face for highlighting the selected difference in buffer A." |
| 917 | :group 'ediff-highlighting) | 917 | :group 'ediff-highlighting) |
| 918 | ;; backward-compatibility alias | ||
| 919 | (put 'ediff-current-diff-face-A 'face-alias 'ediff-current-diff-A) | ||
| 918 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 920 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 919 | ;; this variable is set to nil, then again to the appropriate face. | 921 | ;; this variable is set to nil, then again to the appropriate face. |
| 920 | (defvar ediff-current-diff-face-A 'ediff-current-diff-face-A | 922 | (defvar ediff-current-diff-face-A 'ediff-current-diff-A |
| 921 | "Face for highlighting the selected difference in buffer A. | 923 | "Face for highlighting the selected difference in buffer A. |
| 922 | DO NOT CHANGE this variable. Instead, use the customization | 924 | DO NOT CHANGE this variable. Instead, use the customization |
| 923 | widget to customize the actual face object `ediff-current-diff-face-A' | 925 | widget to customize the actual face object `ediff-current-diff-A' |
| 924 | this variable represents.") | 926 | this variable represents.") |
| 925 | (ediff-hide-face 'ediff-current-diff-face-A) | 927 | (ediff-hide-face 'ediff-current-diff-A) |
| 926 | ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. | 928 | ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. |
| 927 | ;; This means that some user customization may be trashed. | 929 | ;; This means that some user customization may be trashed. |
| 928 | (if (and ediff-xemacs-p | 930 | (if (and ediff-xemacs-p |
| 929 | (ediff-has-face-support-p) | 931 | (ediff-has-face-support-p) |
| 930 | (not (ediff-color-display-p))) | 932 | (not (ediff-color-display-p))) |
| 931 | (copy-face 'modeline 'ediff-current-diff-face-A)) | 933 | (copy-face 'modeline 'ediff-current-diff-A)) |
| 932 | 934 | ||
| 933 | 935 | ||
| 934 | 936 | ||
| 935 | (defface ediff-current-diff-face-B | 937 | (defface ediff-current-diff-B |
| 936 | (if ediff-emacs-p | 938 | (if ediff-emacs-p |
| 937 | '((((class color) (min-colors 16)) | 939 | '((((class color) (min-colors 16)) |
| 938 | (:foreground "DarkOrchid" :background "Yellow")) | 940 | (:foreground "DarkOrchid" :background "Yellow")) |
| @@ -946,23 +948,25 @@ this variable represents.") | |||
| 946 | (t (:inverse-video t)))) | 948 | (t (:inverse-video t)))) |
| 947 | "Face for highlighting the selected difference in buffer B." | 949 | "Face for highlighting the selected difference in buffer B." |
| 948 | :group 'ediff-highlighting) | 950 | :group 'ediff-highlighting) |
| 951 | ;; backward-compatibility alias | ||
| 952 | (put 'ediff-current-diff-face-B 'face-alias 'ediff-current-diff-B) | ||
| 949 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 953 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 950 | ;; this variable is set to nil, then again to the appropriate face. | 954 | ;; this variable is set to nil, then again to the appropriate face. |
| 951 | (defvar ediff-current-diff-face-B 'ediff-current-diff-face-B | 955 | (defvar ediff-current-diff-face-B 'ediff-current-diff-B |
| 952 | "Face for highlighting the selected difference in buffer B. | 956 | "Face for highlighting the selected difference in buffer B. |
| 953 | this variable. Instead, use the customization | 957 | this variable. Instead, use the customization |
| 954 | widget to customize the actual face `ediff-current-diff-face-B' | 958 | widget to customize the actual face `ediff-current-diff-B' |
| 955 | this variable represents.") | 959 | this variable represents.") |
| 956 | (ediff-hide-face 'ediff-current-diff-face-B) | 960 | (ediff-hide-face 'ediff-current-diff-B) |
| 957 | ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. | 961 | ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. |
| 958 | ;; This means that some user customization may be trashed. | 962 | ;; This means that some user customization may be trashed. |
| 959 | (if (and ediff-xemacs-p | 963 | (if (and ediff-xemacs-p |
| 960 | (ediff-has-face-support-p) | 964 | (ediff-has-face-support-p) |
| 961 | (not (ediff-color-display-p))) | 965 | (not (ediff-color-display-p))) |
| 962 | (copy-face 'modeline 'ediff-current-diff-face-B)) | 966 | (copy-face 'modeline 'ediff-current-diff-B)) |
| 963 | 967 | ||
| 964 | 968 | ||
| 965 | (defface ediff-current-diff-face-C | 969 | (defface ediff-current-diff-C |
| 966 | (if ediff-emacs-p | 970 | (if ediff-emacs-p |
| 967 | '((((class color) (min-colors 16)) | 971 | '((((class color) (min-colors 16)) |
| 968 | (:foreground "Navy" :background "Pink")) | 972 | (:foreground "Navy" :background "Pink")) |
| @@ -974,23 +978,25 @@ this variable represents.") | |||
| 974 | (t (:inverse-video t)))) | 978 | (t (:inverse-video t)))) |
| 975 | "Face for highlighting the selected difference in buffer C." | 979 | "Face for highlighting the selected difference in buffer C." |
| 976 | :group 'ediff-highlighting) | 980 | :group 'ediff-highlighting) |
| 981 | ;; backward-compatibility alias | ||
| 982 | (put 'ediff-current-diff-face-C 'face-alias 'ediff-current-diff-C) | ||
| 977 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 983 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 978 | ;; this variable is set to nil, then again to the appropriate face. | 984 | ;; this variable is set to nil, then again to the appropriate face. |
| 979 | (defvar ediff-current-diff-face-C 'ediff-current-diff-face-C | 985 | (defvar ediff-current-diff-face-C 'ediff-current-diff-C |
| 980 | "Face for highlighting the selected difference in buffer C. | 986 | "Face for highlighting the selected difference in buffer C. |
| 981 | DO NOT CHANGE this variable. Instead, use the customization | 987 | DO NOT CHANGE this variable. Instead, use the customization |
| 982 | widget to customize the actual face object `ediff-current-diff-face-C' | 988 | widget to customize the actual face object `ediff-current-diff-C' |
| 983 | this variable represents.") | 989 | this variable represents.") |
| 984 | (ediff-hide-face 'ediff-current-diff-face-C) | 990 | (ediff-hide-face 'ediff-current-diff-C) |
| 985 | ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. | 991 | ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. |
| 986 | ;; This means that some user customization may be trashed. | 992 | ;; This means that some user customization may be trashed. |
| 987 | (if (and ediff-xemacs-p | 993 | (if (and ediff-xemacs-p |
| 988 | (ediff-has-face-support-p) | 994 | (ediff-has-face-support-p) |
| 989 | (not (ediff-color-display-p))) | 995 | (not (ediff-color-display-p))) |
| 990 | (copy-face 'modeline 'ediff-current-diff-face-C)) | 996 | (copy-face 'modeline 'ediff-current-diff-C)) |
| 991 | 997 | ||
| 992 | 998 | ||
| 993 | (defface ediff-current-diff-face-Ancestor | 999 | (defface ediff-current-diff-Ancestor |
| 994 | (if ediff-emacs-p | 1000 | (if ediff-emacs-p |
| 995 | '((((class color) (min-colors 16)) | 1001 | '((((class color) (min-colors 16)) |
| 996 | (:foreground "Black" :background "VioletRed")) | 1002 | (:foreground "Black" :background "VioletRed")) |
| @@ -1002,23 +1008,25 @@ this variable represents.") | |||
| 1002 | (t (:inverse-video t)))) | 1008 | (t (:inverse-video t)))) |
| 1003 | "Face for highlighting the selected difference in buffer Ancestor." | 1009 | "Face for highlighting the selected difference in buffer Ancestor." |
| 1004 | :group 'ediff-highlighting) | 1010 | :group 'ediff-highlighting) |
| 1011 | ;; backward-compatibility alias | ||
| 1012 | (put 'ediff-current-diff-face-Ancestor 'face-alias 'ediff-current-diff-Ancestor) | ||
| 1005 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1013 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1006 | ;; this variable is set to nil, then again to the appropriate face. | 1014 | ;; this variable is set to nil, then again to the appropriate face. |
| 1007 | (defvar ediff-current-diff-face-Ancestor 'ediff-current-diff-face-Ancestor | 1015 | (defvar ediff-current-diff-face-Ancestor 'ediff-current-diff-Ancestor |
| 1008 | "Face for highlighting the selected difference in buffer Ancestor. | 1016 | "Face for highlighting the selected difference in buffer Ancestor. |
| 1009 | DO NOT CHANGE this variable. Instead, use the customization | 1017 | DO NOT CHANGE this variable. Instead, use the customization |
| 1010 | widget to customize the actual face object `ediff-current-diff-face-Ancestor' | 1018 | widget to customize the actual face object `ediff-current-diff-Ancestor' |
| 1011 | this variable represents.") | 1019 | this variable represents.") |
| 1012 | (ediff-hide-face 'ediff-current-diff-face-Ancestor) | 1020 | (ediff-hide-face 'ediff-current-diff-Ancestor) |
| 1013 | ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. | 1021 | ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. |
| 1014 | ;; This means that some user customization may be trashed. | 1022 | ;; This means that some user customization may be trashed. |
| 1015 | (if (and ediff-xemacs-p | 1023 | (if (and ediff-xemacs-p |
| 1016 | (ediff-has-face-support-p) | 1024 | (ediff-has-face-support-p) |
| 1017 | (not (ediff-color-display-p))) | 1025 | (not (ediff-color-display-p))) |
| 1018 | (copy-face 'modeline 'ediff-current-diff-face-Ancestor)) | 1026 | (copy-face 'modeline 'ediff-current-diff-Ancestor)) |
| 1019 | 1027 | ||
| 1020 | 1028 | ||
| 1021 | (defface ediff-fine-diff-face-A | 1029 | (defface ediff-fine-diff-A |
| 1022 | (if ediff-emacs-p | 1030 | (if ediff-emacs-p |
| 1023 | '((((class color) (min-colors 16)) | 1031 | '((((class color) (min-colors 16)) |
| 1024 | (:foreground "Navy" :background "sky blue")) | 1032 | (:foreground "Navy" :background "sky blue")) |
| @@ -1030,16 +1038,18 @@ this variable represents.") | |||
| 1030 | (t (:underline t :stipple "gray3")))) | 1038 | (t (:underline t :stipple "gray3")))) |
| 1031 | "Face for highlighting the refinement of the selected diff in buffer A." | 1039 | "Face for highlighting the refinement of the selected diff in buffer A." |
| 1032 | :group 'ediff-highlighting) | 1040 | :group 'ediff-highlighting) |
| 1041 | ;; backward-compatibility alias | ||
| 1042 | (put 'ediff-fine-diff-face-A 'face-alias 'ediff-fine-diff-A) | ||
| 1033 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1043 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1034 | ;; this variable is set to nil, then again to the appropriate face. | 1044 | ;; this variable is set to nil, then again to the appropriate face. |
| 1035 | (defvar ediff-fine-diff-face-A 'ediff-fine-diff-face-A | 1045 | (defvar ediff-fine-diff-face-A 'ediff-fine-diff-A |
| 1036 | "Face for highlighting the fine differences in buffer A. | 1046 | "Face for highlighting the fine differences in buffer A. |
| 1037 | DO NOT CHANGE this variable. Instead, use the customization | 1047 | DO NOT CHANGE this variable. Instead, use the customization |
| 1038 | widget to customize the actual face object `ediff-fine-diff-face-A' | 1048 | widget to customize the actual face object `ediff-fine-diff-A' |
| 1039 | this variable represents.") | 1049 | this variable represents.") |
| 1040 | (ediff-hide-face 'ediff-fine-diff-face-A) | 1050 | (ediff-hide-face 'ediff-fine-diff-A) |
| 1041 | 1051 | ||
| 1042 | (defface ediff-fine-diff-face-B | 1052 | (defface ediff-fine-diff-B |
| 1043 | (if ediff-emacs-p | 1053 | (if ediff-emacs-p |
| 1044 | '((((class color) (min-colors 16)) | 1054 | '((((class color) (min-colors 16)) |
| 1045 | (:foreground "Black" :background "cyan")) | 1055 | (:foreground "Black" :background "cyan")) |
| @@ -1051,16 +1061,18 @@ this variable represents.") | |||
| 1051 | (t (:underline t :stipple "gray3")))) | 1061 | (t (:underline t :stipple "gray3")))) |
| 1052 | "Face for highlighting the refinement of the selected diff in buffer B." | 1062 | "Face for highlighting the refinement of the selected diff in buffer B." |
| 1053 | :group 'ediff-highlighting) | 1063 | :group 'ediff-highlighting) |
| 1064 | ;; backward-compatibility alias | ||
| 1065 | (put 'ediff-fine-diff-face-B 'face-alias 'ediff-fine-diff-B) | ||
| 1054 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1066 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1055 | ;; this variable is set to nil, then again to the appropriate face. | 1067 | ;; this variable is set to nil, then again to the appropriate face. |
| 1056 | (defvar ediff-fine-diff-face-B 'ediff-fine-diff-face-B | 1068 | (defvar ediff-fine-diff-face-B 'ediff-fine-diff-B |
| 1057 | "Face for highlighting the fine differences in buffer B. | 1069 | "Face for highlighting the fine differences in buffer B. |
| 1058 | DO NOT CHANGE this variable. Instead, use the customization | 1070 | DO NOT CHANGE this variable. Instead, use the customization |
| 1059 | widget to customize the actual face object `ediff-fine-diff-face-B' | 1071 | widget to customize the actual face object `ediff-fine-diff-B' |
| 1060 | this variable represents.") | 1072 | this variable represents.") |
| 1061 | (ediff-hide-face 'ediff-fine-diff-face-B) | 1073 | (ediff-hide-face 'ediff-fine-diff-B) |
| 1062 | 1074 | ||
| 1063 | (defface ediff-fine-diff-face-C | 1075 | (defface ediff-fine-diff-C |
| 1064 | (if ediff-emacs-p | 1076 | (if ediff-emacs-p |
| 1065 | '((((type pc)) | 1077 | '((((type pc)) |
| 1066 | (:foreground "white" :background "Turquoise")) | 1078 | (:foreground "white" :background "Turquoise")) |
| @@ -1077,16 +1089,18 @@ this variable represents.") | |||
| 1077 | (t (:underline t :stipple "gray3")))) | 1089 | (t (:underline t :stipple "gray3")))) |
| 1078 | "Face for highlighting the refinement of the selected diff in buffer C." | 1090 | "Face for highlighting the refinement of the selected diff in buffer C." |
| 1079 | :group 'ediff-highlighting) | 1091 | :group 'ediff-highlighting) |
| 1092 | ;; backward-compatibility alias | ||
| 1093 | (put 'ediff-fine-diff-face-C 'face-alias 'ediff-fine-diff-C) | ||
| 1080 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1094 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1081 | ;; this variable is set to nil, then again to the appropriate face. | 1095 | ;; this variable is set to nil, then again to the appropriate face. |
| 1082 | (defvar ediff-fine-diff-face-C 'ediff-fine-diff-face-C | 1096 | (defvar ediff-fine-diff-face-C 'ediff-fine-diff-C |
| 1083 | "Face for highlighting the fine differences in buffer C. | 1097 | "Face for highlighting the fine differences in buffer C. |
| 1084 | DO NOT CHANGE this variable. Instead, use the customization | 1098 | DO NOT CHANGE this variable. Instead, use the customization |
| 1085 | widget to customize the actual face object `ediff-fine-diff-face-C' | 1099 | widget to customize the actual face object `ediff-fine-diff-C' |
| 1086 | this variable represents.") | 1100 | this variable represents.") |
| 1087 | (ediff-hide-face 'ediff-fine-diff-face-C) | 1101 | (ediff-hide-face 'ediff-fine-diff-C) |
| 1088 | 1102 | ||
| 1089 | (defface ediff-fine-diff-face-Ancestor | 1103 | (defface ediff-fine-diff-Ancestor |
| 1090 | (if ediff-emacs-p | 1104 | (if ediff-emacs-p |
| 1091 | '((((class color) (min-colors 16)) | 1105 | '((((class color) (min-colors 16)) |
| 1092 | (:foreground "Black" :background "Green")) | 1106 | (:foreground "Black" :background "Green")) |
| @@ -1100,14 +1114,16 @@ this variable represents.") | |||
| 1100 | At present, this face is not used and no fine differences are computed for the | 1114 | At present, this face is not used and no fine differences are computed for the |
| 1101 | ancestor buffer." | 1115 | ancestor buffer." |
| 1102 | :group 'ediff-highlighting) | 1116 | :group 'ediff-highlighting) |
| 1117 | ;; backward-compatibility alias | ||
| 1118 | (put 'ediff-fine-diff-face-Ancestor 'face-alias 'ediff-fine-diff-Ancestor) | ||
| 1103 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1119 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1104 | ;; this variable is set to nil, then again to the appropriate face. | 1120 | ;; this variable is set to nil, then again to the appropriate face. |
| 1105 | (defvar ediff-fine-diff-face-Ancestor 'ediff-fine-diff-face-Ancestor | 1121 | (defvar ediff-fine-diff-face-Ancestor 'ediff-fine-diff-Ancestor |
| 1106 | "Face for highlighting the fine differences in buffer Ancestor. | 1122 | "Face for highlighting the fine differences in buffer Ancestor. |
| 1107 | DO NOT CHANGE this variable. Instead, use the customization | 1123 | DO NOT CHANGE this variable. Instead, use the customization |
| 1108 | widget to customize the actual face object `ediff-fine-diff-face-Ancestor' | 1124 | widget to customize the actual face object `ediff-fine-diff-Ancestor' |
| 1109 | this variable represents.") | 1125 | this variable represents.") |
| 1110 | (ediff-hide-face 'ediff-fine-diff-face-Ancestor) | 1126 | (ediff-hide-face 'ediff-fine-diff-Ancestor) |
| 1111 | 1127 | ||
| 1112 | ;; Some installs don't have stipple or Stipple. So, try them in turn. | 1128 | ;; Some installs don't have stipple or Stipple. So, try them in turn. |
| 1113 | (defvar stipple-pixmap | 1129 | (defvar stipple-pixmap |
| @@ -1118,7 +1134,7 @@ this variable represents.") | |||
| 1118 | (locate-library "stipple" t mswindowsx-bitmap-file-path)) "stipple") | 1134 | (locate-library "stipple" t mswindowsx-bitmap-file-path)) "stipple") |
| 1119 | (t "Stipple"))) | 1135 | (t "Stipple"))) |
| 1120 | 1136 | ||
| 1121 | (defface ediff-even-diff-face-A | 1137 | (defface ediff-even-diff-A |
| 1122 | (if ediff-emacs-p | 1138 | (if ediff-emacs-p |
| 1123 | `((((type pc)) | 1139 | `((((type pc)) |
| 1124 | (:foreground "green3" :background "light grey")) | 1140 | (:foreground "green3" :background "light grey")) |
| @@ -1135,16 +1151,18 @@ this variable represents.") | |||
| 1135 | (t (:italic t :stipple ,stipple-pixmap)))) | 1151 | (t (:italic t :stipple ,stipple-pixmap)))) |
| 1136 | "Face for highlighting even-numbered non-current differences in buffer A." | 1152 | "Face for highlighting even-numbered non-current differences in buffer A." |
| 1137 | :group 'ediff-highlighting) | 1153 | :group 'ediff-highlighting) |
| 1154 | ;; backward-compatibility alias | ||
| 1155 | (put 'ediff-even-diff-face-A 'face-alias 'ediff-even-diff-A) | ||
| 1138 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1156 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1139 | ;; this variable is set to nil, then again to the appropriate face. | 1157 | ;; this variable is set to nil, then again to the appropriate face. |
| 1140 | (defvar ediff-even-diff-face-A 'ediff-even-diff-face-A | 1158 | (defvar ediff-even-diff-face-A 'ediff-even-diff-A |
| 1141 | "Face for highlighting even-numbered non-current differences in buffer A. | 1159 | "Face for highlighting even-numbered non-current differences in buffer A. |
| 1142 | DO NOT CHANGE this variable. Instead, use the customization | 1160 | DO NOT CHANGE this variable. Instead, use the customization |
| 1143 | widget to customize the actual face object `ediff-even-diff-face-A' | 1161 | widget to customize the actual face object `ediff-even-diff-A' |
| 1144 | this variable represents.") | 1162 | this variable represents.") |
| 1145 | (ediff-hide-face 'ediff-even-diff-face-A) | 1163 | (ediff-hide-face 'ediff-even-diff-A) |
| 1146 | 1164 | ||
| 1147 | (defface ediff-even-diff-face-B | 1165 | (defface ediff-even-diff-B |
| 1148 | (if ediff-emacs-p | 1166 | (if ediff-emacs-p |
| 1149 | `((((class color) (min-colors 16)) | 1167 | `((((class color) (min-colors 16)) |
| 1150 | (:foreground "White" :background "Grey")) | 1168 | (:foreground "White" :background "Grey")) |
| @@ -1156,16 +1174,18 @@ this variable represents.") | |||
| 1156 | (t (:italic t :stipple ,stipple-pixmap)))) | 1174 | (t (:italic t :stipple ,stipple-pixmap)))) |
| 1157 | "Face for highlighting even-numbered non-current differences in buffer B." | 1175 | "Face for highlighting even-numbered non-current differences in buffer B." |
| 1158 | :group 'ediff-highlighting) | 1176 | :group 'ediff-highlighting) |
| 1177 | ;; backward-compatibility alias | ||
| 1178 | (put 'ediff-even-diff-face-B 'face-alias 'ediff-even-diff-B) | ||
| 1159 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1179 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1160 | ;; this variable is set to nil, then again to the appropriate face. | 1180 | ;; this variable is set to nil, then again to the appropriate face. |
| 1161 | (defvar ediff-even-diff-face-B 'ediff-even-diff-face-B | 1181 | (defvar ediff-even-diff-face-B 'ediff-even-diff-B |
| 1162 | "Face for highlighting even-numbered non-current differences in buffer B. | 1182 | "Face for highlighting even-numbered non-current differences in buffer B. |
| 1163 | DO NOT CHANGE this variable. Instead, use the customization | 1183 | DO NOT CHANGE this variable. Instead, use the customization |
| 1164 | widget to customize the actual face object `ediff-even-diff-face-B' | 1184 | widget to customize the actual face object `ediff-even-diff-B' |
| 1165 | this variable represents.") | 1185 | this variable represents.") |
| 1166 | (ediff-hide-face 'ediff-even-diff-face-B) | 1186 | (ediff-hide-face 'ediff-even-diff-B) |
| 1167 | 1187 | ||
| 1168 | (defface ediff-even-diff-face-C | 1188 | (defface ediff-even-diff-C |
| 1169 | (if ediff-emacs-p | 1189 | (if ediff-emacs-p |
| 1170 | `((((type pc)) | 1190 | `((((type pc)) |
| 1171 | (:foreground "yellow3" :background "light grey")) | 1191 | (:foreground "yellow3" :background "light grey")) |
| @@ -1182,16 +1202,18 @@ this variable represents.") | |||
| 1182 | (t (:italic t :stipple ,stipple-pixmap)))) | 1202 | (t (:italic t :stipple ,stipple-pixmap)))) |
| 1183 | "Face for highlighting even-numbered non-current differences in buffer C." | 1203 | "Face for highlighting even-numbered non-current differences in buffer C." |
| 1184 | :group 'ediff-highlighting) | 1204 | :group 'ediff-highlighting) |
| 1205 | ;; backward-compatibility alias | ||
| 1206 | (put 'ediff-even-diff-face-C 'face-alias 'ediff-even-diff-C) | ||
| 1185 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1207 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1186 | ;; this variable is set to nil, then again to the appropriate face. | 1208 | ;; this variable is set to nil, then again to the appropriate face. |
| 1187 | (defvar ediff-even-diff-face-C 'ediff-even-diff-face-C | 1209 | (defvar ediff-even-diff-face-C 'ediff-even-diff-C |
| 1188 | "Face for highlighting even-numbered non-current differences in buffer C. | 1210 | "Face for highlighting even-numbered non-current differences in buffer C. |
| 1189 | DO NOT CHANGE this variable. Instead, use the customization | 1211 | DO NOT CHANGE this variable. Instead, use the customization |
| 1190 | widget to customize the actual face object `ediff-even-diff-face-C' | 1212 | widget to customize the actual face object `ediff-even-diff-C' |
| 1191 | this variable represents.") | 1213 | this variable represents.") |
| 1192 | (ediff-hide-face 'ediff-even-diff-face-C) | 1214 | (ediff-hide-face 'ediff-even-diff-C) |
| 1193 | 1215 | ||
| 1194 | (defface ediff-even-diff-face-Ancestor | 1216 | (defface ediff-even-diff-Ancestor |
| 1195 | (if ediff-emacs-p | 1217 | (if ediff-emacs-p |
| 1196 | `((((type pc)) | 1218 | `((((type pc)) |
| 1197 | (:foreground "cyan3" :background "light grey")) | 1219 | (:foreground "cyan3" :background "light grey")) |
| @@ -1208,23 +1230,25 @@ this variable represents.") | |||
| 1208 | (t (:italic t :stipple ,stipple-pixmap)))) | 1230 | (t (:italic t :stipple ,stipple-pixmap)))) |
| 1209 | "Face for highlighting even-numbered non-current differences in the ancestor buffer." | 1231 | "Face for highlighting even-numbered non-current differences in the ancestor buffer." |
| 1210 | :group 'ediff-highlighting) | 1232 | :group 'ediff-highlighting) |
| 1233 | ;; backward-compatibility alias | ||
| 1234 | (put 'ediff-even-diff-face-Ancestor 'face-alias 'ediff-even-diff-Ancestor) | ||
| 1211 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1235 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1212 | ;; this variable is set to nil, then again to the appropriate face. | 1236 | ;; this variable is set to nil, then again to the appropriate face. |
| 1213 | (defvar ediff-even-diff-face-Ancestor 'ediff-even-diff-face-Ancestor | 1237 | (defvar ediff-even-diff-face-Ancestor 'ediff-even-diff-Ancestor |
| 1214 | "Face for highlighting even-numbered non-current differences in buffer Ancestor. | 1238 | "Face for highlighting even-numbered non-current differences in buffer Ancestor. |
| 1215 | DO NOT CHANGE this variable. Instead, use the customization | 1239 | DO NOT CHANGE this variable. Instead, use the customization |
| 1216 | widget to customize the actual face object `ediff-even-diff-face-Ancestor' | 1240 | widget to customize the actual face object `ediff-even-diff-Ancestor' |
| 1217 | this variable represents.") | 1241 | this variable represents.") |
| 1218 | (ediff-hide-face 'ediff-even-diff-face-Ancestor) | 1242 | (ediff-hide-face 'ediff-even-diff-Ancestor) |
| 1219 | 1243 | ||
| 1220 | ;; Association between buffer types and even-diff-face symbols | 1244 | ;; Association between buffer types and even-diff-face symbols |
| 1221 | (defconst ediff-even-diff-face-alist | 1245 | (defconst ediff-even-diff-face-alist |
| 1222 | '((A . ediff-even-diff-face-A) | 1246 | '((A . ediff-even-diff-A) |
| 1223 | (B . ediff-even-diff-face-B) | 1247 | (B . ediff-even-diff-B) |
| 1224 | (C . ediff-even-diff-face-C) | 1248 | (C . ediff-even-diff-C) |
| 1225 | (Ancestor . ediff-even-diff-face-Ancestor))) | 1249 | (Ancestor . ediff-even-diff-Ancestor))) |
| 1226 | 1250 | ||
| 1227 | (defface ediff-odd-diff-face-A | 1251 | (defface ediff-odd-diff-A |
| 1228 | (if ediff-emacs-p | 1252 | (if ediff-emacs-p |
| 1229 | '((((type pc)) | 1253 | '((((type pc)) |
| 1230 | (:foreground "green3" :background "gray40")) | 1254 | (:foreground "green3" :background "gray40")) |
| @@ -1239,17 +1263,19 @@ this variable represents.") | |||
| 1239 | (t (:italic t :stipple "gray1")))) | 1263 | (t (:italic t :stipple "gray1")))) |
| 1240 | "Face for highlighting odd-numbered non-current differences in buffer A." | 1264 | "Face for highlighting odd-numbered non-current differences in buffer A." |
| 1241 | :group 'ediff-highlighting) | 1265 | :group 'ediff-highlighting) |
| 1266 | ;; backward-compatibility alias | ||
| 1267 | (put 'ediff-odd-diff-face-A 'face-alias 'ediff-odd-diff-A) | ||
| 1242 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1268 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1243 | ;; this variable is set to nil, then again to the appropriate face. | 1269 | ;; this variable is set to nil, then again to the appropriate face. |
| 1244 | (defvar ediff-odd-diff-face-A 'ediff-odd-diff-face-A | 1270 | (defvar ediff-odd-diff-face-A 'ediff-odd-diff-A |
| 1245 | "Face for highlighting odd-numbered non-current differences in buffer A. | 1271 | "Face for highlighting odd-numbered non-current differences in buffer A. |
| 1246 | DO NOT CHANGE this variable. Instead, use the customization | 1272 | DO NOT CHANGE this variable. Instead, use the customization |
| 1247 | widget to customize the actual face object `ediff-odd-diff-face-A' | 1273 | widget to customize the actual face object `ediff-odd-diff-A' |
| 1248 | this variable represents.") | 1274 | this variable represents.") |
| 1249 | (ediff-hide-face 'ediff-odd-diff-face-A) | 1275 | (ediff-hide-face 'ediff-odd-diff-A) |
| 1250 | 1276 | ||
| 1251 | 1277 | ||
| 1252 | (defface ediff-odd-diff-face-B | 1278 | (defface ediff-odd-diff-B |
| 1253 | (if ediff-emacs-p | 1279 | (if ediff-emacs-p |
| 1254 | '((((type pc)) | 1280 | '((((type pc)) |
| 1255 | (:foreground "White" :background "gray40")) | 1281 | (:foreground "White" :background "gray40")) |
| @@ -1264,16 +1290,18 @@ this variable represents.") | |||
| 1264 | (t (:italic t :stipple "gray1")))) | 1290 | (t (:italic t :stipple "gray1")))) |
| 1265 | "Face for highlighting odd-numbered non-current differences in buffer B." | 1291 | "Face for highlighting odd-numbered non-current differences in buffer B." |
| 1266 | :group 'ediff-highlighting) | 1292 | :group 'ediff-highlighting) |
| 1293 | ;; backward-compatibility alias | ||
| 1294 | (put 'ediff-odd-diff-face-B 'face-alias 'ediff-odd-diff-B) | ||
| 1267 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1295 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1268 | ;; this variable is set to nil, then again to the appropriate face. | 1296 | ;; this variable is set to nil, then again to the appropriate face. |
| 1269 | (defvar ediff-odd-diff-face-B 'ediff-odd-diff-face-B | 1297 | (defvar ediff-odd-diff-face-B 'ediff-odd-diff-B |
| 1270 | "Face for highlighting odd-numbered non-current differences in buffer B. | 1298 | "Face for highlighting odd-numbered non-current differences in buffer B. |
| 1271 | DO NOT CHANGE this variable. Instead, use the customization | 1299 | DO NOT CHANGE this variable. Instead, use the customization |
| 1272 | widget to customize the actual face object `ediff-odd-diff-face-B' | 1300 | widget to customize the actual face object `ediff-odd-diff-B' |
| 1273 | this variable represents.") | 1301 | this variable represents.") |
| 1274 | (ediff-hide-face 'ediff-odd-diff-face-B) | 1302 | (ediff-hide-face 'ediff-odd-diff-B) |
| 1275 | 1303 | ||
| 1276 | (defface ediff-odd-diff-face-C | 1304 | (defface ediff-odd-diff-C |
| 1277 | (if ediff-emacs-p | 1305 | (if ediff-emacs-p |
| 1278 | '((((type pc)) | 1306 | '((((type pc)) |
| 1279 | (:foreground "yellow3" :background "gray40")) | 1307 | (:foreground "yellow3" :background "gray40")) |
| @@ -1288,16 +1316,18 @@ this variable represents.") | |||
| 1288 | (t (:italic t :stipple "gray1")))) | 1316 | (t (:italic t :stipple "gray1")))) |
| 1289 | "Face for highlighting odd-numbered non-current differences in buffer C." | 1317 | "Face for highlighting odd-numbered non-current differences in buffer C." |
| 1290 | :group 'ediff-highlighting) | 1318 | :group 'ediff-highlighting) |
| 1319 | ;; backward-compatibility alias | ||
| 1320 | (put 'ediff-odd-diff-face-C 'face-alias 'ediff-odd-diff-C) | ||
| 1291 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1321 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1292 | ;; this variable is set to nil, then again to the appropriate face. | 1322 | ;; this variable is set to nil, then again to the appropriate face. |
| 1293 | (defvar ediff-odd-diff-face-C 'ediff-odd-diff-face-C | 1323 | (defvar ediff-odd-diff-face-C 'ediff-odd-diff-C |
| 1294 | "Face for highlighting odd-numbered non-current differences in buffer C. | 1324 | "Face for highlighting odd-numbered non-current differences in buffer C. |
| 1295 | DO NOT CHANGE this variable. Instead, use the customization | 1325 | DO NOT CHANGE this variable. Instead, use the customization |
| 1296 | widget to customize the actual face object `ediff-odd-diff-face-C' | 1326 | widget to customize the actual face object `ediff-odd-diff-C' |
| 1297 | this variable represents.") | 1327 | this variable represents.") |
| 1298 | (ediff-hide-face 'ediff-odd-diff-face-C) | 1328 | (ediff-hide-face 'ediff-odd-diff-C) |
| 1299 | 1329 | ||
| 1300 | (defface ediff-odd-diff-face-Ancestor | 1330 | (defface ediff-odd-diff-Ancestor |
| 1301 | (if ediff-emacs-p | 1331 | (if ediff-emacs-p |
| 1302 | '((((class color) (min-colors 16)) | 1332 | '((((class color) (min-colors 16)) |
| 1303 | (:foreground "cyan3" :background "gray40")) | 1333 | (:foreground "cyan3" :background "gray40")) |
| @@ -1309,14 +1339,16 @@ this variable represents.") | |||
| 1309 | (t (:italic t :stipple "gray1")))) | 1339 | (t (:italic t :stipple "gray1")))) |
| 1310 | "Face for highlighting odd-numbered non-current differences in the ancestor buffer." | 1340 | "Face for highlighting odd-numbered non-current differences in the ancestor buffer." |
| 1311 | :group 'ediff-highlighting) | 1341 | :group 'ediff-highlighting) |
| 1342 | ;; backward-compatibility alias | ||
| 1343 | (put 'ediff-odd-diff-face-Ancestor 'face-alias 'ediff-odd-diff-Ancestor) | ||
| 1312 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, | 1344 | ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
| 1313 | ;; this variable is set to nil, then again to the appropriate face. | 1345 | ;; this variable is set to nil, then again to the appropriate face. |
| 1314 | (defvar ediff-odd-diff-face-Ancestor 'ediff-odd-diff-face-Ancestor | 1346 | (defvar ediff-odd-diff-face-Ancestor 'ediff-odd-diff-Ancestor |
| 1315 | "Face for highlighting odd-numbered non-current differences in buffer Ancestor. | 1347 | "Face for highlighting odd-numbered non-current differences in buffer Ancestor. |
| 1316 | DO NOT CHANGE this variable. Instead, use the customization | 1348 | DO NOT CHANGE this variable. Instead, use the customization |
| 1317 | widget to customize the actual face object `ediff-odd-diff-face-Ancestor' | 1349 | widget to customize the actual face object `ediff-odd-diff-Ancestor' |
| 1318 | this variable represents.") | 1350 | this variable represents.") |
| 1319 | (ediff-hide-face 'ediff-odd-diff-face-Ancestor) | 1351 | (ediff-hide-face 'ediff-odd-diff-Ancestor) |
| 1320 | 1352 | ||
| 1321 | ;; Association between buffer types and odd-diff-face symbols | 1353 | ;; Association between buffer types and odd-diff-face symbols |
| 1322 | (defconst ediff-odd-diff-face-alist | 1354 | (defconst ediff-odd-diff-face-alist |
| @@ -1333,13 +1365,13 @@ this variable represents.") | |||
| 1333 | (Ancestor . ediff-fine-diff-face-Ancestor))) | 1365 | (Ancestor . ediff-fine-diff-face-Ancestor))) |
| 1334 | 1366 | ||
| 1335 | ;; Help echo | 1367 | ;; Help echo |
| 1336 | (put 'ediff-fine-diff-face-A 'ediff-help-echo | 1368 | (put 'ediff-fine-diff-A 'ediff-help-echo |
| 1337 | "A `refinement' of the current difference region") | 1369 | "A `refinement' of the current difference region") |
| 1338 | (put 'ediff-fine-diff-face-B 'ediff-help-echo | 1370 | (put 'ediff-fine-diff-B 'ediff-help-echo |
| 1339 | "A `refinement' of the current difference region") | 1371 | "A `refinement' of the current difference region") |
| 1340 | (put 'ediff-fine-diff-face-C 'ediff-help-echo | 1372 | (put 'ediff-fine-diff-C 'ediff-help-echo |
| 1341 | "A `refinement' of the current difference region") | 1373 | "A `refinement' of the current difference region") |
| 1342 | (put 'ediff-fine-diff-face-Ancestor 'ediff-help-echo | 1374 | (put 'ediff-fine-diff-Ancestor 'ediff-help-echo |
| 1343 | "A `refinement' of the current difference region") | 1375 | "A `refinement' of the current difference region") |
| 1344 | 1376 | ||
| 1345 | (add-hook 'ediff-quit-hook 'ediff-cleanup-mess) | 1377 | (add-hook 'ediff-quit-hook 'ediff-cleanup-mess) |
diff --git a/lisp/emacs-lisp/derived.el b/lisp/emacs-lisp/derived.el index 943f052fc6d..006b6f2c588 100644 --- a/lisp/emacs-lisp/derived.el +++ b/lisp/emacs-lisp/derived.el | |||
| @@ -320,7 +320,7 @@ which more-or-less shadow %s's corresponding tables." | |||
| 320 | 320 | ||
| 321 | ;;;###autoload | 321 | ;;;###autoload |
| 322 | (defun derived-mode-init-mode-variables (mode) | 322 | (defun derived-mode-init-mode-variables (mode) |
| 323 | "Initialise variables for a new MODE. | 323 | "Initialize variables for a new MODE. |
| 324 | Right now, if they don't already exist, set up a blank keymap, an | 324 | Right now, if they don't already exist, set up a blank keymap, an |
| 325 | empty syntax table, and an empty abbrev table -- these will be merged | 325 | empty syntax table, and an empty abbrev table -- these will be merged |
| 326 | the first time the mode is used." | 326 | the first time the mode is used." |
diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el index 54325c87b6d..e9c767961cd 100644 --- a/lisp/emacs-lisp/edebug.el +++ b/lisp/emacs-lisp/edebug.el | |||
| @@ -3323,7 +3323,7 @@ With prefix ARG, set temporary break at current point and go." | |||
| 3323 | 3323 | ||
| 3324 | 3324 | ||
| 3325 | (defun edebug-goto-here () | 3325 | (defun edebug-goto-here () |
| 3326 | "Proceed to this stop point." | 3326 | "Proceed to first stop-point at or after current position of point." |
| 3327 | (interactive) | 3327 | (interactive) |
| 3328 | (edebug-go-mode t)) | 3328 | (edebug-go-mode t)) |
| 3329 | 3329 | ||
diff --git a/lisp/emacs-lisp/elint.el b/lisp/emacs-lisp/elint.el index d4967a7cd06..806fa8e6854 100644 --- a/lisp/emacs-lisp/elint.el +++ b/lisp/emacs-lisp/elint.el | |||
| @@ -66,7 +66,7 @@ | |||
| 66 | left-margin left-margin-width line-spacing local-abbrev-table local-write-file-hooks major-mode | 66 | left-margin left-margin-width line-spacing local-abbrev-table local-write-file-hooks major-mode |
| 67 | mark-active mark-ring mode-line-buffer-identification | 67 | mark-active mark-ring mode-line-buffer-identification |
| 68 | mode-line-format mode-line-modified mode-line-process mode-name | 68 | mode-line-format mode-line-modified mode-line-process mode-name |
| 69 | overwrite-mode | 69 | overwrite-mode |
| 70 | point-before-scroll right-fringe-width right-margin-width | 70 | point-before-scroll right-fringe-width right-margin-width |
| 71 | scroll-bar-width scroll-down-aggressively scroll-up-aggressively selective-display | 71 | scroll-bar-width scroll-down-aggressively scroll-up-aggressively selective-display |
| 72 | selective-display-ellipses tab-width truncate-lines vc-mode vertical-scroll-bar) | 72 | selective-display-ellipses tab-width truncate-lines vc-mode vertical-scroll-bar) |
| @@ -298,7 +298,7 @@ Return nil if there are no more forms, t otherwise." | |||
| 298 | (not (eobp))) | 298 | (not (eobp))) |
| 299 | 299 | ||
| 300 | (defun elint-init-env (forms) | 300 | (defun elint-init-env (forms) |
| 301 | "Initialise the environment from FORMS." | 301 | "Initialize the environment from FORMS." |
| 302 | (let ((env (elint-make-env)) | 302 | (let ((env (elint-make-env)) |
| 303 | form) | 303 | form) |
| 304 | (while forms | 304 | (while forms |
diff --git a/lisp/emacs-lisp/regexp-opt.el b/lisp/emacs-lisp/regexp-opt.el index 3537a83c3c1..3e0c7c8ade4 100644 --- a/lisp/emacs-lisp/regexp-opt.el +++ b/lisp/emacs-lisp/regexp-opt.el | |||
| @@ -116,7 +116,7 @@ by \\=\\< and \\>." | |||
| 116 | (defun regexp-opt-depth (regexp) | 116 | (defun regexp-opt-depth (regexp) |
| 117 | "Return the depth of REGEXP. | 117 | "Return the depth of REGEXP. |
| 118 | This means the number of non-shy regexp grouping constructs | 118 | This means the number of non-shy regexp grouping constructs |
| 119 | \(parenthesised expressions) in REGEXP." | 119 | \(parenthesized expressions) in REGEXP." |
| 120 | (save-match-data | 120 | (save-match-data |
| 121 | ;; Hack to signal an error if REGEXP does not have balanced parentheses. | 121 | ;; Hack to signal an error if REGEXP does not have balanced parentheses. |
| 122 | (string-match regexp "") | 122 | (string-match regexp "") |
diff --git a/lisp/emacs-lisp/warnings.el b/lisp/emacs-lisp/warnings.el index 343eda970ce..e6c3447331e 100644 --- a/lisp/emacs-lisp/warnings.el +++ b/lisp/emacs-lisp/warnings.el | |||
| @@ -76,16 +76,20 @@ If a warning's severity level is lower than this, | |||
| 76 | the warning is logged in the warnings buffer, but the buffer | 76 | the warning is logged in the warnings buffer, but the buffer |
| 77 | is not immediately displayed. See also `warning-minimum-log-level'." | 77 | is not immediately displayed. See also `warning-minimum-log-level'." |
| 78 | :group 'warnings | 78 | :group 'warnings |
| 79 | :type '(choice (const :emergency) (const :error) (const :warning)) | 79 | :type '(choice (const :emergency) (const :error) |
| 80 | (const :warning) (const :debug)) | ||
| 80 | :version "22.1") | 81 | :version "22.1") |
| 81 | (defvaralias 'display-warning-minimum-level 'warning-minimum-level) | 82 | (defvaralias 'display-warning-minimum-level 'warning-minimum-level) |
| 82 | 83 | ||
| 83 | (defcustom warning-minimum-log-level :warning | 84 | (defcustom warning-minimum-log-level :warning |
| 84 | "Minimum severity level for logging a warning. | 85 | "Minimum severity level for logging a warning. |
| 85 | If a warning severity level is lower than this, | 86 | If a warning severity level is lower than this, |
| 86 | the warning is completely ignored." | 87 | the warning is completely ignored. |
| 88 | Value must be lower or equal than `warning-minimum-level', | ||
| 89 | because warnings not logged aren't displayed either." | ||
| 87 | :group 'warnings | 90 | :group 'warnings |
| 88 | :type '(choice (const :emergency) (const :error) (const :warning)) | 91 | :type '(choice (const :emergency) (const :error) |
| 92 | (const :warning) (const :debug)) | ||
| 89 | :version "22.1") | 93 | :version "22.1") |
| 90 | (defvaralias 'log-warning-minimum-level 'warning-minimum-log-level) | 94 | (defvaralias 'log-warning-minimum-level 'warning-minimum-log-level) |
| 91 | 95 | ||
| @@ -203,7 +207,9 @@ or a list of symbols whose first element is a custom group name. | |||
| 203 | \(The rest of the symbols represent subcategories, for warning purposes | 207 | \(The rest of the symbols represent subcategories, for warning purposes |
| 204 | only, and you can use whatever symbols you like.) | 208 | only, and you can use whatever symbols you like.) |
| 205 | 209 | ||
| 206 | LEVEL should be either :warning, :error, or :emergency. | 210 | LEVEL should be either :debug, :warning, :error, or :emergency |
| 211 | \(but see `warning-minimum-level' and `warning-minimum-log-level'). | ||
| 212 | |||
| 207 | :emergency -- a problem that will seriously impair Emacs operation soon | 213 | :emergency -- a problem that will seriously impair Emacs operation soon |
| 208 | if you do not attend to it promptly. | 214 | if you do not attend to it promptly. |
| 209 | :error -- data or circumstances that are inherently wrong. | 215 | :error -- data or circumstances that are inherently wrong. |
| @@ -223,7 +229,7 @@ See also `warning-series', `warning-prefix-function' and | |||
| 223 | (if (assq level warning-level-aliases) | 229 | (if (assq level warning-level-aliases) |
| 224 | (setq level (cdr (assq level warning-level-aliases)))) | 230 | (setq level (cdr (assq level warning-level-aliases)))) |
| 225 | (or (< (warning-numeric-level level) | 231 | (or (< (warning-numeric-level level) |
| 226 | (warning-numeric-level warning-minimum-log-level)) | 232 | (warning-numeric-level warning-minimum-log-level)) |
| 227 | (warning-suppress-p type warning-suppress-log-types) | 233 | (warning-suppress-p type warning-suppress-log-types) |
| 228 | (let* ((typename (if (consp type) (car type) type)) | 234 | (let* ((typename (if (consp type) (car type) type)) |
| 229 | (buffer (get-buffer-create (or buffer-name "*Warnings*"))) | 235 | (buffer (get-buffer-create (or buffer-name "*Warnings*"))) |
| @@ -291,11 +297,14 @@ or a list of symbols whose first element is a custom group name. | |||
| 291 | \(The rest of the symbols represent subcategories and | 297 | \(The rest of the symbols represent subcategories and |
| 292 | can be whatever you like.) | 298 | can be whatever you like.) |
| 293 | 299 | ||
| 294 | LEVEL should be either :warning, :error, or :emergency. | 300 | LEVEL should be either :debug, :warning, :error, or :emergency |
| 301 | \(but see `warning-minimum-level' and `warning-minimum-log-level'). | ||
| 302 | |||
| 295 | :emergency -- a problem that will seriously impair Emacs operation soon | 303 | :emergency -- a problem that will seriously impair Emacs operation soon |
| 296 | if you do not attend to it promptly. | 304 | if you do not attend to it promptly. |
| 297 | :error -- invalid data or circumstances. | 305 | :error -- invalid data or circumstances. |
| 298 | :warning -- suspicious data or circumstances." | 306 | :warning -- suspicious data or circumstances. |
| 307 | :debug -- info for debugging only." | ||
| 299 | (display-warning type (apply 'format message args) level)) | 308 | (display-warning type (apply 'format message args) level)) |
| 300 | 309 | ||
| 301 | ;;;###autoload | 310 | ;;;###autoload |
diff --git a/lisp/emulation/vip.el b/lisp/emulation/vip.el index dace12d4c8f..7584436e20a 100644 --- a/lisp/emulation/vip.el +++ b/lisp/emulation/vip.el | |||
| @@ -2292,7 +2292,7 @@ a token has type \(command, address, end-mark\) and value." | |||
| 2292 | (setq cont nil)) | 2292 | (setq cont nil)) |
| 2293 | (t (error "Extra character at end of a command"))))))) | 2293 | (t (error "Extra character at end of a command"))))))) |
| 2294 | ((string= ex-token-type "non-command") | 2294 | ((string= ex-token-type "non-command") |
| 2295 | (error (format "%s: Not an editor command" ex-token))) | 2295 | (error "%s: Not an editor command" ex-token)) |
| 2296 | ((string= ex-token-type "whole") | 2296 | ((string= ex-token-type "whole") |
| 2297 | (setq ex-addresses | 2297 | (setq ex-addresses |
| 2298 | (cons (point-max) (cons (point-min) ex-addresses)))) | 2298 | (cons (point-max) (cons (point-min) ex-addresses)))) |
diff --git a/lisp/eshell/em-ls.el b/lisp/eshell/em-ls.el index 3b5252c18a1..4d06b1bdca0 100644 --- a/lisp/eshell/em-ls.el +++ b/lisp/eshell/em-ls.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; em-ls.el --- implementation of ls in Lisp | 1 | ;;; em-ls.el --- implementation of ls in Lisp |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1999, 2000 Free Software Foundation | 3 | ;; Copyright (C) 1999, 2000, 2005 Free Software Foundation |
| 4 | 4 | ||
| 5 | ;; Author: John Wiegley <johnw@gnu.org> | 5 | ;; Author: John Wiegley <johnw@gnu.org> |
| 6 | 6 | ||
| @@ -106,48 +106,62 @@ faster and conserves more memory." | |||
| 106 | :type 'boolean | 106 | :type 'boolean |
| 107 | :group 'eshell-ls) | 107 | :group 'eshell-ls) |
| 108 | 108 | ||
| 109 | (defface eshell-ls-directory-face | 109 | (defface eshell-ls-directory |
| 110 | '((((class color) (background light)) (:foreground "Blue" :weight bold)) | 110 | '((((class color) (background light)) (:foreground "Blue" :weight bold)) |
| 111 | (((class color) (background dark)) (:foreground "SkyBlue" :weight bold)) | 111 | (((class color) (background dark)) (:foreground "SkyBlue" :weight bold)) |
| 112 | (t (:weight bold))) | 112 | (t (:weight bold))) |
| 113 | "*The face used for highlight directories." | 113 | "*The face used for highlight directories." |
| 114 | :group 'eshell-ls) | 114 | :group 'eshell-ls) |
| 115 | ;; backward-compatibility alias | ||
| 116 | (put 'eshell-ls-directory-face 'face-alias 'eshell-ls-directory) | ||
| 115 | 117 | ||
| 116 | (defface eshell-ls-symlink-face | 118 | (defface eshell-ls-symlink |
| 117 | '((((class color) (background light)) (:foreground "Dark Cyan" :weight bold)) | 119 | '((((class color) (background light)) (:foreground "Dark Cyan" :weight bold)) |
| 118 | (((class color) (background dark)) (:foreground "Cyan" :weight bold))) | 120 | (((class color) (background dark)) (:foreground "Cyan" :weight bold))) |
| 119 | "*The face used for highlight symbolic links." | 121 | "*The face used for highlight symbolic links." |
| 120 | :group 'eshell-ls) | 122 | :group 'eshell-ls) |
| 123 | ;; backward-compatibility alias | ||
| 124 | (put 'eshell-ls-symlink-face 'face-alias 'eshell-ls-symlink) | ||
| 121 | 125 | ||
| 122 | (defface eshell-ls-executable-face | 126 | (defface eshell-ls-executable |
| 123 | '((((class color) (background light)) (:foreground "ForestGreen" :weight bold)) | 127 | '((((class color) (background light)) (:foreground "ForestGreen" :weight bold)) |
| 124 | (((class color) (background dark)) (:foreground "Green" :weight bold))) | 128 | (((class color) (background dark)) (:foreground "Green" :weight bold))) |
| 125 | "*The face used for highlighting executables (not directories, though)." | 129 | "*The face used for highlighting executables (not directories, though)." |
| 126 | :group 'eshell-ls) | 130 | :group 'eshell-ls) |
| 131 | ;; backward-compatibility alias | ||
| 132 | (put 'eshell-ls-executable-face 'face-alias 'eshell-ls-executable) | ||
| 127 | 133 | ||
| 128 | (defface eshell-ls-readonly-face | 134 | (defface eshell-ls-readonly |
| 129 | '((((class color) (background light)) (:foreground "Brown")) | 135 | '((((class color) (background light)) (:foreground "Brown")) |
| 130 | (((class color) (background dark)) (:foreground "Pink"))) | 136 | (((class color) (background dark)) (:foreground "Pink"))) |
| 131 | "*The face used for highlighting read-only files." | 137 | "*The face used for highlighting read-only files." |
| 132 | :group 'eshell-ls) | 138 | :group 'eshell-ls) |
| 139 | ;; backward-compatibility alias | ||
| 140 | (put 'eshell-ls-readonly-face 'face-alias 'eshell-ls-readonly) | ||
| 133 | 141 | ||
| 134 | (defface eshell-ls-unreadable-face | 142 | (defface eshell-ls-unreadable |
| 135 | '((((class color) (background light)) (:foreground "Grey30")) | 143 | '((((class color) (background light)) (:foreground "Grey30")) |
| 136 | (((class color) (background dark)) (:foreground "DarkGrey"))) | 144 | (((class color) (background dark)) (:foreground "DarkGrey"))) |
| 137 | "*The face used for highlighting unreadable files." | 145 | "*The face used for highlighting unreadable files." |
| 138 | :group 'eshell-ls) | 146 | :group 'eshell-ls) |
| 147 | ;; backward-compatibility alias | ||
| 148 | (put 'eshell-ls-unreadable-face 'face-alias 'eshell-ls-unreadable) | ||
| 139 | 149 | ||
| 140 | (defface eshell-ls-special-face | 150 | (defface eshell-ls-special |
| 141 | '((((class color) (background light)) (:foreground "Magenta" :weight bold)) | 151 | '((((class color) (background light)) (:foreground "Magenta" :weight bold)) |
| 142 | (((class color) (background dark)) (:foreground "Magenta" :weight bold))) | 152 | (((class color) (background dark)) (:foreground "Magenta" :weight bold))) |
| 143 | "*The face used for highlighting non-regular files." | 153 | "*The face used for highlighting non-regular files." |
| 144 | :group 'eshell-ls) | 154 | :group 'eshell-ls) |
| 155 | ;; backward-compatibility alias | ||
| 156 | (put 'eshell-ls-special-face 'face-alias 'eshell-ls-special) | ||
| 145 | 157 | ||
| 146 | (defface eshell-ls-missing-face | 158 | (defface eshell-ls-missing |
| 147 | '((((class color) (background light)) (:foreground "Red" :weight bold)) | 159 | '((((class color) (background light)) (:foreground "Red" :weight bold)) |
| 148 | (((class color) (background dark)) (:foreground "Red" :weight bold))) | 160 | (((class color) (background dark)) (:foreground "Red" :weight bold))) |
| 149 | "*The face used for highlighting non-existant file names." | 161 | "*The face used for highlighting non-existant file names." |
| 150 | :group 'eshell-ls) | 162 | :group 'eshell-ls) |
| 163 | ;; backward-compatibility alias | ||
| 164 | (put 'eshell-ls-missing-face 'face-alias 'eshell-ls-missing) | ||
| 151 | 165 | ||
| 152 | (defcustom eshell-ls-archive-regexp | 166 | (defcustom eshell-ls-archive-regexp |
| 153 | (concat "\\.\\(t\\(a[rz]\\|gz\\)\\|arj\\|lzh\\|" | 167 | (concat "\\.\\(t\\(a[rz]\\|gz\\)\\|arj\\|lzh\\|" |
| @@ -158,11 +172,13 @@ files." | |||
| 158 | :type 'regexp | 172 | :type 'regexp |
| 159 | :group 'eshell-ls) | 173 | :group 'eshell-ls) |
| 160 | 174 | ||
| 161 | (defface eshell-ls-archive-face | 175 | (defface eshell-ls-archive |
| 162 | '((((class color) (background light)) (:foreground "Orchid" :weight bold)) | 176 | '((((class color) (background light)) (:foreground "Orchid" :weight bold)) |
| 163 | (((class color) (background dark)) (:foreground "Orchid" :weight bold))) | 177 | (((class color) (background dark)) (:foreground "Orchid" :weight bold))) |
| 164 | "*The face used for highlighting archived and compressed file names." | 178 | "*The face used for highlighting archived and compressed file names." |
| 165 | :group 'eshell-ls) | 179 | :group 'eshell-ls) |
| 180 | ;; backward-compatibility alias | ||
| 181 | (put 'eshell-ls-archive-face 'face-alias 'eshell-ls-archive) | ||
| 166 | 182 | ||
| 167 | (defcustom eshell-ls-backup-regexp | 183 | (defcustom eshell-ls-backup-regexp |
| 168 | "\\(\\`\\.?#\\|\\(\\.bak\\|~\\)\\'\\)" | 184 | "\\(\\`\\.?#\\|\\(\\.bak\\|~\\)\\'\\)" |
| @@ -170,11 +186,13 @@ files." | |||
| 170 | :type 'regexp | 186 | :type 'regexp |
| 171 | :group 'eshell-ls) | 187 | :group 'eshell-ls) |
| 172 | 188 | ||
| 173 | (defface eshell-ls-backup-face | 189 | (defface eshell-ls-backup |
| 174 | '((((class color) (background light)) (:foreground "OrangeRed")) | 190 | '((((class color) (background light)) (:foreground "OrangeRed")) |
| 175 | (((class color) (background dark)) (:foreground "LightSalmon"))) | 191 | (((class color) (background dark)) (:foreground "LightSalmon"))) |
| 176 | "*The face used for highlighting backup file names." | 192 | "*The face used for highlighting backup file names." |
| 177 | :group 'eshell-ls) | 193 | :group 'eshell-ls) |
| 194 | ;; backward-compatibility alias | ||
| 195 | (put 'eshell-ls-backup-face 'face-alias 'eshell-ls-backup) | ||
| 178 | 196 | ||
| 179 | (defcustom eshell-ls-product-regexp | 197 | (defcustom eshell-ls-product-regexp |
| 180 | "\\.\\(elc\\|o\\(bj\\)?\\|a\\|lib\\|res\\)\\'" | 198 | "\\.\\(elc\\|o\\(bj\\)?\\|a\\|lib\\|res\\)\\'" |
| @@ -184,11 +202,13 @@ ought to be recreatable if they are deleted." | |||
| 184 | :type 'regexp | 202 | :type 'regexp |
| 185 | :group 'eshell-ls) | 203 | :group 'eshell-ls) |
| 186 | 204 | ||
| 187 | (defface eshell-ls-product-face | 205 | (defface eshell-ls-product |
| 188 | '((((class color) (background light)) (:foreground "OrangeRed")) | 206 | '((((class color) (background light)) (:foreground "OrangeRed")) |
| 189 | (((class color) (background dark)) (:foreground "LightSalmon"))) | 207 | (((class color) (background dark)) (:foreground "LightSalmon"))) |
| 190 | "*The face used for highlighting files that are build products." | 208 | "*The face used for highlighting files that are build products." |
| 191 | :group 'eshell-ls) | 209 | :group 'eshell-ls) |
| 210 | ;; backward-compatibility alias | ||
| 211 | (put 'eshell-ls-product-face 'face-alias 'eshell-ls-product) | ||
| 192 | 212 | ||
| 193 | (defcustom eshell-ls-clutter-regexp | 213 | (defcustom eshell-ls-clutter-regexp |
| 194 | "\\(^texput\\.log\\|^core\\)\\'" | 214 | "\\(^texput\\.log\\|^core\\)\\'" |
| @@ -198,11 +218,13 @@ really need to stick around for very long." | |||
| 198 | :type 'regexp | 218 | :type 'regexp |
| 199 | :group 'eshell-ls) | 219 | :group 'eshell-ls) |
| 200 | 220 | ||
| 201 | (defface eshell-ls-clutter-face | 221 | (defface eshell-ls-clutter |
| 202 | '((((class color) (background light)) (:foreground "OrangeRed" :weight bold)) | 222 | '((((class color) (background light)) (:foreground "OrangeRed" :weight bold)) |
| 203 | (((class color) (background dark)) (:foreground "OrangeRed" :weight bold))) | 223 | (((class color) (background dark)) (:foreground "OrangeRed" :weight bold))) |
| 204 | "*The face used for highlighting junk file names." | 224 | "*The face used for highlighting junk file names." |
| 205 | :group 'eshell-ls) | 225 | :group 'eshell-ls) |
| 226 | ;; backward-compatibility alias | ||
| 227 | (put 'eshell-ls-clutter-face 'face-alias 'eshell-ls-clutter) | ||
| 206 | 228 | ||
| 207 | (defsubst eshell-ls-filetype-p (attrs type) | 229 | (defsubst eshell-ls-filetype-p (attrs type) |
| 208 | "Test whether ATTRS specifies a directory." | 230 | "Test whether ATTRS specifies a directory." |
| @@ -847,41 +869,41 @@ Use TRUENAME for predicate tests, if passed." | |||
| 847 | (let ((face | 869 | (let ((face |
| 848 | (cond | 870 | (cond |
| 849 | ((not (cdr file)) | 871 | ((not (cdr file)) |
| 850 | 'eshell-ls-missing-face) | 872 | 'eshell-ls-missing) |
| 851 | 873 | ||
| 852 | ((stringp (cadr file)) | 874 | ((stringp (cadr file)) |
| 853 | 'eshell-ls-symlink-face) | 875 | 'eshell-ls-symlink) |
| 854 | 876 | ||
| 855 | ((eq (cadr file) t) | 877 | ((eq (cadr file) t) |
| 856 | 'eshell-ls-directory-face) | 878 | 'eshell-ls-directory) |
| 857 | 879 | ||
| 858 | ((not (eshell-ls-filetype-p (cdr file) ?-)) | 880 | ((not (eshell-ls-filetype-p (cdr file) ?-)) |
| 859 | 'eshell-ls-special-face) | 881 | 'eshell-ls-special) |
| 860 | 882 | ||
| 861 | ((and (/= (user-uid) 0) ; root can execute anything | 883 | ((and (/= (user-uid) 0) ; root can execute anything |
| 862 | (eshell-ls-applicable (cdr file) 3 | 884 | (eshell-ls-applicable (cdr file) 3 |
| 863 | 'file-executable-p (car file))) | 885 | 'file-executable-p (car file))) |
| 864 | 'eshell-ls-executable-face) | 886 | 'eshell-ls-executable) |
| 865 | 887 | ||
| 866 | ((not (eshell-ls-applicable (cdr file) 1 | 888 | ((not (eshell-ls-applicable (cdr file) 1 |
| 867 | 'file-readable-p (car file))) | 889 | 'file-readable-p (car file))) |
| 868 | 'eshell-ls-unreadable-face) | 890 | 'eshell-ls-unreadable) |
| 869 | 891 | ||
| 870 | ((string-match eshell-ls-archive-regexp (car file)) | 892 | ((string-match eshell-ls-archive-regexp (car file)) |
| 871 | 'eshell-ls-archive-face) | 893 | 'eshell-ls-archive) |
| 872 | 894 | ||
| 873 | ((string-match eshell-ls-backup-regexp (car file)) | 895 | ((string-match eshell-ls-backup-regexp (car file)) |
| 874 | 'eshell-ls-backup-face) | 896 | 'eshell-ls-backup) |
| 875 | 897 | ||
| 876 | ((string-match eshell-ls-product-regexp (car file)) | 898 | ((string-match eshell-ls-product-regexp (car file)) |
| 877 | 'eshell-ls-product-face) | 899 | 'eshell-ls-product) |
| 878 | 900 | ||
| 879 | ((string-match eshell-ls-clutter-regexp (car file)) | 901 | ((string-match eshell-ls-clutter-regexp (car file)) |
| 880 | 'eshell-ls-clutter-face) | 902 | 'eshell-ls-clutter) |
| 881 | 903 | ||
| 882 | ((not (eshell-ls-applicable (cdr file) 2 | 904 | ((not (eshell-ls-applicable (cdr file) 2 |
| 883 | 'file-writable-p (car file))) | 905 | 'file-writable-p (car file))) |
| 884 | 'eshell-ls-readonly-face) | 906 | 'eshell-ls-readonly) |
| 885 | (eshell-ls-highlight-alist | 907 | (eshell-ls-highlight-alist |
| 886 | (let ((tests eshell-ls-highlight-alist) | 908 | (let ((tests eshell-ls-highlight-alist) |
| 887 | value) | 909 | value) |
diff --git a/lisp/eshell/em-prompt.el b/lisp/eshell/em-prompt.el index e1446d9a8bd..009b09720c6 100644 --- a/lisp/eshell/em-prompt.el +++ b/lisp/eshell/em-prompt.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; em-prompt.el --- command prompts | 1 | ;;; em-prompt.el --- command prompts |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1999, 2000 Free Software Foundation | 3 | ;; Copyright (C) 1999, 2000, 2005 Free Software Foundation |
| 4 | 4 | ||
| 5 | ;; Author: John Wiegley <johnw@gnu.org> | 5 | ;; Author: John Wiegley <johnw@gnu.org> |
| 6 | 6 | ||
| @@ -68,7 +68,7 @@ re-entered for it to take effect." | |||
| 68 | :type 'boolean | 68 | :type 'boolean |
| 69 | :group 'eshell-prompt) | 69 | :group 'eshell-prompt) |
| 70 | 70 | ||
| 71 | (defface eshell-prompt-face | 71 | (defface eshell-prompt |
| 72 | '((((class color) (background light)) (:foreground "Red" :bold t)) | 72 | '((((class color) (background light)) (:foreground "Red" :bold t)) |
| 73 | (((class color) (background dark)) (:foreground "Pink" :bold t)) | 73 | (((class color) (background dark)) (:foreground "Pink" :bold t)) |
| 74 | (t (:bold t))) | 74 | (t (:bold t))) |
| @@ -76,6 +76,8 @@ re-entered for it to take effect." | |||
| 76 | For highlighting other kinds of strings -- similar to shell mode's | 76 | For highlighting other kinds of strings -- similar to shell mode's |
| 77 | behavior -- simply use an output filer which changes text properties." | 77 | behavior -- simply use an output filer which changes text properties." |
| 78 | :group 'eshell-prompt) | 78 | :group 'eshell-prompt) |
| 79 | ;; backward-compatibility alias | ||
| 80 | (put 'eshell-prompt-face 'face-alias 'eshell-prompt) | ||
| 79 | 81 | ||
| 80 | (defcustom eshell-before-prompt-hook nil | 82 | (defcustom eshell-before-prompt-hook nil |
| 81 | "*A list of functions to call before outputting the prompt." | 83 | "*A list of functions to call before outputting the prompt." |
| @@ -119,7 +121,7 @@ arriving, or after." | |||
| 119 | (and eshell-highlight-prompt | 121 | (and eshell-highlight-prompt |
| 120 | (add-text-properties 0 (length prompt) | 122 | (add-text-properties 0 (length prompt) |
| 121 | '(read-only t | 123 | '(read-only t |
| 122 | face eshell-prompt-face | 124 | face eshell-prompt |
| 123 | rear-nonsticky (face read-only)) | 125 | rear-nonsticky (face read-only)) |
| 124 | prompt)) | 126 | prompt)) |
| 125 | (eshell-interactive-print prompt))) | 127 | (eshell-interactive-print prompt))) |
diff --git a/lisp/eshell/esh-mode.el b/lisp/eshell/esh-mode.el index 51b9f71b75d..c9bdebebdb7 100644 --- a/lisp/eshell/esh-mode.el +++ b/lisp/eshell/esh-mode.el | |||
| @@ -818,7 +818,7 @@ This is done after all necessary filtering has been done." | |||
| 818 | "Go to the end of buffer in all windows showing it. | 818 | "Go to the end of buffer in all windows showing it. |
| 819 | Movement occurs if point in the selected window is not after the | 819 | Movement occurs if point in the selected window is not after the |
| 820 | process mark, and `this-command' is an insertion command. Insertion | 820 | process mark, and `this-command' is an insertion command. Insertion |
| 821 | commands recognised are `self-insert-command', `yank', and | 821 | commands recognized are `self-insert-command', `yank', and |
| 822 | `hilit-yank'. Depends on the value of | 822 | `hilit-yank'. Depends on the value of |
| 823 | `eshell-scroll-to-bottom-on-input'. | 823 | `eshell-scroll-to-bottom-on-input'. |
| 824 | 824 | ||
diff --git a/lisp/eshell/esh-test.el b/lisp/eshell/esh-test.el index c1b121bbf73..46c253c5833 100644 --- a/lisp/eshell/esh-test.el +++ b/lisp/eshell/esh-test.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; esh-test.el --- Eshell test suite | 1 | ;;; esh-test.el --- Eshell test suite |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1999, 2000 Free Software Foundation | 3 | ;; Copyright (C) 1999, 2000, 2005 Free Software Foundation |
| 4 | 4 | ||
| 5 | ;; Author: John Wiegley <johnw@gnu.org> | 5 | ;; Author: John Wiegley <johnw@gnu.org> |
| 6 | 6 | ||
| @@ -42,18 +42,22 @@ | |||
| 42 | 42 | ||
| 43 | ;;; User Variables: | 43 | ;;; User Variables: |
| 44 | 44 | ||
| 45 | (defface eshell-test-ok-face | 45 | (defface eshell-test-ok |
| 46 | '((((class color) (background light)) (:foreground "Green" :bold t)) | 46 | '((((class color) (background light)) (:foreground "Green" :bold t)) |
| 47 | (((class color) (background dark)) (:foreground "Green" :bold t))) | 47 | (((class color) (background dark)) (:foreground "Green" :bold t))) |
| 48 | "*The face used to highlight OK result strings." | 48 | "*The face used to highlight OK result strings." |
| 49 | :group 'eshell-test) | 49 | :group 'eshell-test) |
| 50 | ;; backward-compatibility alias | ||
| 51 | (put 'eshell-test-ok-face 'face-alias 'eshell-test-ok) | ||
| 50 | 52 | ||
| 51 | (defface eshell-test-failed-face | 53 | (defface eshell-test-failed |
| 52 | '((((class color) (background light)) (:foreground "OrangeRed" :bold t)) | 54 | '((((class color) (background light)) (:foreground "OrangeRed" :bold t)) |
| 53 | (((class color) (background dark)) (:foreground "OrangeRed" :bold t)) | 55 | (((class color) (background dark)) (:foreground "OrangeRed" :bold t)) |
| 54 | (t (:bold t))) | 56 | (t (:bold t))) |
| 55 | "*The face used to highlight FAILED result strings." | 57 | "*The face used to highlight FAILED result strings." |
| 56 | :group 'eshell-test) | 58 | :group 'eshell-test) |
| 59 | ;; backward-compatibility alias | ||
| 60 | (put 'eshell-test-failed-face 'face-alias 'eshell-test-failed) | ||
| 57 | 61 | ||
| 58 | (defcustom eshell-show-usage-metrics nil | 62 | (defcustom eshell-show-usage-metrics nil |
| 59 | "*If non-nil, display different usage metrics for each Eshell command." | 63 | "*If non-nil, display different usage metrics for each Eshell command." |
| @@ -108,12 +112,10 @@ | |||
| 108 | (if truth | 112 | (if truth |
| 109 | (progn | 113 | (progn |
| 110 | (setq str " OK ") | 114 | (setq str " OK ") |
| 111 | (put-text-property 0 6 'face | 115 | (put-text-property 0 6 'face 'eshell-test-ok str)) |
| 112 | 'eshell-test-ok-face str)) | ||
| 113 | (setq str "FAILED") | 116 | (setq str "FAILED") |
| 114 | (setq eshell-test-failures (1+ eshell-test-failures)) | 117 | (setq eshell-test-failures (1+ eshell-test-failures)) |
| 115 | (put-text-property 0 6 'face | 118 | (put-text-property 0 6 'face 'eshell-test-failed str)) |
| 116 | 'eshell-test-failed-face str)) | ||
| 117 | str) "]") | 119 | str) "]") |
| 118 | (add-text-properties (line-beginning-position) (point) | 120 | (add-text-properties (line-beginning-position) (point) |
| 119 | (list 'test-func funcsym)) | 121 | (list 'test-func funcsym)) |
diff --git a/lisp/faces.el b/lisp/faces.el index 1791a5a2dca..3f7c4bfbe35 100644 --- a/lisp/faces.el +++ b/lisp/faces.el | |||
| @@ -2066,7 +2066,11 @@ Note: Other faces cannot inherit from the cursor face." | |||
| 2066 | :group 'basic-faces) | 2066 | :group 'basic-faces) |
| 2067 | 2067 | ||
| 2068 | 2068 | ||
| 2069 | (defface underline '((t :underline t)) | 2069 | (defface underline '((((supports :underline t)) |
| 2070 | :underline t) | ||
| 2071 | (((supports :weight bold)) | ||
| 2072 | :weight bold) | ||
| 2073 | (t :underline t)) | ||
| 2070 | "Basic underlined face." | 2074 | "Basic underlined face." |
| 2071 | :group 'basic-faces) | 2075 | :group 'basic-faces) |
| 2072 | 2076 | ||
diff --git a/lisp/find-file.el b/lisp/find-file.el index d85d2ab0f51..26c5cccf8e5 100644 --- a/lisp/find-file.el +++ b/lisp/find-file.el | |||
| @@ -191,7 +191,7 @@ To override this, give an argument to `ff-find-other-file'." | |||
| 191 | (setq fname (buffer-substring (match-beginning 2) (match-end 2))))) | 191 | (setq fname (buffer-substring (match-beginning 2) (match-end 2))))) |
| 192 | ) | 192 | ) |
| 193 | "*A list of regular expressions for `ff-find-file'. | 193 | "*A list of regular expressions for `ff-find-file'. |
| 194 | Specifies how to recognise special constructs such as include files | 194 | Specifies how to recognize special constructs such as include files |
| 195 | etc. and an associated method for extracting the filename from that | 195 | etc. and an associated method for extracting the filename from that |
| 196 | construct.") | 196 | construct.") |
| 197 | 197 | ||
| @@ -215,7 +215,7 @@ Set by default to `cc-search-directories', expanded at run-time. | |||
| 215 | 215 | ||
| 216 | This list is searched through with each extension specified in | 216 | This list is searched through with each extension specified in |
| 217 | `ff-other-file-alist' that matches this file's extension. So the | 217 | `ff-other-file-alist' that matches this file's extension. So the |
| 218 | longer the list, the longer it'll take to realise that a file | 218 | longer the list, the longer it'll take to realize that a file |
| 219 | may not exist. | 219 | may not exist. |
| 220 | 220 | ||
| 221 | A typical format is | 221 | A typical format is |
| @@ -340,7 +340,7 @@ Variables of interest include: | |||
| 340 | If non-nil, traces which directories are being searched. | 340 | If non-nil, traces which directories are being searched. |
| 341 | 341 | ||
| 342 | - `ff-special-constructs' | 342 | - `ff-special-constructs' |
| 343 | A list of regular expressions specifying how to recognise special | 343 | A list of regular expressions specifying how to recognize special |
| 344 | constructs such as include files etc, and an associated method for | 344 | constructs such as include files etc, and an associated method for |
| 345 | extracting the filename from that construct. | 345 | extracting the filename from that construct. |
| 346 | 346 | ||
diff --git a/lisp/font-lock.el b/lisp/font-lock.el index 06afd1017e7..cf15a7d8f87 100644 --- a/lisp/font-lock.el +++ b/lisp/font-lock.el | |||
| @@ -430,7 +430,7 @@ where MATCHER is a regexp to search for or the function name to call to make | |||
| 430 | the search, as for MATCH-HIGHLIGHT above, but with one exception; see below. | 430 | the search, as for MATCH-HIGHLIGHT above, but with one exception; see below. |
| 431 | PRE-MATCH-FORM and POST-MATCH-FORM are evaluated before the first, and after | 431 | PRE-MATCH-FORM and POST-MATCH-FORM are evaluated before the first, and after |
| 432 | the last, instance MATCH-ANCHORED's MATCHER is used. Therefore they can be | 432 | the last, instance MATCH-ANCHORED's MATCHER is used. Therefore they can be |
| 433 | used to initialise before, and cleanup after, MATCHER is used. Typically, | 433 | used to initialize before, and cleanup after, MATCHER is used. Typically, |
| 434 | PRE-MATCH-FORM is used to move to some position relative to the original | 434 | PRE-MATCH-FORM is used to move to some position relative to the original |
| 435 | MATCHER, before starting with MATCH-ANCHORED's MATCHER. POST-MATCH-FORM might | 435 | MATCHER, before starting with MATCH-ANCHORED's MATCHER. POST-MATCH-FORM might |
| 436 | be used to move back, before resuming with MATCH-ANCHORED's parent's MATCHER. | 436 | be used to move back, before resuming with MATCH-ANCHORED's parent's MATCHER. |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index e210b4def7c..eca1fc26ce9 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,127 @@ | |||
| 1 | 2005-06-16 Juanma Barranquero <lekktu@gmail.com> | ||
| 2 | |||
| 3 | * gnus-art.el (gnus-article-encrypt-body): | ||
| 4 | * gnus-cus.el (gnus-score-customize): | ||
| 5 | * mm-extern.el (mm-extern-local-file, mm-inline-external-body): | ||
| 6 | * pop3.el (pop3-user): Don't use `format' on `error' arguments. | ||
| 7 | |||
| 8 | 2005-06-16 Miles Bader <miles@gnu.org> | ||
| 9 | |||
| 10 | * spam.el (spam): Remove "-face" suffix from face name. | ||
| 11 | (spam-face): New backward-compatibility alias for renamed face. | ||
| 12 | (spam-face, spam-initialize): Use renamed spam face. | ||
| 13 | |||
| 14 | * message.el (message-header-to, message-header-cc) | ||
| 15 | (message-header-subject, message-header-newsgroups) | ||
| 16 | (message-header-other, message-header-name) | ||
| 17 | (message-header-xheader, message-separator, message-cited-text) | ||
| 18 | (message-mml): Remove "-face" suffix from face names. | ||
| 19 | (message-header-to-face, message-header-cc-face) | ||
| 20 | (message-header-subject-face, message-header-newsgroups-face) | ||
| 21 | (message-header-other-face, message-header-name-face) | ||
| 22 | (message-header-xheader-face, message-separator-face) | ||
| 23 | (message-cited-text-face, message-mml-face): | ||
| 24 | New backward-compatibility aliases for renamed faces. | ||
| 25 | (message-font-lock-keywords): Use renamed message faces. | ||
| 26 | |||
| 27 | * sieve-mode.el (sieve-control-commands, sieve-action-commands) | ||
| 28 | (sieve-test-commands, sieve-tagged-arguments): | ||
| 29 | Remove "-face" suffix from face names. | ||
| 30 | (sieve-control-commands-face, sieve-action-commands-face) | ||
| 31 | (sieve-test-commands-face, sieve-tagged-arguments-face): | ||
| 32 | New backward-compatibility aliases for renamed faces. | ||
| 33 | (sieve-control-commands-face, sieve-action-commands-face) | ||
| 34 | (sieve-test-commands-face, sieve-tagged-arguments-face): | ||
| 35 | Use renamed sieve faces. | ||
| 36 | |||
| 37 | * gnus.el (gnus-group-news-1, gnus-group-news-1-empty) | ||
| 38 | (gnus-group-news-2, gnus-group-news-2-empty, gnus-group-news-3) | ||
| 39 | (gnus-group-news-3-empty, gnus-group-news-4) | ||
| 40 | (gnus-group-news-4-empty, gnus-group-news-5) | ||
| 41 | (gnus-group-news-5-empty, gnus-group-news-6) | ||
| 42 | (gnus-group-news-6-empty, gnus-group-news-low) | ||
| 43 | (gnus-group-news-low-empty, gnus-group-mail-1) | ||
| 44 | (gnus-group-mail-1-empty, gnus-group-mail-2) | ||
| 45 | (gnus-group-mail-2-empty, gnus-group-mail-3) | ||
| 46 | (gnus-group-mail-3-empty, gnus-group-mail-low) | ||
| 47 | (gnus-group-mail-low-empty, gnus-summary-selected) | ||
| 48 | (gnus-summary-cancelled, gnus-summary-high-ticked) | ||
| 49 | (gnus-summary-low-ticked, gnus-summary-normal-ticked) | ||
| 50 | (gnus-summary-high-ancient, gnus-summary-low-ancient) | ||
| 51 | (gnus-summary-normal-ancient, gnus-summary-high-undownloaded) | ||
| 52 | (gnus-summary-low-undownloaded) | ||
| 53 | (gnus-summary-normal-undownloaded, gnus-summary-high-unread) | ||
| 54 | (gnus-summary-low-unread, gnus-summary-normal-unread) | ||
| 55 | (gnus-summary-high-read, gnus-summary-low-read) | ||
| 56 | (gnus-summary-normal-read, gnus-splash): | ||
| 57 | Remove "-face" suffix from face names. | ||
| 58 | (gnus-group-news-1-face, gnus-group-news-1-empty-face) | ||
| 59 | (gnus-group-news-2-face, gnus-group-news-2-empty-face) | ||
| 60 | (gnus-group-news-3-face, gnus-group-news-3-empty-face) | ||
| 61 | (gnus-group-news-4-face, gnus-group-news-4-empty-face) | ||
| 62 | (gnus-group-news-5-face, gnus-group-news-5-empty-face) | ||
| 63 | (gnus-group-news-6-face, gnus-group-news-6-empty-face) | ||
| 64 | (gnus-group-news-low-face, gnus-group-news-low-empty-face) | ||
| 65 | (gnus-group-mail-1-face, gnus-group-mail-1-empty-face) | ||
| 66 | (gnus-group-mail-2-face, gnus-group-mail-2-empty-face) | ||
| 67 | (gnus-group-mail-3-face, gnus-group-mail-3-empty-face) | ||
| 68 | (gnus-group-mail-low-face, gnus-group-mail-low-empty-face) | ||
| 69 | (gnus-summary-selected-face, gnus-summary-cancelled-face) | ||
| 70 | (gnus-summary-high-ticked-face, gnus-summary-low-ticked-face) | ||
| 71 | (gnus-summary-normal-ticked-face) | ||
| 72 | (gnus-summary-high-ancient-face, gnus-summary-low-ancient-face) | ||
| 73 | (gnus-summary-normal-ancient-face) | ||
| 74 | (gnus-summary-high-undownloaded-face) | ||
| 75 | (gnus-summary-low-undownloaded-face) | ||
| 76 | (gnus-summary-normal-undownloaded-face) | ||
| 77 | (gnus-summary-high-unread-face, gnus-summary-low-unread-face) | ||
| 78 | (gnus-summary-normal-unread-face, gnus-summary-high-read-face) | ||
| 79 | (gnus-summary-low-read-face, gnus-summary-normal-read-face) | ||
| 80 | (gnus-splash-face): | ||
| 81 | New backward-compatibility aliases for renamed faces. | ||
| 82 | (gnus-group-startup-message): Use renamed gnus faces. | ||
| 83 | |||
| 84 | * gnus-srvr.el (gnus-server-agent, gnus-server-opened) | ||
| 85 | (gnus-server-closed, gnus-server-denied, gnus-server-offline) | ||
| 86 | (gnus-server-agent): Remove "-face" suffix from face names. | ||
| 87 | (gnus-server-agent-face, gnus-server-opened-face) | ||
| 88 | (gnus-server-closed-face, gnus-server-denied-face) | ||
| 89 | (gnus-server-offline-face): | ||
| 90 | New backward-compatibility aliases for renamed faces. | ||
| 91 | (gnus-server-agent-face, gnus-server-opened-face) | ||
| 92 | (gnus-server-closed-face, gnus-server-denied-face) | ||
| 93 | (gnus-server-offline-face): Use renamed gnus faces. | ||
| 94 | |||
| 95 | * gnus-picon.el (gnus-picon-xbm, gnus-picon): | ||
| 96 | Remove "-face" suffix from face names. | ||
| 97 | (gnus-picon-xbm-face, gnus-picon-face): | ||
| 98 | New backward-compatibility aliases for renamed faces. | ||
| 99 | |||
| 100 | * gnus-cite.el (gnus-cite-attribution, gnus-cite-1, gnus-cite-2) | ||
| 101 | (gnus-cite-3, gnus-cite-4, gnus-cite-5, gnus-cite-6) | ||
| 102 | (gnus-cite-7, gnus-cite-8, gnus-cite-9, gnus-cite-10) | ||
| 103 | (gnus-cite-11): Remove "-face" suffix from face names. | ||
| 104 | (gnus-cite-attribution-face, gnus-cite-face-1, gnus-cite-face-2) | ||
| 105 | (gnus-cite-face-3, gnus-cite-face-4, gnus-cite-face-5) | ||
| 106 | (gnus-cite-face-6, gnus-cite-face-7, gnus-cite-face-8) | ||
| 107 | (gnus-cite-face-9, gnus-cite-face-10, gnus-cite-face-11): | ||
| 108 | New backward-compatibility aliases for renamed faces. | ||
| 109 | (gnus-cite-attribution-face, gnus-cite-face-list) | ||
| 110 | (gnus-article-boring-faces): Use renamed gnus faces. | ||
| 111 | |||
| 112 | * gnus-art.el (gnus-signature, gnus-header-from) | ||
| 113 | (gnus-header-subject, gnus-header-newsgroups, gnus-header-name) | ||
| 114 | (gnus-header-content): Remove "-face" suffix from face names. | ||
| 115 | (gnus-signature-face, gnus-header-from-face) | ||
| 116 | (gnus-header-subject-face, gnus-header-newsgroups-face) | ||
| 117 | (gnus-header-name-face, gnus-header-content-face): | ||
| 118 | New backward-compatibility aliases for renamed faces. | ||
| 119 | (gnus-signature-face, gnus-header-face-alist): Use renamed gnus faces. | ||
| 120 | |||
| 121 | * gnus-sum.el (gnus-summary-selected-face) | ||
| 122 | (gnus-summary-highlight): Use renamed gnus faces. | ||
| 123 | * gnus-group.el (gnus-group-highlight): Likewise. | ||
| 124 | |||
| 1 | 2005-06-14 Juanma Barranquero <lekktu@gmail.com> | 125 | 2005-06-14 Juanma Barranquero <lekktu@gmail.com> |
| 2 | 126 | ||
| 3 | * gnus-sieve.el (gnus-sieve-article-add-rule): | 127 | * gnus-sieve.el (gnus-sieve-article-add-rule): |
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index 498596dd63c..04c1309963b 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el | |||
| @@ -645,21 +645,23 @@ above them." | |||
| 645 | :type 'face | 645 | :type 'face |
| 646 | :group 'gnus-article-buttons) | 646 | :group 'gnus-article-buttons) |
| 647 | 647 | ||
| 648 | (defcustom gnus-signature-face 'gnus-signature-face | 648 | (defcustom gnus-signature-face 'gnus-signature |
| 649 | "Face used for highlighting a signature in the article buffer. | 649 | "Face used for highlighting a signature in the article buffer. |
| 650 | Obsolete; use the face `gnus-signature-face' for customizations instead." | 650 | Obsolete; use the face `gnus-signature' for customizations instead." |
| 651 | :type 'face | 651 | :type 'face |
| 652 | :group 'gnus-article-highlight | 652 | :group 'gnus-article-highlight |
| 653 | :group 'gnus-article-signature) | 653 | :group 'gnus-article-signature) |
| 654 | 654 | ||
| 655 | (defface gnus-signature-face | 655 | (defface gnus-signature |
| 656 | '((t | 656 | '((t |
| 657 | (:italic t))) | 657 | (:italic t))) |
| 658 | "Face used for highlighting a signature in the article buffer." | 658 | "Face used for highlighting a signature in the article buffer." |
| 659 | :group 'gnus-article-highlight | 659 | :group 'gnus-article-highlight |
| 660 | :group 'gnus-article-signature) | 660 | :group 'gnus-article-signature) |
| 661 | ;; backward-compatibility alias | ||
| 662 | (put 'gnus-signature-face 'face-alias 'gnus-signature) | ||
| 661 | 663 | ||
| 662 | (defface gnus-header-from-face | 664 | (defface gnus-header-from |
| 663 | '((((class color) | 665 | '((((class color) |
| 664 | (background dark)) | 666 | (background dark)) |
| 665 | (:foreground "spring green")) | 667 | (:foreground "spring green")) |
| @@ -671,8 +673,10 @@ Obsolete; use the face `gnus-signature-face' for customizations instead." | |||
| 671 | "Face used for displaying from headers." | 673 | "Face used for displaying from headers." |
| 672 | :group 'gnus-article-headers | 674 | :group 'gnus-article-headers |
| 673 | :group 'gnus-article-highlight) | 675 | :group 'gnus-article-highlight) |
| 676 | ;; backward-compatibility alias | ||
| 677 | (put 'gnus-header-from-face 'face-alias 'gnus-header-from) | ||
| 674 | 678 | ||
| 675 | (defface gnus-header-subject-face | 679 | (defface gnus-header-subject |
| 676 | '((((class color) | 680 | '((((class color) |
| 677 | (background dark)) | 681 | (background dark)) |
| 678 | (:foreground "SeaGreen3")) | 682 | (:foreground "SeaGreen3")) |
| @@ -684,8 +688,10 @@ Obsolete; use the face `gnus-signature-face' for customizations instead." | |||
| 684 | "Face used for displaying subject headers." | 688 | "Face used for displaying subject headers." |
| 685 | :group 'gnus-article-headers | 689 | :group 'gnus-article-headers |
| 686 | :group 'gnus-article-highlight) | 690 | :group 'gnus-article-highlight) |
| 691 | ;; backward-compatibility alias | ||
| 692 | (put 'gnus-header-subject-face 'face-alias 'gnus-header-subject) | ||
| 687 | 693 | ||
| 688 | (defface gnus-header-newsgroups-face | 694 | (defface gnus-header-newsgroups |
| 689 | '((((class color) | 695 | '((((class color) |
| 690 | (background dark)) | 696 | (background dark)) |
| 691 | (:foreground "yellow" :italic t)) | 697 | (:foreground "yellow" :italic t)) |
| @@ -699,8 +705,10 @@ In the default setup this face is only used for crossposted | |||
| 699 | articles." | 705 | articles." |
| 700 | :group 'gnus-article-headers | 706 | :group 'gnus-article-headers |
| 701 | :group 'gnus-article-highlight) | 707 | :group 'gnus-article-highlight) |
| 708 | ;; backward-compatibility alias | ||
| 709 | (put 'gnus-header-newsgroups-face 'face-alias 'gnus-header-newsgroups) | ||
| 702 | 710 | ||
| 703 | (defface gnus-header-name-face | 711 | (defface gnus-header-name |
| 704 | '((((class color) | 712 | '((((class color) |
| 705 | (background dark)) | 713 | (background dark)) |
| 706 | (:foreground "SeaGreen")) | 714 | (:foreground "SeaGreen")) |
| @@ -712,8 +720,10 @@ articles." | |||
| 712 | "Face used for displaying header names." | 720 | "Face used for displaying header names." |
| 713 | :group 'gnus-article-headers | 721 | :group 'gnus-article-headers |
| 714 | :group 'gnus-article-highlight) | 722 | :group 'gnus-article-highlight) |
| 723 | ;; backward-compatibility alias | ||
| 724 | (put 'gnus-header-name-face 'face-alias 'gnus-header-name) | ||
| 715 | 725 | ||
| 716 | (defface gnus-header-content-face | 726 | (defface gnus-header-content |
| 717 | '((((class color) | 727 | '((((class color) |
| 718 | (background dark)) | 728 | (background dark)) |
| 719 | (:foreground "forest green" :italic t)) | 729 | (:foreground "forest green" :italic t)) |
| @@ -724,12 +734,14 @@ articles." | |||
| 724 | (:italic t))) "Face used for displaying header content." | 734 | (:italic t))) "Face used for displaying header content." |
| 725 | :group 'gnus-article-headers | 735 | :group 'gnus-article-headers |
| 726 | :group 'gnus-article-highlight) | 736 | :group 'gnus-article-highlight) |
| 737 | ;; backward-compatibility alias | ||
| 738 | (put 'gnus-header-content-face 'face-alias 'gnus-header-content) | ||
| 727 | 739 | ||
| 728 | (defcustom gnus-header-face-alist | 740 | (defcustom gnus-header-face-alist |
| 729 | '(("From" nil gnus-header-from-face) | 741 | '(("From" nil gnus-header-from) |
| 730 | ("Subject" nil gnus-header-subject-face) | 742 | ("Subject" nil gnus-header-subject) |
| 731 | ("Newsgroups:.*," nil gnus-header-newsgroups-face) | 743 | ("Newsgroups:.*," nil gnus-header-newsgroups) |
| 732 | ("" gnus-header-name-face gnus-header-content-face)) | 744 | ("" gnus-header-name gnus-header-content)) |
| 733 | "*Controls highlighting of article headers. | 745 | "*Controls highlighting of article headers. |
| 734 | 746 | ||
| 735 | An alist of the form (HEADER NAME CONTENT). | 747 | An alist of the form (HEADER NAME CONTENT). |
| @@ -6490,7 +6502,7 @@ do the highlighting. See the documentation for those functions." | |||
| 6490 | (defun gnus-article-highlight-signature () | 6502 | (defun gnus-article-highlight-signature () |
| 6491 | "Highlight the signature in an article. | 6503 | "Highlight the signature in an article. |
| 6492 | It does this by highlighting everything after | 6504 | It does this by highlighting everything after |
| 6493 | `gnus-signature-separator' using `gnus-signature-face'." | 6505 | `gnus-signature-separator' using the face `gnus-signature'." |
| 6494 | (interactive) | 6506 | (interactive) |
| 6495 | (save-excursion | 6507 | (save-excursion |
| 6496 | (set-buffer gnus-article-buffer) | 6508 | (set-buffer gnus-article-buffer) |
| @@ -7057,7 +7069,7 @@ For example: | |||
| 7057 | current-prefix-arg)) | 7069 | current-prefix-arg)) |
| 7058 | (let ((func (cdr (assoc protocol gnus-article-encrypt-protocol-alist)))) | 7070 | (let ((func (cdr (assoc protocol gnus-article-encrypt-protocol-alist)))) |
| 7059 | (unless func | 7071 | (unless func |
| 7060 | (error (format "Can't find the encrypt protocol %s" protocol))) | 7072 | (error "Can't find the encrypt protocol %s" protocol)) |
| 7061 | (if (member gnus-newsgroup-name '("nndraft:delayed" | 7073 | (if (member gnus-newsgroup-name '("nndraft:delayed" |
| 7062 | "nndraft:drafts" | 7074 | "nndraft:drafts" |
| 7063 | "nndraft:queue")) | 7075 | "nndraft:queue")) |
diff --git a/lisp/gnus/gnus-cite.el b/lisp/gnus/gnus-cite.el index 090a365f994..8611ed4bbe9 100644 --- a/lisp/gnus/gnus-cite.el +++ b/lisp/gnus/gnus-cite.el | |||
| @@ -137,143 +137,165 @@ the envelope From line." | |||
| 137 | :group 'gnus-cite | 137 | :group 'gnus-cite |
| 138 | :type 'boolean) | 138 | :type 'boolean) |
| 139 | 139 | ||
| 140 | (defface gnus-cite-attribution-face '((t | 140 | (defface gnus-cite-attribution '((t (:italic t))) |
| 141 | (:italic t))) | ||
| 142 | "Face used for attribution lines." | 141 | "Face used for attribution lines." |
| 143 | :group 'gnus-cite) | 142 | :group 'gnus-cite) |
| 143 | ;; backward-compatibility alias | ||
| 144 | (put 'gnus-cite-attribution-face 'face-alias 'gnus-cite-attribution) | ||
| 144 | 145 | ||
| 145 | (defcustom gnus-cite-attribution-face 'gnus-cite-attribution-face | 146 | (defcustom gnus-cite-attribution-face 'gnus-cite-attribution |
| 146 | "Face used for attribution lines. | 147 | "Face used for attribution lines. |
| 147 | It is merged with the face for the cited text belonging to the attribution." | 148 | It is merged with the face for the cited text belonging to the attribution." |
| 148 | :version "22.1" | 149 | :version "22.1" |
| 149 | :group 'gnus-cite | 150 | :group 'gnus-cite |
| 150 | :type 'face) | 151 | :type 'face) |
| 151 | 152 | ||
| 152 | (defface gnus-cite-face-1 '((((class color) | 153 | (defface gnus-cite-1 '((((class color) |
| 153 | (background dark)) | 154 | (background dark)) |
| 154 | (:foreground "light blue")) | 155 | (:foreground "light blue")) |
| 155 | (((class color) | 156 | (((class color) |
| 156 | (background light)) | 157 | (background light)) |
| 157 | (:foreground "MidnightBlue")) | 158 | (:foreground "MidnightBlue")) |
| 158 | (t | 159 | (t |
| 159 | (:italic t))) | 160 | (:italic t))) |
| 160 | "Citation face." | 161 | "Citation face." |
| 161 | :group 'gnus-cite) | 162 | :group 'gnus-cite) |
| 162 | 163 | ;; backward-compatibility alias | |
| 163 | (defface gnus-cite-face-2 '((((class color) | 164 | (put 'gnus-cite-face-1 'face-alias 'gnus-cite-1) |
| 164 | (background dark)) | 165 | |
| 165 | (:foreground "light cyan")) | 166 | (defface gnus-cite-2 '((((class color) |
| 166 | (((class color) | 167 | (background dark)) |
| 167 | (background light)) | 168 | (:foreground "light cyan")) |
| 168 | (:foreground "firebrick")) | 169 | (((class color) |
| 169 | (t | 170 | (background light)) |
| 170 | (:italic t))) | 171 | (:foreground "firebrick")) |
| 172 | (t | ||
| 173 | (:italic t))) | ||
| 171 | "Citation face." | 174 | "Citation face." |
| 172 | :group 'gnus-cite) | 175 | :group 'gnus-cite) |
| 173 | 176 | ;; backward-compatibility alias | |
| 174 | (defface gnus-cite-face-3 '((((class color) | 177 | (put 'gnus-cite-face-2 'face-alias 'gnus-cite-2) |
| 175 | (background dark)) | 178 | |
| 176 | (:foreground "light yellow")) | 179 | (defface gnus-cite-3 '((((class color) |
| 177 | (((class color) | 180 | (background dark)) |
| 178 | (background light)) | 181 | (:foreground "light yellow")) |
| 179 | (:foreground "dark green")) | 182 | (((class color) |
| 180 | (t | 183 | (background light)) |
| 181 | (:italic t))) | 184 | (:foreground "dark green")) |
| 185 | (t | ||
| 186 | (:italic t))) | ||
| 182 | "Citation face." | 187 | "Citation face." |
| 183 | :group 'gnus-cite) | 188 | :group 'gnus-cite) |
| 184 | 189 | ;; backward-compatibility alias | |
| 185 | (defface gnus-cite-face-4 '((((class color) | 190 | (put 'gnus-cite-face-3 'face-alias 'gnus-cite-3) |
| 186 | (background dark)) | 191 | |
| 187 | (:foreground "light pink")) | 192 | (defface gnus-cite-4 '((((class color) |
| 188 | (((class color) | 193 | (background dark)) |
| 189 | (background light)) | 194 | (:foreground "light pink")) |
| 190 | (:foreground "OrangeRed")) | 195 | (((class color) |
| 191 | (t | 196 | (background light)) |
| 192 | (:italic t))) | 197 | (:foreground "OrangeRed")) |
| 198 | (t | ||
| 199 | (:italic t))) | ||
| 193 | "Citation face." | 200 | "Citation face." |
| 194 | :group 'gnus-cite) | 201 | :group 'gnus-cite) |
| 195 | 202 | ;; backward-compatibility alias | |
| 196 | (defface gnus-cite-face-5 '((((class color) | 203 | (put 'gnus-cite-face-4 'face-alias 'gnus-cite-4) |
| 197 | (background dark)) | 204 | |
| 198 | (:foreground "pale green")) | 205 | (defface gnus-cite-5 '((((class color) |
| 199 | (((class color) | 206 | (background dark)) |
| 200 | (background light)) | 207 | (:foreground "pale green")) |
| 201 | (:foreground "dark khaki")) | 208 | (((class color) |
| 202 | (t | 209 | (background light)) |
| 203 | (:italic t))) | 210 | (:foreground "dark khaki")) |
| 211 | (t | ||
| 212 | (:italic t))) | ||
| 204 | "Citation face." | 213 | "Citation face." |
| 205 | :group 'gnus-cite) | 214 | :group 'gnus-cite) |
| 206 | 215 | ;; backward-compatibility alias | |
| 207 | (defface gnus-cite-face-6 '((((class color) | 216 | (put 'gnus-cite-face-5 'face-alias 'gnus-cite-5) |
| 208 | (background dark)) | 217 | |
| 209 | (:foreground "beige")) | 218 | (defface gnus-cite-6 '((((class color) |
| 210 | (((class color) | 219 | (background dark)) |
| 211 | (background light)) | 220 | (:foreground "beige")) |
| 212 | (:foreground "dark violet")) | 221 | (((class color) |
| 213 | (t | 222 | (background light)) |
| 214 | (:italic t))) | 223 | (:foreground "dark violet")) |
| 224 | (t | ||
| 225 | (:italic t))) | ||
| 215 | "Citation face." | 226 | "Citation face." |
| 216 | :group 'gnus-cite) | 227 | :group 'gnus-cite) |
| 217 | 228 | ;; backward-compatibility alias | |
| 218 | (defface gnus-cite-face-7 '((((class color) | 229 | (put 'gnus-cite-face-6 'face-alias 'gnus-cite-6) |
| 219 | (background dark)) | 230 | |
| 220 | (:foreground "orange")) | 231 | (defface gnus-cite-7 '((((class color) |
| 221 | (((class color) | 232 | (background dark)) |
| 222 | (background light)) | 233 | (:foreground "orange")) |
| 223 | (:foreground "SteelBlue4")) | 234 | (((class color) |
| 224 | (t | 235 | (background light)) |
| 225 | (:italic t))) | 236 | (:foreground "SteelBlue4")) |
| 237 | (t | ||
| 238 | (:italic t))) | ||
| 226 | "Citation face." | 239 | "Citation face." |
| 227 | :group 'gnus-cite) | 240 | :group 'gnus-cite) |
| 228 | 241 | ;; backward-compatibility alias | |
| 229 | (defface gnus-cite-face-8 '((((class color) | 242 | (put 'gnus-cite-face-7 'face-alias 'gnus-cite-7) |
| 230 | (background dark)) | 243 | |
| 231 | (:foreground "magenta")) | 244 | (defface gnus-cite-8 '((((class color) |
| 232 | (((class color) | 245 | (background dark)) |
| 233 | (background light)) | 246 | (:foreground "magenta")) |
| 234 | (:foreground "magenta")) | 247 | (((class color) |
| 235 | (t | 248 | (background light)) |
| 236 | (:italic t))) | 249 | (:foreground "magenta")) |
| 250 | (t | ||
| 251 | (:italic t))) | ||
| 237 | "Citation face." | 252 | "Citation face." |
| 238 | :group 'gnus-cite) | 253 | :group 'gnus-cite) |
| 239 | 254 | ;; backward-compatibility alias | |
| 240 | (defface gnus-cite-face-9 '((((class color) | 255 | (put 'gnus-cite-face-8 'face-alias 'gnus-cite-8) |
| 241 | (background dark)) | 256 | |
| 242 | (:foreground "violet")) | 257 | (defface gnus-cite-9 '((((class color) |
| 243 | (((class color) | 258 | (background dark)) |
| 244 | (background light)) | 259 | (:foreground "violet")) |
| 245 | (:foreground "violet")) | 260 | (((class color) |
| 246 | (t | 261 | (background light)) |
| 247 | (:italic t))) | 262 | (:foreground "violet")) |
| 263 | (t | ||
| 264 | (:italic t))) | ||
| 248 | "Citation face." | 265 | "Citation face." |
| 249 | :group 'gnus-cite) | 266 | :group 'gnus-cite) |
| 250 | 267 | ;; backward-compatibility alias | |
| 251 | (defface gnus-cite-face-10 '((((class color) | 268 | (put 'gnus-cite-face-9 'face-alias 'gnus-cite-9) |
| 252 | (background dark)) | 269 | |
| 253 | (:foreground "medium purple")) | 270 | (defface gnus-cite-10 '((((class color) |
| 254 | (((class color) | 271 | (background dark)) |
| 255 | (background light)) | 272 | (:foreground "medium purple")) |
| 256 | (:foreground "medium purple")) | 273 | (((class color) |
| 257 | (t | 274 | (background light)) |
| 258 | (:italic t))) | 275 | (:foreground "medium purple")) |
| 276 | (t | ||
| 277 | (:italic t))) | ||
| 259 | "Citation face." | 278 | "Citation face." |
| 260 | :group 'gnus-cite) | 279 | :group 'gnus-cite) |
| 261 | 280 | ;; backward-compatibility alias | |
| 262 | (defface gnus-cite-face-11 '((((class color) | 281 | (put 'gnus-cite-face-10 'face-alias 'gnus-cite-10) |
| 263 | (background dark)) | 282 | |
| 264 | (:foreground "turquoise")) | 283 | (defface gnus-cite-11 '((((class color) |
| 265 | (((class color) | 284 | (background dark)) |
| 266 | (background light)) | 285 | (:foreground "turquoise")) |
| 267 | (:foreground "turquoise")) | 286 | (((class color) |
| 268 | (t | 287 | (background light)) |
| 269 | (:italic t))) | 288 | (:foreground "turquoise")) |
| 289 | (t | ||
| 290 | (:italic t))) | ||
| 270 | "Citation face." | 291 | "Citation face." |
| 271 | :group 'gnus-cite) | 292 | :group 'gnus-cite) |
| 293 | ;; backward-compatibility alias | ||
| 294 | (put 'gnus-cite-face-11 'face-alias 'gnus-cite-11) | ||
| 272 | 295 | ||
| 273 | (defcustom gnus-cite-face-list | 296 | (defcustom gnus-cite-face-list |
| 274 | '(gnus-cite-face-1 gnus-cite-face-2 gnus-cite-face-3 gnus-cite-face-4 | 297 | '(gnus-cite-1 gnus-cite-2 gnus-cite-3 gnus-cite-4 gnus-cite-5 gnus-cite-6 |
| 275 | gnus-cite-face-5 gnus-cite-face-6 gnus-cite-face-7 gnus-cite-face-8 | 298 | gnus-cite-7 gnus-cite-8 gnus-cite-9 gnus-cite-10 gnus-cite-11) |
| 276 | gnus-cite-face-9 gnus-cite-face-10 gnus-cite-face-11) | ||
| 277 | "*List of faces used for highlighting citations. | 299 | "*List of faces used for highlighting citations. |
| 278 | 300 | ||
| 279 | When there are citations from multiple articles in the same message, | 301 | When there are citations from multiple articles in the same message, |
| @@ -299,8 +321,7 @@ This should make it easier to see who wrote what." | |||
| 299 | 321 | ||
| 300 | ;; This has to go here because its default value depends on | 322 | ;; This has to go here because its default value depends on |
| 301 | ;; gnus-cite-face-list. | 323 | ;; gnus-cite-face-list. |
| 302 | (defcustom gnus-article-boring-faces (cons 'gnus-signature-face | 324 | (defcustom gnus-article-boring-faces (cons 'gnus-signature gnus-cite-face-list) |
| 303 | gnus-cite-face-list) | ||
| 304 | "List of faces that are not worth reading. | 325 | "List of faces that are not worth reading. |
| 305 | If an article has more pages below the one you are looking at, but | 326 | If an article has more pages below the one you are looking at, but |
| 306 | nothing on those pages is a word of at least three letters that is not | 327 | nothing on those pages is a word of at least three letters that is not |
| @@ -352,7 +373,7 @@ in a boring face, then the pages will be skipped." | |||
| 352 | Each citation in the article will be highlighted with a different face. | 373 | Each citation in the article will be highlighted with a different face. |
| 353 | The faces are taken from `gnus-cite-face-list'. | 374 | The faces are taken from `gnus-cite-face-list'. |
| 354 | Attribution lines are highlighted with the same face as the | 375 | Attribution lines are highlighted with the same face as the |
| 355 | corresponding citation merged with `gnus-cite-attribution-face'. | 376 | corresponding citation merged with the face `gnus-cite-attribution'. |
| 356 | 377 | ||
| 357 | Text is considered cited if at least `gnus-cite-minimum-match-count' | 378 | Text is considered cited if at least `gnus-cite-minimum-match-count' |
| 358 | lines matches `message-cite-prefix-regexp' with the same prefix. | 379 | lines matches `message-cite-prefix-regexp' with the same prefix. |
diff --git a/lisp/gnus/gnus-cus.el b/lisp/gnus/gnus-cus.el index 0c31ea9dd1b..1a595a6ab7a 100644 --- a/lisp/gnus/gnus-cus.el +++ b/lisp/gnus/gnus-cus.el | |||
| @@ -772,8 +772,8 @@ When called interactively, FILE defaults to the current score file. | |||
| 772 | This can be changed using the `\\[gnus-score-change-score-file]' command." | 772 | This can be changed using the `\\[gnus-score-change-score-file]' command." |
| 773 | (interactive (list gnus-current-score-file)) | 773 | (interactive (list gnus-current-score-file)) |
| 774 | (unless file | 774 | (unless file |
| 775 | (error (format "No score file for %s" | 775 | (error "No score file for %s" |
| 776 | (gnus-group-decoded-name gnus-newsgroup-name)))) | 776 | (gnus-group-decoded-name gnus-newsgroup-name))) |
| 777 | (let ((scores (gnus-score-load file)) | 777 | (let ((scores (gnus-score-load file)) |
| 778 | (types (mapcar (lambda (entry) | 778 | (types (mapcar (lambda (entry) |
| 779 | `(group :format "%v%h\n" | 779 | `(group :format "%v%h\n" |
| @@ -1014,9 +1014,9 @@ articles in the thread. | |||
| 1014 | ;; gnus-agent-cat-prepare-category-field as I don't want the | 1014 | ;; gnus-agent-cat-prepare-category-field as I don't want the |
| 1015 | ;; group list to appear when customizing a topic. | 1015 | ;; group list to appear when customizing a topic. |
| 1016 | (widget-insert "\n") | 1016 | (widget-insert "\n") |
| 1017 | 1017 | ||
| 1018 | (let ((symb | 1018 | (let ((symb |
| 1019 | (set | 1019 | (set |
| 1020 | (make-local-variable 'gnus-agent-cat-groups) | 1020 | (make-local-variable 'gnus-agent-cat-groups) |
| 1021 | (widget-create | 1021 | (widget-create |
| 1022 | `(choice | 1022 | `(choice |
diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el index f1343d9dbd3..45597b60e88 100644 --- a/lisp/gnus/gnus-group.el +++ b/lisp/gnus/gnus-group.el | |||
| @@ -309,50 +309,50 @@ variable." | |||
| 309 | (defcustom gnus-group-highlight | 309 | (defcustom gnus-group-highlight |
| 310 | '(;; Mail. | 310 | '(;; Mail. |
| 311 | ((and mailp (= unread 0) (eq level 1)) . | 311 | ((and mailp (= unread 0) (eq level 1)) . |
| 312 | gnus-group-mail-1-empty-face) | 312 | gnus-group-mail-1-empty) |
| 313 | ((and mailp (eq level 1)) . | 313 | ((and mailp (eq level 1)) . |
| 314 | gnus-group-mail-1-face) | 314 | gnus-group-mail-1) |
| 315 | ((and mailp (= unread 0) (eq level 2)) . | 315 | ((and mailp (= unread 0) (eq level 2)) . |
| 316 | gnus-group-mail-2-empty-face) | 316 | gnus-group-mail-2-empty) |
| 317 | ((and mailp (eq level 2)) . | 317 | ((and mailp (eq level 2)) . |
| 318 | gnus-group-mail-2-face) | 318 | gnus-group-mail-2) |
| 319 | ((and mailp (= unread 0) (eq level 3)) . | 319 | ((and mailp (= unread 0) (eq level 3)) . |
| 320 | gnus-group-mail-3-empty-face) | 320 | gnus-group-mail-3-empty) |
| 321 | ((and mailp (eq level 3)) . | 321 | ((and mailp (eq level 3)) . |
| 322 | gnus-group-mail-3-face) | 322 | gnus-group-mail-3) |
| 323 | ((and mailp (= unread 0)) . | 323 | ((and mailp (= unread 0)) . |
| 324 | gnus-group-mail-low-empty-face) | 324 | gnus-group-mail-low-empty) |
| 325 | ((and mailp) . | 325 | ((and mailp) . |
| 326 | gnus-group-mail-low-face) | 326 | gnus-group-mail-low) |
| 327 | ;; News. | 327 | ;; News. |
| 328 | ((and (= unread 0) (eq level 1)) . | 328 | ((and (= unread 0) (eq level 1)) . |
| 329 | gnus-group-news-1-empty-face) | 329 | gnus-group-news-1-empty) |
| 330 | ((and (eq level 1)) . | 330 | ((and (eq level 1)) . |
| 331 | gnus-group-news-1-face) | 331 | gnus-group-news-1) |
| 332 | ((and (= unread 0) (eq level 2)) . | 332 | ((and (= unread 0) (eq level 2)) . |
| 333 | gnus-group-news-2-empty-face) | 333 | gnus-group-news-2-empty) |
| 334 | ((and (eq level 2)) . | 334 | ((and (eq level 2)) . |
| 335 | gnus-group-news-2-face) | 335 | gnus-group-news-2) |
| 336 | ((and (= unread 0) (eq level 3)) . | 336 | ((and (= unread 0) (eq level 3)) . |
| 337 | gnus-group-news-3-empty-face) | 337 | gnus-group-news-3-empty) |
| 338 | ((and (eq level 3)) . | 338 | ((and (eq level 3)) . |
| 339 | gnus-group-news-3-face) | 339 | gnus-group-news-3) |
| 340 | ((and (= unread 0) (eq level 4)) . | 340 | ((and (= unread 0) (eq level 4)) . |
| 341 | gnus-group-news-4-empty-face) | 341 | gnus-group-news-4-empty) |
| 342 | ((and (eq level 4)) . | 342 | ((and (eq level 4)) . |
| 343 | gnus-group-news-4-face) | 343 | gnus-group-news-4) |
| 344 | ((and (= unread 0) (eq level 5)) . | 344 | ((and (= unread 0) (eq level 5)) . |
| 345 | gnus-group-news-5-empty-face) | 345 | gnus-group-news-5-empty) |
| 346 | ((and (eq level 5)) . | 346 | ((and (eq level 5)) . |
| 347 | gnus-group-news-5-face) | 347 | gnus-group-news-5) |
| 348 | ((and (= unread 0) (eq level 6)) . | 348 | ((and (= unread 0) (eq level 6)) . |
| 349 | gnus-group-news-6-empty-face) | 349 | gnus-group-news-6-empty) |
| 350 | ((and (eq level 6)) . | 350 | ((and (eq level 6)) . |
| 351 | gnus-group-news-6-face) | 351 | gnus-group-news-6) |
| 352 | ((and (= unread 0)) . | 352 | ((and (= unread 0)) . |
| 353 | gnus-group-news-low-empty-face) | 353 | gnus-group-news-low-empty) |
| 354 | (t . | 354 | (t . |
| 355 | gnus-group-news-low-face)) | 355 | gnus-group-news-low)) |
| 356 | "*Controls the highlighting of group buffer lines. | 356 | "*Controls the highlighting of group buffer lines. |
| 357 | 357 | ||
| 358 | Below is a list of `Form'/`Face' pairs. When deciding how a a | 358 | Below is a list of `Form'/`Face' pairs. When deciding how a a |
diff --git a/lisp/gnus/gnus-picon.el b/lisp/gnus/gnus-picon.el index 817696ed974..55f886f4c1f 100644 --- a/lisp/gnus/gnus-picon.el +++ b/lisp/gnus/gnus-picon.el | |||
| @@ -74,13 +74,17 @@ Some people may want to add \"unknown\" to this list." | |||
| 74 | :type '(repeat string) | 74 | :type '(repeat string) |
| 75 | :group 'gnus-picon) | 75 | :group 'gnus-picon) |
| 76 | 76 | ||
| 77 | (defface gnus-picon-xbm-face '((t (:foreground "black" :background "white"))) | 77 | (defface gnus-picon-xbm '((t (:foreground "black" :background "white"))) |
| 78 | "Face to show xbm picon in." | 78 | "Face to show xbm picon in." |
| 79 | :group 'gnus-picon) | 79 | :group 'gnus-picon) |
| 80 | ;; backward-compatibility alias | ||
| 81 | (put 'gnus-picon-xbm-face 'face-alias 'gnus-picon-xbm) | ||
| 80 | 82 | ||
| 81 | (defface gnus-picon-face '((t (:foreground "black" :background "white"))) | 83 | (defface gnus-picon '((t (:foreground "black" :background "white"))) |
| 82 | "Face to show picon in." | 84 | "Face to show picon in." |
| 83 | :group 'gnus-picon) | 85 | :group 'gnus-picon) |
| 86 | ;; backward-compatibility alias | ||
| 87 | (put 'gnus-picon-face 'face-alias 'gnus-picon) | ||
| 84 | 88 | ||
| 85 | ;;; Internal variables: | 89 | ;;; Internal variables: |
| 86 | 90 | ||
diff --git a/lisp/gnus/gnus-srvr.el b/lisp/gnus/gnus-srvr.el index 1c2ba9447ff..cd7161aca0b 100644 --- a/lisp/gnus/gnus-srvr.el +++ b/lisp/gnus/gnus-srvr.el | |||
| @@ -168,67 +168,77 @@ If nil, a faster, but more primitive, buffer is used instead." | |||
| 168 | "\C-c\C-i" gnus-info-find-node | 168 | "\C-c\C-i" gnus-info-find-node |
| 169 | "\C-c\C-b" gnus-bug)) | 169 | "\C-c\C-b" gnus-bug)) |
| 170 | 170 | ||
| 171 | (defface gnus-server-agent-face | 171 | (defface gnus-server-agent |
| 172 | '((((class color) (background light)) (:foreground "PaleTurquoise" :bold t)) | 172 | '((((class color) (background light)) (:foreground "PaleTurquoise" :bold t)) |
| 173 | (((class color) (background dark)) (:foreground "PaleTurquoise" :bold t)) | 173 | (((class color) (background dark)) (:foreground "PaleTurquoise" :bold t)) |
| 174 | (t (:bold t))) | 174 | (t (:bold t))) |
| 175 | "Face used for displaying AGENTIZED servers" | 175 | "Face used for displaying AGENTIZED servers" |
| 176 | :group 'gnus-server-visual) | 176 | :group 'gnus-server-visual) |
| 177 | ;; backward-compatibility alias | ||
| 178 | (put 'gnus-server-agent-face 'face-alias 'gnus-server-agent) | ||
| 177 | 179 | ||
| 178 | (defface gnus-server-opened-face | 180 | (defface gnus-server-opened |
| 179 | '((((class color) (background light)) (:foreground "Green3" :bold t)) | 181 | '((((class color) (background light)) (:foreground "Green3" :bold t)) |
| 180 | (((class color) (background dark)) (:foreground "Green1" :bold t)) | 182 | (((class color) (background dark)) (:foreground "Green1" :bold t)) |
| 181 | (t (:bold t))) | 183 | (t (:bold t))) |
| 182 | "Face used for displaying OPENED servers" | 184 | "Face used for displaying OPENED servers" |
| 183 | :group 'gnus-server-visual) | 185 | :group 'gnus-server-visual) |
| 186 | ;; backward-compatibility alias | ||
| 187 | (put 'gnus-server-opened-face 'face-alias 'gnus-server-opened) | ||
| 184 | 188 | ||
| 185 | (defface gnus-server-closed-face | 189 | (defface gnus-server-closed |
| 186 | '((((class color) (background light)) (:foreground "Steel Blue" :italic t)) | 190 | '((((class color) (background light)) (:foreground "Steel Blue" :italic t)) |
| 187 | (((class color) (background dark)) | 191 | (((class color) (background dark)) |
| 188 | (:foreground "Light Steel Blue" :italic t)) | 192 | (:foreground "Light Steel Blue" :italic t)) |
| 189 | (t (:italic t))) | 193 | (t (:italic t))) |
| 190 | "Face used for displaying CLOSED servers" | 194 | "Face used for displaying CLOSED servers" |
| 191 | :group 'gnus-server-visual) | 195 | :group 'gnus-server-visual) |
| 196 | ;; backward-compatibility alias | ||
| 197 | (put 'gnus-server-closed-face 'face-alias 'gnus-server-closed) | ||
| 192 | 198 | ||
| 193 | (defface gnus-server-denied-face | 199 | (defface gnus-server-denied |
| 194 | '((((class color) (background light)) (:foreground "Red" :bold t)) | 200 | '((((class color) (background light)) (:foreground "Red" :bold t)) |
| 195 | (((class color) (background dark)) (:foreground "Pink" :bold t)) | 201 | (((class color) (background dark)) (:foreground "Pink" :bold t)) |
| 196 | (t (:inverse-video t :bold t))) | 202 | (t (:inverse-video t :bold t))) |
| 197 | "Face used for displaying DENIED servers" | 203 | "Face used for displaying DENIED servers" |
| 198 | :group 'gnus-server-visual) | 204 | :group 'gnus-server-visual) |
| 205 | ;; backward-compatibility alias | ||
| 206 | (put 'gnus-server-denied-face 'face-alias 'gnus-server-denied) | ||
| 199 | 207 | ||
| 200 | (defface gnus-server-offline-face | 208 | (defface gnus-server-offline |
| 201 | '((((class color) (background light)) (:foreground "Orange" :bold t)) | 209 | '((((class color) (background light)) (:foreground "Orange" :bold t)) |
| 202 | (((class color) (background dark)) (:foreground "Yellow" :bold t)) | 210 | (((class color) (background dark)) (:foreground "Yellow" :bold t)) |
| 203 | (t (:inverse-video t :bold t))) | 211 | (t (:inverse-video t :bold t))) |
| 204 | "Face used for displaying OFFLINE servers" | 212 | "Face used for displaying OFFLINE servers" |
| 205 | :group 'gnus-server-visual) | 213 | :group 'gnus-server-visual) |
| 214 | ;; backward-compatibility alias | ||
| 215 | (put 'gnus-server-offline-face 'face-alias 'gnus-server-offline) | ||
| 206 | 216 | ||
| 207 | (defcustom gnus-server-agent-face 'gnus-server-agent-face | 217 | (defcustom gnus-server-agent-face 'gnus-server-agent |
| 208 | "Face name to use on AGENTIZED servers." | 218 | "Face name to use on AGENTIZED servers." |
| 209 | :version "22.1" | 219 | :version "22.1" |
| 210 | :group 'gnus-server-visual | 220 | :group 'gnus-server-visual |
| 211 | :type 'face) | 221 | :type 'face) |
| 212 | 222 | ||
| 213 | (defcustom gnus-server-opened-face 'gnus-server-opened-face | 223 | (defcustom gnus-server-opened-face 'gnus-server-opened |
| 214 | "Face name to use on OPENED servers." | 224 | "Face name to use on OPENED servers." |
| 215 | :version "22.1" | 225 | :version "22.1" |
| 216 | :group 'gnus-server-visual | 226 | :group 'gnus-server-visual |
| 217 | :type 'face) | 227 | :type 'face) |
| 218 | 228 | ||
| 219 | (defcustom gnus-server-closed-face 'gnus-server-closed-face | 229 | (defcustom gnus-server-closed-face 'gnus-server-closed |
| 220 | "Face name to use on CLOSED servers." | 230 | "Face name to use on CLOSED servers." |
| 221 | :version "22.1" | 231 | :version "22.1" |
| 222 | :group 'gnus-server-visual | 232 | :group 'gnus-server-visual |
| 223 | :type 'face) | 233 | :type 'face) |
| 224 | 234 | ||
| 225 | (defcustom gnus-server-denied-face 'gnus-server-denied-face | 235 | (defcustom gnus-server-denied-face 'gnus-server-denied |
| 226 | "Face name to use on DENIED servers." | 236 | "Face name to use on DENIED servers." |
| 227 | :version "22.1" | 237 | :version "22.1" |
| 228 | :group 'gnus-server-visual | 238 | :group 'gnus-server-visual |
| 229 | :type 'face) | 239 | :type 'face) |
| 230 | 240 | ||
| 231 | (defcustom gnus-server-offline-face 'gnus-server-offline-face | 241 | (defcustom gnus-server-offline-face 'gnus-server-offline |
| 232 | "Face name to use on OFFLINE servers." | 242 | "Face name to use on OFFLINE servers." |
| 233 | :version "22.1" | 243 | :version "22.1" |
| 234 | :group 'gnus-server-visual | 244 | :group 'gnus-server-visual |
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index 5447da73fde..a37960c8b45 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el | |||
| @@ -917,7 +917,7 @@ automatically when it is selected." | |||
| 917 | :group 'gnus-summary | 917 | :group 'gnus-summary |
| 918 | :type 'boolean) | 918 | :type 'boolean) |
| 919 | 919 | ||
| 920 | (defcustom gnus-summary-selected-face 'gnus-summary-selected-face | 920 | (defcustom gnus-summary-selected-face 'gnus-summary-selected |
| 921 | "Face used for highlighting the current article in the summary buffer." | 921 | "Face used for highlighting the current article in the summary buffer." |
| 922 | :group 'gnus-summary-visual | 922 | :group 'gnus-summary-visual |
| 923 | :type 'face) | 923 | :type 'face) |
| @@ -926,42 +926,42 @@ automatically when it is selected." | |||
| 926 | 926 | ||
| 927 | (defcustom gnus-summary-highlight | 927 | (defcustom gnus-summary-highlight |
| 928 | '(((eq mark gnus-canceled-mark) | 928 | '(((eq mark gnus-canceled-mark) |
| 929 | . gnus-summary-cancelled-face) | 929 | . gnus-summary-cancelled) |
| 930 | ((and uncached (> score default-high)) | 930 | ((and uncached (> score default-high)) |
| 931 | . gnus-summary-high-undownloaded-face) | 931 | . gnus-summary-high-undownloaded) |
| 932 | ((and uncached (< score default-low)) | 932 | ((and uncached (< score default-low)) |
| 933 | . gnus-summary-low-undownloaded-face) | 933 | . gnus-summary-low-undownloaded) |
| 934 | (uncached | 934 | (uncached |
| 935 | . gnus-summary-normal-undownloaded-face) | 935 | . gnus-summary-normal-undownloaded) |
| 936 | ((and (> score default-high) | 936 | ((and (> score default-high) |
| 937 | (or (eq mark gnus-dormant-mark) | 937 | (or (eq mark gnus-dormant-mark) |
| 938 | (eq mark gnus-ticked-mark))) | 938 | (eq mark gnus-ticked-mark))) |
| 939 | . gnus-summary-high-ticked-face) | 939 | . gnus-summary-high-ticked) |
| 940 | ((and (< score default-low) | 940 | ((and (< score default-low) |
| 941 | (or (eq mark gnus-dormant-mark) | 941 | (or (eq mark gnus-dormant-mark) |
| 942 | (eq mark gnus-ticked-mark))) | 942 | (eq mark gnus-ticked-mark))) |
| 943 | . gnus-summary-low-ticked-face) | 943 | . gnus-summary-low-ticked) |
| 944 | ((or (eq mark gnus-dormant-mark) | 944 | ((or (eq mark gnus-dormant-mark) |
| 945 | (eq mark gnus-ticked-mark)) | 945 | (eq mark gnus-ticked-mark)) |
| 946 | . gnus-summary-normal-ticked-face) | 946 | . gnus-summary-normal-ticked) |
| 947 | ((and (> score default-high) (eq mark gnus-ancient-mark)) | 947 | ((and (> score default-high) (eq mark gnus-ancient-mark)) |
| 948 | . gnus-summary-high-ancient-face) | 948 | . gnus-summary-high-ancient) |
| 949 | ((and (< score default-low) (eq mark gnus-ancient-mark)) | 949 | ((and (< score default-low) (eq mark gnus-ancient-mark)) |
| 950 | . gnus-summary-low-ancient-face) | 950 | . gnus-summary-low-ancient) |
| 951 | ((eq mark gnus-ancient-mark) | 951 | ((eq mark gnus-ancient-mark) |
| 952 | . gnus-summary-normal-ancient-face) | 952 | . gnus-summary-normal-ancient) |
| 953 | ((and (> score default-high) (eq mark gnus-unread-mark)) | 953 | ((and (> score default-high) (eq mark gnus-unread-mark)) |
| 954 | . gnus-summary-high-unread-face) | 954 | . gnus-summary-high-unread) |
| 955 | ((and (< score default-low) (eq mark gnus-unread-mark)) | 955 | ((and (< score default-low) (eq mark gnus-unread-mark)) |
| 956 | . gnus-summary-low-unread-face) | 956 | . gnus-summary-low-unread) |
| 957 | ((eq mark gnus-unread-mark) | 957 | ((eq mark gnus-unread-mark) |
| 958 | . gnus-summary-normal-unread-face) | 958 | . gnus-summary-normal-unread) |
| 959 | ((> score default-high) | 959 | ((> score default-high) |
| 960 | . gnus-summary-high-read-face) | 960 | . gnus-summary-high-read) |
| 961 | ((< score default-low) | 961 | ((< score default-low) |
| 962 | . gnus-summary-low-read-face) | 962 | . gnus-summary-low-read) |
| 963 | (t | 963 | (t |
| 964 | . gnus-summary-normal-read-face)) | 964 | . gnus-summary-normal-read)) |
| 965 | "*Controls the highlighting of summary buffer lines. | 965 | "*Controls the highlighting of summary buffer lines. |
| 966 | 966 | ||
| 967 | A list of (FORM . FACE) pairs. When deciding how a a particular | 967 | A list of (FORM . FACE) pairs. When deciding how a a particular |
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index a134ac661ac..afba1ea427e 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el | |||
| @@ -357,7 +357,7 @@ be set in `.emacs' instead." | |||
| 357 | ;; We define these group faces here to avoid the display | 357 | ;; We define these group faces here to avoid the display |
| 358 | ;; update forced when creating new faces. | 358 | ;; update forced when creating new faces. |
| 359 | 359 | ||
| 360 | (defface gnus-group-news-1-face | 360 | (defface gnus-group-news-1 |
| 361 | '((((class color) | 361 | '((((class color) |
| 362 | (background dark)) | 362 | (background dark)) |
| 363 | (:foreground "PaleTurquoise" :bold t)) | 363 | (:foreground "PaleTurquoise" :bold t)) |
| @@ -368,8 +368,10 @@ be set in `.emacs' instead." | |||
| 368 | ())) | 368 | ())) |
| 369 | "Level 1 newsgroup face." | 369 | "Level 1 newsgroup face." |
| 370 | :group 'gnus-group) | 370 | :group 'gnus-group) |
| 371 | ;; backward-compatibility alias | ||
| 372 | (put 'gnus-group-news-1-face 'face-alias 'gnus-group-news-1) | ||
| 371 | 373 | ||
| 372 | (defface gnus-group-news-1-empty-face | 374 | (defface gnus-group-news-1-empty |
| 373 | '((((class color) | 375 | '((((class color) |
| 374 | (background dark)) | 376 | (background dark)) |
| 375 | (:foreground "PaleTurquoise")) | 377 | (:foreground "PaleTurquoise")) |
| @@ -380,8 +382,10 @@ be set in `.emacs' instead." | |||
| 380 | ())) | 382 | ())) |
| 381 | "Level 1 empty newsgroup face." | 383 | "Level 1 empty newsgroup face." |
| 382 | :group 'gnus-group) | 384 | :group 'gnus-group) |
| 385 | ;; backward-compatibility alias | ||
| 386 | (put 'gnus-group-news-1-empty-face 'face-alias 'gnus-group-news-1-empty) | ||
| 383 | 387 | ||
| 384 | (defface gnus-group-news-2-face | 388 | (defface gnus-group-news-2 |
| 385 | '((((class color) | 389 | '((((class color) |
| 386 | (background dark)) | 390 | (background dark)) |
| 387 | (:foreground "turquoise" :bold t)) | 391 | (:foreground "turquoise" :bold t)) |
| @@ -392,8 +396,10 @@ be set in `.emacs' instead." | |||
| 392 | ())) | 396 | ())) |
| 393 | "Level 2 newsgroup face." | 397 | "Level 2 newsgroup face." |
| 394 | :group 'gnus-group) | 398 | :group 'gnus-group) |
| 399 | ;; backward-compatibility alias | ||
| 400 | (put 'gnus-group-news-2-face 'face-alias 'gnus-group-news-2) | ||
| 395 | 401 | ||
| 396 | (defface gnus-group-news-2-empty-face | 402 | (defface gnus-group-news-2-empty |
| 397 | '((((class color) | 403 | '((((class color) |
| 398 | (background dark)) | 404 | (background dark)) |
| 399 | (:foreground "turquoise")) | 405 | (:foreground "turquoise")) |
| @@ -404,8 +410,10 @@ be set in `.emacs' instead." | |||
| 404 | ())) | 410 | ())) |
| 405 | "Level 2 empty newsgroup face." | 411 | "Level 2 empty newsgroup face." |
| 406 | :group 'gnus-group) | 412 | :group 'gnus-group) |
| 413 | ;; backward-compatibility alias | ||
| 414 | (put 'gnus-group-news-2-empty-face 'face-alias 'gnus-group-news-2-empty) | ||
| 407 | 415 | ||
| 408 | (defface gnus-group-news-3-face | 416 | (defface gnus-group-news-3 |
| 409 | '((((class color) | 417 | '((((class color) |
| 410 | (background dark)) | 418 | (background dark)) |
| 411 | (:bold t)) | 419 | (:bold t)) |
| @@ -416,8 +424,10 @@ be set in `.emacs' instead." | |||
| 416 | ())) | 424 | ())) |
| 417 | "Level 3 newsgroup face." | 425 | "Level 3 newsgroup face." |
| 418 | :group 'gnus-group) | 426 | :group 'gnus-group) |
| 427 | ;; backward-compatibility alias | ||
| 428 | (put 'gnus-group-news-3-face 'face-alias 'gnus-group-news-3) | ||
| 419 | 429 | ||
| 420 | (defface gnus-group-news-3-empty-face | 430 | (defface gnus-group-news-3-empty |
| 421 | '((((class color) | 431 | '((((class color) |
| 422 | (background dark)) | 432 | (background dark)) |
| 423 | ()) | 433 | ()) |
| @@ -428,8 +438,10 @@ be set in `.emacs' instead." | |||
| 428 | ())) | 438 | ())) |
| 429 | "Level 3 empty newsgroup face." | 439 | "Level 3 empty newsgroup face." |
| 430 | :group 'gnus-group) | 440 | :group 'gnus-group) |
| 441 | ;; backward-compatibility alias | ||
| 442 | (put 'gnus-group-news-3-empty-face 'face-alias 'gnus-group-news-3-empty) | ||
| 431 | 443 | ||
| 432 | (defface gnus-group-news-4-face | 444 | (defface gnus-group-news-4 |
| 433 | '((((class color) | 445 | '((((class color) |
| 434 | (background dark)) | 446 | (background dark)) |
| 435 | (:bold t)) | 447 | (:bold t)) |
| @@ -440,8 +452,10 @@ be set in `.emacs' instead." | |||
| 440 | ())) | 452 | ())) |
| 441 | "Level 4 newsgroup face." | 453 | "Level 4 newsgroup face." |
| 442 | :group 'gnus-group) | 454 | :group 'gnus-group) |
| 455 | ;; backward-compatibility alias | ||
| 456 | (put 'gnus-group-news-4-face 'face-alias 'gnus-group-news-4) | ||
| 443 | 457 | ||
| 444 | (defface gnus-group-news-4-empty-face | 458 | (defface gnus-group-news-4-empty |
| 445 | '((((class color) | 459 | '((((class color) |
| 446 | (background dark)) | 460 | (background dark)) |
| 447 | ()) | 461 | ()) |
| @@ -452,8 +466,10 @@ be set in `.emacs' instead." | |||
| 452 | ())) | 466 | ())) |
| 453 | "Level 4 empty newsgroup face." | 467 | "Level 4 empty newsgroup face." |
| 454 | :group 'gnus-group) | 468 | :group 'gnus-group) |
| 469 | ;; backward-compatibility alias | ||
| 470 | (put 'gnus-group-news-4-empty-face 'face-alias 'gnus-group-news-4-empty) | ||
| 455 | 471 | ||
| 456 | (defface gnus-group-news-5-face | 472 | (defface gnus-group-news-5 |
| 457 | '((((class color) | 473 | '((((class color) |
| 458 | (background dark)) | 474 | (background dark)) |
| 459 | (:bold t)) | 475 | (:bold t)) |
| @@ -464,8 +480,10 @@ be set in `.emacs' instead." | |||
| 464 | ())) | 480 | ())) |
| 465 | "Level 5 newsgroup face." | 481 | "Level 5 newsgroup face." |
| 466 | :group 'gnus-group) | 482 | :group 'gnus-group) |
| 483 | ;; backward-compatibility alias | ||
| 484 | (put 'gnus-group-news-5-face 'face-alias 'gnus-group-news-5) | ||
| 467 | 485 | ||
| 468 | (defface gnus-group-news-5-empty-face | 486 | (defface gnus-group-news-5-empty |
| 469 | '((((class color) | 487 | '((((class color) |
| 470 | (background dark)) | 488 | (background dark)) |
| 471 | ()) | 489 | ()) |
| @@ -476,8 +494,10 @@ be set in `.emacs' instead." | |||
| 476 | ())) | 494 | ())) |
| 477 | "Level 5 empty newsgroup face." | 495 | "Level 5 empty newsgroup face." |
| 478 | :group 'gnus-group) | 496 | :group 'gnus-group) |
| 497 | ;; backward-compatibility alias | ||
| 498 | (put 'gnus-group-news-5-empty-face 'face-alias 'gnus-group-news-5-empty) | ||
| 479 | 499 | ||
| 480 | (defface gnus-group-news-6-face | 500 | (defface gnus-group-news-6 |
| 481 | '((((class color) | 501 | '((((class color) |
| 482 | (background dark)) | 502 | (background dark)) |
| 483 | (:bold t)) | 503 | (:bold t)) |
| @@ -488,8 +508,10 @@ be set in `.emacs' instead." | |||
| 488 | ())) | 508 | ())) |
| 489 | "Level 6 newsgroup face." | 509 | "Level 6 newsgroup face." |
| 490 | :group 'gnus-group) | 510 | :group 'gnus-group) |
| 511 | ;; backward-compatibility alias | ||
| 512 | (put 'gnus-group-news-6-face 'face-alias 'gnus-group-news-6) | ||
| 491 | 513 | ||
| 492 | (defface gnus-group-news-6-empty-face | 514 | (defface gnus-group-news-6-empty |
| 493 | '((((class color) | 515 | '((((class color) |
| 494 | (background dark)) | 516 | (background dark)) |
| 495 | ()) | 517 | ()) |
| @@ -500,8 +522,10 @@ be set in `.emacs' instead." | |||
| 500 | ())) | 522 | ())) |
| 501 | "Level 6 empty newsgroup face." | 523 | "Level 6 empty newsgroup face." |
| 502 | :group 'gnus-group) | 524 | :group 'gnus-group) |
| 525 | ;; backward-compatibility alias | ||
| 526 | (put 'gnus-group-news-6-empty-face 'face-alias 'gnus-group-news-6-empty) | ||
| 503 | 527 | ||
| 504 | (defface gnus-group-news-low-face | 528 | (defface gnus-group-news-low |
| 505 | '((((class color) | 529 | '((((class color) |
| 506 | (background dark)) | 530 | (background dark)) |
| 507 | (:foreground "DarkTurquoise" :bold t)) | 531 | (:foreground "DarkTurquoise" :bold t)) |
| @@ -512,8 +536,10 @@ be set in `.emacs' instead." | |||
| 512 | ())) | 536 | ())) |
| 513 | "Low level newsgroup face." | 537 | "Low level newsgroup face." |
| 514 | :group 'gnus-group) | 538 | :group 'gnus-group) |
| 539 | ;; backward-compatibility alias | ||
| 540 | (put 'gnus-group-news-low-face 'face-alias 'gnus-group-news-low) | ||
| 515 | 541 | ||
| 516 | (defface gnus-group-news-low-empty-face | 542 | (defface gnus-group-news-low-empty |
| 517 | '((((class color) | 543 | '((((class color) |
| 518 | (background dark)) | 544 | (background dark)) |
| 519 | (:foreground "DarkTurquoise")) | 545 | (:foreground "DarkTurquoise")) |
| @@ -524,8 +550,10 @@ be set in `.emacs' instead." | |||
| 524 | ())) | 550 | ())) |
| 525 | "Low level empty newsgroup face." | 551 | "Low level empty newsgroup face." |
| 526 | :group 'gnus-group) | 552 | :group 'gnus-group) |
| 553 | ;; backward-compatibility alias | ||
| 554 | (put 'gnus-group-news-low-empty-face 'face-alias 'gnus-group-news-low-empty) | ||
| 527 | 555 | ||
| 528 | (defface gnus-group-mail-1-face | 556 | (defface gnus-group-mail-1 |
| 529 | '((((class color) | 557 | '((((class color) |
| 530 | (background dark)) | 558 | (background dark)) |
| 531 | (:foreground "aquamarine1" :bold t)) | 559 | (:foreground "aquamarine1" :bold t)) |
| @@ -536,8 +564,10 @@ be set in `.emacs' instead." | |||
| 536 | (:bold t))) | 564 | (:bold t))) |
| 537 | "Level 1 mailgroup face." | 565 | "Level 1 mailgroup face." |
| 538 | :group 'gnus-group) | 566 | :group 'gnus-group) |
| 567 | ;; backward-compatibility alias | ||
| 568 | (put 'gnus-group-mail-1-face 'face-alias 'gnus-group-mail-1) | ||
| 539 | 569 | ||
| 540 | (defface gnus-group-mail-1-empty-face | 570 | (defface gnus-group-mail-1-empty |
| 541 | '((((class color) | 571 | '((((class color) |
| 542 | (background dark)) | 572 | (background dark)) |
| 543 | (:foreground "aquamarine1")) | 573 | (:foreground "aquamarine1")) |
| @@ -548,8 +578,10 @@ be set in `.emacs' instead." | |||
| 548 | (:italic t :bold t))) | 578 | (:italic t :bold t))) |
| 549 | "Level 1 empty mailgroup face." | 579 | "Level 1 empty mailgroup face." |
| 550 | :group 'gnus-group) | 580 | :group 'gnus-group) |
| 581 | ;; backward-compatibility alias | ||
| 582 | (put 'gnus-group-mail-1-empty-face 'face-alias 'gnus-group-mail-1-empty) | ||
| 551 | 583 | ||
| 552 | (defface gnus-group-mail-2-face | 584 | (defface gnus-group-mail-2 |
| 553 | '((((class color) | 585 | '((((class color) |
| 554 | (background dark)) | 586 | (background dark)) |
| 555 | (:foreground "aquamarine2" :bold t)) | 587 | (:foreground "aquamarine2" :bold t)) |
| @@ -560,8 +592,10 @@ be set in `.emacs' instead." | |||
| 560 | (:bold t))) | 592 | (:bold t))) |
| 561 | "Level 2 mailgroup face." | 593 | "Level 2 mailgroup face." |
| 562 | :group 'gnus-group) | 594 | :group 'gnus-group) |
| 595 | ;; backward-compatibility alias | ||
| 596 | (put 'gnus-group-mail-2-face 'face-alias 'gnus-group-mail-2) | ||
| 563 | 597 | ||
| 564 | (defface gnus-group-mail-2-empty-face | 598 | (defface gnus-group-mail-2-empty |
| 565 | '((((class color) | 599 | '((((class color) |
| 566 | (background dark)) | 600 | (background dark)) |
| 567 | (:foreground "aquamarine2")) | 601 | (:foreground "aquamarine2")) |
| @@ -572,8 +606,10 @@ be set in `.emacs' instead." | |||
| 572 | (:bold t))) | 606 | (:bold t))) |
| 573 | "Level 2 empty mailgroup face." | 607 | "Level 2 empty mailgroup face." |
| 574 | :group 'gnus-group) | 608 | :group 'gnus-group) |
| 609 | ;; backward-compatibility alias | ||
| 610 | (put 'gnus-group-mail-2-empty-face 'face-alias 'gnus-group-mail-2-empty) | ||
| 575 | 611 | ||
| 576 | (defface gnus-group-mail-3-face | 612 | (defface gnus-group-mail-3 |
| 577 | '((((class color) | 613 | '((((class color) |
| 578 | (background dark)) | 614 | (background dark)) |
| 579 | (:foreground "aquamarine3" :bold t)) | 615 | (:foreground "aquamarine3" :bold t)) |
| @@ -584,8 +620,10 @@ be set in `.emacs' instead." | |||
| 584 | (:bold t))) | 620 | (:bold t))) |
| 585 | "Level 3 mailgroup face." | 621 | "Level 3 mailgroup face." |
| 586 | :group 'gnus-group) | 622 | :group 'gnus-group) |
| 623 | ;; backward-compatibility alias | ||
| 624 | (put 'gnus-group-mail-3-face 'face-alias 'gnus-group-mail-3) | ||
| 587 | 625 | ||
| 588 | (defface gnus-group-mail-3-empty-face | 626 | (defface gnus-group-mail-3-empty |
| 589 | '((((class color) | 627 | '((((class color) |
| 590 | (background dark)) | 628 | (background dark)) |
| 591 | (:foreground "aquamarine3")) | 629 | (:foreground "aquamarine3")) |
| @@ -596,8 +634,10 @@ be set in `.emacs' instead." | |||
| 596 | ())) | 634 | ())) |
| 597 | "Level 3 empty mailgroup face." | 635 | "Level 3 empty mailgroup face." |
| 598 | :group 'gnus-group) | 636 | :group 'gnus-group) |
| 637 | ;; backward-compatibility alias | ||
| 638 | (put 'gnus-group-mail-3-empty-face 'face-alias 'gnus-group-mail-3-empty) | ||
| 599 | 639 | ||
| 600 | (defface gnus-group-mail-low-face | 640 | (defface gnus-group-mail-low |
| 601 | '((((class color) | 641 | '((((class color) |
| 602 | (background dark)) | 642 | (background dark)) |
| 603 | (:foreground "aquamarine4" :bold t)) | 643 | (:foreground "aquamarine4" :bold t)) |
| @@ -608,8 +648,10 @@ be set in `.emacs' instead." | |||
| 608 | (:bold t))) | 648 | (:bold t))) |
| 609 | "Low level mailgroup face." | 649 | "Low level mailgroup face." |
| 610 | :group 'gnus-group) | 650 | :group 'gnus-group) |
| 651 | ;; backward-compatibility alias | ||
| 652 | (put 'gnus-group-mail-low-face 'face-alias 'gnus-group-mail-low) | ||
| 611 | 653 | ||
| 612 | (defface gnus-group-mail-low-empty-face | 654 | (defface gnus-group-mail-low-empty |
| 613 | '((((class color) | 655 | '((((class color) |
| 614 | (background dark)) | 656 | (background dark)) |
| 615 | (:foreground "aquamarine4")) | 657 | (:foreground "aquamarine4")) |
| @@ -620,21 +662,26 @@ be set in `.emacs' instead." | |||
| 620 | (:bold t))) | 662 | (:bold t))) |
| 621 | "Low level empty mailgroup face." | 663 | "Low level empty mailgroup face." |
| 622 | :group 'gnus-group) | 664 | :group 'gnus-group) |
| 665 | ;; backward-compatibility alias | ||
| 666 | (put 'gnus-group-mail-low-empty-face 'face-alias 'gnus-group-mail-low-empty) | ||
| 623 | 667 | ||
| 624 | ;; Summary mode faces. | 668 | ;; Summary mode faces. |
| 625 | 669 | ||
| 626 | (defface gnus-summary-selected-face '((t | 670 | (defface gnus-summary-selected '((t (:underline t))) |
| 627 | (:underline t))) | ||
| 628 | "Face used for selected articles." | 671 | "Face used for selected articles." |
| 629 | :group 'gnus-summary) | 672 | :group 'gnus-summary) |
| 673 | ;; backward-compatibility alias | ||
| 674 | (put 'gnus-summary-selected-face 'face-alias 'gnus-summary-selected) | ||
| 630 | 675 | ||
| 631 | (defface gnus-summary-cancelled-face | 676 | (defface gnus-summary-cancelled |
| 632 | '((((class color)) | 677 | '((((class color)) |
| 633 | (:foreground "yellow" :background "black"))) | 678 | (:foreground "yellow" :background "black"))) |
| 634 | "Face used for cancelled articles." | 679 | "Face used for cancelled articles." |
| 635 | :group 'gnus-summary) | 680 | :group 'gnus-summary) |
| 681 | ;; backward-compatibility alias | ||
| 682 | (put 'gnus-summary-cancelled-face 'face-alias 'gnus-summary-cancelled) | ||
| 636 | 683 | ||
| 637 | (defface gnus-summary-high-ticked-face | 684 | (defface gnus-summary-high-ticked |
| 638 | '((((class color) | 685 | '((((class color) |
| 639 | (background dark)) | 686 | (background dark)) |
| 640 | (:foreground "pink" :bold t)) | 687 | (:foreground "pink" :bold t)) |
| @@ -645,8 +692,10 @@ be set in `.emacs' instead." | |||
| 645 | (:bold t))) | 692 | (:bold t))) |
| 646 | "Face used for high interest ticked articles." | 693 | "Face used for high interest ticked articles." |
| 647 | :group 'gnus-summary) | 694 | :group 'gnus-summary) |
| 695 | ;; backward-compatibility alias | ||
| 696 | (put 'gnus-summary-high-ticked-face 'face-alias 'gnus-summary-high-ticked) | ||
| 648 | 697 | ||
| 649 | (defface gnus-summary-low-ticked-face | 698 | (defface gnus-summary-low-ticked |
| 650 | '((((class color) | 699 | '((((class color) |
| 651 | (background dark)) | 700 | (background dark)) |
| 652 | (:foreground "pink" :italic t)) | 701 | (:foreground "pink" :italic t)) |
| @@ -657,8 +706,10 @@ be set in `.emacs' instead." | |||
| 657 | (:italic t))) | 706 | (:italic t))) |
| 658 | "Face used for low interest ticked articles." | 707 | "Face used for low interest ticked articles." |
| 659 | :group 'gnus-summary) | 708 | :group 'gnus-summary) |
| 709 | ;; backward-compatibility alias | ||
| 710 | (put 'gnus-summary-low-ticked-face 'face-alias 'gnus-summary-low-ticked) | ||
| 660 | 711 | ||
| 661 | (defface gnus-summary-normal-ticked-face | 712 | (defface gnus-summary-normal-ticked |
| 662 | '((((class color) | 713 | '((((class color) |
| 663 | (background dark)) | 714 | (background dark)) |
| 664 | (:foreground "pink")) | 715 | (:foreground "pink")) |
| @@ -669,8 +720,10 @@ be set in `.emacs' instead." | |||
| 669 | ())) | 720 | ())) |
| 670 | "Face used for normal interest ticked articles." | 721 | "Face used for normal interest ticked articles." |
| 671 | :group 'gnus-summary) | 722 | :group 'gnus-summary) |
| 723 | ;; backward-compatibility alias | ||
| 724 | (put 'gnus-summary-normal-ticked-face 'face-alias 'gnus-summary-normal-ticked) | ||
| 672 | 725 | ||
| 673 | (defface gnus-summary-high-ancient-face | 726 | (defface gnus-summary-high-ancient |
| 674 | '((((class color) | 727 | '((((class color) |
| 675 | (background dark)) | 728 | (background dark)) |
| 676 | (:foreground "SkyBlue" :bold t)) | 729 | (:foreground "SkyBlue" :bold t)) |
| @@ -681,8 +734,10 @@ be set in `.emacs' instead." | |||
| 681 | (:bold t))) | 734 | (:bold t))) |
| 682 | "Face used for high interest ancient articles." | 735 | "Face used for high interest ancient articles." |
| 683 | :group 'gnus-summary) | 736 | :group 'gnus-summary) |
| 737 | ;; backward-compatibility alias | ||
| 738 | (put 'gnus-summary-high-ancient-face 'face-alias 'gnus-summary-high-ancient) | ||
| 684 | 739 | ||
| 685 | (defface gnus-summary-low-ancient-face | 740 | (defface gnus-summary-low-ancient |
| 686 | '((((class color) | 741 | '((((class color) |
| 687 | (background dark)) | 742 | (background dark)) |
| 688 | (:foreground "SkyBlue" :italic t)) | 743 | (:foreground "SkyBlue" :italic t)) |
| @@ -693,8 +748,10 @@ be set in `.emacs' instead." | |||
| 693 | (:italic t))) | 748 | (:italic t))) |
| 694 | "Face used for low interest ancient articles." | 749 | "Face used for low interest ancient articles." |
| 695 | :group 'gnus-summary) | 750 | :group 'gnus-summary) |
| 751 | ;; backward-compatibility alias | ||
| 752 | (put 'gnus-summary-low-ancient-face 'face-alias 'gnus-summary-low-ancient) | ||
| 696 | 753 | ||
| 697 | (defface gnus-summary-normal-ancient-face | 754 | (defface gnus-summary-normal-ancient |
| 698 | '((((class color) | 755 | '((((class color) |
| 699 | (background dark)) | 756 | (background dark)) |
| 700 | (:foreground "SkyBlue")) | 757 | (:foreground "SkyBlue")) |
| @@ -705,8 +762,10 @@ be set in `.emacs' instead." | |||
| 705 | ())) | 762 | ())) |
| 706 | "Face used for normal interest ancient articles." | 763 | "Face used for normal interest ancient articles." |
| 707 | :group 'gnus-summary) | 764 | :group 'gnus-summary) |
| 765 | ;; backward-compatibility alias | ||
| 766 | (put 'gnus-summary-normal-ancient-face 'face-alias 'gnus-summary-normal-ancient) | ||
| 708 | 767 | ||
| 709 | (defface gnus-summary-high-undownloaded-face | 768 | (defface gnus-summary-high-undownloaded |
| 710 | '((((class color) | 769 | '((((class color) |
| 711 | (background light)) | 770 | (background light)) |
| 712 | (:bold t :foreground "cyan4")) | 771 | (:bold t :foreground "cyan4")) |
| @@ -715,8 +774,10 @@ be set in `.emacs' instead." | |||
| 715 | (t (:inverse-video t :bold t))) | 774 | (t (:inverse-video t :bold t))) |
| 716 | "Face used for high interest uncached articles." | 775 | "Face used for high interest uncached articles." |
| 717 | :group 'gnus-summary) | 776 | :group 'gnus-summary) |
| 777 | ;; backward-compatibility alias | ||
| 778 | (put 'gnus-summary-high-undownloaded-face 'face-alias 'gnus-summary-high-undownloaded) | ||
| 718 | 779 | ||
| 719 | (defface gnus-summary-low-undownloaded-face | 780 | (defface gnus-summary-low-undownloaded |
| 720 | '((((class color) | 781 | '((((class color) |
| 721 | (background light)) | 782 | (background light)) |
| 722 | (:italic t :foreground "cyan4" :bold nil)) | 783 | (:italic t :foreground "cyan4" :bold nil)) |
| @@ -725,8 +786,10 @@ be set in `.emacs' instead." | |||
| 725 | (t (:inverse-video t :italic t))) | 786 | (t (:inverse-video t :italic t))) |
| 726 | "Face used for low interest uncached articles." | 787 | "Face used for low interest uncached articles." |
| 727 | :group 'gnus-summary) | 788 | :group 'gnus-summary) |
| 789 | ;; backward-compatibility alias | ||
| 790 | (put 'gnus-summary-low-undownloaded-face 'face-alias 'gnus-summary-low-undownloaded) | ||
| 728 | 791 | ||
| 729 | (defface gnus-summary-normal-undownloaded-face | 792 | (defface gnus-summary-normal-undownloaded |
| 730 | '((((class color) | 793 | '((((class color) |
| 731 | (background light)) | 794 | (background light)) |
| 732 | (:foreground "cyan4" :bold nil)) | 795 | (:foreground "cyan4" :bold nil)) |
| @@ -735,26 +798,34 @@ be set in `.emacs' instead." | |||
| 735 | (t (:inverse-video t))) | 798 | (t (:inverse-video t))) |
| 736 | "Face used for normal interest uncached articles." | 799 | "Face used for normal interest uncached articles." |
| 737 | :group 'gnus-summary) | 800 | :group 'gnus-summary) |
| 801 | ;; backward-compatibility alias | ||
| 802 | (put 'gnus-summary-normal-undownloaded-face 'face-alias 'gnus-summary-normal-undownloaded) | ||
| 738 | 803 | ||
| 739 | (defface gnus-summary-high-unread-face | 804 | (defface gnus-summary-high-unread |
| 740 | '((t | 805 | '((t |
| 741 | (:bold t))) | 806 | (:bold t))) |
| 742 | "Face used for high interest unread articles." | 807 | "Face used for high interest unread articles." |
| 743 | :group 'gnus-summary) | 808 | :group 'gnus-summary) |
| 809 | ;; backward-compatibility alias | ||
| 810 | (put 'gnus-summary-high-unread-face 'face-alias 'gnus-summary-high-unread) | ||
| 744 | 811 | ||
| 745 | (defface gnus-summary-low-unread-face | 812 | (defface gnus-summary-low-unread |
| 746 | '((t | 813 | '((t |
| 747 | (:italic t))) | 814 | (:italic t))) |
| 748 | "Face used for low interest unread articles." | 815 | "Face used for low interest unread articles." |
| 749 | :group 'gnus-summary) | 816 | :group 'gnus-summary) |
| 817 | ;; backward-compatibility alias | ||
| 818 | (put 'gnus-summary-low-unread-face 'face-alias 'gnus-summary-low-unread) | ||
| 750 | 819 | ||
| 751 | (defface gnus-summary-normal-unread-face | 820 | (defface gnus-summary-normal-unread |
| 752 | '((t | 821 | '((t |
| 753 | ())) | 822 | ())) |
| 754 | "Face used for normal interest unread articles." | 823 | "Face used for normal interest unread articles." |
| 755 | :group 'gnus-summary) | 824 | :group 'gnus-summary) |
| 825 | ;; backward-compatibility alias | ||
| 826 | (put 'gnus-summary-normal-unread-face 'face-alias 'gnus-summary-normal-unread) | ||
| 756 | 827 | ||
| 757 | (defface gnus-summary-high-read-face | 828 | (defface gnus-summary-high-read |
| 758 | '((((class color) | 829 | '((((class color) |
| 759 | (background dark)) | 830 | (background dark)) |
| 760 | (:foreground "PaleGreen" | 831 | (:foreground "PaleGreen" |
| @@ -767,8 +838,10 @@ be set in `.emacs' instead." | |||
| 767 | (:bold t))) | 838 | (:bold t))) |
| 768 | "Face used for high interest read articles." | 839 | "Face used for high interest read articles." |
| 769 | :group 'gnus-summary) | 840 | :group 'gnus-summary) |
| 841 | ;; backward-compatibility alias | ||
| 842 | (put 'gnus-summary-high-read-face 'face-alias 'gnus-summary-high-read) | ||
| 770 | 843 | ||
| 771 | (defface gnus-summary-low-read-face | 844 | (defface gnus-summary-low-read |
| 772 | '((((class color) | 845 | '((((class color) |
| 773 | (background dark)) | 846 | (background dark)) |
| 774 | (:foreground "PaleGreen" | 847 | (:foreground "PaleGreen" |
| @@ -781,8 +854,10 @@ be set in `.emacs' instead." | |||
| 781 | (:italic t))) | 854 | (:italic t))) |
| 782 | "Face used for low interest read articles." | 855 | "Face used for low interest read articles." |
| 783 | :group 'gnus-summary) | 856 | :group 'gnus-summary) |
| 857 | ;; backward-compatibility alias | ||
| 858 | (put 'gnus-summary-low-read-face 'face-alias 'gnus-summary-low-read) | ||
| 784 | 859 | ||
| 785 | (defface gnus-summary-normal-read-face | 860 | (defface gnus-summary-normal-read |
| 786 | '((((class color) | 861 | '((((class color) |
| 787 | (background dark)) | 862 | (background dark)) |
| 788 | (:foreground "PaleGreen")) | 863 | (:foreground "PaleGreen")) |
| @@ -793,6 +868,8 @@ be set in `.emacs' instead." | |||
| 793 | ())) | 868 | ())) |
| 794 | "Face used for normal interest read articles." | 869 | "Face used for normal interest read articles." |
| 795 | :group 'gnus-summary) | 870 | :group 'gnus-summary) |
| 871 | ;; backward-compatibility alias | ||
| 872 | (put 'gnus-summary-normal-read-face 'face-alias 'gnus-summary-normal-read) | ||
| 796 | 873 | ||
| 797 | 874 | ||
| 798 | ;;; | 875 | ;;; |
| @@ -836,7 +913,7 @@ be set in `.emacs' instead." | |||
| 836 | (eval-and-compile | 913 | (eval-and-compile |
| 837 | (autoload 'gnus-play-jingle "gnus-audio")) | 914 | (autoload 'gnus-play-jingle "gnus-audio")) |
| 838 | 915 | ||
| 839 | (defface gnus-splash-face | 916 | (defface gnus-splash |
| 840 | '((((class color) | 917 | '((((class color) |
| 841 | (background dark)) | 918 | (background dark)) |
| 842 | (:foreground "#888888")) | 919 | (:foreground "#888888")) |
| @@ -847,6 +924,8 @@ be set in `.emacs' instead." | |||
| 847 | ())) | 924 | ())) |
| 848 | "Face for the splash screen." | 925 | "Face for the splash screen." |
| 849 | :group 'gnus) | 926 | :group 'gnus) |
| 927 | ;; backward-compatibility alias | ||
| 928 | (put 'gnus-splash-face 'face-alias 'gnus-splash) | ||
| 850 | 929 | ||
| 851 | (defun gnus-splash () | 930 | (defun gnus-splash () |
| 852 | (save-excursion | 931 | (save-excursion |
| @@ -925,11 +1004,11 @@ be set in `.emacs' instead." | |||
| 925 | ("background" . ,(face-background 'default)))) | 1004 | ("background" . ,(face-background 'default)))) |
| 926 | (:type pbm :file "gnus.pbm" | 1005 | (:type pbm :file "gnus.pbm" |
| 927 | ;; Account for the pbm's blackground. | 1006 | ;; Account for the pbm's blackground. |
| 928 | :background ,(face-foreground 'gnus-splash-face) | 1007 | :background ,(face-foreground 'gnus-splash) |
| 929 | :foreground ,(face-background 'default)) | 1008 | :foreground ,(face-background 'default)) |
| 930 | (:type xbm :file "gnus.xbm" | 1009 | (:type xbm :file "gnus.xbm" |
| 931 | ;; Account for the xbm's blackground. | 1010 | ;; Account for the xbm's blackground. |
| 932 | :background ,(face-foreground 'gnus-splash-face) | 1011 | :background ,(face-foreground 'gnus-splash) |
| 933 | :foreground ,(face-background 'default)))))) | 1012 | :foreground ,(face-background 'default)))))) |
| 934 | (when image | 1013 | (when image |
| 935 | (let ((size (image-size image))) | 1014 | (let ((size (image-size image))) |
| @@ -973,7 +1052,7 @@ be set in `.emacs' instead." | |||
| 973 | (rest (- wheight pheight))) | 1052 | (rest (- wheight pheight))) |
| 974 | (insert (make-string (max 0 (* 2 (/ rest 3))) ?\n))) | 1053 | (insert (make-string (max 0 (* 2 (/ rest 3))) ?\n))) |
| 975 | ;; Fontify some. | 1054 | ;; Fontify some. |
| 976 | (put-text-property (point-min) (point-max) 'face 'gnus-splash-face) | 1055 | (put-text-property (point-min) (point-max) 'face 'gnus-splash) |
| 977 | (setq gnus-simple-splash t))) | 1056 | (setq gnus-simple-splash t))) |
| 978 | (goto-char (point-min)) | 1057 | (goto-char (point-min)) |
| 979 | (setq mode-line-buffer-identification (concat " " gnus-version)) | 1058 | (setq mode-line-buffer-identification (concat " " gnus-version)) |
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index b65eec7ec12..7b8a289a4e4 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el | |||
| @@ -1124,7 +1124,7 @@ starting with `not' and followed by regexps." | |||
| 1124 | table) | 1124 | table) |
| 1125 | "Syntax table used while in Message mode.") | 1125 | "Syntax table used while in Message mode.") |
| 1126 | 1126 | ||
| 1127 | (defface message-header-to-face | 1127 | (defface message-header-to |
| 1128 | '((((class color) | 1128 | '((((class color) |
| 1129 | (background dark)) | 1129 | (background dark)) |
| 1130 | (:foreground "green2" :bold t)) | 1130 | (:foreground "green2" :bold t)) |
| @@ -1135,8 +1135,10 @@ starting with `not' and followed by regexps." | |||
| 1135 | (:bold t :italic t))) | 1135 | (:bold t :italic t))) |
| 1136 | "Face used for displaying From headers." | 1136 | "Face used for displaying From headers." |
| 1137 | :group 'message-faces) | 1137 | :group 'message-faces) |
| 1138 | ;; backward-compatibility alias | ||
| 1139 | (put 'message-header-to-face 'face-alias 'message-header-to) | ||
| 1138 | 1140 | ||
| 1139 | (defface message-header-cc-face | 1141 | (defface message-header-cc |
| 1140 | '((((class color) | 1142 | '((((class color) |
| 1141 | (background dark)) | 1143 | (background dark)) |
| 1142 | (:foreground "green4" :bold t)) | 1144 | (:foreground "green4" :bold t)) |
| @@ -1147,8 +1149,10 @@ starting with `not' and followed by regexps." | |||
| 1147 | (:bold t))) | 1149 | (:bold t))) |
| 1148 | "Face used for displaying Cc headers." | 1150 | "Face used for displaying Cc headers." |
| 1149 | :group 'message-faces) | 1151 | :group 'message-faces) |
| 1152 | ;; backward-compatibility alias | ||
| 1153 | (put 'message-header-cc-face 'face-alias 'message-header-cc) | ||
| 1150 | 1154 | ||
| 1151 | (defface message-header-subject-face | 1155 | (defface message-header-subject |
| 1152 | '((((class color) | 1156 | '((((class color) |
| 1153 | (background dark)) | 1157 | (background dark)) |
| 1154 | (:foreground "green3")) | 1158 | (:foreground "green3")) |
| @@ -1159,8 +1163,10 @@ starting with `not' and followed by regexps." | |||
| 1159 | (:bold t))) | 1163 | (:bold t))) |
| 1160 | "Face used for displaying subject headers." | 1164 | "Face used for displaying subject headers." |
| 1161 | :group 'message-faces) | 1165 | :group 'message-faces) |
| 1166 | ;; backward-compatibility alias | ||
| 1167 | (put 'message-header-subject-face 'face-alias 'message-header-subject) | ||
| 1162 | 1168 | ||
| 1163 | (defface message-header-newsgroups-face | 1169 | (defface message-header-newsgroups |
| 1164 | '((((class color) | 1170 | '((((class color) |
| 1165 | (background dark)) | 1171 | (background dark)) |
| 1166 | (:foreground "yellow" :bold t :italic t)) | 1172 | (:foreground "yellow" :bold t :italic t)) |
| @@ -1171,8 +1177,10 @@ starting with `not' and followed by regexps." | |||
| 1171 | (:bold t :italic t))) | 1177 | (:bold t :italic t))) |
| 1172 | "Face used for displaying newsgroups headers." | 1178 | "Face used for displaying newsgroups headers." |
| 1173 | :group 'message-faces) | 1179 | :group 'message-faces) |
| 1180 | ;; backward-compatibility alias | ||
| 1181 | (put 'message-header-newsgroups-face 'face-alias 'message-header-newsgroups) | ||
| 1174 | 1182 | ||
| 1175 | (defface message-header-other-face | 1183 | (defface message-header-other |
| 1176 | '((((class color) | 1184 | '((((class color) |
| 1177 | (background dark)) | 1185 | (background dark)) |
| 1178 | (:foreground "#b00000")) | 1186 | (:foreground "#b00000")) |
| @@ -1183,8 +1191,10 @@ starting with `not' and followed by regexps." | |||
| 1183 | (:bold t :italic t))) | 1191 | (:bold t :italic t))) |
| 1184 | "Face used for displaying newsgroups headers." | 1192 | "Face used for displaying newsgroups headers." |
| 1185 | :group 'message-faces) | 1193 | :group 'message-faces) |
| 1194 | ;; backward-compatibility alias | ||
| 1195 | (put 'message-header-other-face 'face-alias 'message-header-other) | ||
| 1186 | 1196 | ||
| 1187 | (defface message-header-name-face | 1197 | (defface message-header-name |
| 1188 | '((((class color) | 1198 | '((((class color) |
| 1189 | (background dark)) | 1199 | (background dark)) |
| 1190 | (:foreground "DarkGreen")) | 1200 | (:foreground "DarkGreen")) |
| @@ -1195,8 +1205,10 @@ starting with `not' and followed by regexps." | |||
| 1195 | (:bold t))) | 1205 | (:bold t))) |
| 1196 | "Face used for displaying header names." | 1206 | "Face used for displaying header names." |
| 1197 | :group 'message-faces) | 1207 | :group 'message-faces) |
| 1208 | ;; backward-compatibility alias | ||
| 1209 | (put 'message-header-name-face 'face-alias 'message-header-name) | ||
| 1198 | 1210 | ||
| 1199 | (defface message-header-xheader-face | 1211 | (defface message-header-xheader |
| 1200 | '((((class color) | 1212 | '((((class color) |
| 1201 | (background dark)) | 1213 | (background dark)) |
| 1202 | (:foreground "blue")) | 1214 | (:foreground "blue")) |
| @@ -1207,8 +1219,10 @@ starting with `not' and followed by regexps." | |||
| 1207 | (:bold t))) | 1219 | (:bold t))) |
| 1208 | "Face used for displaying X-Header headers." | 1220 | "Face used for displaying X-Header headers." |
| 1209 | :group 'message-faces) | 1221 | :group 'message-faces) |
| 1222 | ;; backward-compatibility alias | ||
| 1223 | (put 'message-header-xheader-face 'face-alias 'message-header-xheader) | ||
| 1210 | 1224 | ||
| 1211 | (defface message-separator-face | 1225 | (defface message-separator |
| 1212 | '((((class color) | 1226 | '((((class color) |
| 1213 | (background dark)) | 1227 | (background dark)) |
| 1214 | (:foreground "blue3")) | 1228 | (:foreground "blue3")) |
| @@ -1219,8 +1233,10 @@ starting with `not' and followed by regexps." | |||
| 1219 | (:bold t))) | 1233 | (:bold t))) |
| 1220 | "Face used for displaying the separator." | 1234 | "Face used for displaying the separator." |
| 1221 | :group 'message-faces) | 1235 | :group 'message-faces) |
| 1236 | ;; backward-compatibility alias | ||
| 1237 | (put 'message-separator-face 'face-alias 'message-separator) | ||
| 1222 | 1238 | ||
| 1223 | (defface message-cited-text-face | 1239 | (defface message-cited-text |
| 1224 | '((((class color) | 1240 | '((((class color) |
| 1225 | (background dark)) | 1241 | (background dark)) |
| 1226 | (:foreground "red")) | 1242 | (:foreground "red")) |
| @@ -1231,8 +1247,10 @@ starting with `not' and followed by regexps." | |||
| 1231 | (:bold t))) | 1247 | (:bold t))) |
| 1232 | "Face used for displaying cited text names." | 1248 | "Face used for displaying cited text names." |
| 1233 | :group 'message-faces) | 1249 | :group 'message-faces) |
| 1250 | ;; backward-compatibility alias | ||
| 1251 | (put 'message-cited-text-face 'face-alias 'message-cited-text) | ||
| 1234 | 1252 | ||
| 1235 | (defface message-mml-face | 1253 | (defface message-mml |
| 1236 | '((((class color) | 1254 | '((((class color) |
| 1237 | (background dark)) | 1255 | (background dark)) |
| 1238 | (:foreground "ForestGreen")) | 1256 | (:foreground "ForestGreen")) |
| @@ -1243,6 +1261,8 @@ starting with `not' and followed by regexps." | |||
| 1243 | (:bold t))) | 1261 | (:bold t))) |
| 1244 | "Face used for displaying MML." | 1262 | "Face used for displaying MML." |
| 1245 | :group 'message-faces) | 1263 | :group 'message-faces) |
| 1264 | ;; backward-compatibility alias | ||
| 1265 | (put 'message-mml-face 'face-alias 'message-mml) | ||
| 1246 | 1266 | ||
| 1247 | (defun message-font-lock-make-header-matcher (regexp) | 1267 | (defun message-font-lock-make-header-matcher (regexp) |
| 1248 | (let ((form | 1268 | (let ((form |
| @@ -1266,41 +1286,41 @@ starting with `not' and followed by regexps." | |||
| 1266 | (let ((content "[ \t]*\\(.+\\(\n[ \t].*\\)*\\)\n?")) | 1286 | (let ((content "[ \t]*\\(.+\\(\n[ \t].*\\)*\\)\n?")) |
| 1267 | `((,(message-font-lock-make-header-matcher | 1287 | `((,(message-font-lock-make-header-matcher |
| 1268 | (concat "^\\([Tt]o:\\)" content)) | 1288 | (concat "^\\([Tt]o:\\)" content)) |
| 1269 | (1 'message-header-name-face) | 1289 | (1 'message-header-name) |
| 1270 | (2 'message-header-to-face nil t)) | 1290 | (2 'message-header-to nil t)) |
| 1271 | (,(message-font-lock-make-header-matcher | 1291 | (,(message-font-lock-make-header-matcher |
| 1272 | (concat "^\\(^[GBF]?[Cc][Cc]:\\|^[Rr]eply-[Tt]o:\\)" content)) | 1292 | (concat "^\\(^[GBF]?[Cc][Cc]:\\|^[Rr]eply-[Tt]o:\\)" content)) |
| 1273 | (1 'message-header-name-face) | 1293 | (1 'message-header-name) |
| 1274 | (2 'message-header-cc-face nil t)) | 1294 | (2 'message-header-cc nil t)) |
| 1275 | (,(message-font-lock-make-header-matcher | 1295 | (,(message-font-lock-make-header-matcher |
| 1276 | (concat "^\\([Ss]ubject:\\)" content)) | 1296 | (concat "^\\([Ss]ubject:\\)" content)) |
| 1277 | (1 'message-header-name-face) | 1297 | (1 'message-header-name) |
| 1278 | (2 'message-header-subject-face nil t)) | 1298 | (2 'message-header-subject nil t)) |
| 1279 | (,(message-font-lock-make-header-matcher | 1299 | (,(message-font-lock-make-header-matcher |
| 1280 | (concat "^\\([Nn]ewsgroups:\\|Followup-[Tt]o:\\)" content)) | 1300 | (concat "^\\([Nn]ewsgroups:\\|Followup-[Tt]o:\\)" content)) |
| 1281 | (1 'message-header-name-face) | 1301 | (1 'message-header-name) |
| 1282 | (2 'message-header-newsgroups-face nil t)) | 1302 | (2 'message-header-newsgroups nil t)) |
| 1283 | (,(message-font-lock-make-header-matcher | 1303 | (,(message-font-lock-make-header-matcher |
| 1284 | (concat "^\\([A-Z][^: \n\t]+:\\)" content)) | 1304 | (concat "^\\([A-Z][^: \n\t]+:\\)" content)) |
| 1285 | (1 'message-header-name-face) | 1305 | (1 'message-header-name) |
| 1286 | (2 'message-header-other-face nil t)) | 1306 | (2 'message-header-other nil t)) |
| 1287 | (,(message-font-lock-make-header-matcher | 1307 | (,(message-font-lock-make-header-matcher |
| 1288 | (concat "^\\(X-[A-Za-z0-9-]+:\\|In-Reply-To:\\)" content)) | 1308 | (concat "^\\(X-[A-Za-z0-9-]+:\\|In-Reply-To:\\)" content)) |
| 1289 | (1 'message-header-name-face) | 1309 | (1 'message-header-name) |
| 1290 | (2 'message-header-name-face)) | 1310 | (2 'message-header-name)) |
| 1291 | ,@(if (and mail-header-separator | 1311 | ,@(if (and mail-header-separator |
| 1292 | (not (equal mail-header-separator ""))) | 1312 | (not (equal mail-header-separator ""))) |
| 1293 | `((,(concat "^\\(" (regexp-quote mail-header-separator) "\\)$") | 1313 | `((,(concat "^\\(" (regexp-quote mail-header-separator) "\\)$") |
| 1294 | 1 'message-separator-face)) | 1314 | 1 'message-separator)) |
| 1295 | nil) | 1315 | nil) |
| 1296 | ((lambda (limit) | 1316 | ((lambda (limit) |
| 1297 | (re-search-forward (concat "^\\(" | 1317 | (re-search-forward (concat "^\\(" |
| 1298 | message-cite-prefix-regexp | 1318 | message-cite-prefix-regexp |
| 1299 | "\\).*") | 1319 | "\\).*") |
| 1300 | limit t)) | 1320 | limit t)) |
| 1301 | (0 'message-cited-text-face)) | 1321 | (0 'message-cited-text)) |
| 1302 | ("<#/?\\(multipart\\|part\\|external\\|mml\\|secure\\)[^>]*>" | 1322 | ("<#/?\\(multipart\\|part\\|external\\|mml\\|secure\\)[^>]*>" |
| 1303 | (0 'message-mml-face)))) | 1323 | (0 'message-mml)))) |
| 1304 | "Additional expressions to highlight in Message mode.") | 1324 | "Additional expressions to highlight in Message mode.") |
| 1305 | 1325 | ||
| 1306 | 1326 | ||
diff --git a/lisp/gnus/mm-extern.el b/lisp/gnus/mm-extern.el index 994dd1d9c02..f6ec883de94 100644 --- a/lisp/gnus/mm-extern.el +++ b/lisp/gnus/mm-extern.el | |||
| @@ -52,7 +52,7 @@ | |||
| 52 | (mm-disable-multibyte) | 52 | (mm-disable-multibyte) |
| 53 | (if (file-exists-p name) | 53 | (if (file-exists-p name) |
| 54 | (mm-insert-file-contents name nil nil nil nil t) | 54 | (mm-insert-file-contents name nil nil nil nil t) |
| 55 | (error (format "File %s is gone" name))))) | 55 | (error "File %s is gone" name)))) |
| 56 | 56 | ||
| 57 | (defun mm-extern-url (handle) | 57 | (defun mm-extern-url (handle) |
| 58 | (erase-buffer) | 58 | (erase-buffer) |
| @@ -124,7 +124,7 @@ If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing." | |||
| 124 | handles) | 124 | handles) |
| 125 | (unless (mm-handle-cache handle) | 125 | (unless (mm-handle-cache handle) |
| 126 | (unless func | 126 | (unless func |
| 127 | (error (format "Access type (%s) is not supported" access-type))) | 127 | (error "Access type (%s) is not supported" access-type)) |
| 128 | (with-temp-buffer | 128 | (with-temp-buffer |
| 129 | (mm-insert-part handle) | 129 | (mm-insert-part handle) |
| 130 | (goto-char (point-max)) | 130 | (goto-char (point-max)) |
diff --git a/lisp/gnus/pop3.el b/lisp/gnus/pop3.el index 637421c46d9..b8d827e7d9a 100644 --- a/lisp/gnus/pop3.el +++ b/lisp/gnus/pop3.el | |||
| @@ -385,7 +385,7 @@ If NOW, use that time instead." | |||
| 385 | (pop3-send-command process (format "USER %s" user)) | 385 | (pop3-send-command process (format "USER %s" user)) |
| 386 | (let ((response (pop3-read-response process t))) | 386 | (let ((response (pop3-read-response process t))) |
| 387 | (if (not (and response (string-match "+OK" response))) | 387 | (if (not (and response (string-match "+OK" response))) |
| 388 | (error (format "USER %s not valid" user))))) | 388 | (error "USER %s not valid" user)))) |
| 389 | 389 | ||
| 390 | (defun pop3-pass (process) | 390 | (defun pop3-pass (process) |
| 391 | "Send authentication information to the server." | 391 | "Send authentication information to the server." |
diff --git a/lisp/gnus/sieve-mode.el b/lisp/gnus/sieve-mode.el index c4d019da6df..02bb33a3810 100644 --- a/lisp/gnus/sieve-mode.el +++ b/lisp/gnus/sieve-mode.el | |||
| @@ -65,10 +65,10 @@ | |||
| 65 | 65 | ||
| 66 | ;; Font-lock | 66 | ;; Font-lock |
| 67 | 67 | ||
| 68 | (defvar sieve-control-commands-face 'sieve-control-commands-face | 68 | (defvar sieve-control-commands-face 'sieve-control-commands |
| 69 | "Face name used for Sieve Control Commands.") | 69 | "Face name used for Sieve Control Commands.") |
| 70 | 70 | ||
| 71 | (defface sieve-control-commands-face | 71 | (defface sieve-control-commands |
| 72 | '((((type tty) (class color)) (:foreground "blue" :weight light)) | 72 | '((((type tty) (class color)) (:foreground "blue" :weight light)) |
| 73 | (((class grayscale) (background light)) (:foreground "LightGray" :bold t)) | 73 | (((class grayscale) (background light)) (:foreground "LightGray" :bold t)) |
| 74 | (((class grayscale) (background dark)) (:foreground "DimGray" :bold t)) | 74 | (((class grayscale) (background dark)) (:foreground "DimGray" :bold t)) |
| @@ -77,22 +77,26 @@ | |||
| 77 | (t (:bold t))) | 77 | (t (:bold t))) |
| 78 | "Face used for Sieve Control Commands." | 78 | "Face used for Sieve Control Commands." |
| 79 | :group 'sieve) | 79 | :group 'sieve) |
| 80 | ;; backward-compatibility alias | ||
| 81 | (put 'sieve-control-commands-face 'face-alias 'sieve-control-commands) | ||
| 80 | 82 | ||
| 81 | (defvar sieve-action-commands-face 'sieve-action-commands-face | 83 | (defvar sieve-action-commands-face 'sieve-action-commands |
| 82 | "Face name used for Sieve Action Commands.") | 84 | "Face name used for Sieve Action Commands.") |
| 83 | 85 | ||
| 84 | (defface sieve-action-commands-face | 86 | (defface sieve-action-commands |
| 85 | '((((type tty) (class color)) (:foreground "blue" :weight bold)) | 87 | '((((type tty) (class color)) (:foreground "blue" :weight bold)) |
| 86 | (((class color) (background light)) (:foreground "Blue")) | 88 | (((class color) (background light)) (:foreground "Blue")) |
| 87 | (((class color) (background dark)) (:foreground "LightSkyBlue")) | 89 | (((class color) (background dark)) (:foreground "LightSkyBlue")) |
| 88 | (t (:inverse-video t :bold t))) | 90 | (t (:inverse-video t :bold t))) |
| 89 | "Face used for Sieve Action Commands." | 91 | "Face used for Sieve Action Commands." |
| 90 | :group 'sieve) | 92 | :group 'sieve) |
| 93 | ;; backward-compatibility alias | ||
| 94 | (put 'sieve-action-commands-face 'face-alias 'sieve-action-commands) | ||
| 91 | 95 | ||
| 92 | (defvar sieve-test-commands-face 'sieve-test-commands-face | 96 | (defvar sieve-test-commands-face 'sieve-test-commands |
| 93 | "Face name used for Sieve Test Commands.") | 97 | "Face name used for Sieve Test Commands.") |
| 94 | 98 | ||
| 95 | (defface sieve-test-commands-face | 99 | (defface sieve-test-commands |
| 96 | '((((type tty) (class color)) (:foreground "magenta")) | 100 | '((((type tty) (class color)) (:foreground "magenta")) |
| 97 | (((class grayscale) (background light)) | 101 | (((class grayscale) (background light)) |
| 98 | (:foreground "LightGray" :bold t :underline t)) | 102 | (:foreground "LightGray" :bold t :underline t)) |
| @@ -103,11 +107,13 @@ | |||
| 103 | (t (:bold t :underline t))) | 107 | (t (:bold t :underline t))) |
| 104 | "Face used for Sieve Test Commands." | 108 | "Face used for Sieve Test Commands." |
| 105 | :group 'sieve) | 109 | :group 'sieve) |
| 110 | ;; backward-compatibility alias | ||
| 111 | (put 'sieve-test-commands-face 'face-alias 'sieve-test-commands) | ||
| 106 | 112 | ||
| 107 | (defvar sieve-tagged-arguments-face 'sieve-tagged-arguments-face | 113 | (defvar sieve-tagged-arguments-face 'sieve-tagged-arguments |
| 108 | "Face name used for Sieve Tagged Arguments.") | 114 | "Face name used for Sieve Tagged Arguments.") |
| 109 | 115 | ||
| 110 | (defface sieve-tagged-arguments-face | 116 | (defface sieve-tagged-arguments |
| 111 | '((((type tty) (class color)) (:foreground "cyan" :weight bold)) | 117 | '((((type tty) (class color)) (:foreground "cyan" :weight bold)) |
| 112 | (((class grayscale) (background light)) (:foreground "LightGray" :bold t)) | 118 | (((class grayscale) (background light)) (:foreground "LightGray" :bold t)) |
| 113 | (((class grayscale) (background dark)) (:foreground "DimGray" :bold t)) | 119 | (((class grayscale) (background dark)) (:foreground "DimGray" :bold t)) |
| @@ -116,6 +122,8 @@ | |||
| 116 | (t (:bold t))) | 122 | (t (:bold t))) |
| 117 | "Face used for Sieve Tagged Arguments." | 123 | "Face used for Sieve Tagged Arguments." |
| 118 | :group 'sieve) | 124 | :group 'sieve) |
| 125 | ;; backward-compatibility alias | ||
| 126 | (put 'sieve-tagged-arguments-face 'face-alias 'sieve-tagged-arguments) | ||
| 119 | 127 | ||
| 120 | 128 | ||
| 121 | (defconst sieve-font-lock-keywords | 129 | (defconst sieve-font-lock-keywords |
diff --git a/lisp/gnus/spam.el b/lisp/gnus/spam.el index 5e73c2deb2e..c1d6d4a4eb7 100644 --- a/lisp/gnus/spam.el +++ b/lisp/gnus/spam.el | |||
| @@ -300,7 +300,7 @@ All unmarked article in such group receive the spam mark on group entry." | |||
| 300 | :type '(radio (const nil) regexp) | 300 | :type '(radio (const nil) regexp) |
| 301 | :group 'spam) | 301 | :group 'spam) |
| 302 | 302 | ||
| 303 | (defface spam-face | 303 | (defface spam |
| 304 | '((((class color) (type tty) (background dark)) | 304 | '((((class color) (type tty) (background dark)) |
| 305 | (:foreground "gray80" :background "gray50")) | 305 | (:foreground "gray80" :background "gray50")) |
| 306 | (((class color) (type tty) (background light)) | 306 | (((class color) (type tty) (background light)) |
| @@ -312,8 +312,10 @@ All unmarked article in such group receive the spam mark on group entry." | |||
| 312 | (t :inverse-video t)) | 312 | (t :inverse-video t)) |
| 313 | "Face for spam-marked articles." | 313 | "Face for spam-marked articles." |
| 314 | :group 'spam) | 314 | :group 'spam) |
| 315 | ;; backward-compatibility alias | ||
| 316 | (put 'spam-face 'face-alias 'spam) | ||
| 315 | 317 | ||
| 316 | (defcustom spam-face 'spam-face | 318 | (defcustom spam-face 'spam |
| 317 | "Face for spam-marked articles." | 319 | "Face for spam-marked articles." |
| 318 | :type 'face | 320 | :type 'face |
| 319 | :group 'spam) | 321 | :group 'spam) |
| @@ -1805,8 +1807,8 @@ REMOVE not nil, remove the ADDRESSES." | |||
| 1805 | "Install the spam.el hooks and do other initialization" | 1807 | "Install the spam.el hooks and do other initialization" |
| 1806 | (interactive) | 1808 | (interactive) |
| 1807 | (setq spam-install-hooks t) | 1809 | (setq spam-install-hooks t) |
| 1808 | ;; TODO: How do we redo this every time spam-face is customized? | 1810 | ;; TODO: How do we redo this every time the `spam' face is customized? |
| 1809 | (push '((eq mark gnus-spam-mark) . spam-face) | 1811 | (push '((eq mark gnus-spam-mark) . spam) |
| 1810 | gnus-summary-highlight) | 1812 | gnus-summary-highlight) |
| 1811 | ;; Add hooks for loading and saving the spam stats | 1813 | ;; Add hooks for loading and saving the spam stats |
| 1812 | (add-hook 'gnus-save-newsrc-hook 'spam-maybe-spam-stat-save) | 1814 | (add-hook 'gnus-save-newsrc-hook 'spam-maybe-spam-stat-save) |
diff --git a/lisp/ido.el b/lisp/ido.el index 2d9313bb0ea..f5941bf4ef2 100644 --- a/lisp/ido.el +++ b/lisp/ido.el | |||
| @@ -770,6 +770,12 @@ subdirs in the alternatives." | |||
| 770 | "*Font used by ido for highlighting its indicators." | 770 | "*Font used by ido for highlighting its indicators." |
| 771 | :group 'ido) | 771 | :group 'ido) |
| 772 | 772 | ||
| 773 | (defface ido-incomplete-regexp | ||
| 774 | '((t | ||
| 775 | (:inherit font-lock-warning-face))) | ||
| 776 | "Ido face for indicating incomplete regexps." | ||
| 777 | :group 'ido) | ||
| 778 | |||
| 773 | (defcustom ido-make-file-list-hook nil | 779 | (defcustom ido-make-file-list-hook nil |
| 774 | "*List of functions to run when the list of matching files is created. | 780 | "*List of functions to run when the list of matching files is created. |
| 775 | Each function on the list may modify the dynamically bound variable | 781 | Each function on the list may modify the dynamically bound variable |
| @@ -959,6 +965,8 @@ selected.") | |||
| 959 | Is set by ido functions to the current minibuffer-depth, so that | 965 | Is set by ido functions to the current minibuffer-depth, so that |
| 960 | it doesn't interfere with other minibuffer usage.") | 966 | it doesn't interfere with other minibuffer usage.") |
| 961 | 967 | ||
| 968 | (defvar ido-incomplete-regexp nil | ||
| 969 | "Non-nil if an incomplete regexp is entered.") | ||
| 962 | 970 | ||
| 963 | ;;; Variables with dynamic bindings. | 971 | ;;; Variables with dynamic bindings. |
| 964 | ;;; Declared here to keep the byte compiler quiet. | 972 | ;;; Declared here to keep the byte compiler quiet. |
| @@ -2170,6 +2178,9 @@ If INITIAL is non-nil, it specifies the initial input string." | |||
| 2170 | (interactive) | 2178 | (interactive) |
| 2171 | (let (res) | 2179 | (let (res) |
| 2172 | (cond | 2180 | (cond |
| 2181 | (ido-incomplete-regexp | ||
| 2182 | ;; Do nothing | ||
| 2183 | ) | ||
| 2173 | ((and (memq ido-cur-item '(file dir)) | 2184 | ((and (memq ido-cur-item '(file dir)) |
| 2174 | (string-match "[$]" ido-text)) | 2185 | (string-match "[$]" ido-text)) |
| 2175 | (let ((evar (substitute-in-file-name (concat ido-current-directory ido-text)))) | 2186 | (let ((evar (substitute-in-file-name (concat ido-current-directory ido-text)))) |
| @@ -2394,8 +2405,9 @@ timestamp has not changed (e.g. with ftp or on Windows)." | |||
| 2394 | (defun ido-exit-minibuffer () | 2405 | (defun ido-exit-minibuffer () |
| 2395 | "Exit minibuffer, but make sure we have a match if one is needed." | 2406 | "Exit minibuffer, but make sure we have a match if one is needed." |
| 2396 | (interactive) | 2407 | (interactive) |
| 2397 | (if (or (not ido-require-match) | 2408 | (if (and (or (not ido-require-match) |
| 2398 | (ido-existing-item-p)) | 2409 | (ido-existing-item-p)) |
| 2410 | (not ido-incomplete-regexp)) | ||
| 2399 | (exit-minibuffer))) | 2411 | (exit-minibuffer))) |
| 2400 | 2412 | ||
| 2401 | (defun ido-select-text () | 2413 | (defun ido-select-text () |
| @@ -3275,22 +3287,30 @@ for first matching file." | |||
| 3275 | full-matches | 3287 | full-matches |
| 3276 | prefix-matches | 3288 | prefix-matches |
| 3277 | matches) | 3289 | matches) |
| 3278 | (mapcar | 3290 | (setq ido-incomplete-regexp nil) |
| 3279 | (lambda (item) | 3291 | (condition-case error |
| 3280 | (let ((name (ido-name item))) | 3292 | (mapcar |
| 3281 | (if (and (or non-prefix-dot | 3293 | (lambda (item) |
| 3282 | (if (= (aref ido-text 0) ?.) | 3294 | (let ((name (ido-name item))) |
| 3283 | (= (aref name 0) ?.) | 3295 | (if (and (or non-prefix-dot |
| 3284 | (/= (aref name 0) ?.))) | 3296 | (if (= (aref ido-text 0) ?.) |
| 3285 | (string-match re name)) | 3297 | (= (aref name 0) ?.) |
| 3286 | (cond | 3298 | (/= (aref name 0) ?.))) |
| 3287 | ((and full-re (string-match full-re name)) | 3299 | (string-match re name)) |
| 3288 | (setq full-matches (cons item full-matches))) | 3300 | (cond |
| 3289 | ((and prefix-re (string-match prefix-re name)) | 3301 | ((and full-re (string-match full-re name)) |
| 3290 | (setq prefix-matches (cons item prefix-matches))) | 3302 | (setq full-matches (cons item full-matches))) |
| 3291 | (t (setq matches (cons item matches)))))) | 3303 | ((and prefix-re (string-match prefix-re name)) |
| 3292 | t) | 3304 | (setq prefix-matches (cons item prefix-matches))) |
| 3293 | items) | 3305 | (t (setq matches (cons item matches)))))) |
| 3306 | t) | ||
| 3307 | items) | ||
| 3308 | (invalid-regexp | ||
| 3309 | (setq ido-incomplete-regexp t | ||
| 3310 | ;; Consider the invalid regexp message internally as a | ||
| 3311 | ;; special-case single match, and handle appropriately | ||
| 3312 | ;; elsewhere. | ||
| 3313 | matches (cdr error)))) | ||
| 3294 | (if prefix-matches | 3314 | (if prefix-matches |
| 3295 | (setq matches (nconc prefix-matches matches))) | 3315 | (setq matches (nconc prefix-matches matches))) |
| 3296 | (if full-matches | 3316 | (if full-matches |
| @@ -4048,7 +4068,9 @@ For details of keybindings, do `\\[describe-function] ido-find-file'." | |||
| 4048 | (setq first (format "%s" fn)) | 4068 | (setq first (format "%s" fn)) |
| 4049 | (put-text-property 0 ln 'face | 4069 | (put-text-property 0 ln 'face |
| 4050 | (if (= (length comps) 1) | 4070 | (if (= (length comps) 1) |
| 4051 | 'ido-only-match | 4071 | (if ido-incomplete-regexp |
| 4072 | 'ido-incomplete-regexp | ||
| 4073 | 'ido-only-match) | ||
| 4052 | 'ido-first-match) | 4074 | 'ido-first-match) |
| 4053 | first) | 4075 | first) |
| 4054 | (if ind (setq first (concat first ind))) | 4076 | (if ind (setq first (concat first ind))) |
| @@ -4063,14 +4085,22 @@ For details of keybindings, do `\\[describe-function] ido-find-file'." | |||
| 4063 | (ido-report-no-match | 4085 | (ido-report-no-match |
| 4064 | (nth 6 ido-decorations)) ;; [No match] | 4086 | (nth 6 ido-decorations)) ;; [No match] |
| 4065 | (t ""))) | 4087 | (t ""))) |
| 4066 | 4088 | (ido-incomplete-regexp | |
| 4089 | (concat " " (car comps))) | ||
| 4067 | ((null (cdr comps)) ;one match | 4090 | ((null (cdr comps)) ;one match |
| 4068 | (concat (if (> (length (ido-name (car comps))) (length name)) | 4091 | (concat (if (if (not ido-enable-regexp) |
| 4069 | ;; when there is one match, show the matching file name in full | 4092 | (= (length (ido-name (car comps))) (length name)) |
| 4070 | (concat (nth 4 ido-decorations) ;; [ ... ] | 4093 | ;; We can't rely on the length of the input |
| 4071 | (ido-name (car comps)) | 4094 | ;; for regexps, so explicitly check for a |
| 4072 | (nth 5 ido-decorations)) | 4095 | ;; complete match |
| 4073 | "") | 4096 | (string-match name (ido-name (car comps))) |
| 4097 | (string-equal (match-string 0 (ido-name (car comps))) | ||
| 4098 | (ido-name (car comps)))) | ||
| 4099 | "" | ||
| 4100 | ;; when there is one match, show the matching file name in full | ||
| 4101 | (concat (nth 4 ido-decorations) ;; [ ... ] | ||
| 4102 | (ido-name (car comps)) | ||
| 4103 | (nth 5 ido-decorations))) | ||
| 4074 | (if (not ido-use-faces) (nth 7 ido-decorations)))) ;; [Matched] | 4104 | (if (not ido-use-faces) (nth 7 ido-decorations)))) ;; [Matched] |
| 4075 | (t ;multiple matches | 4105 | (t ;multiple matches |
| 4076 | (let* ((items (if (> ido-max-prospects 0) (1+ ido-max-prospects) 999)) | 4106 | (let* ((items (if (> ido-max-prospects 0) (1+ ido-max-prospects) 999)) |
diff --git a/lisp/info.el b/lisp/info.el index b34fd013df3..20e031c1347 100644 --- a/lisp/info.el +++ b/lisp/info.el | |||
| @@ -83,10 +83,10 @@ The Lisp code is executed when the node is selected.") | |||
| 83 | :group 'info) | 83 | :group 'info) |
| 84 | 84 | ||
| 85 | (defface info-xref | 85 | (defface info-xref |
| 86 | '((((min-colors 88) | 86 | '((((min-colors 88) |
| 87 | (class color) (background light)) :foreground "blue1" :underline t) | 87 | (class color) (background light)) :foreground "blue1" :underline t) |
| 88 | (((class color) (background light)) :foreground "blue" :underline t) | 88 | (((class color) (background light)) :foreground "blue" :underline t) |
| 89 | (((min-colors 88) | 89 | (((min-colors 88) |
| 90 | (class color) (background dark)) :foreground "cyan1" :underline t) | 90 | (class color) (background dark)) :foreground "cyan1" :underline t) |
| 91 | (((class color) (background dark)) :foreground "cyan" :underline t) | 91 | (((class color) (background dark)) :foreground "cyan" :underline t) |
| 92 | (t :underline t)) | 92 | (t :underline t)) |
| @@ -1272,7 +1272,7 @@ any double quotes or backslashes must be escaped (\\\",\\\\)." | |||
| 1272 | ;; Hide any construct of the general form ^@[^@-^_][ ... ^@[^@-^_]], | 1272 | ;; Hide any construct of the general form ^@[^@-^_][ ... ^@[^@-^_]], |
| 1273 | ;; including one optional trailing newline. | 1273 | ;; including one optional trailing newline. |
| 1274 | (defun Info-hide-cookies-node () | 1274 | (defun Info-hide-cookies-node () |
| 1275 | "Hide unrecognised cookies in current node." | 1275 | "Hide unrecognized cookies in current node." |
| 1276 | (save-excursion | 1276 | (save-excursion |
| 1277 | (let ((inhibit-read-only t) | 1277 | (let ((inhibit-read-only t) |
| 1278 | (case-fold-search t)) | 1278 | (case-fold-search t)) |
diff --git a/lisp/language/ethio-util.el b/lisp/language/ethio-util.el index cf893ffa48b..5b017ff2f52 100644 --- a/lisp/language/ethio-util.el +++ b/lisp/language/ethio-util.el | |||
| @@ -141,7 +141,7 @@ variable.") | |||
| 141 | 141 | ||
| 142 | (defvar ethio-use-three-dot-question nil | 142 | (defvar ethio-use-three-dot-question nil |
| 143 | "*Non-nil means associate ASCII question mark with Ethiopic old style question mark (three vertically stacked dots). | 143 | "*Non-nil means associate ASCII question mark with Ethiopic old style question mark (three vertically stacked dots). |
| 144 | If nil, associate ASCII question mark with Ethiopic stylised question | 144 | If nil, associate ASCII question mark with Ethiopic stylized question |
| 145 | mark. All SERA <--> FIDEL converters refer this variable.") | 145 | mark. All SERA <--> FIDEL converters refer this variable.") |
| 146 | 146 | ||
| 147 | (defvar ethio-quote-vowel-always nil | 147 | (defvar ethio-quote-vowel-always nil |
| @@ -726,7 +726,7 @@ changing anything." | |||
| 726 | 726 | ||
| 727 | (defun ethio-tilde-escape nil | 727 | (defun ethio-tilde-escape nil |
| 728 | "Handle a SERA tilde escape in Ethiopic section and delete it. | 728 | "Handle a SERA tilde escape in Ethiopic section and delete it. |
| 729 | Delete the escape even it is not recognised." | 729 | Delete the escape even it is not recognized." |
| 730 | 730 | ||
| 731 | (let ((p (point)) command) | 731 | (let ((p (point)) command) |
| 732 | (skip-chars-forward "^ \t\n\\\\") | 732 | (skip-chars-forward "^ \t\n\\\\") |
diff --git a/lisp/longlines.el b/lisp/longlines.el index 7583e03b4b0..c6de1d2347e 100644 --- a/lisp/longlines.el +++ b/lisp/longlines.el | |||
| @@ -60,7 +60,8 @@ with differing widths." | |||
| 60 | :type 'boolean) | 60 | :type 'boolean) |
| 61 | 61 | ||
| 62 | (defcustom longlines-show-hard-newlines nil | 62 | (defcustom longlines-show-hard-newlines nil |
| 63 | "*Non-nil means each hard newline is marked with a symbol. | 63 | "*Non-nil means each hard newline is marked on the screen. |
| 64 | \(The variable `longlines-show-effect' controls what they look like.) | ||
| 64 | You can also enable the display temporarily, using the command | 65 | You can also enable the display temporarily, using the command |
| 65 | `longlines-show-hard-newlines'" | 66 | `longlines-show-hard-newlines'" |
| 66 | :group 'longlines | 67 | :group 'longlines |
| @@ -93,12 +94,12 @@ In Long Lines mode, long lines are wrapped if they extend beyond | |||
| 93 | `fill-column'. The soft newlines used for line wrapping will not | 94 | `fill-column'. The soft newlines used for line wrapping will not |
| 94 | show up when the text is yanked or saved to disk. | 95 | show up when the text is yanked or saved to disk. |
| 95 | 96 | ||
| 96 | If `longlines-auto-wrap' is non-nil, lines are automatically | 97 | If the variable `longlines-auto-wrap' is non-nil, lines are automatically |
| 97 | wrapped whenever the buffer is changed. You can always call | 98 | wrapped whenever the buffer is changed. You can always call |
| 98 | `fill-paragraph' to fill individual paragraphs. | 99 | `fill-paragraph' to fill individual paragraphs. |
| 99 | 100 | ||
| 100 | If `longlines-show-hard-newlines' is non-nil, hard newlines will | 101 | If the variable `longlines-show-hard-newlines' is non-nil, hard newlines |
| 101 | be marked by a symbol." | 102 | are indicated with a symbol." |
| 102 | :group 'longlines :lighter " ll" | 103 | :group 'longlines :lighter " ll" |
| 103 | (if longlines-mode | 104 | (if longlines-mode |
| 104 | ;; Turn on longlines mode | 105 | ;; Turn on longlines mode |
diff --git a/lisp/ls-lisp.el b/lisp/ls-lisp.el index 8944d4c20c0..2e163270f90 100644 --- a/lisp/ls-lisp.el +++ b/lisp/ls-lisp.el | |||
| @@ -451,7 +451,7 @@ SWITCHES is a list of characters. Default sorting is alphabetic." | |||
| 451 | Also, for regular files that are executable, append `*'. | 451 | Also, for regular files that are executable, append `*'. |
| 452 | The file type indicators are `/' for directories, `@' for symbolic | 452 | The file type indicators are `/' for directories, `@' for symbolic |
| 453 | links, `|' for FIFOs, `=' for sockets, and nothing for regular files. | 453 | links, `|' for FIFOs, `=' for sockets, and nothing for regular files. |
| 454 | \[But FIFOs and sockets are not recognised.] | 454 | \[But FIFOs and sockets are not recognized.] |
| 455 | FILEDATA has the form (filename . `file-attributes'). Its `cadr' is t | 455 | FILEDATA has the form (filename . `file-attributes'). Its `cadr' is t |
| 456 | for directory, string (name linked to) for symbolic link, or nil." | 456 | for directory, string (name linked to) for symbolic link, or nil." |
| 457 | (let ((dir (cadr filedata)) (file-name (car filedata))) | 457 | (let ((dir (cadr filedata)) (file-name (car filedata))) |
diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el index a6d24f58195..4084cd85cc2 100644 --- a/lisp/mail/sendmail.el +++ b/lisp/mail/sendmail.el | |||
| @@ -42,6 +42,12 @@ | |||
| 42 | :prefix "mail-" | 42 | :prefix "mail-" |
| 43 | :group 'mail) | 43 | :group 'mail) |
| 44 | 44 | ||
| 45 | (defcustom mail-setup-with-from t | ||
| 46 | "Non-nil means insert `From:' field when setting up the message." | ||
| 47 | :type 'binary | ||
| 48 | :group 'sendmail | ||
| 49 | :version "22.1") | ||
| 50 | |||
| 45 | ;;;###autoload | 51 | ;;;###autoload |
| 46 | (defcustom mail-from-style 'angles "\ | 52 | (defcustom mail-from-style 'angles "\ |
| 47 | *Specifies how \"From:\" fields look. | 53 | *Specifies how \"From:\" fields look. |
| @@ -416,6 +422,8 @@ actually occur.") | |||
| 416 | (setq mail-send-actions actions) | 422 | (setq mail-send-actions actions) |
| 417 | (setq mail-reply-action replybuffer) | 423 | (setq mail-reply-action replybuffer) |
| 418 | (goto-char (point-min)) | 424 | (goto-char (point-min)) |
| 425 | (if mail-setup-with-from | ||
| 426 | (mail-insert-from-field)) | ||
| 419 | (insert "To: ") | 427 | (insert "To: ") |
| 420 | (save-excursion | 428 | (save-excursion |
| 421 | (if to | 429 | (if to |
| @@ -884,6 +892,62 @@ instead use sendmail-coding-system to get a constant encoding | |||
| 884 | of outgoing mails regardless of the current language environment. | 892 | of outgoing mails regardless of the current language environment. |
| 885 | See also the function `select-message-coding-system'.") | 893 | See also the function `select-message-coding-system'.") |
| 886 | 894 | ||
| 895 | (defun mail-insert-from-field () | ||
| 896 | (let* ((login user-mail-address) | ||
| 897 | (fullname (user-full-name)) | ||
| 898 | (quote-fullname nil)) | ||
| 899 | (if (string-match "[^\0-\177]" fullname) | ||
| 900 | (setq fullname (rfc2047-encode-string fullname) | ||
| 901 | quote-fullname t)) | ||
| 902 | (cond ((eq mail-from-style 'angles) | ||
| 903 | (insert "From: " fullname) | ||
| 904 | (let ((fullname-start (+ (point-min) 6)) | ||
| 905 | (fullname-end (point-marker))) | ||
| 906 | (goto-char fullname-start) | ||
| 907 | ;; Look for a character that cannot appear unquoted | ||
| 908 | ;; according to RFC 822. | ||
| 909 | (if (or (re-search-forward "[^- !#-'*+/-9=?A-Z^-~]" | ||
| 910 | fullname-end 1) | ||
| 911 | quote-fullname) | ||
| 912 | (progn | ||
| 913 | ;; Quote fullname, escaping specials. | ||
| 914 | (goto-char fullname-start) | ||
| 915 | (insert "\"") | ||
| 916 | (while (re-search-forward "[\"\\]" | ||
| 917 | fullname-end 1) | ||
| 918 | (replace-match "\\\\\\&" t)) | ||
| 919 | (insert "\"")))) | ||
| 920 | (insert " <" login ">\n")) | ||
| 921 | ((eq mail-from-style 'parens) | ||
| 922 | (insert "From: " login " (") | ||
| 923 | (let ((fullname-start (point))) | ||
| 924 | (if quote-fullname | ||
| 925 | (insert "\"")) | ||
| 926 | (insert fullname) | ||
| 927 | (if quote-fullname | ||
| 928 | (insert "\"")) | ||
| 929 | (let ((fullname-end (point-marker))) | ||
| 930 | (goto-char fullname-start) | ||
| 931 | ;; RFC 822 says \ and nonmatching parentheses | ||
| 932 | ;; must be escaped in comments. | ||
| 933 | ;; Escape every instance of ()\ ... | ||
| 934 | (while (re-search-forward "[()\\]" fullname-end 1) | ||
| 935 | (replace-match "\\\\\\&" t)) | ||
| 936 | ;; ... then undo escaping of matching parentheses, | ||
| 937 | ;; including matching nested parentheses. | ||
| 938 | (goto-char fullname-start) | ||
| 939 | (while (re-search-forward | ||
| 940 | "\\(\\=\\|[^\\]\\(\\\\\\\\\\)*\\)\\\\(\\(\\([^\\]\\|\\\\\\\\\\)*\\)\\\\)" | ||
| 941 | fullname-end 1) | ||
| 942 | (replace-match "\\1(\\3)" t) | ||
| 943 | (goto-char fullname-start)))) | ||
| 944 | (insert ")\n")) | ||
| 945 | ((null mail-from-style) | ||
| 946 | (insert "From: " login "\n")) | ||
| 947 | ((eq mail-from-style 'system-default) | ||
| 948 | nil) | ||
| 949 | (t (error "Invalid value for `mail-from-style'"))))) | ||
| 950 | |||
| 887 | (defun sendmail-send-it () | 951 | (defun sendmail-send-it () |
| 888 | "Send the current mail buffer using the Sendmail package. | 952 | "Send the current mail buffer using the Sendmail package. |
| 889 | This is a suitable value for `send-mail-function'. It sends using the | 953 | This is a suitable value for `send-mail-function'. It sends using the |
| @@ -980,60 +1044,7 @@ external program defined by `sendmail-program'." | |||
| 980 | ;; they put one in themselves. | 1044 | ;; they put one in themselves. |
| 981 | (goto-char (point-min)) | 1045 | (goto-char (point-min)) |
| 982 | (if (not (re-search-forward "^From:" delimline t)) | 1046 | (if (not (re-search-forward "^From:" delimline t)) |
| 983 | (let* ((login user-mail-address) | 1047 | (mail-insert-from-field)) |
| 984 | (fullname (user-full-name)) | ||
| 985 | (quote-fullname nil)) | ||
| 986 | (if (string-match "[^\0-\177]" fullname) | ||
| 987 | (setq fullname (rfc2047-encode-string fullname) | ||
| 988 | quote-fullname t)) | ||
| 989 | (cond ((eq mail-from-style 'angles) | ||
| 990 | (insert "From: " fullname) | ||
| 991 | (let ((fullname-start (+ (point-min) 6)) | ||
| 992 | (fullname-end (point-marker))) | ||
| 993 | (goto-char fullname-start) | ||
| 994 | ;; Look for a character that cannot appear unquoted | ||
| 995 | ;; according to RFC 822. | ||
| 996 | (if (or (re-search-forward "[^- !#-'*+/-9=?A-Z^-~]" | ||
| 997 | fullname-end 1) | ||
| 998 | quote-fullname) | ||
| 999 | (progn | ||
| 1000 | ;; Quote fullname, escaping specials. | ||
| 1001 | (goto-char fullname-start) | ||
| 1002 | (insert "\"") | ||
| 1003 | (while (re-search-forward "[\"\\]" | ||
| 1004 | fullname-end 1) | ||
| 1005 | (replace-match "\\\\\\&" t)) | ||
| 1006 | (insert "\"")))) | ||
| 1007 | (insert " <" login ">\n")) | ||
| 1008 | ((eq mail-from-style 'parens) | ||
| 1009 | (insert "From: " login " (") | ||
| 1010 | (let ((fullname-start (point))) | ||
| 1011 | (if quote-fullname | ||
| 1012 | (insert "\"")) | ||
| 1013 | (insert fullname) | ||
| 1014 | (if quote-fullname | ||
| 1015 | (insert "\"")) | ||
| 1016 | (let ((fullname-end (point-marker))) | ||
| 1017 | (goto-char fullname-start) | ||
| 1018 | ;; RFC 822 says \ and nonmatching parentheses | ||
| 1019 | ;; must be escaped in comments. | ||
| 1020 | ;; Escape every instance of ()\ ... | ||
| 1021 | (while (re-search-forward "[()\\]" fullname-end 1) | ||
| 1022 | (replace-match "\\\\\\&" t)) | ||
| 1023 | ;; ... then undo escaping of matching parentheses, | ||
| 1024 | ;; including matching nested parentheses. | ||
| 1025 | (goto-char fullname-start) | ||
| 1026 | (while (re-search-forward | ||
| 1027 | "\\(\\=\\|[^\\]\\(\\\\\\\\\\)*\\)\\\\(\\(\\([^\\]\\|\\\\\\\\\\)*\\)\\\\)" | ||
| 1028 | fullname-end 1) | ||
| 1029 | (replace-match "\\1(\\3)" t) | ||
| 1030 | (goto-char fullname-start)))) | ||
| 1031 | (insert ")\n")) | ||
| 1032 | ((null mail-from-style) | ||
| 1033 | (insert "From: " login "\n")) | ||
| 1034 | ((eq mail-from-style 'system-default) | ||
| 1035 | nil) | ||
| 1036 | (t (error "Invalid value for `mail-from-style'"))))) | ||
| 1037 | ;; Possibly add a MIME header for the current coding system | 1048 | ;; Possibly add a MIME header for the current coding system |
| 1038 | (let (charset) | 1049 | (let (charset) |
| 1039 | (goto-char (point-min)) | 1050 | (goto-char (point-min)) |
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index a4552d8f771..f8aaf2de77c 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el | |||
| @@ -1099,7 +1099,7 @@ by \"Save Options\" in Custom buffers.") | |||
| 1099 | :help "Move snake around avoiding collisions")) | 1099 | :help "Move snake around avoiding collisions")) |
| 1100 | (define-key menu-bar-games-menu [mult] | 1100 | (define-key menu-bar-games-menu [mult] |
| 1101 | '(menu-item "Multiplication Puzzle" mpuz | 1101 | '(menu-item "Multiplication Puzzle" mpuz |
| 1102 | :help "Excercise brain with multiplication")) | 1102 | :help "Exercise brain with multiplication")) |
| 1103 | (define-key menu-bar-games-menu [life] | 1103 | (define-key menu-bar-games-menu [life] |
| 1104 | '(menu-item "Life" life | 1104 | '(menu-item "Life" life |
| 1105 | :help "Watch how John Conway's cellular automaton evolves")) | 1105 | :help "Watch how John Conway's cellular automaton evolves")) |
diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog index f37202a159d..91d9e057263 100644 --- a/lisp/mh-e/ChangeLog +++ b/lisp/mh-e/ChangeLog | |||
| @@ -1,3 +1,65 @@ | |||
| 1 | 2005-06-17 Lute Kamstra <lute@gnu.org> | ||
| 2 | |||
| 3 | * mh-customize.el (mh-folder-body-face, mh-folder-cur-msg-face) | ||
| 4 | (mh-folder-cur-msg-number-face): New backward-compatibility | ||
| 5 | aliases for renamed faces. | ||
| 6 | |||
| 7 | 2005-06-17 Miles Bader <miles@gnu.org> | ||
| 8 | |||
| 9 | * mh-customize.el (mh-folder-body, mh-folder-cur-msg) | ||
| 10 | (mh-folder-cur-msg-number, mh-folder-date, mh-folder-followup) | ||
| 11 | (mh-folder-msg-number, mh-folder-refiled, mh-folder-subject) | ||
| 12 | (mh-folder-tick, mh-folder-to, mh-index-folder) | ||
| 13 | (mh-letter-header-field, mh-show-cc, mh-show-date) | ||
| 14 | (mh-show-header, mh-show-pgg-good, mh-show-pgg-unknown) | ||
| 15 | (mh-show-pgg-bad, mh-show-signature, mh-show-to, mh-show-from) | ||
| 16 | (mh-show-xface, mh-speedbar-folder, mh-speedbar-selected-folder) | ||
| 17 | (mh-speedbar-folder-with-unseen-messages) | ||
| 18 | (mh-speedbar-selected-folder-with-unseen-messages) | ||
| 19 | (mh-folder-msg-number, mh-folder-subject, mh-folder-followup) | ||
| 20 | (mh-folder-subject): Remove "-face" suffix from face names. | ||
| 21 | (mh-folder-body, mh-folder-cur-msg, mh-folder-cur-msg-number) | ||
| 22 | (mh-folder-date-face, mh-folder-followup-face) | ||
| 23 | (mh-folder-msg-number-face, mh-folder-refiled-face) | ||
| 24 | (mh-folder-subject-face, mh-folder-tick-face, mh-folder-to-face) | ||
| 25 | (mh-index-folder-face, mh-letter-header-field-face) | ||
| 26 | (mh-show-cc-face, mh-show-date-face, mh-show-header-face) | ||
| 27 | (mh-show-pgg-good-face, mh-show-pgg-unknown-face) | ||
| 28 | (mh-show-pgg-bad-face, mh-show-signature-face, mh-show-to-face) | ||
| 29 | (mh-show-from-face, mh-show-xface-face, mh-speedbar-folder-face) | ||
| 30 | (mh-speedbar-selected-folder-face) | ||
| 31 | (mh-speedbar-folder-with-unseen-messages-face) | ||
| 32 | (mh-speedbar-selected-folder-with-unseen-messages-face): | ||
| 33 | New backward-compatibility aliases for renamed faces. | ||
| 34 | (mh-folder-body-face, mh-folder-cur-msg-face) | ||
| 35 | (mh-folder-cur-msg-number-face, mh-folder-date-face) | ||
| 36 | (mh-folder-followup-face, mh-folder-msg-number-face) | ||
| 37 | (mh-folder-deleted-face, mh-folder-refiled-face) | ||
| 38 | (mh-folder-subject-face, mh-folder-address-face) | ||
| 39 | (mh-folder-scan-format-face, mh-folder-to-face) | ||
| 40 | (mh-index-folder-face, mh-show-cc-face, mh-show-date-face) | ||
| 41 | (mh-show-header-face, mh-show-pgg-good-face) | ||
| 42 | (mh-show-pgg-unknown-face, mh-show-pgg-bad-face) | ||
| 43 | (mh-show-to-face, mh-show-from-face, mh-show-subject-face) | ||
| 44 | (mh-speedbar-folder-with-unseen-messages) | ||
| 45 | (mh-speedbar-selected-folder-with-unseen-messages): | ||
| 46 | Use renamed MH-E faces. | ||
| 47 | |||
| 48 | * mh-utils.el (mh-letter-font-lock-keywords) | ||
| 49 | (mh-face-display-function): Use renamed MH-E faces. | ||
| 50 | * mh-speed.el (mh-folder-speedbar-buttons) | ||
| 51 | (mh-speed-update-current-folder, mh-speed-normal-face) | ||
| 52 | (mh-speed-bold-face, mh-speed-add-buttons) | ||
| 53 | (mh-speed-invalidate-map): Likewise. | ||
| 54 | * mh-mime.el (mh-signature-highlight): Likewise. | ||
| 55 | |||
| 56 | 2005-06-16 Juanma Barranquero <lekktu@gmail.com> | ||
| 57 | |||
| 58 | * mh-comp.el (mh-send-sub): | ||
| 59 | * mh-identity.el (mh-identity-field-handler): | ||
| 60 | * mh-mime.el (mh-secure-message): | ||
| 61 | Don't use `format' on `error' arguments. | ||
| 62 | |||
| 1 | 2005-06-14 Juanma Barranquero <lekktu@gmail.com> | 63 | 2005-06-14 Juanma Barranquero <lekktu@gmail.com> |
| 2 | 64 | ||
| 3 | * mh-mime.el (mh-secure-message): Follow error conventions. | 65 | * mh-mime.el (mh-secure-message): Follow error conventions. |
diff --git a/lisp/mh-e/mh-comp.el b/lisp/mh-e/mh-comp.el index 82d0f5b7fd7..a466c4af7ba 100644 --- a/lisp/mh-e/mh-comp.el +++ b/lisp/mh-e/mh-comp.el | |||
| @@ -623,8 +623,8 @@ CONFIG is the window configuration before sending mail." | |||
| 623 | ))) | 623 | ))) |
| 624 | components) | 624 | components) |
| 625 | (t | 625 | (t |
| 626 | (error (format "Can't find components file \"%s\"" | 626 | (error "Can't find components file \"%s\"" |
| 627 | components))))) | 627 | components)))) |
| 628 | nil))) | 628 | nil))) |
| 629 | (mh-insert-fields "To:" to "Subject:" subject "Cc:" cc) | 629 | (mh-insert-fields "To:" to "Subject:" subject "Cc:" cc) |
| 630 | (goto-char (point-max)) | 630 | (goto-char (point-max)) |
diff --git a/lisp/mh-e/mh-customize.el b/lisp/mh-e/mh-customize.el index 54141164391..5c13e8d93e6 100644 --- a/lisp/mh-e/mh-customize.el +++ b/lisp/mh-e/mh-customize.el | |||
| @@ -2144,9 +2144,9 @@ will be removed from the unseen sequence." | |||
| 2144 | 2144 | ||
| 2145 | ;;; Faces Used in Scan Listing (:group 'mh-folder-faces) | 2145 | ;;; Faces Used in Scan Listing (:group 'mh-folder-faces) |
| 2146 | 2146 | ||
| 2147 | (defvar mh-folder-body-face 'mh-folder-body-face | 2147 | (defvar mh-folder-body-face 'mh-folder-body |
| 2148 | "Face used to highlight body text in MH-Folder buffers.") | 2148 | "Face used to highlight body text in MH-Folder buffers.") |
| 2149 | (defface mh-folder-body-face | 2149 | (defface mh-folder-body |
| 2150 | '((((type tty) (class color)) (:foreground "green")) | 2150 | '((((type tty) (class color)) (:foreground "green")) |
| 2151 | (((class grayscale) (background light)) (:foreground "DimGray" :italic t)) | 2151 | (((class grayscale) (background light)) (:foreground "DimGray" :italic t)) |
| 2152 | (((class grayscale) (background dark)) (:foreground "LightGray" :italic t)) | 2152 | (((class grayscale) (background dark)) (:foreground "LightGray" :italic t)) |
| @@ -2155,10 +2155,12 @@ will be removed from the unseen sequence." | |||
| 2155 | (t (:italic t))) | 2155 | (t (:italic t))) |
| 2156 | "Face used to highlight body text in MH-Folder buffers." | 2156 | "Face used to highlight body text in MH-Folder buffers." |
| 2157 | :group 'mh-folder-faces) | 2157 | :group 'mh-folder-faces) |
| 2158 | ;; backward-compatibility alias | ||
| 2159 | (put 'mh-folder-body-face 'face-alias 'mh-folder-body) | ||
| 2158 | 2160 | ||
| 2159 | (defvar mh-folder-cur-msg-face 'mh-folder-cur-msg-face | 2161 | (defvar mh-folder-cur-msg-face 'mh-folder-cur-msg |
| 2160 | "Face used for the current message line in MH-Folder buffers.") | 2162 | "Face used for the current message line in MH-Folder buffers.") |
| 2161 | (defface mh-folder-cur-msg-face | 2163 | (defface mh-folder-cur-msg |
| 2162 | '((((type tty pc) (class color)) | 2164 | '((((type tty pc) (class color)) |
| 2163 | (:background "LightGreen")) | 2165 | (:background "LightGreen")) |
| 2164 | (((class color) (background light)) | 2166 | (((class color) (background light)) |
| @@ -2170,10 +2172,12 @@ will be removed from the unseen sequence." | |||
| 2170 | (t (:underline t))) | 2172 | (t (:underline t))) |
| 2171 | "Face used for the current message line in MH-Folder buffers." | 2173 | "Face used for the current message line in MH-Folder buffers." |
| 2172 | :group 'mh-folder-faces) | 2174 | :group 'mh-folder-faces) |
| 2175 | ;; backward-compatibility alias | ||
| 2176 | (put 'mh-folder-cur-msg-face 'face-alias 'mh-folder-cur-msg) | ||
| 2173 | 2177 | ||
| 2174 | (defvar mh-folder-cur-msg-number-face 'mh-folder-cur-msg-number-face | 2178 | (defvar mh-folder-cur-msg-number-face 'mh-folder-cur-msg-number |
| 2175 | "Face used to highlight the current message in MH-Folder buffers.") | 2179 | "Face used to highlight the current message in MH-Folder buffers.") |
| 2176 | (defface mh-folder-cur-msg-number-face | 2180 | (defface mh-folder-cur-msg-number |
| 2177 | '((((type tty) (class color)) (:foreground "cyan" :weight bold)) | 2181 | '((((type tty) (class color)) (:foreground "cyan" :weight bold)) |
| 2178 | (((class grayscale) (background light)) (:foreground "LightGray" :bold t)) | 2182 | (((class grayscale) (background light)) (:foreground "LightGray" :bold t)) |
| 2179 | (((class grayscale) (background dark)) (:foreground "DimGray" :bold t)) | 2183 | (((class grayscale) (background dark)) (:foreground "DimGray" :bold t)) |
| @@ -2182,10 +2186,12 @@ will be removed from the unseen sequence." | |||
| 2182 | (t (:bold t))) | 2186 | (t (:bold t))) |
| 2183 | "Face used to highlight the current message in MH-Folder buffers." | 2187 | "Face used to highlight the current message in MH-Folder buffers." |
| 2184 | :group 'mh-folder-faces) | 2188 | :group 'mh-folder-faces) |
| 2189 | ;; backward-compatibility alias | ||
| 2190 | (put 'mh-folder-cur-msg-number-face 'face-alias 'mh-folder-cur-msg-number) | ||
| 2185 | 2191 | ||
| 2186 | (defvar mh-folder-date-face 'mh-folder-date-face | 2192 | (defvar mh-folder-date-face 'mh-folder-date |
| 2187 | "Face used to highlight the date in MH-Folder buffers.") | 2193 | "Face used to highlight the date in MH-Folder buffers.") |
| 2188 | (defface mh-folder-date-face | 2194 | (defface mh-folder-date |
| 2189 | '((((class color) (background light)) | 2195 | '((((class color) (background light)) |
| 2190 | (:foreground "snow4")) | 2196 | (:foreground "snow4")) |
| 2191 | (((class color) (background dark)) | 2197 | (((class color) (background dark)) |
| @@ -2194,10 +2200,12 @@ will be removed from the unseen sequence." | |||
| 2194 | (:bold t))) | 2200 | (:bold t))) |
| 2195 | "Face used to highlight the date in MH-Folder buffers." | 2201 | "Face used to highlight the date in MH-Folder buffers." |
| 2196 | :group 'mh-folder-faces) | 2202 | :group 'mh-folder-faces) |
| 2203 | ;; backward-compatibility alias | ||
| 2204 | (put 'mh-folder-date-face 'face-alias 'mh-folder-date) | ||
| 2197 | 2205 | ||
| 2198 | (defvar mh-folder-followup-face 'mh-folder-followup-face | 2206 | (defvar mh-folder-followup-face 'mh-folder-followup |
| 2199 | "Face used to highlight Re: subject text in MH-Folder buffers.") | 2207 | "Face used to highlight Re: subject text in MH-Folder buffers.") |
| 2200 | (defface mh-folder-followup-face | 2208 | (defface mh-folder-followup |
| 2201 | '((((class color) (background light)) | 2209 | '((((class color) (background light)) |
| 2202 | (:foreground "blue3")) | 2210 | (:foreground "blue3")) |
| 2203 | (((class color) (background dark)) | 2211 | (((class color) (background dark)) |
| @@ -2206,10 +2214,12 @@ will be removed from the unseen sequence." | |||
| 2206 | (:bold t))) | 2214 | (:bold t))) |
| 2207 | "Face used to highlight Re: subject text in MH-Folder buffers." | 2215 | "Face used to highlight Re: subject text in MH-Folder buffers." |
| 2208 | :group 'mh-folder-faces) | 2216 | :group 'mh-folder-faces) |
| 2217 | ;; backward-compatibility alias | ||
| 2218 | (put 'mh-folder-followup-face 'face-alias 'mh-folder-followup) | ||
| 2209 | 2219 | ||
| 2210 | (defvar mh-folder-msg-number-face 'mh-folder-msg-number-face | 2220 | (defvar mh-folder-msg-number-face 'mh-folder-msg-number |
| 2211 | "Face used to highlight the message number in MH-Folder buffers.") | 2221 | "Face used to highlight the message number in MH-Folder buffers.") |
| 2212 | (defface mh-folder-msg-number-face | 2222 | (defface mh-folder-msg-number |
| 2213 | '((((class color) (background light)) | 2223 | '((((class color) (background light)) |
| 2214 | (:foreground "snow4")) | 2224 | (:foreground "snow4")) |
| 2215 | (((class color) (background dark)) | 2225 | (((class color) (background dark)) |
| @@ -2218,14 +2228,16 @@ will be removed from the unseen sequence." | |||
| 2218 | (:bold t))) | 2228 | (:bold t))) |
| 2219 | "Face used to highlight the message number in MH-Folder buffers." | 2229 | "Face used to highlight the message number in MH-Folder buffers." |
| 2220 | :group 'mh-folder-faces) | 2230 | :group 'mh-folder-faces) |
| 2231 | ;; backward-compatibility alias | ||
| 2232 | (put 'mh-folder-msg-number-face 'face-alias 'mh-folder-msg-number) | ||
| 2221 | 2233 | ||
| 2222 | (defvar mh-folder-deleted-face 'mh-folder-deleted-face | 2234 | (defvar mh-folder-deleted-face 'mh-folder-deleted |
| 2223 | "Face used to highlight deleted messages in MH-Folder buffers.") | 2235 | "Face used to highlight deleted messages in MH-Folder buffers.") |
| 2224 | (copy-face 'mh-folder-msg-number-face 'mh-folder-deleted-face) | 2236 | (copy-face 'mh-folder-msg-number 'mh-folder-deleted) |
| 2225 | 2237 | ||
| 2226 | (defvar mh-folder-refiled-face 'mh-folder-refiled-face | 2238 | (defvar mh-folder-refiled-face 'mh-folder-refiled |
| 2227 | "Face used to highlight refiled messages in MH-Folder buffers.") | 2239 | "Face used to highlight refiled messages in MH-Folder buffers.") |
| 2228 | (defface mh-folder-refiled-face | 2240 | (defface mh-folder-refiled |
| 2229 | '((((type tty) (class color)) (:foreground "yellow" :weight light)) | 2241 | '((((type tty) (class color)) (:foreground "yellow" :weight light)) |
| 2230 | (((class grayscale) (background light)) | 2242 | (((class grayscale) (background light)) |
| 2231 | (:foreground "Gray90" :bold t :italic t)) | 2243 | (:foreground "Gray90" :bold t :italic t)) |
| @@ -2236,12 +2248,14 @@ will be removed from the unseen sequence." | |||
| 2236 | (t (:bold t :italic t))) | 2248 | (t (:bold t :italic t))) |
| 2237 | "Face used to highlight refiled messages in MH-Folder buffers." | 2249 | "Face used to highlight refiled messages in MH-Folder buffers." |
| 2238 | :group 'mh-folder-faces) | 2250 | :group 'mh-folder-faces) |
| 2251 | ;; backward-compatibility alias | ||
| 2252 | (put 'mh-folder-refiled-face 'face-alias 'mh-folder-refiled) | ||
| 2239 | 2253 | ||
| 2240 | (defvar mh-folder-subject-face 'mh-folder-subject-face | 2254 | (defvar mh-folder-subject-face 'mh-folder-subject |
| 2241 | "Face used to highlight subject text in MH-Folder buffers.") | 2255 | "Face used to highlight subject text in MH-Folder buffers.") |
| 2242 | (if (boundp 'facemenu-unlisted-faces) | 2256 | (if (boundp 'facemenu-unlisted-faces) |
| 2243 | (add-to-list 'facemenu-unlisted-faces "^mh-folder")) | 2257 | (add-to-list 'facemenu-unlisted-faces "^mh-folder")) |
| 2244 | (defface mh-folder-subject-face | 2258 | (defface mh-folder-subject |
| 2245 | '((((class color) (background light)) | 2259 | '((((class color) (background light)) |
| 2246 | (:foreground "blue4")) | 2260 | (:foreground "blue4")) |
| 2247 | (((class color) (background dark)) | 2261 | (((class color) (background dark)) |
| @@ -2250,25 +2264,29 @@ will be removed from the unseen sequence." | |||
| 2250 | (:bold t))) | 2264 | (:bold t))) |
| 2251 | "Face used to highlight subject text in MH-Folder buffers." | 2265 | "Face used to highlight subject text in MH-Folder buffers." |
| 2252 | :group 'mh-folder-faces) | 2266 | :group 'mh-folder-faces) |
| 2267 | ;; backward-compatibility alias | ||
| 2268 | (put 'mh-folder-subject-face 'face-alias 'mh-folder-subject) | ||
| 2253 | 2269 | ||
| 2254 | (defface mh-folder-tick-face | 2270 | (defface mh-folder-tick |
| 2255 | '((((class color) (background dark)) (:background "#dddf7e")) | 2271 | '((((class color) (background dark)) (:background "#dddf7e")) |
| 2256 | (((class color) (background light)) (:background "#dddf7e")) | 2272 | (((class color) (background light)) (:background "#dddf7e")) |
| 2257 | (t (:underline t))) | 2273 | (t (:underline t))) |
| 2258 | "Face used to show ticked messages." | 2274 | "Face used to show ticked messages." |
| 2259 | :group 'mh-folder-faces) | 2275 | :group 'mh-folder-faces) |
| 2276 | ;; backward-compatibility alias | ||
| 2277 | (put 'mh-folder-tick-face 'face-alias 'mh-folder-tick) | ||
| 2260 | 2278 | ||
| 2261 | (defvar mh-folder-address-face 'mh-folder-address-face | 2279 | (defvar mh-folder-address-face 'mh-folder-address |
| 2262 | "Face used to highlight the address in MH-Folder buffers.") | 2280 | "Face used to highlight the address in MH-Folder buffers.") |
| 2263 | (copy-face 'mh-folder-subject-face 'mh-folder-address-face) | 2281 | (copy-face 'mh-folder-subject 'mh-folder-address) |
| 2264 | 2282 | ||
| 2265 | (defvar mh-folder-scan-format-face 'mh-folder-scan-format-face | 2283 | (defvar mh-folder-scan-format-face 'mh-folder-scan-format |
| 2266 | "Face used to highlight `mh-scan-format-regexp' matches in MH-Folder buffers.") | 2284 | "Face used to highlight `mh-scan-format-regexp' matches in MH-Folder buffers.") |
| 2267 | (copy-face 'mh-folder-followup-face 'mh-folder-scan-format-face) | 2285 | (copy-face 'mh-folder-followup 'mh-folder-scan-format) |
| 2268 | 2286 | ||
| 2269 | (defvar mh-folder-to-face 'mh-folder-to-face | 2287 | (defvar mh-folder-to-face 'mh-folder-to |
| 2270 | "Face used to highlight the To: string in MH-Folder buffers.") | 2288 | "Face used to highlight the To: string in MH-Folder buffers.") |
| 2271 | (defface mh-folder-to-face | 2289 | (defface mh-folder-to |
| 2272 | '((((type tty) (class color)) (:foreground "green")) | 2290 | '((((type tty) (class color)) (:foreground "green")) |
| 2273 | (((class grayscale) (background light)) (:foreground "DimGray" :italic t)) | 2291 | (((class grayscale) (background light)) (:foreground "DimGray" :italic t)) |
| 2274 | (((class grayscale) (background dark)) (:foreground "LightGray" :italic t)) | 2292 | (((class grayscale) (background dark)) (:foreground "LightGray" :italic t)) |
| @@ -2277,14 +2295,16 @@ will be removed from the unseen sequence." | |||
| 2277 | (t (:italic t))) | 2295 | (t (:italic t))) |
| 2278 | "Face used to highlight the To: string in MH-Folder buffers." | 2296 | "Face used to highlight the To: string in MH-Folder buffers." |
| 2279 | :group 'mh-folder-faces) | 2297 | :group 'mh-folder-faces) |
| 2298 | ;; backward-compatibility alias | ||
| 2299 | (put 'mh-folder-to-face 'face-alias 'mh-folder-to) | ||
| 2280 | 2300 | ||
| 2281 | 2301 | ||
| 2282 | 2302 | ||
| 2283 | ;;; Faces Used in Searching (:group 'mh-index-faces) | 2303 | ;;; Faces Used in Searching (:group 'mh-index-faces) |
| 2284 | 2304 | ||
| 2285 | (defvar mh-index-folder-face 'mh-index-folder-face | 2305 | (defvar mh-index-folder-face 'mh-index-folder |
| 2286 | "Face used to highlight folders in MH-Index buffers.") | 2306 | "Face used to highlight folders in MH-Index buffers.") |
| 2287 | (defface mh-index-folder-face | 2307 | (defface mh-index-folder |
| 2288 | '((((class color) (background light)) | 2308 | '((((class color) (background light)) |
| 2289 | (:foreground "dark green" :bold t)) | 2309 | (:foreground "dark green" :bold t)) |
| 2290 | (((class color) (background dark)) | 2310 | (((class color) (background dark)) |
| @@ -2293,12 +2313,14 @@ will be removed from the unseen sequence." | |||
| 2293 | (:bold t))) | 2313 | (:bold t))) |
| 2294 | "Face used to highlight folders in MH-Index buffers." | 2314 | "Face used to highlight folders in MH-Index buffers." |
| 2295 | :group 'mh-index-faces) | 2315 | :group 'mh-index-faces) |
| 2316 | ;; backward-compatibility alias | ||
| 2317 | (put 'mh-index-folder-face 'face-alias 'mh-index-folder) | ||
| 2296 | 2318 | ||
| 2297 | 2319 | ||
| 2298 | 2320 | ||
| 2299 | ;;; Faces Used in Message Drafts (:group 'mh-letter-faces) | 2321 | ;;; Faces Used in Message Drafts (:group 'mh-letter-faces) |
| 2300 | 2322 | ||
| 2301 | (defface mh-letter-header-field-face | 2323 | (defface mh-letter-header-field |
| 2302 | '((((class color) (background light)) | 2324 | '((((class color) (background light)) |
| 2303 | (:background "gray90")) | 2325 | (:background "gray90")) |
| 2304 | (((class color) (background dark)) | 2326 | (((class color) (background dark)) |
| @@ -2306,14 +2328,16 @@ will be removed from the unseen sequence." | |||
| 2306 | (t (:bold t))) | 2328 | (t (:bold t))) |
| 2307 | "Face used to display header fields in draft buffers." | 2329 | "Face used to display header fields in draft buffers." |
| 2308 | :group 'mh-letter-faces) | 2330 | :group 'mh-letter-faces) |
| 2331 | ;; backward-compatibility alias | ||
| 2332 | (put 'mh-letter-header-field-face 'face-alias 'mh-letter-header-field) | ||
| 2309 | 2333 | ||
| 2310 | 2334 | ||
| 2311 | 2335 | ||
| 2312 | ;;; Faces Used in Message Display (:group 'mh-show-faces) | 2336 | ;;; Faces Used in Message Display (:group 'mh-show-faces) |
| 2313 | 2337 | ||
| 2314 | (defvar mh-show-cc-face 'mh-show-cc-face | 2338 | (defvar mh-show-cc-face 'mh-show-cc |
| 2315 | "Face used to highlight cc: header fields.") | 2339 | "Face used to highlight cc: header fields.") |
| 2316 | (defface mh-show-cc-face | 2340 | (defface mh-show-cc |
| 2317 | '((((type tty) (class color)) (:foreground "yellow" :weight light)) | 2341 | '((((type tty) (class color)) (:foreground "yellow" :weight light)) |
| 2318 | (((class grayscale) (background light)) | 2342 | (((class grayscale) (background light)) |
| 2319 | (:foreground "Gray90" :bold t :italic t)) | 2343 | (:foreground "Gray90" :bold t :italic t)) |
| @@ -2324,10 +2348,12 @@ will be removed from the unseen sequence." | |||
| 2324 | (t (:bold t :italic t))) | 2348 | (t (:bold t :italic t))) |
| 2325 | "Face used to highlight cc: header fields." | 2349 | "Face used to highlight cc: header fields." |
| 2326 | :group 'mh-show-faces) | 2350 | :group 'mh-show-faces) |
| 2351 | ;; backward-compatibility alias | ||
| 2352 | (put 'mh-show-cc-face 'face-alias 'mh-show-cc) | ||
| 2327 | 2353 | ||
| 2328 | (defvar mh-show-date-face 'mh-show-date-face | 2354 | (defvar mh-show-date-face 'mh-show-date |
| 2329 | "Face used to highlight the Date: header field.") | 2355 | "Face used to highlight the Date: header field.") |
| 2330 | (defface mh-show-date-face | 2356 | (defface mh-show-date |
| 2331 | '((((type tty) (class color)) (:foreground "green")) | 2357 | '((((type tty) (class color)) (:foreground "green")) |
| 2332 | (((class grayscale) (background light)) (:foreground "Gray90" :bold t)) | 2358 | (((class grayscale) (background light)) (:foreground "Gray90" :bold t)) |
| 2333 | (((class grayscale) (background dark)) (:foreground "DimGray" :bold t)) | 2359 | (((class grayscale) (background dark)) (:foreground "DimGray" :bold t)) |
| @@ -2336,10 +2362,12 @@ will be removed from the unseen sequence." | |||
| 2336 | (t (:bold t :underline t))) | 2362 | (t (:bold t :underline t))) |
| 2337 | "Face used to highlight the Date: header field." | 2363 | "Face used to highlight the Date: header field." |
| 2338 | :group 'mh-show-faces) | 2364 | :group 'mh-show-faces) |
| 2365 | ;; backward-compatibility alias | ||
| 2366 | (put 'mh-show-date-face 'face-alias 'mh-show-date) | ||
| 2339 | 2367 | ||
| 2340 | (defvar mh-show-header-face 'mh-show-header-face | 2368 | (defvar mh-show-header-face 'mh-show-header |
| 2341 | "Face used to deemphasize unspecified header fields.") | 2369 | "Face used to deemphasize unspecified header fields.") |
| 2342 | (defface mh-show-header-face | 2370 | (defface mh-show-header |
| 2343 | '((((type tty) (class color)) (:foreground "green")) | 2371 | '((((type tty) (class color)) (:foreground "green")) |
| 2344 | (((class grayscale) (background light)) (:foreground "DimGray" :italic t)) | 2372 | (((class grayscale) (background light)) (:foreground "DimGray" :italic t)) |
| 2345 | (((class grayscale) (background dark)) (:foreground "LightGray" :italic t)) | 2373 | (((class grayscale) (background dark)) (:foreground "LightGray" :italic t)) |
| @@ -2348,40 +2376,50 @@ will be removed from the unseen sequence." | |||
| 2348 | (t (:italic t))) | 2376 | (t (:italic t))) |
| 2349 | "Face used to deemphasize unspecified header fields." | 2377 | "Face used to deemphasize unspecified header fields." |
| 2350 | :group 'mh-show-faces) | 2378 | :group 'mh-show-faces) |
| 2379 | ;; backward-compatibility alias | ||
| 2380 | (put 'mh-show-header-face 'face-alias 'mh-show-header) | ||
| 2351 | 2381 | ||
| 2352 | (defvar mh-show-pgg-good-face 'mh-show-pgg-good-face | 2382 | (defvar mh-show-pgg-good-face 'mh-show-pgg-good |
| 2353 | "Face used to highlight a good PGG signature.") | 2383 | "Face used to highlight a good PGG signature.") |
| 2354 | (defface mh-show-pgg-good-face | 2384 | (defface mh-show-pgg-good |
| 2355 | '((t (:bold t :foreground "LimeGreen"))) | 2385 | '((t (:bold t :foreground "LimeGreen"))) |
| 2356 | "Face used to highlight a good PGG signature." | 2386 | "Face used to highlight a good PGG signature." |
| 2357 | :group 'mh-show-faces) | 2387 | :group 'mh-show-faces) |
| 2388 | ;; backward-compatibility alias | ||
| 2389 | (put 'mh-show-pgg-good-face 'face-alias 'mh-show-pgg-good) | ||
| 2358 | 2390 | ||
| 2359 | (defvar mh-show-pgg-unknown-face 'mh-show-pgg-unknown-face | 2391 | (defvar mh-show-pgg-unknown-face 'mh-show-pgg-unknown |
| 2360 | "Face used to highlight a PGG signature whose status is unknown. | 2392 | "Face used to highlight a PGG signature whose status is unknown. |
| 2361 | This face is also used for a signature when the signer is untrusted.") | 2393 | This face is also used for a signature when the signer is untrusted.") |
| 2362 | (defface mh-show-pgg-unknown-face | 2394 | (defface mh-show-pgg-unknown |
| 2363 | '((t (:bold t :foreground "DarkGoldenrod2"))) | 2395 | '((t (:bold t :foreground "DarkGoldenrod2"))) |
| 2364 | "Face used to highlight a PGG signature whose status is unknown. | 2396 | "Face used to highlight a PGG signature whose status is unknown. |
| 2365 | This face is also used for a signature when the signer is untrusted." | 2397 | This face is also used for a signature when the signer is untrusted." |
| 2366 | :group 'mh-show-faces) | 2398 | :group 'mh-show-faces) |
| 2399 | ;; backward-compatibility alias | ||
| 2400 | (put 'mh-show-pgg-unknown-face 'face-alias 'mh-show-pgg-unknown) | ||
| 2367 | 2401 | ||
| 2368 | (defvar mh-show-pgg-bad-face 'mh-show-pgg-bad-face | 2402 | (defvar mh-show-pgg-bad-face 'mh-show-pgg-bad |
| 2369 | "Face used to highlight a bad PGG signature.") | 2403 | "Face used to highlight a bad PGG signature.") |
| 2370 | (defface mh-show-pgg-bad-face | 2404 | (defface mh-show-pgg-bad |
| 2371 | '((t (:bold t :foreground "DeepPink1"))) | 2405 | '((t (:bold t :foreground "DeepPink1"))) |
| 2372 | "Face used to highlight a bad PGG signature." | 2406 | "Face used to highlight a bad PGG signature." |
| 2373 | :group 'mh-show-faces) | 2407 | :group 'mh-show-faces) |
| 2408 | ;; backward-compatibility alias | ||
| 2409 | (put 'mh-show-pgg-bad-face 'face-alias 'mh-show-pgg-bad) | ||
| 2374 | 2410 | ||
| 2375 | (defface mh-show-signature-face | 2411 | (defface mh-show-signature |
| 2376 | '((t (:italic t))) | 2412 | '((t (:italic t))) |
| 2377 | "Face used to highlight the message signature." | 2413 | "Face used to highlight the message signature." |
| 2378 | :group 'mh-show-faces) | 2414 | :group 'mh-show-faces) |
| 2415 | ;; backward-compatibility alias | ||
| 2416 | (put 'mh-show-signature-face 'face-alias 'mh-show-signature) | ||
| 2379 | 2417 | ||
| 2380 | (defvar mh-show-to-face 'mh-show-to-face | 2418 | (defvar mh-show-to-face 'mh-show-to |
| 2381 | "Face used to highlight the To: header field.") | 2419 | "Face used to highlight the To: header field.") |
| 2382 | (if (boundp 'facemenu-unlisted-faces) | 2420 | (if (boundp 'facemenu-unlisted-faces) |
| 2383 | (add-to-list 'facemenu-unlisted-faces "^mh-show")) | 2421 | (add-to-list 'facemenu-unlisted-faces "^mh-show")) |
| 2384 | (defface mh-show-to-face | 2422 | (defface mh-show-to |
| 2385 | '((((class grayscale) (background light)) | 2423 | '((((class grayscale) (background light)) |
| 2386 | (:foreground "DimGray" :underline t)) | 2424 | (:foreground "DimGray" :underline t)) |
| 2387 | (((class grayscale) (background dark)) | 2425 | (((class grayscale) (background dark)) |
| @@ -2391,10 +2429,12 @@ This face is also used for a signature when the signer is untrusted." | |||
| 2391 | (t (:underline t))) | 2429 | (t (:underline t))) |
| 2392 | "Face used to highlight the To: header field." | 2430 | "Face used to highlight the To: header field." |
| 2393 | :group 'mh-show-faces) | 2431 | :group 'mh-show-faces) |
| 2432 | ;; backward-compatibility alias | ||
| 2433 | (put 'mh-show-to-face 'face-alias 'mh-show-to) | ||
| 2394 | 2434 | ||
| 2395 | (defvar mh-show-from-face 'mh-show-from-face | 2435 | (defvar mh-show-from-face 'mh-show-from |
| 2396 | "Face used to highlight the From: header field.") | 2436 | "Face used to highlight the From: header field.") |
| 2397 | (defface mh-show-from-face | 2437 | (defface mh-show-from |
| 2398 | '((((class color) (background light)) | 2438 | '((((class color) (background light)) |
| 2399 | (:foreground "red3")) | 2439 | (:foreground "red3")) |
| 2400 | (((class color) (background dark)) | 2440 | (((class color) (background dark)) |
| @@ -2403,30 +2443,36 @@ This face is also used for a signature when the signer is untrusted." | |||
| 2403 | (:bold t))) | 2443 | (:bold t))) |
| 2404 | "Face used to highlight the From: header field." | 2444 | "Face used to highlight the From: header field." |
| 2405 | :group 'mh-show-faces) | 2445 | :group 'mh-show-faces) |
| 2446 | ;; backward-compatibility alias | ||
| 2447 | (put 'mh-show-from-face 'face-alias 'mh-show-from) | ||
| 2406 | 2448 | ||
| 2407 | (defface mh-show-xface-face | 2449 | (defface mh-show-xface |
| 2408 | '((t (:foreground "black" :background "white"))) | 2450 | '((t (:foreground "black" :background "white"))) |
| 2409 | "Face used to display the X-Face image. | 2451 | "Face used to display the X-Face image. |
| 2410 | The background and foreground is used in the image." | 2452 | The background and foreground is used in the image." |
| 2411 | :group 'mh-show-faces) | 2453 | :group 'mh-show-faces) |
| 2454 | ;; backward-compatibility alias | ||
| 2455 | (put 'mh-show-xface-face 'face-alias 'mh-show-xface) | ||
| 2412 | 2456 | ||
| 2413 | (defvar mh-show-subject-face 'mh-show-subject-face | 2457 | (defvar mh-show-subject-face 'mh-show-subject |
| 2414 | "Face used to highlight the Subject: header field.") | 2458 | "Face used to highlight the Subject: header field.") |
| 2415 | (copy-face 'mh-folder-subject-face 'mh-show-subject-face) | 2459 | (copy-face 'mh-folder-subject 'mh-show-subject) |
| 2416 | 2460 | ||
| 2417 | 2461 | ||
| 2418 | 2462 | ||
| 2419 | ;;; Faces Used in Speedbar (:group 'mh-speed-faces) | 2463 | ;;; Faces Used in Speedbar (:group 'mh-speed-faces) |
| 2420 | 2464 | ||
| 2421 | (defface mh-speedbar-folder-face | 2465 | (defface mh-speedbar-folder |
| 2422 | '((((class color) (background light)) | 2466 | '((((class color) (background light)) |
| 2423 | (:foreground "blue4")) | 2467 | (:foreground "blue4")) |
| 2424 | (((class color) (background dark)) | 2468 | (((class color) (background dark)) |
| 2425 | (:foreground "light blue"))) | 2469 | (:foreground "light blue"))) |
| 2426 | "Face used for folders in the speedbar buffer." | 2470 | "Face used for folders in the speedbar buffer." |
| 2427 | :group 'mh-speed-faces) | 2471 | :group 'mh-speed-faces) |
| 2472 | ;; backward-compatibility alias | ||
| 2473 | (put 'mh-speedbar-folder-face 'face-alias 'mh-speedbar-folder) | ||
| 2428 | 2474 | ||
| 2429 | (defface mh-speedbar-selected-folder-face | 2475 | (defface mh-speedbar-selected-folder |
| 2430 | '((((class color) (background light)) | 2476 | '((((class color) (background light)) |
| 2431 | (:foreground "red1" :underline t)) | 2477 | (:foreground "red1" :underline t)) |
| 2432 | (((class color) (background dark)) | 2478 | (((class color) (background dark)) |
| @@ -2434,16 +2480,22 @@ The background and foreground is used in the image." | |||
| 2434 | (t (:underline t))) | 2480 | (t (:underline t))) |
| 2435 | "Face used for the current folder." | 2481 | "Face used for the current folder." |
| 2436 | :group 'mh-speed-faces) | 2482 | :group 'mh-speed-faces) |
| 2483 | ;; backward-compatibility alias | ||
| 2484 | (put 'mh-speedbar-selected-folder-face 'face-alias 'mh-speedbar-selected-folder) | ||
| 2437 | 2485 | ||
| 2438 | (defface mh-speedbar-folder-with-unseen-messages-face | 2486 | (defface mh-speedbar-folder-with-unseen-messages |
| 2439 | '((t (:inherit mh-speedbar-folder-face :bold t))) | 2487 | '((t (:inherit mh-speedbar-folder :bold t))) |
| 2440 | "Face used for folders in the speedbar buffer which have unread messages." | 2488 | "Face used for folders in the speedbar buffer which have unread messages." |
| 2441 | :group 'mh-speed-faces) | 2489 | :group 'mh-speed-faces) |
| 2490 | ;; backward-compatibility alias | ||
| 2491 | (put 'mh-speedbar-folder-with-unseen-messages-face 'face-alias 'mh-speedbar-folder-with-unseen-messages) | ||
| 2442 | 2492 | ||
| 2443 | (defface mh-speedbar-selected-folder-with-unseen-messages-face | 2493 | (defface mh-speedbar-selected-folder-with-unseen-messages |
| 2444 | '((t (:inherit mh-speedbar-selected-folder-face :bold t))) | 2494 | '((t (:inherit mh-speedbar-selected-folder :bold t))) |
| 2445 | "Face used for the current folder when it has unread messages." | 2495 | "Face used for the current folder when it has unread messages." |
| 2446 | :group 'mh-speed-faces) | 2496 | :group 'mh-speed-faces) |
| 2497 | ;; backward-compatibility alias | ||
| 2498 | (put 'mh-speedbar-selected-folder-with-unseen-messages-face 'face-alias 'mh-speedbar-selected-folder-with-unseen-messages) | ||
| 2447 | 2499 | ||
| 2448 | ;;; Local Variables: | 2500 | ;;; Local Variables: |
| 2449 | ;;; indent-tabs-mode: nil | 2501 | ;;; indent-tabs-mode: nil |
diff --git a/lisp/mh-e/mh-identity.el b/lisp/mh-e/mh-identity.el index dc076751865..b0a1430928b 100644 --- a/lisp/mh-e/mh-identity.el +++ b/lisp/mh-e/mh-identity.el | |||
| @@ -126,7 +126,7 @@ The field name is downcased. If the FIELD begins with the character | |||
| 126 | header field." | 126 | header field." |
| 127 | (or (cdr (assoc (downcase field) mh-identity-handlers)) | 127 | (or (cdr (assoc (downcase field) mh-identity-handlers)) |
| 128 | (and (eq (aref field 0) ?:) | 128 | (and (eq (aref field 0) ?:) |
| 129 | (error (format "Field %s - unknown mh-identity-handler" field))) | 129 | (error "Field %s - unknown mh-identity-handler" field)) |
| 130 | (cdr (assoc ":default" mh-identity-handlers)) | 130 | (cdr (assoc ":default" mh-identity-handlers)) |
| 131 | 'mh-identity-handler-default)) | 131 | 'mh-identity-handler-default)) |
| 132 | 132 | ||
diff --git a/lisp/mh-e/mh-mime.el b/lisp/mh-e/mh-mime.el index 9bc8f7d74a9..e130d57a88c 100644 --- a/lisp/mh-e/mh-mime.el +++ b/lisp/mh-e/mh-mime.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; mh-mime.el --- MH-E support for composing MIME messages | 1 | ;;; mh-mime.el --- MH-E support for composing MIME messages |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1993, 1995, | 3 | ;; Copyright (C) 1993, 1995, |
| 4 | ;; 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | 4 | ;; 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: Bill Wohler <wohler@newt.com> | 6 | ;; Author: Bill Wohler <wohler@newt.com> |
| 7 | ;; Maintainer: Bill Wohler <wohler@newt.com> | 7 | ;; Maintainer: Bill Wohler <wohler@newt.com> |
| @@ -597,9 +597,9 @@ IDENTITY is optionally the default-user-id to use." | |||
| 597 | (let ((valid-methods (list "pgpmime" "pgp" "smime")) | 597 | (let ((valid-methods (list "pgpmime" "pgp" "smime")) |
| 598 | (valid-modes (list "sign" "encrypt" "signencrypt" "none"))) | 598 | (valid-modes (list "sign" "encrypt" "signencrypt" "none"))) |
| 599 | (if (not (member method valid-methods)) | 599 | (if (not (member method valid-methods)) |
| 600 | (error (format "Sorry. METHOD \"%s\" is invalid" method))) | 600 | (error "Sorry. METHOD \"%s\" is invalid" method)) |
| 601 | (if (not (member mode valid-modes)) | 601 | (if (not (member mode valid-modes)) |
| 602 | (error (format "Sorry. MODE \"%s\" is invalid" mode))) | 602 | (error "Sorry. MODE \"%s\" is invalid" mode)) |
| 603 | (mml-unsecure-message) | 603 | (mml-unsecure-message) |
| 604 | (if (not (string= mode "none")) | 604 | (if (not (string= mode "none")) |
| 605 | (save-excursion | 605 | (save-excursion |
| @@ -1059,11 +1059,11 @@ to highlight the signature in a MIME part." | |||
| 1059 | (when (re-search-backward regexp nil t) | 1059 | (when (re-search-backward regexp nil t) |
| 1060 | (mh-do-in-gnu-emacs | 1060 | (mh-do-in-gnu-emacs |
| 1061 | (let ((ov (make-overlay (point) (point-max)))) | 1061 | (let ((ov (make-overlay (point) (point-max)))) |
| 1062 | (overlay-put ov 'face 'mh-show-signature-face) | 1062 | (overlay-put ov 'face 'mh-show-signature) |
| 1063 | (overlay-put ov 'evaporate t))) | 1063 | (overlay-put ov 'evaporate t))) |
| 1064 | (mh-do-in-xemacs | 1064 | (mh-do-in-xemacs |
| 1065 | (set-extent-property (make-extent (point) (point-max)) | 1065 | (set-extent-property (make-extent (point) (point-max)) |
| 1066 | 'face 'mh-show-signature-face)))))) | 1066 | 'face 'mh-show-signature)))))) |
| 1067 | 1067 | ||
| 1068 | (mh-do-in-xemacs | 1068 | (mh-do-in-xemacs |
| 1069 | (defvar dots) | 1069 | (defvar dots) |
diff --git a/lisp/mh-e/mh-speed.el b/lisp/mh-e/mh-speed.el index 2617a941de1..87349277cc0 100644 --- a/lisp/mh-e/mh-speed.el +++ b/lisp/mh-e/mh-speed.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; mh-speed.el --- Speedbar interface for MH-E. | 1 | ;;; mh-speed.el --- Speedbar interface for MH-E. |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Satyaki Das <satyaki@theforce.stanford.edu> | 5 | ;; Author: Satyaki Das <satyaki@theforce.stanford.edu> |
| 6 | ;; Maintainer: Bill Wohler <wohler@newt.com> | 6 | ;; Maintainer: Bill Wohler <wohler@newt.com> |
| @@ -67,7 +67,7 @@ BUFFER is the MH-E buffer for which the speedbar buffer is to be created." | |||
| 67 | (erase-buffer) | 67 | (erase-buffer) |
| 68 | (clrhash mh-speed-folder-map) | 68 | (clrhash mh-speed-folder-map) |
| 69 | (speedbar-make-tag-line 'bracket ?+ 'mh-speed-toggle nil " " 'ignore nil | 69 | (speedbar-make-tag-line 'bracket ?+ 'mh-speed-toggle nil " " 'ignore nil |
| 70 | 'mh-speedbar-folder-face 0) | 70 | 'mh-speedbar-folder 0) |
| 71 | (forward-line -1) | 71 | (forward-line -1) |
| 72 | (setf (gethash nil mh-speed-folder-map) | 72 | (setf (gethash nil mh-speed-folder-map) |
| 73 | (set-marker (or (gethash nil mh-speed-folder-map) (make-marker)) | 73 | (set-marker (or (gethash nil mh-speed-folder-map) (make-marker)) |
| @@ -149,12 +149,11 @@ The update is always carried out if FORCE is non-nil." | |||
| 149 | (set-buffer speedbar-buffer) | 149 | (set-buffer speedbar-buffer) |
| 150 | 150 | ||
| 151 | ;; Remove highlight from previous match... | 151 | ;; Remove highlight from previous match... |
| 152 | (mh-speed-highlight mh-speed-last-selected-folder | 152 | (mh-speed-highlight mh-speed-last-selected-folder 'mh-speedbar-folder) |
| 153 | 'mh-speedbar-folder-face) | ||
| 154 | 153 | ||
| 155 | ;; If we found a match highlight it... | 154 | ;; If we found a match highlight it... |
| 156 | (when (mh-speed-goto-folder newcf) | 155 | (when (mh-speed-goto-folder newcf) |
| 157 | (mh-speed-highlight newcf 'mh-speedbar-selected-folder-face)) | 156 | (mh-speed-highlight newcf 'mh-speedbar-selected-folder)) |
| 158 | 157 | ||
| 159 | (setq mh-speed-last-selected-folder newcf) | 158 | (setq mh-speed-last-selected-folder newcf) |
| 160 | (speedbar-position-cursor-on-line) | 159 | (speedbar-position-cursor-on-line) |
| @@ -166,18 +165,18 @@ The update is always carried out if FORCE is non-nil." | |||
| 166 | 165 | ||
| 167 | (defun mh-speed-normal-face (face) | 166 | (defun mh-speed-normal-face (face) |
| 168 | "Return normal face for given FACE." | 167 | "Return normal face for given FACE." |
| 169 | (cond ((eq face 'mh-speedbar-folder-with-unseen-messages-face) | 168 | (cond ((eq face 'mh-speedbar-folder-with-unseen-messages) |
| 170 | 'mh-speedbar-folder-face) | 169 | 'mh-speedbar-folder) |
| 171 | ((eq face 'mh-speedbar-selected-folder-with-unseen-messages-face) | 170 | ((eq face 'mh-speedbar-selected-folder-with-unseen-messages) |
| 172 | 'mh-speedbar-selected-folder-face) | 171 | 'mh-speedbar-selected-folder) |
| 173 | (t face))) | 172 | (t face))) |
| 174 | 173 | ||
| 175 | (defun mh-speed-bold-face (face) | 174 | (defun mh-speed-bold-face (face) |
| 176 | "Return bold face for given FACE." | 175 | "Return bold face for given FACE." |
| 177 | (cond ((eq face 'mh-speedbar-folder-face) | 176 | (cond ((eq face 'mh-speedbar-folder) |
| 178 | 'mh-speedbar-folder-with-unseen-messages-face) | 177 | 'mh-speedbar-folder-with-unseen-messages) |
| 179 | ((eq face 'mh-speedbar-selected-folder-face) | 178 | ((eq face 'mh-speedbar-selected-folder) |
| 180 | 'mh-speedbar-selected-folder-with-unseen-messages-face) | 179 | 'mh-speedbar-selected-folder-with-unseen-messages) |
| 181 | (t face))) | 180 | (t face))) |
| 182 | 181 | ||
| 183 | (defun mh-speed-highlight (folder face) | 182 | (defun mh-speed-highlight (folder face) |
| @@ -272,8 +271,8 @@ Do the right thing for the different kinds of buffers that MH-E uses." | |||
| 272 | "")) | 271 | "")) |
| 273 | 'mh-speed-view nil | 272 | 'mh-speed-view nil |
| 274 | (if (and counts (> (car counts) 0)) | 273 | (if (and counts (> (car counts) 0)) |
| 275 | 'mh-speedbar-folder-with-unseen-messages-face | 274 | 'mh-speedbar-folder-with-unseen-messages |
| 276 | 'mh-speedbar-folder-face) | 275 | 'mh-speedbar-folder) |
| 277 | level) | 276 | level) |
| 278 | (save-excursion | 277 | (save-excursion |
| 279 | (forward-line -1) | 278 | (forward-line -1) |
| @@ -496,8 +495,7 @@ next." | |||
| 496 | (add-text-properties | 495 | (add-text-properties |
| 497 | (line-beginning-position) (1+ (line-beginning-position)) | 496 | (line-beginning-position) (1+ (line-beginning-position)) |
| 498 | `(mh-children-p ,(equal parent-change ?+))))) | 497 | `(mh-children-p ,(equal parent-change ?+))))) |
| 499 | (mh-speed-highlight mh-speed-last-selected-folder | 498 | (mh-speed-highlight mh-speed-last-selected-folder 'mh-speedbar-folder) |
| 500 | 'mh-speedbar-folder-face) | ||
| 501 | (setq mh-speed-last-selected-folder nil) | 499 | (setq mh-speed-last-selected-folder nil) |
| 502 | (setq mh-speed-refresh-flag t))) | 500 | (setq mh-speed-refresh-flag t))) |
| 503 | (when (equal folder "") | 501 | (when (equal folder "") |
diff --git a/lisp/mh-e/mh-utils.el b/lisp/mh-e/mh-utils.el index d371087cc6d..da0da053119 100644 --- a/lisp/mh-e/mh-utils.el +++ b/lisp/mh-e/mh-utils.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; mh-utils.el --- MH-E code needed for both sending and reading | 1 | ;;; mh-utils.el --- MH-E code needed for both sending and reading |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1993, 1995, 1997, | 3 | ;; Copyright (C) 1993, 1995, 1997, |
| 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: Bill Wohler <wohler@newt.com> | 6 | ;; Author: Bill Wohler <wohler@newt.com> |
| 7 | ;; Maintainer: Bill Wohler <wohler@newt.com> | 7 | ;; Maintainer: Bill Wohler <wohler@newt.com> |
| @@ -406,7 +406,7 @@ Argument LIMIT limits search." | |||
| 406 | 406 | ||
| 407 | (defvar mh-letter-font-lock-keywords | 407 | (defvar mh-letter-font-lock-keywords |
| 408 | `(,@mh-show-font-lock-keywords-with-cite | 408 | `(,@mh-show-font-lock-keywords-with-cite |
| 409 | (mh-font-lock-field-data (1 'mh-letter-header-field-face prepend t)))) | 409 | (mh-font-lock-field-data (1 'mh-letter-header-field prepend t)))) |
| 410 | 410 | ||
| 411 | (defun mh-show-font-lock-fontify-region (beg end loudly) | 411 | (defun mh-show-font-lock-fontify-region (beg end loudly) |
| 412 | "Limit font-lock in `mh-show-mode' to the header. | 412 | "Limit font-lock in `mh-show-mode' to the header. |
| @@ -1218,8 +1218,8 @@ is used." | |||
| 1218 | (mh-funcall-if-exists | 1218 | (mh-funcall-if-exists |
| 1219 | insert-image (create-image | 1219 | insert-image (create-image |
| 1220 | raw type t | 1220 | raw type t |
| 1221 | :foreground (face-foreground 'mh-show-xface-face) | 1221 | :foreground (face-foreground 'mh-show-xface) |
| 1222 | :background (face-background 'mh-show-xface-face)) | 1222 | :background (face-background 'mh-show-xface)) |
| 1223 | " "))) | 1223 | " "))) |
| 1224 | ;; XEmacs | 1224 | ;; XEmacs |
| 1225 | (mh-do-in-xemacs | 1225 | (mh-do-in-xemacs |
| @@ -1237,7 +1237,7 @@ is used." | |||
| 1237 | (set-extent-begin-glyph | 1237 | (set-extent-begin-glyph |
| 1238 | (make-extent (point) (point)) | 1238 | (make-extent (point) (point)) |
| 1239 | (make-glyph (vector 'xface ':data (concat "X-Face: " x-face)))) | 1239 | (make-glyph (vector 'xface ':data (concat "X-Face: " x-face)))) |
| 1240 | 'mh-show-xface-face)) | 1240 | 'mh-show-xface)) |
| 1241 | ;; Otherwise try external support with x-face... | 1241 | ;; Otherwise try external support with x-face... |
| 1242 | ((and (eq type 'pbm) | 1242 | ((and (eq type 'pbm) |
| 1243 | (fboundp 'x-face-xmas-wl-display-x-face) | 1243 | (fboundp 'x-face-xmas-wl-display-x-face) |
diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el index d846234133d..70388e56ab7 100644 --- a/lisp/net/browse-url.el +++ b/lisp/net/browse-url.el | |||
| @@ -38,6 +38,7 @@ | |||
| 38 | 38 | ||
| 39 | ;; Function Browser Earliest version | 39 | ;; Function Browser Earliest version |
| 40 | ;; browse-url-mozilla Mozilla Don't know | 40 | ;; browse-url-mozilla Mozilla Don't know |
| 41 | ;; browse-url-firefox Firefox Don't know (tried with 1.0.1) | ||
| 41 | ;; browse-url-galeon Galeon Don't know | 42 | ;; browse-url-galeon Galeon Don't know |
| 42 | ;; browse-url-epiphany Epiphany Don't know | 43 | ;; browse-url-epiphany Epiphany Don't know |
| 43 | ;; browse-url-netscape Netscape 1.1b1 | 44 | ;; browse-url-netscape Netscape 1.1b1 |
| @@ -248,6 +249,7 @@ regexp should probably be \".\" to specify a default browser." | |||
| 248 | (function-item :tag "W3 in another Emacs via `gnudoit'" | 249 | (function-item :tag "W3 in another Emacs via `gnudoit'" |
| 249 | :value browse-url-w3-gnudoit) | 250 | :value browse-url-w3-gnudoit) |
| 250 | (function-item :tag "Mozilla" :value browse-url-mozilla) | 251 | (function-item :tag "Mozilla" :value browse-url-mozilla) |
| 252 | (function-item :tag "Firefox" :value browse-url-firefox) | ||
| 251 | (function-item :tag "Galeon" :value browse-url-galeon) | 253 | (function-item :tag "Galeon" :value browse-url-galeon) |
| 252 | (function-item :tag "Epiphany" :value browse-url-epiphany) | 254 | (function-item :tag "Epiphany" :value browse-url-epiphany) |
| 253 | (function-item :tag "Netscape" :value browse-url-netscape) | 255 | (function-item :tag "Netscape" :value browse-url-netscape) |
| @@ -323,6 +325,25 @@ Defaults to the value of `browse-url-mozilla-arguments' at the time | |||
| 323 | :type '(repeat (string :tag "Argument")) | 325 | :type '(repeat (string :tag "Argument")) |
| 324 | :group 'browse-url) | 326 | :group 'browse-url) |
| 325 | 327 | ||
| 328 | ;;;###autoload | ||
| 329 | (defcustom browse-url-firefox-program "firefox" | ||
| 330 | "*The name by which to invoke Firefox." | ||
| 331 | :type 'string | ||
| 332 | :group 'browse-url) | ||
| 333 | |||
| 334 | (defcustom browse-url-firefox-arguments nil | ||
| 335 | "*A list of strings to pass to Firefox as arguments." | ||
| 336 | :type '(repeat (string :tag "Argument")) | ||
| 337 | :group 'browse-url) | ||
| 338 | |||
| 339 | (defcustom browse-url-firefox-startup-arguments browse-url-firefox-arguments | ||
| 340 | "*A list of strings to pass to Firefox when it starts up. | ||
| 341 | Defaults to the value of `browse-url-firefox-arguments' at the time | ||
| 342 | `browse-url' is loaded." | ||
| 343 | :type '(repeat (string :tag "Argument")) | ||
| 344 | :group 'browse-url) | ||
| 345 | |||
| 346 | ;;;###autoload | ||
| 326 | (defcustom browse-url-galeon-program "galeon" | 347 | (defcustom browse-url-galeon-program "galeon" |
| 327 | "*The name by which to invoke Galeon." | 348 | "*The name by which to invoke Galeon." |
| 328 | :type 'string | 349 | :type 'string |
| @@ -373,6 +394,16 @@ If non-nil, then open the URL in a new tab rather than a new window if | |||
| 373 | :type 'boolean | 394 | :type 'boolean |
| 374 | :group 'browse-url) | 395 | :group 'browse-url) |
| 375 | 396 | ||
| 397 | (defcustom browse-url-firefox-new-window-is-tab nil | ||
| 398 | "*Whether to open up new windows in a tab or a new window. | ||
| 399 | If non-nil, then open the URL in a new tab rather than a new window if | ||
| 400 | `browse-url-firefox' is asked to open it in a new window. | ||
| 401 | |||
| 402 | This option is currently ignored on MS-Windows, since the necessary | ||
| 403 | functionality is not available there." | ||
| 404 | :type 'boolean | ||
| 405 | :group 'browse-url) | ||
| 406 | |||
| 376 | (defcustom browse-url-galeon-new-window-is-tab nil | 407 | (defcustom browse-url-galeon-new-window-is-tab nil |
| 377 | "*Whether to open up new windows in a tab or a new window. | 408 | "*Whether to open up new windows in a tab or a new window. |
| 378 | If non-nil, then open the URL in a new tab rather than a new window if | 409 | If non-nil, then open the URL in a new tab rather than a new window if |
| @@ -815,13 +846,14 @@ the effect of `browse-url-new-window-flag'. | |||
| 815 | When called non-interactively, optional second argument NEW-WINDOW is | 846 | When called non-interactively, optional second argument NEW-WINDOW is |
| 816 | used instead of `browse-url-new-window-flag'. | 847 | used instead of `browse-url-new-window-flag'. |
| 817 | 848 | ||
| 818 | The order attempted is gnome-moz-remote, Mozilla, Galeon, | 849 | The order attempted is gnome-moz-remote, Mozilla, Firefox, |
| 819 | Konqueror, Netscape, Mosaic, IXI Mosaic, Lynx in an xterm, MMM, | 850 | Galeon, Konqueror, Netscape, Mosaic, IXI Mosaic, Lynx in an |
| 820 | and then W3." | 851 | xterm, MMM, and then W3." |
| 821 | (apply | 852 | (apply |
| 822 | (cond | 853 | (cond |
| 823 | ((executable-find browse-url-gnome-moz-program) 'browse-url-gnome-moz) | 854 | ((executable-find browse-url-gnome-moz-program) 'browse-url-gnome-moz) |
| 824 | ((executable-find browse-url-mozilla-program) 'browse-url-mozilla) | 855 | ((executable-find browse-url-mozilla-program) 'browse-url-mozilla) |
| 856 | ((executable-find browse-url-firefox-program) 'browse-url-firefox) | ||
| 825 | ((executable-find browse-url-galeon-program) 'browse-url-galeon) | 857 | ((executable-find browse-url-galeon-program) 'browse-url-galeon) |
| 826 | ((executable-find browse-url-kde-program) 'browse-url-kde) | 858 | ((executable-find browse-url-kde-program) 'browse-url-kde) |
| 827 | ((executable-find browse-url-netscape-program) 'browse-url-netscape) | 859 | ((executable-find browse-url-netscape-program) 'browse-url-netscape) |
| @@ -960,6 +992,71 @@ used instead of `browse-url-new-window-flag'." | |||
| 960 | (append browse-url-mozilla-startup-arguments (list url)))))) | 992 | (append browse-url-mozilla-startup-arguments (list url)))))) |
| 961 | 993 | ||
| 962 | ;;;###autoload | 994 | ;;;###autoload |
| 995 | (defun browse-url-firefox (url &optional new-window) | ||
| 996 | "Ask the Firefox WWW browser to load URL. | ||
| 997 | Default to the URL around or before point. The strings in | ||
| 998 | variable `browse-url-firefox-arguments' are also passed to | ||
| 999 | Firefox. | ||
| 1000 | |||
| 1001 | When called interactively, if variable | ||
| 1002 | `browse-url-new-window-flag' is non-nil, load the document in a | ||
| 1003 | new Firefox window, otherwise use a random existing one. A | ||
| 1004 | non-nil interactive prefix argument reverses the effect of | ||
| 1005 | `browse-url-new-window-flag'. | ||
| 1006 | |||
| 1007 | If `browse-url-firefox-new-window-is-tab' is non-nil, then | ||
| 1008 | whenever a document would otherwise be loaded in a new window, it | ||
| 1009 | is loaded in a new tab in an existing window instead. | ||
| 1010 | |||
| 1011 | When called non-interactively, optional second argument | ||
| 1012 | NEW-WINDOW is used instead of `browse-url-new-window-flag'. | ||
| 1013 | |||
| 1014 | On MS-Windows systems the optional `new-window' parameter is | ||
| 1015 | ignored. Firefox for Windows does not support the \"-remote\" | ||
| 1016 | command line parameter. Therefore, the | ||
| 1017 | `browse-url-new-window-flag' and `browse-url-firefox-new-window-is-tab' | ||
| 1018 | are ignored as well. Firefox on Windows will always open the requested | ||
| 1019 | URL in a new window." | ||
| 1020 | (interactive (browse-url-interactive-arg "URL: ")) | ||
| 1021 | ;; URL encode any `confusing' characters in the URL. This needs to | ||
| 1022 | ;; include at least commas; presumably also close parens. | ||
| 1023 | (while (string-match "[,)]" url) | ||
| 1024 | (setq url (replace-match | ||
| 1025 | (format "%%%x" (string-to-char (match-string 0 url))) t t url))) | ||
| 1026 | (let* ((process-environment (browse-url-process-environment)) | ||
| 1027 | (process | ||
| 1028 | (apply 'start-process | ||
| 1029 | (concat "firefox " url) nil | ||
| 1030 | browse-url-firefox-program | ||
| 1031 | (append | ||
| 1032 | browse-url-firefox-arguments | ||
| 1033 | (if (or (featurep 'dos-w32) | ||
| 1034 | (string-match "win32" system-configuration)) | ||
| 1035 | (list url) | ||
| 1036 | (list "-remote" | ||
| 1037 | (concat "openURL(" | ||
| 1038 | url | ||
| 1039 | (if (browse-url-maybe-new-window | ||
| 1040 | new-window) | ||
| 1041 | (if browse-url-firefox-new-window-is-tab | ||
| 1042 | ",new-tab" | ||
| 1043 | ",new-window")) | ||
| 1044 | ")"))))))) | ||
| 1045 | (set-process-sentinel process | ||
| 1046 | `(lambda (process change) | ||
| 1047 | (browse-url-firefox-sentinel process ,url))))) | ||
| 1048 | |||
| 1049 | (defun browse-url-firefox-sentinel (process url) | ||
| 1050 | "Handle a change to the process communicating with Firefox." | ||
| 1051 | (or (eq (process-exit-status process) 0) | ||
| 1052 | (let* ((process-environment (browse-url-process-environment))) | ||
| 1053 | ;; Firefox is not running - start it | ||
| 1054 | (message "Starting Firefox...") | ||
| 1055 | (apply 'start-process (concat "firefox " url) nil | ||
| 1056 | browse-url-firefox-program | ||
| 1057 | (append browse-url-firefox-startup-arguments (list url)))))) | ||
| 1058 | |||
| 1059 | ;;;###autoload | ||
| 963 | (defun browse-url-galeon (url &optional new-window) | 1060 | (defun browse-url-galeon (url &optional new-window) |
| 964 | "Ask the Galeon WWW browser to load URL. | 1061 | "Ask the Galeon WWW browser to load URL. |
| 965 | Default to the URL around or before point. The strings in variable | 1062 | Default to the URL around or before point. The strings in variable |
diff --git a/lisp/net/tramp-ftp.el b/lisp/net/tramp-ftp.el index 496ee926d51..f43faf11cc1 100644 --- a/lisp/net/tramp-ftp.el +++ b/lisp/net/tramp-ftp.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; tramp-ftp.el --- Tramp convenience functions for Ange-FTP and EFS -*- coding: iso-8859-1; -*- | 1 | ;;; tramp-ftp.el --- Tramp convenience functions for Ange-FTP and EFS -*- coding: iso-8859-1; -*- |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2005 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Michael Albinus <Michael.Albinus@alcatel.de> | 5 | ;; Author: Michael Albinus <Michael.Albinus@alcatel.de> |
| 6 | ;; Keywords: comm, processes | 6 | ;; Keywords: comm, processes |
diff --git a/lisp/net/tramp-smb.el b/lisp/net/tramp-smb.el index c93bdfb8e61..cd096df3be3 100644 --- a/lisp/net/tramp-smb.el +++ b/lisp/net/tramp-smb.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; tramp-smb.el --- Tramp access functions for SMB servers -*- coding: iso-8859-1; -*- | 1 | ;;; tramp-smb.el --- Tramp access functions for SMB servers -*- coding: iso-8859-1; -*- |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2005 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Michael Albinus <michael.albinus@gmx.de> | 5 | ;; Author: Michael Albinus <michael.albinus@gmx.de> |
| 6 | ;; Keywords: comm, processes | 6 | ;; Keywords: comm, processes |
diff --git a/lisp/net/tramp-util.el b/lisp/net/tramp-util.el index eff8130b996..1621c2c818e 100644 --- a/lisp/net/tramp-util.el +++ b/lisp/net/tramp-util.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; -*- coding: iso-2022-7bit; -*- | 1 | ;;; -*- coding: iso-2022-7bit; -*- |
| 2 | ;;; tramp-util.el --- Misc utility functions to use with Tramp | 2 | ;;; tramp-util.el --- Misc utility functions to use with Tramp |
| 3 | 3 | ||
| 4 | ;; Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | 4 | ;; Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: kai.grossjohann@gmx.net | 6 | ;; Author: kai.grossjohann@gmx.net |
| 7 | ;; Keywords: comm, extensions, processes | 7 | ;; Keywords: comm, extensions, processes |
diff --git a/lisp/net/tramp-uu.el b/lisp/net/tramp-uu.el index 09dfa7d04a5..ffaa0659160 100644 --- a/lisp/net/tramp-uu.el +++ b/lisp/net/tramp-uu.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; -*- coding: iso-2022-7bit; -*- | 1 | ;;; -*- coding: iso-2022-7bit; -*- |
| 2 | ;;; tramp-uu.el --- uuencode in Lisp | 2 | ;;; tramp-uu.el --- uuencode in Lisp |
| 3 | 3 | ||
| 4 | ;; Copyright (C) 2002, 2005 Free Software Foundation, Inc. | 4 | ;; Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: Kai Gro,A_(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> | 6 | ;; Author: Kai Gro,A_(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> |
| 7 | ;; Keywords: comm, terminals | 7 | ;; Keywords: comm, terminals |
diff --git a/lisp/net/tramp-vc.el b/lisp/net/tramp-vc.el index 9a281d9d40d..c58d83504c2 100644 --- a/lisp/net/tramp-vc.el +++ b/lisp/net/tramp-vc.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; tramp-vc.el --- Version control integration for TRAMP.el | 1 | ;;; tramp-vc.el --- Version control integration for TRAMP.el |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2000, 2001, 2002, 2005 by Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 by Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Daniel Pittman <daniel@danann.net> | 5 | ;; Author: Daniel Pittman <daniel@danann.net> |
| 6 | ;; Keywords: comm, processes | 6 | ;; Keywords: comm, processes |
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 5873efcb98a..ee9f570bd43 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; -*- mode: Emacs-Lisp; coding: iso-2022-7bit; -*- | 1 | ;;; -*- mode: Emacs-Lisp; coding: iso-2022-7bit; -*- |
| 2 | ;;; tramp.el --- Transparent Remote Access, Multiple Protocol | 2 | ;;; tramp.el --- Transparent Remote Access, Multiple Protocol |
| 3 | 3 | ||
| 4 | ;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2005 Free Software Foundation, Inc. | 4 | ;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: kai.grossjohann@gmx.net | 6 | ;; Author: kai.grossjohann@gmx.net |
| 7 | ;; Keywords: comm, processes | 7 | ;; Keywords: comm, processes |
diff --git a/lisp/net/zone-mode.el b/lisp/net/zone-mode.el index c7999616375..17acb786010 100644 --- a/lisp/net/zone-mode.el +++ b/lisp/net/zone-mode.el | |||
| @@ -60,7 +60,7 @@ | |||
| 60 | (old-serial (concat old-date old-seq)) | 60 | (old-serial (concat old-date old-seq)) |
| 61 | (new-serial (concat cur-date new-seq))) | 61 | (new-serial (concat cur-date new-seq))) |
| 62 | (if (string-lessp new-serial old-serial) | 62 | (if (string-lessp new-serial old-serial) |
| 63 | (error (format "Serial numbers want to move backwards from %s to %s" old-serial new-serial)) | 63 | (error "Serial numbers want to move backwards from %s to %s" old-serial new-serial) |
| 64 | (replace-match (concat cur-date new-seq old-flag) t t)))))) | 64 | (replace-match (concat cur-date new-seq old-flag) t t)))))) |
| 65 | 65 | ||
| 66 | ;;;###autoload | 66 | ;;;###autoload |
| @@ -76,7 +76,7 @@ | |||
| 76 | "Zone-mode's syntax table.") | 76 | "Zone-mode's syntax table.") |
| 77 | 77 | ||
| 78 | (defun zone-mode-load-time-setup () | 78 | (defun zone-mode-load-time-setup () |
| 79 | "Initialise `zone-mode' stuff." | 79 | "Initialize `zone-mode' stuff." |
| 80 | (setq zone-mode-syntax-table (make-syntax-table)) | 80 | (setq zone-mode-syntax-table (make-syntax-table)) |
| 81 | (modify-syntax-entry ?\; "<" zone-mode-syntax-table) | 81 | (modify-syntax-entry ?\; "<" zone-mode-syntax-table) |
| 82 | (modify-syntax-entry ?\n ">" zone-mode-syntax-table)) | 82 | (modify-syntax-entry ?\n ">" zone-mode-syntax-table)) |
diff --git a/lisp/progmodes/ada-mode.el b/lisp/progmodes/ada-mode.el index ba4702d90a4..68afd8ee649 100644 --- a/lisp/progmodes/ada-mode.el +++ b/lisp/progmodes/ada-mode.el | |||
| @@ -31,9 +31,9 @@ | |||
| 31 | ;;; This mode is a major mode for editing Ada83 and Ada95 source code. | 31 | ;;; This mode is a major mode for editing Ada83 and Ada95 source code. |
| 32 | ;;; This is a major rewrite of the file packaged with Emacs-20. The | 32 | ;;; This is a major rewrite of the file packaged with Emacs-20. The |
| 33 | ;;; ada-mode is composed of four lisp files, ada-mode.el, ada-xref.el, | 33 | ;;; ada-mode is composed of four lisp files, ada-mode.el, ada-xref.el, |
| 34 | ;;; ada-prj.el and ada-stmt.el. Only this file (ada-mode.el) is | 34 | ;;; ada-prj.el and ada-stmt.el. Only this file (ada-mode.el) is |
| 35 | ;;; completely independent from the GNU Ada compiler Gnat, distributed | 35 | ;;; completely independent from the GNU Ada compiler Gnat, distributed |
| 36 | ;;; by Ada Core Technologies. All the other files rely heavily on | 36 | ;;; by Ada Core Technologies. All the other files rely heavily on |
| 37 | ;;; features provided only by Gnat. | 37 | ;;; features provided only by Gnat. |
| 38 | ;;; | 38 | ;;; |
| 39 | ;;; Note: this mode will not work with Emacs 19. If you are on a VMS | 39 | ;;; Note: this mode will not work with Emacs 19. If you are on a VMS |
| @@ -136,7 +136,7 @@ | |||
| 136 | ;; this function is needed at compile time | 136 | ;; this function is needed at compile time |
| 137 | (eval-and-compile | 137 | (eval-and-compile |
| 138 | (defun ada-check-emacs-version (major minor &optional is-xemacs) | 138 | (defun ada-check-emacs-version (major minor &optional is-xemacs) |
| 139 | "Returns t if Emacs's version is greater or equal to MAJOR.MINOR. | 139 | "Return t if Emacs's version is greater or equal to MAJOR.MINOR. |
| 140 | If IS-XEMACS is non-nil, check for XEmacs instead of Emacs." | 140 | If IS-XEMACS is non-nil, check for XEmacs instead of Emacs." |
| 141 | (let ((xemacs-running (or (string-match "Lucid" emacs-version) | 141 | (let ((xemacs-running (or (string-match "Lucid" emacs-version) |
| 142 | (string-match "XEmacs" emacs-version)))) | 142 | (string-match "XEmacs" emacs-version)))) |
| @@ -186,8 +186,7 @@ An example is : | |||
| 186 | :type 'integer :group 'ada) | 186 | :type 'integer :group 'ada) |
| 187 | 187 | ||
| 188 | (defcustom ada-continuation-indent ada-broken-indent | 188 | (defcustom ada-continuation-indent ada-broken-indent |
| 189 | "*Number of columns to indent the continuation of broken lines in | 189 | "*Number of columns to indent the continuation of broken lines in parenthesis. |
| 190 | parenthesis. | ||
| 191 | 190 | ||
| 192 | An example is : | 191 | An example is : |
| 193 | Func (Param1, | 192 | Func (Param1, |
| @@ -212,10 +211,10 @@ The first file is the one where new exceptions will be saved by Emacs | |||
| 212 | when you call `ada-create-case-exception'. | 211 | when you call `ada-create-case-exception'. |
| 213 | 212 | ||
| 214 | These files should contain one word per line, that gives the casing | 213 | These files should contain one word per line, that gives the casing |
| 215 | to be used for that word in Ada files. If the line starts with the | 214 | to be used for that word in Ada files. If the line starts with the |
| 216 | character *, then the exception will be used for substrings that either | 215 | character *, then the exception will be used for substrings that either |
| 217 | start at the beginning of a word or after a _ character, and end either | 216 | start at the beginning of a word or after a _ character, and end either |
| 218 | at the end of the word or at a _ character. Each line can be terminated by | 217 | at the end of the word or at a _ character. Each line can be terminated by |
| 219 | a comment." | 218 | a comment." |
| 220 | :type '(repeat (file)) | 219 | :type '(repeat (file)) |
| 221 | :group 'ada) | 220 | :group 'ada) |
| @@ -271,15 +270,14 @@ For instance: | |||
| 271 | 270 | ||
| 272 | (defcustom ada-indent-comment-as-code t | 271 | (defcustom ada-indent-comment-as-code t |
| 273 | "*Non-nil means indent comment lines as code. | 272 | "*Non-nil means indent comment lines as code. |
| 274 | nil means do not auto-indent comments." | 273 | A nil value means do not auto-indent comments." |
| 275 | :type 'boolean :group 'ada) | 274 | :type 'boolean :group 'ada) |
| 276 | 275 | ||
| 277 | (defcustom ada-indent-handle-comment-special nil | 276 | (defcustom ada-indent-handle-comment-special nil |
| 278 | "*Non-nil if comment lines should be handled specially inside | 277 | "*Non-nil if comment lines should be handled specially inside parenthesis. |
| 279 | parenthesis. | ||
| 280 | By default, if the line that contains the open parenthesis has some | 278 | By default, if the line that contains the open parenthesis has some |
| 281 | text following it, then the following lines will be indented in the | 279 | text following it, then the following lines will be indented in the |
| 282 | same column as this text. This will not be true if the first line is | 280 | same column as this text. This will not be true if the first line is |
| 283 | a comment and `ada-indent-handle-comment-special' is t. | 281 | a comment and `ada-indent-handle-comment-special' is t. |
| 284 | 282 | ||
| 285 | type A is | 283 | type A is |
| @@ -311,8 +309,8 @@ An example is: | |||
| 311 | 309 | ||
| 312 | (defcustom ada-indent-renames ada-broken-indent | 310 | (defcustom ada-indent-renames ada-broken-indent |
| 313 | "*Indentation for renames relative to the matching function statement. | 311 | "*Indentation for renames relative to the matching function statement. |
| 314 | If ada-indent-return is null or negative, the indentation is done relative to | 312 | If `ada-indent-return' is null or negative, the indentation is done relative to |
| 315 | the open parenthesis (if there is no parenthesis, ada-broken-indent is used). | 313 | the open parenthesis (if there is no parenthesis, `ada-broken-indent' is used). |
| 316 | 314 | ||
| 317 | An example is: | 315 | An example is: |
| 318 | function A (B : Integer) | 316 | function A (B : Integer) |
| @@ -322,8 +320,8 @@ An example is: | |||
| 322 | 320 | ||
| 323 | (defcustom ada-indent-return 0 | 321 | (defcustom ada-indent-return 0 |
| 324 | "*Indentation for 'return' relative to the matching 'function' statement. | 322 | "*Indentation for 'return' relative to the matching 'function' statement. |
| 325 | If ada-indent-return is null or negative, the indentation is done relative to | 323 | If `ada-indent-return' is null or negative, the indentation is done relative to |
| 326 | the open parenthesis (if there is no parenthesis, ada-broken-indent is used). | 324 | the open parenthesis (if there is no parenthesis, `ada-broken-indent' is used). |
| 327 | 325 | ||
| 328 | An example is: | 326 | An example is: |
| 329 | function A (B : Integer) | 327 | function A (B : Integer) |
| @@ -342,7 +340,7 @@ again to take account of the new value." | |||
| 342 | 340 | ||
| 343 | (defcustom ada-fill-comment-postfix " --" | 341 | (defcustom ada-fill-comment-postfix " --" |
| 344 | "*Text inserted at the end of each line when filling a comment paragraph. | 342 | "*Text inserted at the end of each line when filling a comment paragraph. |
| 345 | with `ada-fill-comment-paragraph-postfix'." | 343 | Used by `ada-fill-comment-paragraph-postfix'." |
| 346 | :type 'string :group 'ada) | 344 | :type 'string :group 'ada) |
| 347 | 345 | ||
| 348 | (defcustom ada-label-indent -4 | 346 | (defcustom ada-label-indent -4 |
| @@ -377,7 +375,7 @@ If nil, no contextual menu is available." | |||
| 377 | '("/usr/adainclude" "/usr/local/adainclude" | 375 | '("/usr/adainclude" "/usr/local/adainclude" |
| 378 | "/opt/gnu/adainclude")) | 376 | "/opt/gnu/adainclude")) |
| 379 | "*List of directories to search for Ada files. | 377 | "*List of directories to search for Ada files. |
| 380 | See the description for the `ff-search-directories' variable. This variable | 378 | See the description for the `ff-search-directories' variable. This variable |
| 381 | is the initial value of this variable, and is copied and modified in | 379 | is the initial value of this variable, and is copied and modified in |
| 382 | `ada-search-directories-internal'." | 380 | `ada-search-directories-internal'." |
| 383 | :type '(repeat (choice :tag "Directory" | 381 | :type '(repeat (choice :tag "Directory" |
| @@ -389,7 +387,7 @@ is the initial value of this variable, and is copied and modified in | |||
| 389 | "Internal version of `ada-search-directories'. | 387 | "Internal version of `ada-search-directories'. |
| 390 | Its value is the concatenation of the search path as read in the project file | 388 | Its value is the concatenation of the search path as read in the project file |
| 391 | and the standard runtime location, and the value of the user-defined | 389 | and the standard runtime location, and the value of the user-defined |
| 392 | ada-search-directories.") | 390 | `ada-search-directories'.") |
| 393 | 391 | ||
| 394 | (defcustom ada-stmt-end-indent 0 | 392 | (defcustom ada-stmt-end-indent 0 |
| 395 | "*Number of columns to indent the end of a statement on a separate line. | 393 | "*Number of columns to indent the end of a statement on a separate line. |
| @@ -402,7 +400,7 @@ An example is: | |||
| 402 | (defcustom ada-tab-policy 'indent-auto | 400 | (defcustom ada-tab-policy 'indent-auto |
| 403 | "*Control the behavior of the TAB key. | 401 | "*Control the behavior of the TAB key. |
| 404 | Must be one of : | 402 | Must be one of : |
| 405 | `indent-rigidly' : always adds ada-indent blanks at the beginning of the line. | 403 | `indent-rigidly' : always adds `ada-indent' blanks at the beginning of the line. |
| 406 | `indent-auto' : use indentation functions in this file. | 404 | `indent-auto' : use indentation functions in this file. |
| 407 | `always-tab' : do indent-relative." | 405 | `always-tab' : do indent-relative." |
| 408 | :type '(choice (const indent-auto) | 406 | :type '(choice (const indent-auto) |
| @@ -438,7 +436,7 @@ An example is: | |||
| 438 | "*Name of the compiler to use. | 436 | "*Name of the compiler to use. |
| 439 | This will determine what features are made available through the ada-mode. | 437 | This will determine what features are made available through the ada-mode. |
| 440 | The possible choices are : | 438 | The possible choices are : |
| 441 | `gnat': Use Ada Core Technologies' Gnat compiler. Add some cross-referencing | 439 | `gnat': Use Ada Core Technologies' Gnat compiler. Add some cross-referencing |
| 442 | features | 440 | features |
| 443 | `generic': Use a generic compiler" | 441 | `generic': Use a generic compiler" |
| 444 | :type '(choice (const gnat) | 442 | :type '(choice (const gnat) |
| @@ -494,14 +492,14 @@ This variable is used to define `ada-83-keywords' and `ada-95-keywords'")) | |||
| 494 | (defvar ada-case-exception-substring '() | 492 | (defvar ada-case-exception-substring '() |
| 495 | "Alist of substrings (entities) that have special casing. | 493 | "Alist of substrings (entities) that have special casing. |
| 496 | The substrings are detected for word constituant when the word | 494 | The substrings are detected for word constituant when the word |
| 497 | is not itself in ada-case-exception, and only for substrings that | 495 | is not itself in `ada-case-exception', and only for substrings that |
| 498 | either are at the beginning or end of the word, or start after '_'.") | 496 | either are at the beginning or end of the word, or start after '_'.") |
| 499 | 497 | ||
| 500 | (defvar ada-lfd-binding nil | 498 | (defvar ada-lfd-binding nil |
| 501 | "Variable to save key binding of LFD when casing is activated.") | 499 | "Variable to save key binding of LFD when casing is activated.") |
| 502 | 500 | ||
| 503 | (defvar ada-other-file-alist nil | 501 | (defvar ada-other-file-alist nil |
| 504 | "Variable used by find-file to find the name of the other package. | 502 | "Variable used by `find-file' to find the name of the other package. |
| 505 | See `ff-other-file-alist'.") | 503 | See `ff-other-file-alist'.") |
| 506 | 504 | ||
| 507 | (defvar ada-align-list | 505 | (defvar ada-align-list |
| @@ -552,7 +550,7 @@ This variable defines several rules to use to align different lines.") | |||
| 552 | "type\\|" | 550 | "type\\|" |
| 553 | "when" | 551 | "when" |
| 554 | "\\)\\>\\)") | 552 | "\\)\\>\\)") |
| 555 | "see the variable `align-region-separate' for more information.") | 553 | "See the variable `align-region-separate' for more information.") |
| 556 | 554 | ||
| 557 | ;;; ---- Below are the regexp used in this package for parsing | 555 | ;;; ---- Below are the regexp used in this package for parsing |
| 558 | 556 | ||
| @@ -631,7 +629,7 @@ A new statement starts after these.") | |||
| 631 | '("end" "loop" "select" "begin" "case" "do" | 629 | '("end" "loop" "select" "begin" "case" "do" |
| 632 | "if" "task" "package" "record" "protected") t) | 630 | "if" "task" "package" "record" "protected") t) |
| 633 | "\\>")) | 631 | "\\>")) |
| 634 | "Regexp used in ada-goto-matching-start.") | 632 | "Regexp used in `ada-goto-matching-start'.") |
| 635 | 633 | ||
| 636 | (defvar ada-matching-decl-start-re | 634 | (defvar ada-matching-decl-start-re |
| 637 | (eval-when-compile | 635 | (eval-when-compile |
| @@ -639,7 +637,7 @@ A new statement starts after these.") | |||
| 639 | (regexp-opt | 637 | (regexp-opt |
| 640 | '("is" "separate" "end" "declare" "if" "new" "begin" "generic" "when") t) | 638 | '("is" "separate" "end" "declare" "if" "new" "begin" "generic" "when") t) |
| 641 | "\\>")) | 639 | "\\>")) |
| 642 | "Regexp used in ada-goto-matching-decl-start.") | 640 | "Regexp used in `ada-goto-matching-decl-start'.") |
| 643 | 641 | ||
| 644 | (defvar ada-loop-start-re | 642 | (defvar ada-loop-start-re |
| 645 | "\\<\\(for\\|while\\|loop\\)\\>" | 643 | "\\<\\(for\\|while\\|loop\\)\\>" |
| @@ -662,7 +660,7 @@ A new statement starts after these.") | |||
| 662 | "Position of point just before displaying the menu. | 660 | "Position of point just before displaying the menu. |
| 663 | This is a list (point buffer). | 661 | This is a list (point buffer). |
| 664 | Since `ada-popup-menu' moves the point where the user clicked, the region | 662 | Since `ada-popup-menu' moves the point where the user clicked, the region |
| 665 | is modified. Therefore no command from the menu knows what the user selected | 663 | is modified. Therefore no command from the menu knows what the user selected |
| 666 | before displaying the contextual menu. | 664 | before displaying the contextual menu. |
| 667 | To get the original region, restore the point to this position before | 665 | To get the original region, restore the point to this position before |
| 668 | calling `region-end' and `region-beginning'. | 666 | calling `region-end' and `region-beginning'. |
| @@ -717,7 +715,7 @@ displaying the menu if point was on an identifier." | |||
| 717 | "^[ \t]*protected[ \t]+\\(type[ \t]+\\)?\\(\\(body[ \t]+\\)?\\(\\sw\\|_\\)+\\)" 2) | 715 | "^[ \t]*protected[ \t]+\\(type[ \t]+\\)?\\(\\(body[ \t]+\\)?\\(\\sw\\|_\\)+\\)" 2) |
| 718 | '("*Packages*" "^[ \t]*package[ \t]+\\(\\(body[ \t]+\\)?\\(\\sw\\|[_.]\\)+\\)" 1)) | 716 | '("*Packages*" "^[ \t]*package[ \t]+\\(\\(body[ \t]+\\)?\\(\\sw\\|[_.]\\)+\\)" 1)) |
| 719 | "Imenu generic expression for Ada mode. | 717 | "Imenu generic expression for Ada mode. |
| 720 | See `imenu-generic-expression'. This variable will create several submenus for | 718 | See `imenu-generic-expression'. This variable will create several submenus for |
| 721 | each type of entity that can be found in an Ada file.") | 719 | each type of entity that can be found in an Ada file.") |
| 722 | 720 | ||
| 723 | 721 | ||
| @@ -733,9 +731,9 @@ each type of entity that can be found in an Ada file.") | |||
| 733 | ) | 731 | ) |
| 734 | 732 | ||
| 735 | (defun ada-compile-goto-error (pos) | 733 | (defun ada-compile-goto-error (pos) |
| 736 | "Replaces `compile-goto-error' from compile.el. | 734 | "Replace `compile-goto-error' from compile.el. |
| 737 | If POS is on a file and line location, go to this position. It adds to | 735 | If POS is on a file and line location, go to this position. It adds |
| 738 | compile.el the capacity to go to a reference in an error message. | 736 | to compile.el the capacity to go to a reference in an error message. |
| 739 | For instance, on this line: | 737 | For instance, on this line: |
| 740 | foo.adb:61:11: [...] in call to size declared at foo.ads:11 | 738 | foo.adb:61:11: [...] in call to size declared at foo.ads:11 |
| 741 | both file locations can be clicked on and jumped to." | 739 | both file locations can be clicked on and jumped to." |
| @@ -953,20 +951,20 @@ OLD-LEN indicates what the length of the replaced text was." | |||
| 953 | ;;------------------------------------------------------------------ | 951 | ;;------------------------------------------------------------------ |
| 954 | 952 | ||
| 955 | (defsubst ada-in-comment-p (&optional parse-result) | 953 | (defsubst ada-in-comment-p (&optional parse-result) |
| 956 | "Returns t if inside a comment." | 954 | "Return t if inside a comment." |
| 957 | (nth 4 (or parse-result | 955 | (nth 4 (or parse-result |
| 958 | (parse-partial-sexp | 956 | (parse-partial-sexp |
| 959 | (line-beginning-position) (point))))) | 957 | (line-beginning-position) (point))))) |
| 960 | 958 | ||
| 961 | (defsubst ada-in-string-p (&optional parse-result) | 959 | (defsubst ada-in-string-p (&optional parse-result) |
| 962 | "Returns t if point is inside a string. | 960 | "Return t if point is inside a string. |
| 963 | If parse-result is non-nil, use is instead of calling parse-partial-sexp." | 961 | If parse-result is non-nil, use is instead of calling `parse-partial-sexp'." |
| 964 | (nth 3 (or parse-result | 962 | (nth 3 (or parse-result |
| 965 | (parse-partial-sexp | 963 | (parse-partial-sexp |
| 966 | (line-beginning-position) (point))))) | 964 | (line-beginning-position) (point))))) |
| 967 | 965 | ||
| 968 | (defsubst ada-in-string-or-comment-p (&optional parse-result) | 966 | (defsubst ada-in-string-or-comment-p (&optional parse-result) |
| 969 | "Returns t if inside a comment or string." | 967 | "Return t if inside a comment or string." |
| 970 | (setq parse-result (or parse-result | 968 | (setq parse-result (or parse-result |
| 971 | (parse-partial-sexp | 969 | (parse-partial-sexp |
| 972 | (line-beginning-position) (point)))) | 970 | (line-beginning-position) (point)))) |
| @@ -994,8 +992,8 @@ It forces Emacs to change the cursor position." | |||
| 994 | "Pops up a contextual menu, depending on where the user clicked. | 992 | "Pops up a contextual menu, depending on where the user clicked. |
| 995 | POSITION is the location the mouse was clicked on. | 993 | POSITION is the location the mouse was clicked on. |
| 996 | Sets `ada-contextual-menu-last-point' to the current position before | 994 | Sets `ada-contextual-menu-last-point' to the current position before |
| 997 | displaying the menu. When a function from the menu is called, the point is | 995 | displaying the menu. When a function from the menu is called, the |
| 998 | where the mouse button was clicked." | 996 | point is where the mouse button was clicked." |
| 999 | (interactive "e") | 997 | (interactive "e") |
| 1000 | 998 | ||
| 1001 | ;; declare this as a local variable, so that the function called | 999 | ;; declare this as a local variable, so that the function called |
| @@ -1035,8 +1033,8 @@ where the mouse button was clicked." | |||
| 1035 | "Define SPEC and BODY as being valid extensions for Ada files. | 1033 | "Define SPEC and BODY as being valid extensions for Ada files. |
| 1036 | Going from body to spec with `ff-find-other-file' used these | 1034 | Going from body to spec with `ff-find-other-file' used these |
| 1037 | extensions. | 1035 | extensions. |
| 1038 | SPEC and BODY are two regular expressions that must match against the file | 1036 | SPEC and BODY are two regular expressions that must match against |
| 1039 | name" | 1037 | the file name." |
| 1040 | (let* ((reg (concat (regexp-quote body) "$")) | 1038 | (let* ((reg (concat (regexp-quote body) "$")) |
| 1041 | (tmp (assoc reg ada-other-file-alist))) | 1039 | (tmp (assoc reg ada-other-file-alist))) |
| 1042 | (if tmp | 1040 | (if tmp |
| @@ -1099,7 +1097,7 @@ Comments are handled using standard GNU Emacs conventions, including: | |||
| 1099 | Continue comment on next line '\\[indent-new-comment-line]' | 1097 | Continue comment on next line '\\[indent-new-comment-line]' |
| 1100 | 1098 | ||
| 1101 | If you use imenu.el: | 1099 | If you use imenu.el: |
| 1102 | Display index-menu of functions & procedures '\\[imenu]' | 1100 | Display index-menu of functions and procedures '\\[imenu]' |
| 1103 | 1101 | ||
| 1104 | If you use find-file.el: | 1102 | If you use find-file.el: |
| 1105 | Switch to other file (Body <-> Spec) '\\[ff-find-other-file]' | 1103 | Switch to other file (Body <-> Spec) '\\[ff-find-other-file]' |
| @@ -1408,7 +1406,7 @@ If you use ada-xref.el: | |||
| 1408 | 1406 | ||
| 1409 | ;; transient-mark-mode and mark-active are not defined in XEmacs | 1407 | ;; transient-mark-mode and mark-active are not defined in XEmacs |
| 1410 | (defun ada-region-selected () | 1408 | (defun ada-region-selected () |
| 1411 | "t if a region has been selected by the user and is still active." | 1409 | "Return t if a region has been selected by the user and is still active." |
| 1412 | (or (and (featurep 'xemacs) (funcall (symbol-function 'region-active-p))) | 1410 | (or (and (featurep 'xemacs) (funcall (symbol-function 'region-active-p))) |
| 1413 | (and (not (featurep 'xemacs)) | 1411 | (and (not (featurep 'xemacs)) |
| 1414 | (symbol-value 'transient-mark-mode) | 1412 | (symbol-value 'transient-mark-mode) |
| @@ -1447,7 +1445,7 @@ If you use ada-xref.el: | |||
| 1447 | ) | 1445 | ) |
| 1448 | 1446 | ||
| 1449 | (defun ada-create-case-exception (&optional word) | 1447 | (defun ada-create-case-exception (&optional word) |
| 1450 | "Defines WORD as an exception for the casing system. | 1448 | "Define WORD as an exception for the casing system. |
| 1451 | If WORD is not given, then the current word in the buffer is used instead. | 1449 | If WORD is not given, then the current word in the buffer is used instead. |
| 1452 | The new words is added to the first file in `ada-case-exception-file'. | 1450 | The new words is added to the first file in `ada-case-exception-file'. |
| 1453 | The standard casing rules will no longer apply to this word." | 1451 | The standard casing rules will no longer apply to this word." |
| @@ -1487,10 +1485,10 @@ The standard casing rules will no longer apply to this word." | |||
| 1487 | )) | 1485 | )) |
| 1488 | 1486 | ||
| 1489 | (defun ada-create-case-exception-substring (&optional word) | 1487 | (defun ada-create-case-exception-substring (&optional word) |
| 1490 | "Defines the substring WORD as an exception for the casing system. | 1488 | "Define the substring WORD as an exception for the casing system. |
| 1491 | If WORD is not given, then the current word in the buffer is used instead, | 1489 | If WORD is not given, then the current word in the buffer is used instead, |
| 1492 | or the selected region if any is active. | 1490 | or the selected region if any is active. |
| 1493 | The new words is added to the first file in `ada-case-exception-file'. | 1491 | The new word is added to the first file in `ada-case-exception-file'. |
| 1494 | When auto-casing a word, this substring will be special-cased, unless the | 1492 | When auto-casing a word, this substring will be special-cased, unless the |
| 1495 | word itself has a special casing." | 1493 | word itself has a special casing." |
| 1496 | (interactive) | 1494 | (interactive) |
| @@ -1642,7 +1640,7 @@ the exceptions defined in `ada-case-exception-file'." | |||
| 1642 | (ada-adjust-case-substring)))))) | 1640 | (ada-adjust-case-substring)))))) |
| 1643 | 1641 | ||
| 1644 | (defun ada-after-keyword-p () | 1642 | (defun ada-after-keyword-p () |
| 1645 | "Returns t if cursor is after a keyword that is not an attribute." | 1643 | "Return t if cursor is after a keyword that is not an attribute." |
| 1646 | (save-excursion | 1644 | (save-excursion |
| 1647 | (forward-word -1) | 1645 | (forward-word -1) |
| 1648 | (and (not (and (char-before) | 1646 | (and (not (and (char-before) |
| @@ -1651,7 +1649,7 @@ the exceptions defined in `ada-case-exception-file'." | |||
| 1651 | (looking-at (concat ada-keywords "[^_]"))))) | 1649 | (looking-at (concat ada-keywords "[^_]"))))) |
| 1652 | 1650 | ||
| 1653 | (defun ada-adjust-case (&optional force-identifier) | 1651 | (defun ada-adjust-case (&optional force-identifier) |
| 1654 | "Adjust the case of the word before the just typed character. | 1652 | "Adjust the case of the word before the character just typed. |
| 1655 | If FORCE-IDENTIFIER is non-nil then also adjust keyword as identifier." | 1653 | If FORCE-IDENTIFIER is non-nil then also adjust keyword as identifier." |
| 1656 | (if (not (bobp)) | 1654 | (if (not (bobp)) |
| 1657 | (progn | 1655 | (progn |
| @@ -1682,7 +1680,7 @@ If FORCE-IDENTIFIER is non-nil then also adjust keyword as identifier." | |||
| 1682 | 1680 | ||
| 1683 | (defun ada-adjust-case-interactive (arg) | 1681 | (defun ada-adjust-case-interactive (arg) |
| 1684 | "Adjust the case of the previous word, and process the character just typed. | 1682 | "Adjust the case of the previous word, and process the character just typed. |
| 1685 | ARG is the prefix the user entered with \C-u." | 1683 | ARG is the prefix the user entered with \\[universal-argument]." |
| 1686 | (interactive "P") | 1684 | (interactive "P") |
| 1687 | 1685 | ||
| 1688 | (if ada-auto-case | 1686 | (if ada-auto-case |
| @@ -1729,7 +1727,7 @@ ARG is the prefix the user entered with \C-u." | |||
| 1729 | )) | 1727 | )) |
| 1730 | 1728 | ||
| 1731 | (defun ada-activate-keys-for-case () | 1729 | (defun ada-activate-keys-for-case () |
| 1732 | "Modifies the key bindings for all the keys that should readjust the casing." | 1730 | "Modify the key bindings for all the keys that should readjust the casing." |
| 1733 | (interactive) | 1731 | (interactive) |
| 1734 | ;; Save original key-bindings to allow swapping ret/lfd | 1732 | ;; Save original key-bindings to allow swapping ret/lfd |
| 1735 | ;; when casing is activated. | 1733 | ;; when casing is activated. |
| @@ -1763,7 +1761,7 @@ ARG is ignored, and is there for compatibility with `capitalize-word' only." | |||
| 1763 | (delete-char 1))))) | 1761 | (delete-char 1))))) |
| 1764 | 1762 | ||
| 1765 | (defun ada-no-auto-case (&optional arg) | 1763 | (defun ada-no-auto-case (&optional arg) |
| 1766 | "Does nothing. | 1764 | "Do nothing. |
| 1767 | This function can be used for the auto-casing variables in the ada-mode, to | 1765 | This function can be used for the auto-casing variables in the ada-mode, to |
| 1768 | adapt to unusal auto-casing schemes. Since it does nothing, you can for | 1766 | adapt to unusal auto-casing schemes. Since it does nothing, you can for |
| 1769 | instance use it for `ada-case-identifier' if you don't want any special | 1767 | instance use it for `ada-case-identifier' if you don't want any special |
| @@ -1782,8 +1780,8 @@ ARG is ignored, and is there for compatibility with `capitalize-word' only." | |||
| 1782 | (modify-syntax-entry ?_ "w"))) | 1780 | (modify-syntax-entry ?_ "w"))) |
| 1783 | 1781 | ||
| 1784 | (defun ada-adjust-case-region (from to) | 1782 | (defun ada-adjust-case-region (from to) |
| 1785 | "Adjusts the case of all words in the region between FROM and TO. | 1783 | "Adjust the case of all words in the region between FROM and TO. |
| 1786 | Attention: This function might take very long for big regions !" | 1784 | Attention: This function might take very long for big regions!" |
| 1787 | (interactive "*r") | 1785 | (interactive "*r") |
| 1788 | (let ((begin nil) | 1786 | (let ((begin nil) |
| 1789 | (end nil) | 1787 | (end nil) |
| @@ -1829,7 +1827,7 @@ Attention: This function might take very long for big regions !" | |||
| 1829 | 1827 | ||
| 1830 | (defun ada-adjust-case-buffer () | 1828 | (defun ada-adjust-case-buffer () |
| 1831 | "Adjusts the case of all words in the whole buffer. | 1829 | "Adjusts the case of all words in the whole buffer. |
| 1832 | ATTENTION: This function might take very long for big buffers !" | 1830 | ATTENTION: This function might take very long for big buffers!" |
| 1833 | (interactive "*") | 1831 | (interactive "*") |
| 1834 | (ada-adjust-case-region (point-min) (point-max))) | 1832 | (ada-adjust-case-region (point-min) (point-max))) |
| 1835 | 1833 | ||
| @@ -1851,7 +1849,7 @@ ATTENTION: This function might take very long for big buffers !" | |||
| 1851 | ;;-------------------------------------------------------------- | 1849 | ;;-------------------------------------------------------------- |
| 1852 | 1850 | ||
| 1853 | (defun ada-format-paramlist () | 1851 | (defun ada-format-paramlist () |
| 1854 | "Reformats the parameter list point is in." | 1852 | "Reformat the parameter list point is in." |
| 1855 | (interactive) | 1853 | (interactive) |
| 1856 | (let ((begin nil) | 1854 | (let ((begin nil) |
| 1857 | (end nil) | 1855 | (end nil) |
| @@ -1864,7 +1862,7 @@ ATTENTION: This function might take very long for big buffers !" | |||
| 1864 | 1862 | ||
| 1865 | ;; check if really inside parameter list | 1863 | ;; check if really inside parameter list |
| 1866 | (or (ada-in-paramlist-p) | 1864 | (or (ada-in-paramlist-p) |
| 1867 | (error "not in parameter list")) | 1865 | (error "Not in parameter list")) |
| 1868 | 1866 | ||
| 1869 | ;; find start of current parameter-list | 1867 | ;; find start of current parameter-list |
| 1870 | (ada-search-ignore-string-comment | 1868 | (ada-search-ignore-string-comment |
| @@ -1899,7 +1897,7 @@ ATTENTION: This function might take very long for big buffers !" | |||
| 1899 | 1897 | ||
| 1900 | (defun ada-scan-paramlist (begin end) | 1898 | (defun ada-scan-paramlist (begin end) |
| 1901 | "Scan the parameter list found in between BEGIN and END. | 1899 | "Scan the parameter list found in between BEGIN and END. |
| 1902 | Returns the equivalent internal parameter list." | 1900 | Return the equivalent internal parameter list." |
| 1903 | (let ((paramlist (list)) | 1901 | (let ((paramlist (list)) |
| 1904 | (param (list)) | 1902 | (param (list)) |
| 1905 | (notend t) | 1903 | (notend t) |
| @@ -1996,7 +1994,7 @@ Returns the equivalent internal parameter list." | |||
| 1996 | (reverse paramlist))) | 1994 | (reverse paramlist))) |
| 1997 | 1995 | ||
| 1998 | (defun ada-insert-paramlist (paramlist) | 1996 | (defun ada-insert-paramlist (paramlist) |
| 1999 | "Inserts a formatted PARAMLIST in the buffer." | 1997 | "Insert a formatted PARAMLIST in the buffer." |
| 2000 | (let ((i (length paramlist)) | 1998 | (let ((i (length paramlist)) |
| 2001 | (parlen 0) | 1999 | (parlen 0) |
| 2002 | (typlen 0) | 2000 | (typlen 0) |
| @@ -2163,7 +2161,7 @@ Returns the equivalent internal parameter list." | |||
| 2163 | (message "indenting ... done"))) | 2161 | (message "indenting ... done"))) |
| 2164 | 2162 | ||
| 2165 | (defun ada-indent-newline-indent () | 2163 | (defun ada-indent-newline-indent () |
| 2166 | "Indents the current line, inserts a newline and then indents the new line." | 2164 | "Indent the current line, insert a newline and then indent the new line." |
| 2167 | (interactive "*") | 2165 | (interactive "*") |
| 2168 | (ada-indent-current) | 2166 | (ada-indent-current) |
| 2169 | (newline) | 2167 | (newline) |
| @@ -2172,14 +2170,14 @@ Returns the equivalent internal parameter list." | |||
| 2172 | (defun ada-indent-newline-indent-conditional () | 2170 | (defun ada-indent-newline-indent-conditional () |
| 2173 | "Insert a newline and indent it. | 2171 | "Insert a newline and indent it. |
| 2174 | The original line is indented first if `ada-indent-after-return' is non-nil. | 2172 | The original line is indented first if `ada-indent-after-return' is non-nil. |
| 2175 | This function is intended to be bound to the \C-m and \C-j keys." | 2173 | This function is intended to be bound to the C-m and C-j keys." |
| 2176 | (interactive "*") | 2174 | (interactive "*") |
| 2177 | (if ada-indent-after-return (ada-indent-current)) | 2175 | (if ada-indent-after-return (ada-indent-current)) |
| 2178 | (newline) | 2176 | (newline) |
| 2179 | (ada-indent-current)) | 2177 | (ada-indent-current)) |
| 2180 | 2178 | ||
| 2181 | (defun ada-justified-indent-current () | 2179 | (defun ada-justified-indent-current () |
| 2182 | "Indent the current line and explains how the calculation was done." | 2180 | "Indent the current line and explain how the calculation was done." |
| 2183 | (interactive) | 2181 | (interactive) |
| 2184 | 2182 | ||
| 2185 | (let ((cur-indent (ada-indent-current))) | 2183 | (let ((cur-indent (ada-indent-current))) |
| @@ -2223,13 +2221,13 @@ command like: | |||
| 2223 | (kill-emacs 0)) | 2221 | (kill-emacs 0)) |
| 2224 | 2222 | ||
| 2225 | (defsubst ada-goto-previous-word () | 2223 | (defsubst ada-goto-previous-word () |
| 2226 | "Moves point to the beginning of the previous word of Ada code. | 2224 | "Move point to the beginning of the previous word of Ada code. |
| 2227 | Returns the new position of point or nil if not found." | 2225 | Return the new position of point or nil if not found." |
| 2228 | (ada-goto-next-word t)) | 2226 | (ada-goto-next-word t)) |
| 2229 | 2227 | ||
| 2230 | (defun ada-indent-current () | 2228 | (defun ada-indent-current () |
| 2231 | "Indent current line as Ada code. | 2229 | "Indent current line as Ada code. |
| 2232 | Returns the calculation that was done, including the reference point and the | 2230 | Return the calculation that was done, including the reference point and the |
| 2233 | offset." | 2231 | offset." |
| 2234 | (interactive) | 2232 | (interactive) |
| 2235 | (let ((previous-syntax-table (syntax-table)) | 2233 | (let ((previous-syntax-table (syntax-table)) |
| @@ -2804,7 +2802,7 @@ if INITIAL-POS is non-nil, moves point to INITIAL-POS before calculation." | |||
| 2804 | )) | 2802 | )) |
| 2805 | 2803 | ||
| 2806 | (defun ada-get-indent-open-paren () | 2804 | (defun ada-get-indent-open-paren () |
| 2807 | "Calculates the indentation when point is behind an unclosed parenthesis." | 2805 | "Calculate the indentation when point is behind an unclosed parenthesis." |
| 2808 | (list (ada-in-open-paren-p) 0)) | 2806 | (list (ada-in-open-paren-p) 0)) |
| 2809 | 2807 | ||
| 2810 | (defun ada-get-indent-nochange () | 2808 | (defun ada-get-indent-nochange () |
| @@ -2815,7 +2813,7 @@ if INITIAL-POS is non-nil, moves point to INITIAL-POS before calculation." | |||
| 2815 | (list (point) 0))) | 2813 | (list (point) 0))) |
| 2816 | 2814 | ||
| 2817 | (defun ada-get-indent-paramlist () | 2815 | (defun ada-get-indent-paramlist () |
| 2818 | "Calculates the indentation when point is inside a parameter list." | 2816 | "Calculate the indentation when point is inside a parameter list." |
| 2819 | (save-excursion | 2817 | (save-excursion |
| 2820 | (ada-search-ignore-string-comment "[^ \t\n]" t nil t) | 2818 | (ada-search-ignore-string-comment "[^ \t\n]" t nil t) |
| 2821 | (cond | 2819 | (cond |
| @@ -2843,7 +2841,7 @@ if INITIAL-POS is non-nil, moves point to INITIAL-POS before calculation." | |||
| 2843 | (list (point) 0))))) | 2841 | (list (point) 0))))) |
| 2844 | 2842 | ||
| 2845 | (defun ada-get-indent-end (orgpoint) | 2843 | (defun ada-get-indent-end (orgpoint) |
| 2846 | "Calculates the indentation when point is just before an end_statement. | 2844 | "Calculate the indentation when point is just before an end statement. |
| 2847 | ORGPOINT is the limit position used in the calculation." | 2845 | ORGPOINT is the limit position used in the calculation." |
| 2848 | (let ((defun-name nil) | 2846 | (let ((defun-name nil) |
| 2849 | (indent nil)) | 2847 | (indent nil)) |
| @@ -2909,7 +2907,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 2909 | 'ada-broken-indent)))) | 2907 | 'ada-broken-indent)))) |
| 2910 | 2908 | ||
| 2911 | (defun ada-get-indent-case (orgpoint) | 2909 | (defun ada-get-indent-case (orgpoint) |
| 2912 | "Calculates the indentation when point is just before a case statement. | 2910 | "Calculate the indentation when point is just before a case statement. |
| 2913 | ORGPOINT is the limit position used in the calculation." | 2911 | ORGPOINT is the limit position used in the calculation." |
| 2914 | (let ((match-cons nil) | 2912 | (let ((match-cons nil) |
| 2915 | (opos (point))) | 2913 | (opos (point))) |
| @@ -2927,7 +2925,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 2927 | (save-excursion | 2925 | (save-excursion |
| 2928 | (goto-char (car match-cons)) | 2926 | (goto-char (car match-cons)) |
| 2929 | (unless (ada-search-ignore-string-comment "when" t opos) | 2927 | (unless (ada-search-ignore-string-comment "when" t opos) |
| 2930 | (error "missing 'when' between 'case' and '=>'")) | 2928 | (error "Missing 'when' between 'case' and '=>'")) |
| 2931 | (list (save-excursion (back-to-indentation) (point)) 'ada-indent))) | 2929 | (list (save-excursion (back-to-indentation) (point)) 'ada-indent))) |
| 2932 | ;; | 2930 | ;; |
| 2933 | ;; case..is..when | 2931 | ;; case..is..when |
| @@ -2952,7 +2950,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 2952 | 'ada-broken-indent))))) | 2950 | 'ada-broken-indent))))) |
| 2953 | 2951 | ||
| 2954 | (defun ada-get-indent-when (orgpoint) | 2952 | (defun ada-get-indent-when (orgpoint) |
| 2955 | "Calculates the indentation when point is just before a when statement. | 2953 | "Calculate the indentation when point is just before a when statement. |
| 2956 | ORGPOINT is the limit position used in the calculation." | 2954 | ORGPOINT is the limit position used in the calculation." |
| 2957 | (let ((cur-indent (save-excursion (back-to-indentation) (point)))) | 2955 | (let ((cur-indent (save-excursion (back-to-indentation) (point)))) |
| 2958 | (if (ada-search-ignore-string-comment "[ \t\n]*=>" nil orgpoint) | 2956 | (if (ada-search-ignore-string-comment "[ \t\n]*=>" nil orgpoint) |
| @@ -2960,7 +2958,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 2960 | (list cur-indent 'ada-broken-indent)))) | 2958 | (list cur-indent 'ada-broken-indent)))) |
| 2961 | 2959 | ||
| 2962 | (defun ada-get-indent-if (orgpoint) | 2960 | (defun ada-get-indent-if (orgpoint) |
| 2963 | "Calculates the indentation when point is just before an if statement. | 2961 | "Calculate the indentation when point is just before an if statement. |
| 2964 | ORGPOINT is the limit position used in the calculation." | 2962 | ORGPOINT is the limit position used in the calculation." |
| 2965 | (let ((cur-indent (save-excursion (back-to-indentation) (point))) | 2963 | (let ((cur-indent (save-excursion (back-to-indentation) (point))) |
| 2966 | (match-cons nil)) | 2964 | (match-cons nil)) |
| @@ -2990,7 +2988,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 2990 | (list cur-indent 'ada-broken-indent)))) | 2988 | (list cur-indent 'ada-broken-indent)))) |
| 2991 | 2989 | ||
| 2992 | (defun ada-get-indent-block-start (orgpoint) | 2990 | (defun ada-get-indent-block-start (orgpoint) |
| 2993 | "Calculates the indentation when point is at the start of a block. | 2991 | "Calculate the indentation when point is at the start of a block. |
| 2994 | ORGPOINT is the limit position used in the calculation." | 2992 | ORGPOINT is the limit position used in the calculation." |
| 2995 | (let ((pos nil)) | 2993 | (let ((pos nil)) |
| 2996 | (cond | 2994 | (cond |
| @@ -3023,7 +3021,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 3023 | (list (save-excursion (back-to-indentation) (point)) 'ada-indent))))) | 3021 | (list (save-excursion (back-to-indentation) (point)) 'ada-indent))))) |
| 3024 | 3022 | ||
| 3025 | (defun ada-get-indent-subprog (orgpoint) | 3023 | (defun ada-get-indent-subprog (orgpoint) |
| 3026 | "Calculates the indentation when point is just before a subprogram. | 3024 | "Calculate the indentation when point is just before a subprogram. |
| 3027 | ORGPOINT is the limit position used in the calculation." | 3025 | ORGPOINT is the limit position used in the calculation." |
| 3028 | (let ((match-cons nil) | 3026 | (let ((match-cons nil) |
| 3029 | (cur-indent (save-excursion (back-to-indentation) (point))) | 3027 | (cur-indent (save-excursion (back-to-indentation) (point))) |
| @@ -3092,7 +3090,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 3092 | (list cur-indent 'ada-broken-indent))))) | 3090 | (list cur-indent 'ada-broken-indent))))) |
| 3093 | 3091 | ||
| 3094 | (defun ada-get-indent-noindent (orgpoint) | 3092 | (defun ada-get-indent-noindent (orgpoint) |
| 3095 | "Calculates the indentation when point is just before a 'noindent stmt'. | 3093 | "Calculate the indentation when point is just before a 'noindent stmt'. |
| 3096 | ORGPOINT is the limit position used in the calculation." | 3094 | ORGPOINT is the limit position used in the calculation." |
| 3097 | (let ((label 0)) | 3095 | (let ((label 0)) |
| 3098 | (save-excursion | 3096 | (save-excursion |
| @@ -3146,7 +3144,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 3146 | 'ada-broken-indent))))))) | 3144 | 'ada-broken-indent))))))) |
| 3147 | 3145 | ||
| 3148 | (defun ada-get-indent-label (orgpoint) | 3146 | (defun ada-get-indent-label (orgpoint) |
| 3149 | "Calculates the indentation when before a label or variable declaration. | 3147 | "Calculate the indentation when before a label or variable declaration. |
| 3150 | ORGPOINT is the limit position used in the calculation." | 3148 | ORGPOINT is the limit position used in the calculation." |
| 3151 | (let ((match-cons nil) | 3149 | (let ((match-cons nil) |
| 3152 | (cur-indent (save-excursion (back-to-indentation) (point)))) | 3150 | (cur-indent (save-excursion (back-to-indentation) (point)))) |
| @@ -3178,7 +3176,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 3178 | (list cur-indent '(- ada-label-indent)))))) | 3176 | (list cur-indent '(- ada-label-indent)))))) |
| 3179 | 3177 | ||
| 3180 | (defun ada-get-indent-loop (orgpoint) | 3178 | (defun ada-get-indent-loop (orgpoint) |
| 3181 | "Calculates the indentation when just before a loop or a for ... use. | 3179 | "Calculate the indentation when just before a loop or a for ... use. |
| 3182 | ORGPOINT is the limit position used in the calculation." | 3180 | ORGPOINT is the limit position used in the calculation." |
| 3183 | (let ((match-cons nil) | 3181 | (let ((match-cons nil) |
| 3184 | (pos (point)) | 3182 | (pos (point)) |
| @@ -3290,7 +3288,7 @@ ORGPOINT is the limit position used in the calculation." | |||
| 3290 | 'ada-broken-indent)))))) | 3288 | 'ada-broken-indent)))))) |
| 3291 | 3289 | ||
| 3292 | (defun ada-get-indent-type (orgpoint) | 3290 | (defun ada-get-indent-type (orgpoint) |
| 3293 | "Calculates the indentation when before a type statement. | 3291 | "Calculate the indentation when before a type statement. |
| 3294 | ORGPOINT is the limit position used in the calculation." | 3292 | ORGPOINT is the limit position used in the calculation." |
| 3295 | (let ((match-dat nil)) | 3293 | (let ((match-dat nil)) |
| 3296 | (cond | 3294 | (cond |
| @@ -3345,8 +3343,8 @@ ORGPOINT is the limit position used in the calculation." | |||
| 3345 | ;; ----------------------------------------------------------- | 3343 | ;; ----------------------------------------------------------- |
| 3346 | 3344 | ||
| 3347 | (defun ada-goto-stmt-start () | 3345 | (defun ada-goto-stmt-start () |
| 3348 | "Moves point to the beginning of the statement that point is in or after. | 3346 | "Move point to the beginning of the statement that point is in or after. |
| 3349 | Returns the new position of point. | 3347 | Return the new position of point. |
| 3350 | As a special case, if we are looking at a closing parenthesis, skip to the | 3348 | As a special case, if we are looking at a closing parenthesis, skip to the |
| 3351 | open parenthesis." | 3349 | open parenthesis." |
| 3352 | (let ((match-dat nil) | 3350 | (let ((match-dat nil) |
| @@ -3391,9 +3389,9 @@ open parenthesis." | |||
| 3391 | 3389 | ||
| 3392 | 3390 | ||
| 3393 | (defun ada-search-prev-end-stmt () | 3391 | (defun ada-search-prev-end-stmt () |
| 3394 | "Moves point to previous end-statement. | 3392 | "Move point to previous end statement. |
| 3395 | Returns a cons cell whose car is the beginning and whose cdr the end of the | 3393 | Return a cons cell whose car is the beginning and whose cdr |
| 3396 | match." | 3394 | is the end of the match." |
| 3397 | (let ((match-dat nil) | 3395 | (let ((match-dat nil) |
| 3398 | (found nil)) | 3396 | (found nil)) |
| 3399 | 3397 | ||
| @@ -3442,7 +3440,7 @@ match." | |||
| 3442 | 3440 | ||
| 3443 | 3441 | ||
| 3444 | (defun ada-goto-next-non-ws (&optional limit) | 3442 | (defun ada-goto-next-non-ws (&optional limit) |
| 3445 | "Skips white spaces, newlines and comments to next non-ws character. | 3443 | "Skip white spaces, newlines and comments to next non-ws character. |
| 3446 | Stop the search at LIMIT. | 3444 | Stop the search at LIMIT. |
| 3447 | Do not call this function from within a string." | 3445 | Do not call this function from within a string." |
| 3448 | (unless limit | 3446 | (unless limit |
| @@ -3460,8 +3458,8 @@ Do not call this function from within a string." | |||
| 3460 | 3458 | ||
| 3461 | 3459 | ||
| 3462 | (defun ada-goto-stmt-end (&optional limit) | 3460 | (defun ada-goto-stmt-end (&optional limit) |
| 3463 | "Moves point to the end of the statement that point is in or before. | 3461 | "Move point to the end of the statement that point is in or before. |
| 3464 | Returns the new position of point or nil if not found. | 3462 | Return the new position of point or nil if not found. |
| 3465 | Stop the search at LIMIT." | 3463 | Stop the search at LIMIT." |
| 3466 | (if (ada-search-ignore-string-comment ada-end-stmt-re nil limit) | 3464 | (if (ada-search-ignore-string-comment ada-end-stmt-re nil limit) |
| 3467 | (point) | 3465 | (point) |
| @@ -3469,9 +3467,9 @@ Stop the search at LIMIT." | |||
| 3469 | 3467 | ||
| 3470 | 3468 | ||
| 3471 | (defun ada-goto-next-word (&optional backward) | 3469 | (defun ada-goto-next-word (&optional backward) |
| 3472 | "Moves point to the beginning of the next word of Ada code. | 3470 | "Move point to the beginning of the next word of Ada code. |
| 3473 | If BACKWARD is non-nil, jump to the beginning of the previous word. | 3471 | If BACKWARD is non-nil, jump to the beginning of the previous word. |
| 3474 | Returns the new position of point or nil if not found." | 3472 | Return the new position of point or nil if not found." |
| 3475 | (let ((match-cons nil) | 3473 | (let ((match-cons nil) |
| 3476 | (orgpoint (point)) | 3474 | (orgpoint (point)) |
| 3477 | (old-syntax (char-to-string (char-syntax ?_)))) | 3475 | (old-syntax (char-to-string (char-syntax ?_)))) |
| @@ -3499,16 +3497,16 @@ Returns the new position of point or nil if not found." | |||
| 3499 | 3497 | ||
| 3500 | 3498 | ||
| 3501 | (defun ada-check-matching-start (keyword) | 3499 | (defun ada-check-matching-start (keyword) |
| 3502 | "Signals an error if matching block start is not KEYWORD. | 3500 | "Signal an error if matching block start is not KEYWORD. |
| 3503 | Moves point to the matching block start." | 3501 | Moves point to the matching block start." |
| 3504 | (ada-goto-matching-start 0) | 3502 | (ada-goto-matching-start 0) |
| 3505 | (unless (looking-at (concat "\\<" keyword "\\>")) | 3503 | (unless (looking-at (concat "\\<" keyword "\\>")) |
| 3506 | (error "matching start is not '%s'" keyword))) | 3504 | (error "Matching start is not '%s'" keyword))) |
| 3507 | 3505 | ||
| 3508 | 3506 | ||
| 3509 | (defun ada-check-defun-name (defun-name) | 3507 | (defun ada-check-defun-name (defun-name) |
| 3510 | "Checks if the name of the matching defun really is DEFUN-NAME. | 3508 | "Check if the name of the matching defun really is DEFUN-NAME. |
| 3511 | Assumes point to be already positioned by 'ada-goto-matching-start'. | 3509 | Assumes point to be already positioned by `ada-goto-matching-start'. |
| 3512 | Moves point to the beginning of the declaration." | 3510 | Moves point to the beginning of the declaration." |
| 3513 | 3511 | ||
| 3514 | ;; named block without a `declare' | 3512 | ;; named block without a `declare' |
| @@ -3547,12 +3545,12 @@ Moves point to the beginning of the declaration." | |||
| 3547 | ;; should be looking-at the correct name | 3545 | ;; should be looking-at the correct name |
| 3548 | ;; | 3546 | ;; |
| 3549 | (unless (looking-at (concat "\\<" defun-name "\\>")) | 3547 | (unless (looking-at (concat "\\<" defun-name "\\>")) |
| 3550 | (error "matching defun has different name: %s" | 3548 | (error "Matching defun has different name: %s" |
| 3551 | (buffer-substring (point) | 3549 | (buffer-substring (point) |
| 3552 | (progn (forward-sexp 1) (point)))))))) | 3550 | (progn (forward-sexp 1) (point)))))))) |
| 3553 | 3551 | ||
| 3554 | (defun ada-goto-matching-decl-start (&optional noerror recursive) | 3552 | (defun ada-goto-matching-decl-start (&optional noerror recursive) |
| 3555 | "Moves point to the matching declaration start of the current 'begin'. | 3553 | "Move point to the matching declaration start of the current 'begin'. |
| 3556 | If NOERROR is non-nil, it only returns nil if no match was found." | 3554 | If NOERROR is non-nil, it only returns nil if no match was found." |
| 3557 | (let ((nest-count 1) | 3555 | (let ((nest-count 1) |
| 3558 | 3556 | ||
| @@ -3709,13 +3707,13 @@ If NOERROR is non-nil, it only returns nil if no match was found." | |||
| 3709 | (looking-at "declare\\|generic"))) | 3707 | (looking-at "declare\\|generic"))) |
| 3710 | t | 3708 | t |
| 3711 | (if noerror nil | 3709 | (if noerror nil |
| 3712 | (error "no matching proc/func/task/declare/package/protected"))) | 3710 | (error "No matching proc/func/task/declare/package/protected"))) |
| 3713 | )) | 3711 | )) |
| 3714 | 3712 | ||
| 3715 | (defun ada-goto-matching-start (&optional nest-level noerror gotothen) | 3713 | (defun ada-goto-matching-start (&optional nest-level noerror gotothen) |
| 3716 | "Moves point to the beginning of a block-start. | 3714 | "Move point to the beginning of a block-start. |
| 3717 | Which block depends on the value of NEST-LEVEL, which defaults to zero. If | 3715 | Which block depends on the value of NEST-LEVEL, which defaults to zero. |
| 3718 | NOERROR is non-nil, it only returns nil if no matching start was found. | 3716 | If NOERROR is non-nil, it only returns nil if no matching start was found. |
| 3719 | If GOTOTHEN is non-nil, point moves to the 'then' following 'if'." | 3717 | If GOTOTHEN is non-nil, point moves to the 'then' following 'if'." |
| 3720 | (let ((nest-count (if nest-level nest-level 0)) | 3718 | (let ((nest-count (if nest-level nest-level 0)) |
| 3721 | (found nil) | 3719 | (found nil) |
| @@ -3852,16 +3850,16 @@ If GOTOTHEN is non-nil, point moves to the 'then' following 'if'." | |||
| 3852 | (unless (ada-search-ignore-string-comment | 3850 | (unless (ada-search-ignore-string-comment |
| 3853 | "accept" t nil nil | 3851 | "accept" t nil nil |
| 3854 | 'word-search-backward) | 3852 | 'word-search-backward) |
| 3855 | (error "missing 'accept' in front of 'do'")))) | 3853 | (error "Missing 'accept' in front of 'do'")))) |
| 3856 | (point)) | 3854 | (point)) |
| 3857 | 3855 | ||
| 3858 | (if noerror | 3856 | (if noerror |
| 3859 | nil | 3857 | nil |
| 3860 | (error "no matching start")))))) | 3858 | (error "No matching start")))))) |
| 3861 | 3859 | ||
| 3862 | 3860 | ||
| 3863 | (defun ada-goto-matching-end (&optional nest-level noerror) | 3861 | (defun ada-goto-matching-end (&optional nest-level noerror) |
| 3864 | "Moves point to the end of a block. | 3862 | "Move point to the end of a block. |
| 3865 | Which block depends on the value of NEST-LEVEL, which defaults to zero. | 3863 | Which block depends on the value of NEST-LEVEL, which defaults to zero. |
| 3866 | If NOERROR is non-nil, it only returns nil if found no matching start." | 3864 | If NOERROR is non-nil, it only returns nil if found no matching start." |
| 3867 | (let ((nest-count (or nest-level 0)) | 3865 | (let ((nest-count (or nest-level 0)) |
| @@ -3963,20 +3961,20 @@ If NOERROR is non-nil, it only returns nil if found no matching start." | |||
| 3963 | t | 3961 | t |
| 3964 | (if noerror | 3962 | (if noerror |
| 3965 | nil | 3963 | nil |
| 3966 | (error "no matching end"))) | 3964 | (error "No matching end"))) |
| 3967 | )) | 3965 | )) |
| 3968 | 3966 | ||
| 3969 | 3967 | ||
| 3970 | (defun ada-search-ignore-string-comment | 3968 | (defun ada-search-ignore-string-comment |
| 3971 | (search-re &optional backward limit paramlists search-func) | 3969 | (search-re &optional backward limit paramlists search-func) |
| 3972 | "Regexp-search for SEARCH-RE, ignoring comments, strings. | 3970 | "Regexp-search for SEARCH-RE, ignoring comments, strings. |
| 3973 | If PARAMLISTS is nil, ignore parameter lists. Returns a cons cell of | 3971 | If PARAMLISTS is nil, ignore parameter lists. Returns a cons cell of |
| 3974 | begin and end of match data or nil, if not found. | 3972 | begin and end of match data or nil, if not found. |
| 3975 | The search is done using SEARCH-FUNC, which should search backward if | 3973 | The search is done using SEARCH-FUNC, which should search backward if |
| 3976 | BACKWARD is non-nil, forward otherwise. SEARCH-FUNC can be optimized in case | 3974 | BACKWARD is non-nil, forward otherwise. SEARCH-FUNC can be optimized |
| 3977 | we are searching for a constant string. | 3975 | in case we are searching for a constant string. |
| 3978 | The search stops at pos LIMIT. | 3976 | The search stops at pos LIMIT. |
| 3979 | Point is moved at the beginning of the search-re." | 3977 | Point is moved at the beginning of the SEARCH-RE." |
| 3980 | (let (found | 3978 | (let (found |
| 3981 | begin | 3979 | begin |
| 3982 | end | 3980 | end |
| @@ -4061,7 +4059,7 @@ Point is moved at the beginning of the search-re." | |||
| 4061 | ;; ------------------------------------------------------- | 4059 | ;; ------------------------------------------------------- |
| 4062 | 4060 | ||
| 4063 | (defun ada-in-decl-p () | 4061 | (defun ada-in-decl-p () |
| 4064 | "Returns t if point is inside a declarative part. | 4062 | "Return t if point is inside a declarative part. |
| 4065 | Assumes point to be at the end of a statement." | 4063 | Assumes point to be at the end of a statement." |
| 4066 | (or (ada-in-paramlist-p) | 4064 | (or (ada-in-paramlist-p) |
| 4067 | (save-excursion | 4065 | (save-excursion |
| @@ -4069,7 +4067,7 @@ Assumes point to be at the end of a statement." | |||
| 4069 | 4067 | ||
| 4070 | 4068 | ||
| 4071 | (defun ada-looking-at-semi-or () | 4069 | (defun ada-looking-at-semi-or () |
| 4072 | "Returns t if looking-at an 'or' following a semicolon." | 4070 | "Return t if looking at an 'or' following a semicolon." |
| 4073 | (save-excursion | 4071 | (save-excursion |
| 4074 | (and (looking-at "\\<or\\>") | 4072 | (and (looking-at "\\<or\\>") |
| 4075 | (progn | 4073 | (progn |
| @@ -4079,7 +4077,7 @@ Assumes point to be at the end of a statement." | |||
| 4079 | 4077 | ||
| 4080 | 4078 | ||
| 4081 | (defun ada-looking-at-semi-private () | 4079 | (defun ada-looking-at-semi-private () |
| 4082 | "Returns t if looking at the start of a private section in a package. | 4080 | "Return t if looking at the start of a private section in a package. |
| 4083 | Returns nil if the private is part of the package name, as in | 4081 | Returns nil if the private is part of the package name, as in |
| 4084 | 'private package A is...' (this can only happen at top level)." | 4082 | 'private package A is...' (this can only happen at top level)." |
| 4085 | (save-excursion | 4083 | (save-excursion |
| @@ -4101,7 +4099,7 @@ Returns nil if the private is part of the package name, as in | |||
| 4101 | 4099 | ||
| 4102 | 4100 | ||
| 4103 | (defun ada-in-paramlist-p () | 4101 | (defun ada-in-paramlist-p () |
| 4104 | "Returns t if point is inside a parameter-list." | 4102 | "Return t if point is inside a parameter-list." |
| 4105 | (save-excursion | 4103 | (save-excursion |
| 4106 | (and | 4104 | (and |
| 4107 | (ada-search-ignore-string-comment "(\\|)" t nil t) | 4105 | (ada-search-ignore-string-comment "(\\|)" t nil t) |
| @@ -4151,7 +4149,7 @@ boolean expressions 'and then' and 'or else'." | |||
| 4151 | result)) | 4149 | result)) |
| 4152 | 4150 | ||
| 4153 | (defun ada-in-open-paren-p () | 4151 | (defun ada-in-open-paren-p () |
| 4154 | "Returns the position of the first non-ws behind the last unclosed | 4152 | "Return the position of the first non-ws behind the last unclosed |
| 4155 | parenthesis, or nil." | 4153 | parenthesis, or nil." |
| 4156 | (save-excursion | 4154 | (save-excursion |
| 4157 | (let ((parse (parse-partial-sexp | 4155 | (let ((parse (parse-partial-sexp |
| @@ -4186,26 +4184,26 @@ parenthesis, or nil." | |||
| 4186 | (defun ada-tab () | 4184 | (defun ada-tab () |
| 4187 | "Do indenting or tabbing according to `ada-tab-policy'. | 4185 | "Do indenting or tabbing according to `ada-tab-policy'. |
| 4188 | In Transient Mark mode, if the mark is active, operate on the contents | 4186 | In Transient Mark mode, if the mark is active, operate on the contents |
| 4189 | of the region. Otherwise, operates only on the current line." | 4187 | of the region. Otherwise, operate only on the current line." |
| 4190 | (interactive) | 4188 | (interactive) |
| 4191 | (cond ((eq ada-tab-policy 'indent-rigidly) (ada-tab-hard)) | 4189 | (cond ((eq ada-tab-policy 'indent-rigidly) (ada-tab-hard)) |
| 4192 | ((eq ada-tab-policy 'indent-auto) | 4190 | ((eq ada-tab-policy 'indent-auto) |
| 4193 | (if (ada-region-selected) | 4191 | (if (ada-region-selected) |
| 4194 | (ada-indent-region (region-beginning) (region-end)) | 4192 | (ada-indent-region (region-beginning) (region-end)) |
| 4195 | (ada-indent-current))) | 4193 | (ada-indent-current))) |
| 4196 | ((eq ada-tab-policy 'always-tab) (error "not implemented")) | 4194 | ((eq ada-tab-policy 'always-tab) (error "Not implemented")) |
| 4197 | )) | 4195 | )) |
| 4198 | 4196 | ||
| 4199 | (defun ada-untab (arg) | 4197 | (defun ada-untab (arg) |
| 4200 | "Delete leading indenting according to `ada-tab-policy'." | 4198 | "Delete leading indenting according to `ada-tab-policy'." |
| 4201 | (interactive "P") | 4199 | (interactive "P") |
| 4202 | (cond ((eq ada-tab-policy 'indent-rigidly) (ada-untab-hard)) | 4200 | (cond ((eq ada-tab-policy 'indent-rigidly) (ada-untab-hard)) |
| 4203 | ((eq ada-tab-policy 'indent-auto) (error "not implemented")) | 4201 | ((eq ada-tab-policy 'indent-auto) (error "Not implemented")) |
| 4204 | ((eq ada-tab-policy 'always-tab) (error "not implemented")) | 4202 | ((eq ada-tab-policy 'always-tab) (error "Not implemented")) |
| 4205 | )) | 4203 | )) |
| 4206 | 4204 | ||
| 4207 | (defun ada-indent-current-function () | 4205 | (defun ada-indent-current-function () |
| 4208 | "Ada mode version of the indent-line-function." | 4206 | "Ada mode version of the `indent-line-function'." |
| 4209 | (interactive "*") | 4207 | (interactive "*") |
| 4210 | (let ((starting-point (point-marker))) | 4208 | (let ((starting-point (point-marker))) |
| 4211 | (beginning-of-line) | 4209 | (beginning-of-line) |
| @@ -4225,7 +4223,7 @@ of the region. Otherwise, operates only on the current line." | |||
| 4225 | (forward-char ada-indent))) | 4223 | (forward-char ada-indent))) |
| 4226 | 4224 | ||
| 4227 | (defun ada-untab-hard () | 4225 | (defun ada-untab-hard () |
| 4228 | "indent current line to previous tab stop." | 4226 | "Indent current line to previous tab stop." |
| 4229 | (interactive) | 4227 | (interactive) |
| 4230 | (let ((bol (save-excursion (progn (beginning-of-line) (point)))) | 4228 | (let ((bol (save-excursion (progn (beginning-of-line) (point)))) |
| 4231 | (eol (save-excursion (progn (end-of-line) (point))))) | 4229 | (eol (save-excursion (progn (end-of-line) (point))))) |
| @@ -4327,7 +4325,7 @@ of the region. Otherwise, operates only on the current line." | |||
| 4327 | ;; ------------------------------------------------------------- | 4325 | ;; ------------------------------------------------------------- |
| 4328 | 4326 | ||
| 4329 | (defun ada-move-to-start () | 4327 | (defun ada-move-to-start () |
| 4330 | "Moves point to the matching start of the current Ada structure." | 4328 | "Move point to the matching start of the current Ada structure." |
| 4331 | (interactive) | 4329 | (interactive) |
| 4332 | (let ((pos (point)) | 4330 | (let ((pos (point)) |
| 4333 | (previous-syntax-table (syntax-table))) | 4331 | (previous-syntax-table (syntax-table))) |
| @@ -4348,7 +4346,7 @@ of the region. Otherwise, operates only on the current line." | |||
| 4348 | (or (looking-at "[ \t]*\\<end\\>") | 4346 | (or (looking-at "[ \t]*\\<end\\>") |
| 4349 | (backward-word 1)) | 4347 | (backward-word 1)) |
| 4350 | (or (looking-at "[ \t]*\\<end\\>") | 4348 | (or (looking-at "[ \t]*\\<end\\>") |
| 4351 | (error "not on end ...;"))) | 4349 | (error "Not on end ...;"))) |
| 4352 | (ada-goto-matching-start 1) | 4350 | (ada-goto-matching-start 1) |
| 4353 | (setq pos (point)) | 4351 | (setq pos (point)) |
| 4354 | 4352 | ||
| @@ -4369,7 +4367,7 @@ of the region. Otherwise, operates only on the current line." | |||
| 4369 | (set-syntax-table previous-syntax-table)))) | 4367 | (set-syntax-table previous-syntax-table)))) |
| 4370 | 4368 | ||
| 4371 | (defun ada-move-to-end () | 4369 | (defun ada-move-to-end () |
| 4372 | "Moves point to the matching end of the block around point. | 4370 | "Move point to the matching end of the block around point. |
| 4373 | Moves to 'begin' if in a declarative part." | 4371 | Moves to 'begin' if in a declarative part." |
| 4374 | (interactive) | 4372 | (interactive) |
| 4375 | (let ((pos (point)) | 4373 | (let ((pos (point)) |
| @@ -4447,7 +4445,7 @@ Moves to 'begin' if in a declarative part." | |||
| 4447 | (set-syntax-table previous-syntax-table)))) | 4445 | (set-syntax-table previous-syntax-table)))) |
| 4448 | 4446 | ||
| 4449 | (defun ada-next-procedure () | 4447 | (defun ada-next-procedure () |
| 4450 | "Moves point to next procedure." | 4448 | "Move point to next procedure." |
| 4451 | (interactive) | 4449 | (interactive) |
| 4452 | (end-of-line) | 4450 | (end-of-line) |
| 4453 | (if (re-search-forward ada-procedure-start-regexp nil t) | 4451 | (if (re-search-forward ada-procedure-start-regexp nil t) |
| @@ -4455,7 +4453,7 @@ Moves to 'begin' if in a declarative part." | |||
| 4455 | (error "No more functions/procedures/tasks"))) | 4453 | (error "No more functions/procedures/tasks"))) |
| 4456 | 4454 | ||
| 4457 | (defun ada-previous-procedure () | 4455 | (defun ada-previous-procedure () |
| 4458 | "Moves point to previous procedure." | 4456 | "Move point to previous procedure." |
| 4459 | (interactive) | 4457 | (interactive) |
| 4460 | (beginning-of-line) | 4458 | (beginning-of-line) |
| 4461 | (if (re-search-backward ada-procedure-start-regexp nil t) | 4459 | (if (re-search-backward ada-procedure-start-regexp nil t) |
| @@ -4463,7 +4461,7 @@ Moves to 'begin' if in a declarative part." | |||
| 4463 | (error "No more functions/procedures/tasks"))) | 4461 | (error "No more functions/procedures/tasks"))) |
| 4464 | 4462 | ||
| 4465 | (defun ada-next-package () | 4463 | (defun ada-next-package () |
| 4466 | "Moves point to next package." | 4464 | "Move point to next package." |
| 4467 | (interactive) | 4465 | (interactive) |
| 4468 | (end-of-line) | 4466 | (end-of-line) |
| 4469 | (if (re-search-forward ada-package-start-regexp nil t) | 4467 | (if (re-search-forward ada-package-start-regexp nil t) |
| @@ -4471,7 +4469,7 @@ Moves to 'begin' if in a declarative part." | |||
| 4471 | (error "No more packages"))) | 4469 | (error "No more packages"))) |
| 4472 | 4470 | ||
| 4473 | (defun ada-previous-package () | 4471 | (defun ada-previous-package () |
| 4474 | "Moves point to previous package." | 4472 | "Move point to previous package." |
| 4475 | (interactive) | 4473 | (interactive) |
| 4476 | (beginning-of-line) | 4474 | (beginning-of-line) |
| 4477 | (if (re-search-backward ada-package-start-regexp nil t) | 4475 | (if (re-search-backward ada-package-start-regexp nil t) |
| @@ -4591,7 +4589,7 @@ Moves to 'begin' if in a declarative part." | |||
| 4591 | 4589 | ||
| 4592 | 4590 | ||
| 4593 | (defun ada-create-menu () | 4591 | (defun ada-create-menu () |
| 4594 | "Create the ada menu as shown in the menu bar." | 4592 | "Create the Ada menu as shown in the menu bar." |
| 4595 | (let ((m '("Ada" | 4593 | (let ((m '("Ada" |
| 4596 | ("Help" | 4594 | ("Help" |
| 4597 | ["Ada Mode" (info "ada-mode") t] | 4595 | ["Ada Mode" (info "ada-mode") t] |
| @@ -4788,28 +4786,28 @@ Moves to 'begin' if in a declarative part." | |||
| 4788 | (ada-indent-region beg end))) | 4786 | (ada-indent-region beg end))) |
| 4789 | 4787 | ||
| 4790 | (defun ada-fill-comment-paragraph-justify () | 4788 | (defun ada-fill-comment-paragraph-justify () |
| 4791 | "Fills current comment paragraph and justifies each line as well." | 4789 | "Fill current comment paragraph and justify each line as well." |
| 4792 | (interactive) | 4790 | (interactive) |
| 4793 | (ada-fill-comment-paragraph 'full)) | 4791 | (ada-fill-comment-paragraph 'full)) |
| 4794 | 4792 | ||
| 4795 | (defun ada-fill-comment-paragraph-postfix () | 4793 | (defun ada-fill-comment-paragraph-postfix () |
| 4796 | "Fills current comment paragraph and justifies each line as well. | 4794 | "Fill current comment paragraph and justify each line as well. |
| 4797 | Adds `ada-fill-comment-postfix' at the end of each line." | 4795 | Adds `ada-fill-comment-postfix' at the end of each line." |
| 4798 | (interactive) | 4796 | (interactive) |
| 4799 | (ada-fill-comment-paragraph 'full t)) | 4797 | (ada-fill-comment-paragraph 'full t)) |
| 4800 | 4798 | ||
| 4801 | (defun ada-fill-comment-paragraph (&optional justify postfix) | 4799 | (defun ada-fill-comment-paragraph (&optional justify postfix) |
| 4802 | "Fills the current comment paragraph. | 4800 | "Fill the current comment paragraph. |
| 4803 | If JUSTIFY is non-nil, each line is justified as well. | 4801 | If JUSTIFY is non-nil, each line is justified as well. |
| 4804 | If POSTFIX and JUSTIFY are non-nil, `ada-fill-comment-postfix' is appended | 4802 | If POSTFIX and JUSTIFY are non-nil, `ada-fill-comment-postfix' is appended |
| 4805 | to each filled and justified line. | 4803 | to each line filled and justified. |
| 4806 | The paragraph is indented on the first line." | 4804 | The paragraph is indented on the first line." |
| 4807 | (interactive "P") | 4805 | (interactive "P") |
| 4808 | 4806 | ||
| 4809 | ;; check if inside comment or just in front a comment | 4807 | ;; check if inside comment or just in front a comment |
| 4810 | (if (and (not (ada-in-comment-p)) | 4808 | (if (and (not (ada-in-comment-p)) |
| 4811 | (not (looking-at "[ \t]*--"))) | 4809 | (not (looking-at "[ \t]*--"))) |
| 4812 | (error "not inside comment")) | 4810 | (error "Not inside comment")) |
| 4813 | 4811 | ||
| 4814 | (let* (indent from to | 4812 | (let* (indent from to |
| 4815 | (opos (point-marker)) | 4813 | (opos (point-marker)) |
| @@ -4920,8 +4918,8 @@ This is a generic function, independent from any compiler." | |||
| 4920 | 4918 | ||
| 4921 | (defun ada-other-file-name () | 4919 | (defun ada-other-file-name () |
| 4922 | "Return the name of the other file. | 4920 | "Return the name of the other file. |
| 4923 | The name returned is the body if current-buffer is the spec, or the spec | 4921 | The name returned is the body if `current-buffer' is the spec, |
| 4924 | otherwise." | 4922 | or the spec otherwise." |
| 4925 | 4923 | ||
| 4926 | (let ((is-spec nil) | 4924 | (let ((is-spec nil) |
| 4927 | (is-body nil) | 4925 | (is-body nil) |
| @@ -4990,15 +4988,15 @@ Redefines the function `ff-which-function-are-we-in'." | |||
| 4990 | 4988 | ||
| 4991 | 4989 | ||
| 4992 | (defvar ada-last-which-function-line -1 | 4990 | (defvar ada-last-which-function-line -1 |
| 4993 | "Last on which ada-which-function was called") | 4991 | "Last on which `ada-which-function' was called.") |
| 4994 | (defvar ada-last-which-function-subprog 0 | 4992 | (defvar ada-last-which-function-subprog 0 |
| 4995 | "Last subprogram name returned by ada-which-function") | 4993 | "Last subprogram name returned by `ada-which-function'.") |
| 4996 | (make-variable-buffer-local 'ada-last-which-function-subprog) | 4994 | (make-variable-buffer-local 'ada-last-which-function-subprog) |
| 4997 | (make-variable-buffer-local 'ada-last-which-function-line) | 4995 | (make-variable-buffer-local 'ada-last-which-function-line) |
| 4998 | 4996 | ||
| 4999 | 4997 | ||
| 5000 | (defun ada-which-function () | 4998 | (defun ada-which-function () |
| 5001 | "Returns the name of the function whose body the point is in. | 4999 | "Return the name of the function whose body the point is in. |
| 5002 | This function works even in the case of nested subprograms, whereas the | 5000 | This function works even in the case of nested subprograms, whereas the |
| 5003 | standard Emacs function `which-function' does not. | 5001 | standard Emacs function `which-function' does not. |
| 5004 | Since the search can be long, the results are cached." | 5002 | Since the search can be long, the results are cached." |
| @@ -5082,8 +5080,8 @@ Since the search can be long, the results are cached." | |||
| 5082 | (goto-char (point-min)))))) | 5080 | (goto-char (point-min)))))) |
| 5083 | 5081 | ||
| 5084 | (defun ada-get-body-name (&optional spec-name) | 5082 | (defun ada-get-body-name (&optional spec-name) |
| 5085 | "Returns the file name for the body of SPEC-NAME. | 5083 | "Return the file name for the body of SPEC-NAME. |
| 5086 | If SPEC-NAME is nil, returns the body for the current package. | 5084 | If SPEC-NAME is nil, return the body for the current package. |
| 5087 | Returns nil if no body was found." | 5085 | Returns nil if no body was found." |
| 5088 | (interactive) | 5086 | (interactive) |
| 5089 | 5087 | ||
| @@ -5230,7 +5228,7 @@ Returns nil if no body was found." | |||
| 5230 | ;; --------------------------------------------------------- | 5228 | ;; --------------------------------------------------------- |
| 5231 | 5229 | ||
| 5232 | (defun ada-outline-level () | 5230 | (defun ada-outline-level () |
| 5233 | "This is so that `current-column` DTRT in otherwise-hidden text" | 5231 | "This is so that `current-column' DTRT in otherwise-hidden text." |
| 5234 | ;; patch from Dave Love <fx@gnu.org> | 5232 | ;; patch from Dave Love <fx@gnu.org> |
| 5235 | (let (buffer-invisibility-spec) | 5233 | (let (buffer-invisibility-spec) |
| 5236 | (save-excursion | 5234 | (save-excursion |
| @@ -5242,10 +5240,10 @@ Returns nil if no body was found." | |||
| 5242 | ;; --------------------------------------------------------- | 5240 | ;; --------------------------------------------------------- |
| 5243 | 5241 | ||
| 5244 | (defun ada-narrow-to-defun (&optional arg) | 5242 | (defun ada-narrow-to-defun (&optional arg) |
| 5245 | "make text outside current subprogram invisible. | 5243 | "Make text outside current subprogram invisible. |
| 5246 | The subprogram visible is the one that contains or follow point. | 5244 | The subprogram visible is the one that contains or follow point. |
| 5247 | Optional ARG is ignored. | 5245 | Optional ARG is ignored. |
| 5248 | Use `M-x widen' to go back to the full visibility for the buffer" | 5246 | Use `M-x widen' to go back to the full visibility for the buffer." |
| 5249 | 5247 | ||
| 5250 | (interactive) | 5248 | (interactive) |
| 5251 | (save-excursion | 5249 | (save-excursion |
| @@ -5276,8 +5274,8 @@ Use `M-x widen' to go back to the full visibility for the buffer" | |||
| 5276 | 5274 | ||
| 5277 | (defun ada-gen-treat-proc (match) | 5275 | (defun ada-gen-treat-proc (match) |
| 5278 | "Make dummy body of a procedure/function specification. | 5276 | "Make dummy body of a procedure/function specification. |
| 5279 | MATCH is a cons cell containing the start and end location of the last search | 5277 | MATCH is a cons cell containing the start and end locations of the last search |
| 5280 | for ada-procedure-start-regexp." | 5278 | for `ada-procedure-start-regexp'." |
| 5281 | (goto-char (car match)) | 5279 | (goto-char (car match)) |
| 5282 | (let (func-found procname functype) | 5280 | (let (func-found procname functype) |
| 5283 | (cond | 5281 | (cond |
| @@ -5398,7 +5396,7 @@ This function typically is to be hooked into `ff-file-created-hooks'." | |||
| 5398 | (setq body-file (ada-get-body-name)) | 5396 | (setq body-file (ada-get-body-name)) |
| 5399 | (if body-file | 5397 | (if body-file |
| 5400 | (find-file body-file) | 5398 | (find-file body-file) |
| 5401 | (error "No body found for the package. Create it first")) | 5399 | (error "No body found for the package. Create it first")) |
| 5402 | 5400 | ||
| 5403 | (save-restriction | 5401 | (save-restriction |
| 5404 | (widen) | 5402 | (widen) |
diff --git a/lisp/progmodes/cc-align.el b/lisp/progmodes/cc-align.el index 139bfc8aa5a..849e98053ad 100644 --- a/lisp/progmodes/cc-align.el +++ b/lisp/progmodes/cc-align.el | |||
| @@ -158,7 +158,7 @@ foo (xyz, aaa + bbb + ccc | |||
| 158 | Only continuation lines like this are touched, nil is returned on lines | 158 | Only continuation lines like this are touched, nil is returned on lines |
| 159 | which are the start of an argument. | 159 | which are the start of an argument. |
| 160 | 160 | ||
| 161 | Within a gcc asm block, \":\" is recognised as an argument separator, | 161 | Within a gcc asm block, \":\" is recognized as an argument separator, |
| 162 | but of course only between operand specifications, not in the expressions | 162 | but of course only between operand specifications, not in the expressions |
| 163 | for the operands. | 163 | for the operands. |
| 164 | 164 | ||
diff --git a/lisp/progmodes/cc-awk.el b/lisp/progmodes/cc-awk.el index 419803a7ada..c7c1290604c 100644 --- a/lisp/progmodes/cc-awk.el +++ b/lisp/progmodes/cc-awk.el | |||
| @@ -69,7 +69,7 @@ | |||
| 69 | ;; / can delimit regexes or be a division operator. By default we assume | 69 | ;; / can delimit regexes or be a division operator. By default we assume |
| 70 | ;; that it is a division sign, and fix the regexp operator cases with | 70 | ;; that it is a division sign, and fix the regexp operator cases with |
| 71 | ;; `font-lock-syntactic-keywords'. | 71 | ;; `font-lock-syntactic-keywords'. |
| 72 | (modify-syntax-entry ?/ "." st) ; ACM 2002/4/27. | 72 | (modify-syntax-entry ?/ "." st) ; ACM 2002/4/27. |
| 73 | (modify-syntax-entry ?* "." st) | 73 | (modify-syntax-entry ?* "." st) |
| 74 | (modify-syntax-entry ?+ "." st) | 74 | (modify-syntax-entry ?+ "." st) |
| 75 | (modify-syntax-entry ?- "." st) | 75 | (modify-syntax-entry ?- "." st) |
| @@ -85,7 +85,7 @@ | |||
| 85 | "Syntax table in use in AWK Mode buffers.") | 85 | "Syntax table in use in AWK Mode buffers.") |
| 86 | 86 | ||
| 87 | ;; ACM, 2002/5/29: | 87 | ;; ACM, 2002/5/29: |
| 88 | ;; | 88 | ;; |
| 89 | ;; The next section of code is about determining whether or not an AWK | 89 | ;; The next section of code is about determining whether or not an AWK |
| 90 | ;; statement is complete or not. We use this to indent the following line. | 90 | ;; statement is complete or not. We use this to indent the following line. |
| 91 | ;; The determination is pretty straightforward in C, where a statement ends | 91 | ;; The determination is pretty straightforward in C, where a statement ends |
| @@ -199,7 +199,7 @@ | |||
| 199 | ;; Kludge: If c-backward-syntactic-ws gets stuck at a BOL, it is likely | 199 | ;; Kludge: If c-backward-syntactic-ws gets stuck at a BOL, it is likely |
| 200 | ;; that the previous line contains an unterminated string (without \). In | 200 | ;; that the previous line contains an unterminated string (without \). In |
| 201 | ;; this case, assume that the previous line's c-awk-NL-prop is a ;. | 201 | ;; this case, assume that the previous line's c-awk-NL-prop is a ;. |
| 202 | ;; | 202 | ;; |
| 203 | ;; POINT MUST BE AT THE START OF A LINE when calling this function. This | 203 | ;; POINT MUST BE AT THE START OF A LINE when calling this function. This |
| 204 | ;; is to ensure that the various backward-comment functions will work | 204 | ;; is to ensure that the various backward-comment functions will work |
| 205 | ;; properly. | 205 | ;; properly. |
| @@ -237,13 +237,13 @@ | |||
| 237 | ;; Calculate and set the value of the c-awk-NL-prop on the immediately | 237 | ;; Calculate and set the value of the c-awk-NL-prop on the immediately |
| 238 | ;; preceding EOL. This may also involve doing the same for several | 238 | ;; preceding EOL. This may also involve doing the same for several |
| 239 | ;; preceding EOLs. | 239 | ;; preceding EOLs. |
| 240 | ;; | 240 | ;; |
| 241 | ;; NOTE that if the property was already set, we return it without | 241 | ;; NOTE that if the property was already set, we return it without |
| 242 | ;; recalculation. (This is by accident rather than design.) | 242 | ;; recalculation. (This is by accident rather than design.) |
| 243 | ;; | 243 | ;; |
| 244 | ;; Return the property which got set (or was already set) on the previous | 244 | ;; Return the property which got set (or was already set) on the previous |
| 245 | ;; line. Return nil if we hit BOB. | 245 | ;; line. Return nil if we hit BOB. |
| 246 | ;; | 246 | ;; |
| 247 | ;; See c-awk-after-if-for-while-condition-p for a description of DO-LIM. | 247 | ;; See c-awk-after-if-for-while-condition-p for a description of DO-LIM. |
| 248 | (save-excursion | 248 | (save-excursion |
| 249 | (save-match-data | 249 | (save-match-data |
| @@ -298,7 +298,7 @@ | |||
| 298 | ;; if necessary. (As a special case, the property doesn't get set on an | 298 | ;; if necessary. (As a special case, the property doesn't get set on an |
| 299 | ;; empty line at EOB (there's no position to set the property on), but the | 299 | ;; empty line at EOB (there's no position to set the property on), but the |
| 300 | ;; function returns the property value an EOL would have got.) | 300 | ;; function returns the property value an EOL would have got.) |
| 301 | ;; | 301 | ;; |
| 302 | ;; See c-awk-after-if-for-while-condition-p for a description of DO-LIM. | 302 | ;; See c-awk-after-if-for-while-condition-p for a description of DO-LIM. |
| 303 | (save-excursion | 303 | (save-excursion |
| 304 | (let ((extra-nl nil)) | 304 | (let ((extra-nl nil)) |
| @@ -339,7 +339,7 @@ | |||
| 339 | (and (bolp) | 339 | (and (bolp) |
| 340 | (eq (c-awk-get-NL-prop-prev-line do-lim) ?\;))) | 340 | (eq (c-awk-get-NL-prop-prev-line do-lim) ?\;))) |
| 341 | 341 | ||
| 342 | (defun c-awk-backward-syntactic-ws (&optional lim) | 342 | (defun c-awk-backward-syntactic-ws (&optional lim) |
| 343 | ;; Skip backwards over awk-syntactic whitespace. This is whitespace | 343 | ;; Skip backwards over awk-syntactic whitespace. This is whitespace |
| 344 | ;; characters, comments, and NEWLINES WHICH AREN'T "VIRTUAL SEMICOLONS". For | 344 | ;; characters, comments, and NEWLINES WHICH AREN'T "VIRTUAL SEMICOLONS". For |
| 345 | ;; this function, a newline isn't a "virtual semicolon" if that line ends with | 345 | ;; this function, a newline isn't a "virtual semicolon" if that line ends with |
| @@ -431,7 +431,7 @@ | |||
| 431 | ;; Go back to the start of the (apparent) current line (or the start of the | 431 | ;; Go back to the start of the (apparent) current line (or the start of the |
| 432 | ;; line containing POS), returning the buffer position of that point. I.e., | 432 | ;; line containing POS), returning the buffer position of that point. I.e., |
| 433 | ;; go back to the last line which doesn't have an escaped EOL before it. | 433 | ;; go back to the last line which doesn't have an escaped EOL before it. |
| 434 | ;; | 434 | ;; |
| 435 | ;; This is guaranteed to be "safe" for syntactic analysis, i.e. outwith any | 435 | ;; This is guaranteed to be "safe" for syntactic analysis, i.e. outwith any |
| 436 | ;; comment, string or regexp. IT MAY WELL BE that this function should not be | 436 | ;; comment, string or regexp. IT MAY WELL BE that this function should not be |
| 437 | ;; executed on a narrowed buffer. | 437 | ;; executed on a narrowed buffer. |
| @@ -470,7 +470,7 @@ | |||
| 470 | ;; Matches a newline, or the end of buffer. | 470 | ;; Matches a newline, or the end of buffer. |
| 471 | 471 | ||
| 472 | ;; "Space" regular expressions. | 472 | ;; "Space" regular expressions. |
| 473 | (defconst c-awk-escaped-nl "\\\\[\n\r]") | 473 | (defconst c-awk-escaped-nl "\\\\[\n\r]") |
| 474 | ;; Matches an escaped newline. | 474 | ;; Matches an escaped newline. |
| 475 | (defconst c-awk-escaped-nls* (concat "\\(" c-awk-escaped-nl "\\)*")) | 475 | (defconst c-awk-escaped-nls* (concat "\\(" c-awk-escaped-nl "\\)*")) |
| 476 | ;; Matches a possibly empty sequence of escaped newlines. Used in | 476 | ;; Matches a possibly empty sequence of escaped newlines. Used in |
| @@ -546,7 +546,7 @@ | |||
| 546 | ;; Matches the inside of an AWK regexp (i.e. without the enclosing /s) | 546 | ;; Matches the inside of an AWK regexp (i.e. without the enclosing /s) |
| 547 | (defconst c-awk-regexp-without-end-re | 547 | (defconst c-awk-regexp-without-end-re |
| 548 | (concat "/" c-awk-regexp-innards-re)) | 548 | (concat "/" c-awk-regexp-innards-re)) |
| 549 | ;; Matches an AWK regexp up to, but not including, any terminating /. | 549 | ;; Matches an AWK regexp up to, but not including, any terminating /. |
| 550 | 550 | ||
| 551 | ;; REGEXPS used for scanning an AWK buffer in order to decide IF A '/' IS A | 551 | ;; REGEXPS used for scanning an AWK buffer in order to decide IF A '/' IS A |
| 552 | ;; REGEXP OPENER OR A DIVISION SIGN. By "state" in the following is meant | 552 | ;; REGEXP OPENER OR A DIVISION SIGN. By "state" in the following is meant |
| @@ -714,7 +714,7 @@ | |||
| 714 | (c-awk-syntax-tablify-string) | 714 | (c-awk-syntax-tablify-string) |
| 715 | (c-awk-syntax-tablify-/ anchor anchor-state-/div))) | 715 | (c-awk-syntax-tablify-/ anchor anchor-state-/div))) |
| 716 | 716 | ||
| 717 | ;; Skip any further "harmless" lines before the next tricky one. | 717 | ;; Skip any further "harmless" lines before the next tricky one. |
| 718 | (if (search-forward-regexp c-awk-harmless-lines+-here-re nil t) | 718 | (if (search-forward-regexp c-awk-harmless-lines+-here-re nil t) |
| 719 | (setq anchor-state-/div nil))) | 719 | (setq anchor-state-/div nil))) |
| 720 | nil)) | 720 | nil)) |
| @@ -803,7 +803,7 @@ many times. Negative arg -N means move forward to Nth following beginning of | |||
| 803 | defun. Returns t unless search stops due to beginning or end of buffer. | 803 | defun. Returns t unless search stops due to beginning or end of buffer. |
| 804 | 804 | ||
| 805 | By a \"defun\" is meant either a pattern-action pair or a function. The start | 805 | By a \"defun\" is meant either a pattern-action pair or a function. The start |
| 806 | of a defun is recognised as code starting at column zero which is neither a | 806 | of a defun is recognized as code starting at column zero which is neither a |
| 807 | closing brace nor a comment nor a continuation of the previous line. Unlike | 807 | closing brace nor a comment nor a continuation of the previous line. Unlike |
| 808 | in some other modes, having an opening brace at column 0 is neither necessary | 808 | in some other modes, having an opening brace at column 0 is neither necessary |
| 809 | nor helpful." | 809 | nor helpful." |
diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el index 29946dc4682..e78ec2c508d 100644 --- a/lisp/progmodes/cc-fonts.el +++ b/lisp/progmodes/cc-fonts.el | |||
| @@ -193,6 +193,10 @@ | |||
| 193 | 193 | ||
| 194 | (unless (c-face-name-p c-invalid-face-name) | 194 | (unless (c-face-name-p c-invalid-face-name) |
| 195 | (defconst c-invalid-face 'c-invalid-face) ; Necessary in Emacs 19. | 195 | (defconst c-invalid-face 'c-invalid-face) ; Necessary in Emacs 19. |
| 196 | ;; This face should be called `c-invalid' for consistency with the | ||
| 197 | ;; rest of emacs, but as it's only used in very old versions of Emacs, | ||
| 198 | ;; we leave it unchanged (the face-alias mechanism doesn't exist in | ||
| 199 | ;; those old versions). | ||
| 196 | (defface c-invalid-face | 200 | (defface c-invalid-face |
| 197 | '((((class color) (background light)) (:foreground "red1")) | 201 | '((((class color) (background light)) (:foreground "red1")) |
| 198 | (((class color)) (:foreground "hotpink")) | 202 | (((class color)) (:foreground "hotpink")) |
| @@ -203,8 +207,8 @@ | |||
| 203 | ;; To make hard spaces visible an inverted version of | 207 | ;; To make hard spaces visible an inverted version of |
| 204 | ;; `c-invalid-face-name' is used. Since font-lock in Emacs expands | 208 | ;; `c-invalid-face-name' is used. Since font-lock in Emacs expands |
| 205 | ;; all face names in `font-lock-keywords' as variables we need to have | 209 | ;; all face names in `font-lock-keywords' as variables we need to have |
| 206 | ;; a variable for it that resolves to its own name. | 210 | ;; a variable for it. |
| 207 | (defconst c-nonbreakable-space-face 'c-nonbreakable-space-face) | 211 | (defconst c-nonbreakable-space-face 'c-nonbreakable-space) |
| 208 | 212 | ||
| 209 | (cc-bytecomp-defun face-inverse-video-p) ; Only in Emacs. | 213 | (cc-bytecomp-defun face-inverse-video-p) ; Only in Emacs. |
| 210 | (cc-bytecomp-defun face-property-instance) ; Only in XEmacs. | 214 | (cc-bytecomp-defun face-property-instance) ; Only in XEmacs. |
| @@ -511,9 +515,9 @@ stuff. Used on level 1 and higher." | |||
| 511 | (eval . (list | 515 | (eval . (list |
| 512 | "\240" | 516 | "\240" |
| 513 | 0 (progn | 517 | 0 (progn |
| 514 | (unless (c-face-name-p 'c-nonbreakable-space-face) | 518 | (unless (c-face-name-p c-nonbreakable-space-face) |
| 515 | (c-make-inverse-face c-invalid-face-name | 519 | (c-make-inverse-face c-invalid-face-name |
| 516 | 'c-nonbreakable-space-face)) | 520 | c-nonbreakable-space-face)) |
| 517 | 'c-nonbreakable-space-face))) | 521 | 'c-nonbreakable-space-face))) |
| 518 | )) | 522 | )) |
| 519 | 523 | ||
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el index 9826c995b97..d95c0294c4d 100644 --- a/lisp/progmodes/cperl-mode.el +++ b/lisp/progmodes/cperl-mode.el | |||
| @@ -5209,7 +5209,7 @@ side-effect of memorizing only." | |||
| 5209 | (set (car setting) (cdr setting))))) | 5209 | (set (car setting) (cdr setting))))) |
| 5210 | 5210 | ||
| 5211 | (defun cperl-set-style-back () | 5211 | (defun cperl-set-style-back () |
| 5212 | "Restore a style memorised by `cperl-set-style'." | 5212 | "Restore a style memorized by `cperl-set-style'." |
| 5213 | (interactive) | 5213 | (interactive) |
| 5214 | (or cperl-old-style (error "The style was not changed")) | 5214 | (or cperl-old-style (error "The style was not changed")) |
| 5215 | (let (setting) | 5215 | (let (setting) |
diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el index 195875842a3..f3657a0a279 100644 --- a/lisp/progmodes/grep.el +++ b/lisp/progmodes/grep.el | |||
| @@ -250,17 +250,20 @@ Notice that using \\[next-error] or \\[compile-goto-error] modifies | |||
| 250 | ;; rms: I removed the code to match parens around the line number | 250 | ;; rms: I removed the code to match parens around the line number |
| 251 | ;; because it causes confusion and so we will find out if anyone needs it. | 251 | ;; because it causes confusion and so we will find out if anyone needs it. |
| 252 | ;; It causes confusion with a file name that contains a number in parens. | 252 | ;; It causes confusion with a file name that contains a number in parens. |
| 253 | '(("^\\(.+?\\)[: \t]+\ | 253 | '(("^\\(.+?\\)\\([: \t]\\)+\ |
| 254 | \\([0-9]+\\)\\([.:]?\\)\\([0-9]+\\)?\ | 254 | \\([0-9]+\\)\\([.:]?\\)\\([0-9]+\\)?\ |
| 255 | \\(?:-\\(?:\\([0-9]+\\)\\3\\)?\\.?\\([0-9]+\\)?\\)?[: \t]" 1 (2 . 5) (4 . 6)) | 255 | \\(?:-\\(?:\\([0-9]+\\)\\4\\)?\\.?\\([0-9]+\\)?\\)?\\2" |
| 256 | ("^\\(.+?\\)[:(]+\\([0-9]+\\)\\([:)]\\).*?\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\(\033\\[K\\)?\\)" | 256 | 1 (3 . 6) (5 . 7)) |
| 257 | 1 2 | 257 | ("^\\(\\(.+?\\):\\([0-9]+\\):\\).*?\ |
| 258 | \\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\(?:\033\\[K\\)?\\)" | ||
| 259 | 2 3 | ||
| 258 | ;; Calculate column positions (beg . end) of first grep match on a line | 260 | ;; Calculate column positions (beg . end) of first grep match on a line |
| 259 | ((lambda () | 261 | ((lambda () |
| 260 | (setq compilation-error-screen-columns nil) | 262 | (setq compilation-error-screen-columns nil) |
| 261 | (- (match-beginning 5) (match-end 3) 8)) | 263 | (- (match-beginning 5) (match-end 1) 8)) |
| 262 | . | 264 | . |
| 263 | (lambda () (- (match-end 5) (match-end 3) 8)))) | 265 | (lambda () (- (match-end 5) (match-end 1) 8))) |
| 266 | nil 1) | ||
| 264 | ("^Binary file \\(.+\\) matches$" 1 nil nil 1)) | 267 | ("^Binary file \\(.+\\) matches$" 1 nil nil 1)) |
| 265 | "Regexp used to match grep hits. See `compilation-error-regexp-alist'.") | 268 | "Regexp used to match grep hits. See `compilation-error-regexp-alist'.") |
| 266 | 269 | ||
| @@ -293,7 +296,7 @@ Notice that using \\[next-error] or \\[compile-goto-error] modifies | |||
| 293 | (1 compilation-warning-face) | 296 | (1 compilation-warning-face) |
| 294 | (2 compilation-line-face)) | 297 | (2 compilation-line-face)) |
| 295 | ;; Highlight grep matches and delete markers | 298 | ;; Highlight grep matches and delete markers |
| 296 | ("\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\(\033\\[K\\)?\\)" | 299 | ("\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\(?:\033\\[K\\)?\\)" |
| 297 | ;; Refontification does not work after the markers have been | 300 | ;; Refontification does not work after the markers have been |
| 298 | ;; deleted. So we use the font-lock-face property here as Font | 301 | ;; deleted. So we use the font-lock-face property here as Font |
| 299 | ;; Lock does not clear that. | 302 | ;; Lock does not clear that. |
| @@ -517,7 +520,10 @@ temporarily highlight in visited source lines." | |||
| 517 | (set (make-local-variable 'compilation-error-face) | 520 | (set (make-local-variable 'compilation-error-face) |
| 518 | grep-hit-face) | 521 | grep-hit-face) |
| 519 | (set (make-local-variable 'compilation-error-regexp-alist) | 522 | (set (make-local-variable 'compilation-error-regexp-alist) |
| 520 | grep-regexp-alist)) | 523 | grep-regexp-alist) |
| 524 | ;; Set `font-lock-lines-before' to 0 to not refontify the previous | ||
| 525 | ;; line where grep markers may be already removed. | ||
| 526 | (set (make-local-variable 'font-lock-lines-before) 0)) | ||
| 521 | 527 | ||
| 522 | ;;;###autoload | 528 | ;;;###autoload |
| 523 | (defun grep-find (command-args) | 529 | (defun grep-find (command-args) |
diff --git a/lisp/progmodes/idlwave.el b/lisp/progmodes/idlwave.el index 820e619f331..273c3296180 100644 --- a/lisp/progmodes/idlwave.el +++ b/lisp/progmodes/idlwave.el | |||
| @@ -1369,7 +1369,7 @@ the leftover unidentified statements containing an equal sign." ) | |||
| 1369 | ;; Note that this is documented in the v18 manuals as being a string | 1369 | ;; Note that this is documented in the v18 manuals as being a string |
| 1370 | ;; of length one rather than a single character. | 1370 | ;; of length one rather than a single character. |
| 1371 | ;; The code in this file accepts either format for compatibility. | 1371 | ;; The code in this file accepts either format for compatibility. |
| 1372 | (defvar idlwave-comment-indent-char ?\ | 1372 | (defvar idlwave-comment-indent-char ?\ |
| 1373 | "Character to be inserted for IDL comment indentation. | 1373 | "Character to be inserted for IDL comment indentation. |
| 1374 | Normally a space.") | 1374 | Normally a space.") |
| 1375 | 1375 | ||
| @@ -5493,8 +5493,8 @@ When we force a method or a method keyword, CLASS can specify the class." | |||
| 5493 | (error "Nothing known about procedure %s" | 5493 | (error "Nothing known about procedure %s" |
| 5494 | (idlwave-make-full-name class name))) | 5494 | (idlwave-make-full-name class name))) |
| 5495 | (setq list (idlwave-fix-keywords name 'pro class list super-classes)) | 5495 | (setq list (idlwave-fix-keywords name 'pro class list super-classes)) |
| 5496 | (unless list (error (format "No keywords available for procedure %s" | 5496 | (unless list (error "No keywords available for procedure %s" |
| 5497 | (idlwave-make-full-name class name)))) | 5497 | (idlwave-make-full-name class name))) |
| 5498 | (setq idlwave-completion-help-info | 5498 | (setq idlwave-completion-help-info |
| 5499 | (list 'keyword name type-selector class-selector entry super-classes)) | 5499 | (list 'keyword name type-selector class-selector entry super-classes)) |
| 5500 | (idlwave-complete-in-buffer | 5500 | (idlwave-complete-in-buffer |
| @@ -5531,8 +5531,8 @@ When we force a method or a method keyword, CLASS can specify the class." | |||
| 5531 | (concat idlwave-current-obj_new-class | 5531 | (concat idlwave-current-obj_new-class |
| 5532 | "::Init (via OBJ_NEW)") | 5532 | "::Init (via OBJ_NEW)") |
| 5533 | (idlwave-make-full-name class name))) | 5533 | (idlwave-make-full-name class name))) |
| 5534 | (unless list (error (format "No keywords available for function %s" | 5534 | (unless list (error "No keywords available for function %s" |
| 5535 | msg-name))) | 5535 | msg-name)) |
| 5536 | (setq idlwave-completion-help-info | 5536 | (setq idlwave-completion-help-info |
| 5537 | (list 'keyword name type-selector class-selector nil super-classes)) | 5537 | (list 'keyword name type-selector class-selector nil super-classes)) |
| 5538 | (idlwave-complete-in-buffer | 5538 | (idlwave-complete-in-buffer |
diff --git a/lisp/progmodes/inf-lisp.el b/lisp/progmodes/inf-lisp.el index ad7c4cb4cf2..df7f5b25526 100644 --- a/lisp/progmodes/inf-lisp.el +++ b/lisp/progmodes/inf-lisp.el | |||
| @@ -161,7 +161,7 @@ but it works only in Common Lisp." | |||
| 161 | 161 | ||
| 162 | ;;;###autoload | 162 | ;;;###autoload |
| 163 | (defcustom inferior-lisp-prompt "^[^> \n]*>+:? *" | 163 | (defcustom inferior-lisp-prompt "^[^> \n]*>+:? *" |
| 164 | "Regexp to recognise prompts in the Inferior Lisp mode. | 164 | "Regexp to recognize prompts in the Inferior Lisp mode. |
| 165 | Defaults to \"^[^> \\n]*>+:? *\", which works pretty good for Lucid, kcl, | 165 | Defaults to \"^[^> \\n]*>+:? *\", which works pretty good for Lucid, kcl, |
| 166 | and franz. This variable is used to initialize `comint-prompt-regexp' in the | 166 | and franz. This variable is used to initialize `comint-prompt-regexp' in the |
| 167 | Inferior Lisp buffer. | 167 | Inferior Lisp buffer. |
diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el index d9c38349b49..e53b08b8c14 100644 --- a/lisp/progmodes/make-mode.el +++ b/lisp/progmodes/make-mode.el | |||
| @@ -105,6 +105,7 @@ | |||
| 105 | "Face to use for highlighting leading spaces in Font-Lock mode." | 105 | "Face to use for highlighting leading spaces in Font-Lock mode." |
| 106 | :group 'faces | 106 | :group 'faces |
| 107 | :group 'makefile) | 107 | :group 'makefile) |
| 108 | (put 'makefile-space-face 'face-alias 'makefile-space) | ||
| 108 | 109 | ||
| 109 | (defface makefile-targets | 110 | (defface makefile-targets |
| 110 | ;; This needs to go along both with foreground and background colors (i.e. shell) | 111 | ;; This needs to go along both with foreground and background colors (i.e. shell) |
diff --git a/lisp/progmodes/modula2.el b/lisp/progmodes/modula2.el index 5fd3dbcb11b..802ed26eb1f 100644 --- a/lisp/progmodes/modula2.el +++ b/lisp/progmodes/modula2.el | |||
| @@ -309,7 +309,7 @@ followed by the first character of the construct. | |||
| 309 | "Build skeleton FOR loop statement, prompting for the loop parameters." | 309 | "Build skeleton FOR loop statement, prompting for the loop parameters." |
| 310 | (interactive) | 310 | (interactive) |
| 311 | (insert "FOR ") | 311 | (insert "FOR ") |
| 312 | (let ((name (read-string "Loop Initialiser: ")) limit by) | 312 | (let ((name (read-string "Loop Initializer: ")) limit by) |
| 313 | (insert name " TO ") | 313 | (insert name " TO ") |
| 314 | (setq limit (read-string "Limit: ")) | 314 | (setq limit (read-string "Limit: ")) |
| 315 | (insert limit) | 315 | (insert limit) |
diff --git a/lisp/progmodes/ps-mode.el b/lisp/progmodes/ps-mode.el index 2d8f1d80aae..5a4d8eb4915 100644 --- a/lisp/progmodes/ps-mode.el +++ b/lisp/progmodes/ps-mode.el | |||
| @@ -1,11 +1,11 @@ | |||
| 1 | ;;; ps-mode.el --- PostScript mode for GNU Emacs | 1 | ;;; ps-mode.el --- PostScript mode for GNU Emacs |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1999, 2001 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 1999, 2001, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Peter Kleiweg <kleiweg@let.rug.nl> | 5 | ;; Author: Peter Kleiweg <p.c.j.kleiweg@rug.nl> |
| 6 | ;; Maintainer: Peter Kleiweg <kleiweg@let.rug.nl> | 6 | ;; Maintainer: Peter Kleiweg <p.c.j.kleiweg@rug.nl> |
| 7 | ;; Created: 20 Aug 1997 | 7 | ;; Created: 20 Aug 1997 |
| 8 | ;; Version: 1.1g, 9 Nov 2001 | 8 | ;; Version: 1.1h, 16 Jun 2005 |
| 9 | ;; Keywords: PostScript, languages | 9 | ;; Keywords: PostScript, languages |
| 10 | 10 | ||
| 11 | ;; This file is part of GNU Emacs. | 11 | ;; This file is part of GNU Emacs. |
| @@ -30,8 +30,8 @@ | |||
| 30 | 30 | ||
| 31 | ;;; Code: | 31 | ;;; Code: |
| 32 | 32 | ||
| 33 | (defconst ps-mode-version "1.1g, 9 Nov 2001") | 33 | (defconst ps-mode-version "1.1h, 16 Jun 2005") |
| 34 | (defconst ps-mode-maintainer-address "Peter Kleiweg <kleiweg@let.rug.nl>") | 34 | (defconst ps-mode-maintainer-address "Peter Kleiweg <p.c.j.kleiweg@rug.nl>") |
| 35 | 35 | ||
| 36 | (require 'easymenu) | 36 | (require 'easymenu) |
| 37 | 37 | ||
diff --git a/lisp/progmodes/vhdl-mode.el b/lisp/progmodes/vhdl-mode.el index 9885e9ae039..54e7ab8a049 100644 --- a/lisp/progmodes/vhdl-mode.el +++ b/lisp/progmodes/vhdl-mode.el | |||
| @@ -2305,7 +2305,7 @@ old environment. Used for consistent searching." | |||
| 2305 | (progn | 2305 | (progn |
| 2306 | (when file-opened (kill-buffer (current-buffer))) | 2306 | (when file-opened (kill-buffer (current-buffer))) |
| 2307 | (set-buffer source-buffer) | 2307 | (set-buffer source-buffer) |
| 2308 | (error (format "ERROR: File cannot be opened: \"%s\"" ,file-name))) | 2308 | (error "ERROR: File cannot be opened: \"%s\"" ,file-name)) |
| 2309 | (vhdl-warning (format "File cannot be opened: \"%s\"" ,file-name) t) | 2309 | (vhdl-warning (format "File cannot be opened: \"%s\"" ,file-name) t) |
| 2310 | nil)))) | 2310 | nil)))) |
| 2311 | (condition-case info | 2311 | (condition-case info |
| @@ -6027,8 +6027,8 @@ Returns the location of the corresponding begin keyword, unless search | |||
| 6027 | stops due to beginning or end of buffer. | 6027 | stops due to beginning or end of buffer. |
| 6028 | Note that if point is between the \"libunit\" keyword and the | 6028 | Note that if point is between the \"libunit\" keyword and the |
| 6029 | corresponding \"begin\" keyword, then that libunit will not be | 6029 | corresponding \"begin\" keyword, then that libunit will not be |
| 6030 | recognised, and the search will continue backwards. If point is | 6030 | recognized, and the search will continue backwards. If point is |
| 6031 | at the \"begin\" keyword, then the defun will be recognised. The | 6031 | at the \"begin\" keyword, then the defun will be recognized. The |
| 6032 | returned point is at the first character of the \"libunit\" keyword." | 6032 | returned point is at the first character of the \"libunit\" keyword." |
| 6033 | (let ((last-forward (point)) | 6033 | (let ((last-forward (point)) |
| 6034 | (last-backward | 6034 | (last-backward |
| @@ -15358,7 +15358,7 @@ component instantiation." | |||
| 15358 | (cons constant-name | 15358 | (cons constant-name |
| 15359 | (if (match-string 1) | 15359 | (if (match-string 1) |
| 15360 | (or (aget generic-alist (match-string 2) t) | 15360 | (or (aget generic-alist (match-string 2) t) |
| 15361 | (error (format "ERROR: Formal generic \"%s\" mismatch for instance \"%s\"" (match-string 2) inst-name))) | 15361 | (error "ERROR: Formal generic \"%s\" mismatch for instance \"%s\"" (match-string 2) inst-name)) |
| 15362 | (cdar generic-alist)))) | 15362 | (cdar generic-alist)))) |
| 15363 | (setq constant-alist (cons constant-entry constant-alist)) | 15363 | (setq constant-alist (cons constant-entry constant-alist)) |
| 15364 | (setq constant-name (downcase constant-name)) | 15364 | (setq constant-name (downcase constant-name)) |
| @@ -15378,7 +15378,7 @@ component instantiation." | |||
| 15378 | (setq signal-entry (cons signal-name | 15378 | (setq signal-entry (cons signal-name |
| 15379 | (if (match-string 1) | 15379 | (if (match-string 1) |
| 15380 | (or (aget port-alist (match-string 2) t) | 15380 | (or (aget port-alist (match-string 2) t) |
| 15381 | (error (format "ERROR: Formal port \"%s\" mismatch for instance \"%s\"" (match-string 2) inst-name))) | 15381 | (error "ERROR: Formal port \"%s\" mismatch for instance \"%s\"" (match-string 2) inst-name)) |
| 15382 | (cdar port-alist)))) | 15382 | (cdar port-alist)))) |
| 15383 | (setq signal-alist (cons signal-entry signal-alist)) | 15383 | (setq signal-alist (cons signal-entry signal-alist)) |
| 15384 | (setq signal-name (downcase signal-name)) | 15384 | (setq signal-name (downcase signal-name)) |
diff --git a/lisp/shell.el b/lisp/shell.el index fd5e6c25032..7a9f261859d 100644 --- a/lisp/shell.el +++ b/lisp/shell.el | |||
| @@ -133,7 +133,7 @@ arguments." | |||
| 133 | (defcustom shell-prompt-pattern "^[^#$%>\n]*[#$%>] *" | 133 | (defcustom shell-prompt-pattern "^[^#$%>\n]*[#$%>] *" |
| 134 | "Regexp to match prompts in the inferior shell. | 134 | "Regexp to match prompts in the inferior shell. |
| 135 | Defaults to \"^[^#$%>\\n]*[#$%>] *\", which works pretty well. | 135 | Defaults to \"^[^#$%>\\n]*[#$%>] *\", which works pretty well. |
| 136 | This variable is used to initialise `comint-prompt-regexp' in the | 136 | This variable is used to initialize `comint-prompt-regexp' in the |
| 137 | shell buffer. | 137 | shell buffer. |
| 138 | 138 | ||
| 139 | If `comint-use-prompt-regexp' is nil, then this variable is only used | 139 | If `comint-use-prompt-regexp' is nil, then this variable is only used |
| @@ -159,7 +159,7 @@ This is a fine thing to set in your `.emacs' file." | |||
| 159 | :group 'shell) | 159 | :group 'shell) |
| 160 | 160 | ||
| 161 | (defvar shell-delimiter-argument-list '(?\| ?& ?< ?> ?\( ?\) ?\;) | 161 | (defvar shell-delimiter-argument-list '(?\| ?& ?< ?> ?\( ?\) ?\;) |
| 162 | "List of characters to recognise as separate arguments. | 162 | "List of characters to recognize as separate arguments. |
| 163 | This variable is used to initialize `comint-delimiter-argument-list' in the | 163 | This variable is used to initialize `comint-delimiter-argument-list' in the |
| 164 | shell buffer. The value may depend on the operating system or shell. | 164 | shell buffer. The value may depend on the operating system or shell. |
| 165 | 165 | ||
| @@ -192,7 +192,7 @@ This is a fine thing to set in your `.emacs' file.") | |||
| 192 | shell-replace-by-expanded-directory | 192 | shell-replace-by-expanded-directory |
| 193 | comint-dynamic-complete-filename) | 193 | comint-dynamic-complete-filename) |
| 194 | "List of functions called to perform completion. | 194 | "List of functions called to perform completion. |
| 195 | This variable is used to initialise `comint-dynamic-complete-functions' in the | 195 | This variable is used to initialize `comint-dynamic-complete-functions' in the |
| 196 | shell buffer. | 196 | shell buffer. |
| 197 | 197 | ||
| 198 | This is a fine thing to set in your `.emacs' file.") | 198 | This is a fine thing to set in your `.emacs' file.") |
| @@ -407,7 +407,7 @@ Variables `comint-completion-autolist', `comint-completion-addsuffix', | |||
| 407 | `comint-completion-recexact' and `comint-completion-fignore' control the | 407 | `comint-completion-recexact' and `comint-completion-fignore' control the |
| 408 | behavior of file name, command name and variable name completion. Variable | 408 | behavior of file name, command name and variable name completion. Variable |
| 409 | `shell-completion-execonly' controls the behavior of command name completion. | 409 | `shell-completion-execonly' controls the behavior of command name completion. |
| 410 | Variable `shell-completion-fignore' is used to initialise the value of | 410 | Variable `shell-completion-fignore' is used to initialize the value of |
| 411 | `comint-completion-fignore'. | 411 | `comint-completion-fignore'. |
| 412 | 412 | ||
| 413 | Variables `comint-input-ring-file-name' and `comint-input-autoexpand' control | 413 | Variables `comint-input-ring-file-name' and `comint-input-autoexpand' control |
| @@ -950,7 +950,7 @@ See `shell-dynamic-complete-filename'. Returns t if successful." | |||
| 950 | (and comint-completion-fignore | 950 | (and comint-completion-fignore |
| 951 | (mapconcat (function (lambda (x) (concat (regexp-quote x) "$"))) | 951 | (mapconcat (function (lambda (x) (concat (regexp-quote x) "$"))) |
| 952 | comint-completion-fignore "\\|"))) | 952 | comint-completion-fignore "\\|"))) |
| 953 | (dir "") (comps-in-dir ()) | 953 | (dir "") (comps-in-dir ()) |
| 954 | (file "") (abs-file-name "") (completions ())) | 954 | (file "") (abs-file-name "") (completions ())) |
| 955 | ;; Go thru each dir in the search path, finding completions. | 955 | ;; Go thru each dir in the search path, finding completions. |
| 956 | (while path-dirs | 956 | (while path-dirs |
diff --git a/lisp/simple.el b/lisp/simple.el index bd2de4121d3..1b5739b0b67 100644 --- a/lisp/simple.el +++ b/lisp/simple.el | |||
| @@ -327,7 +327,8 @@ location." | |||
| 327 | Other major modes are defined by comparison with this one." | 327 | Other major modes are defined by comparison with this one." |
| 328 | (interactive) | 328 | (interactive) |
| 329 | (kill-all-local-variables) | 329 | (kill-all-local-variables) |
| 330 | (run-hooks 'after-change-major-mode-hook)) | 330 | (unless delay-mode-hooks |
| 331 | (run-hooks 'after-change-major-mode-hook))) | ||
| 331 | 332 | ||
| 332 | ;; Making and deleting lines. | 333 | ;; Making and deleting lines. |
| 333 | 334 | ||
| @@ -1287,7 +1288,7 @@ A redo record for ordinary undo maps to the following (earlier) undo.") | |||
| 1287 | 1288 | ||
| 1288 | (defvar pending-undo-list nil | 1289 | (defvar pending-undo-list nil |
| 1289 | "Within a run of consecutive undo commands, list remaining to be undone. | 1290 | "Within a run of consecutive undo commands, list remaining to be undone. |
| 1290 | t if we undid all the way to the end of it.") | 1291 | If t, we undid all the way to the end of it.") |
| 1291 | 1292 | ||
| 1292 | (defun undo (&optional arg) | 1293 | (defun undo (&optional arg) |
| 1293 | "Undo some previous changes. | 1294 | "Undo some previous changes. |
| @@ -1399,16 +1400,16 @@ Contrary to `undo', this will not redo a previous undo." | |||
| 1399 | "Non-nil while performing an undo. | 1400 | "Non-nil while performing an undo. |
| 1400 | Some change-hooks test this variable to do something different.") | 1401 | Some change-hooks test this variable to do something different.") |
| 1401 | 1402 | ||
| 1402 | (defun undo-more (count) | 1403 | (defun undo-more (n) |
| 1403 | "Undo back N undo-boundaries beyond what was already undone recently. | 1404 | "Undo back N undo-boundaries beyond what was already undone recently. |
| 1404 | Call `undo-start' to get ready to undo recent changes, | 1405 | Call `undo-start' to get ready to undo recent changes, |
| 1405 | then call `undo-more' one or more times to undo them." | 1406 | then call `undo-more' one or more times to undo them." |
| 1406 | (or (listp pending-undo-list) | 1407 | (or (listp pending-undo-list) |
| 1407 | (error (format "No further undo information%s" | 1408 | (error (concat "No further undo information" |
| 1408 | (if (and transient-mark-mode mark-active) | 1409 | (and transient-mark-mode mark-active |
| 1409 | " for region" "")))) | 1410 | " for region")))) |
| 1410 | (let ((undo-in-progress t)) | 1411 | (let ((undo-in-progress t)) |
| 1411 | (setq pending-undo-list (primitive-undo count pending-undo-list)) | 1412 | (setq pending-undo-list (primitive-undo n pending-undo-list)) |
| 1412 | (if (null pending-undo-list) | 1413 | (if (null pending-undo-list) |
| 1413 | (setq pending-undo-list t)))) | 1414 | (setq pending-undo-list t)))) |
| 1414 | 1415 | ||
| @@ -4846,7 +4847,7 @@ of the differing parts is, by contrast, slightly highlighted." | |||
| 4846 | (if (minibufferp mainbuf) | 4847 | (if (minibufferp mainbuf) |
| 4847 | (if (and (symbolp minibuffer-completion-table) | 4848 | (if (and (symbolp minibuffer-completion-table) |
| 4848 | (get minibuffer-completion-table 'completion-base-size-function)) | 4849 | (get minibuffer-completion-table 'completion-base-size-function)) |
| 4849 | (setq completion-base-size | 4850 | (setq completion-base-size |
| 4850 | (funcall (get minibuffer-completion-table 'completion-base-size-function))) | 4851 | (funcall (get minibuffer-completion-table 'completion-base-size-function))) |
| 4851 | (setq completion-base-size 0)))) | 4852 | (setq completion-base-size 0)))) |
| 4852 | ;; Put faces on first uncommon characters and common parts. | 4853 | ;; Put faces on first uncommon characters and common parts. |
diff --git a/lisp/smerge-mode.el b/lisp/smerge-mode.el index cf93ad12cd9..55000391777 100644 --- a/lisp/smerge-mode.el +++ b/lisp/smerge-mode.el | |||
| @@ -247,7 +247,7 @@ Can be nil if the style is undecided, or else: | |||
| 247 | 247 | ||
| 248 | (defun smerge-ensure-match (n) | 248 | (defun smerge-ensure-match (n) |
| 249 | (unless (match-end n) | 249 | (unless (match-end n) |
| 250 | (error (format "No `%s'" (aref smerge-match-names n))))) | 250 | (error "No `%s'" (aref smerge-match-names n)))) |
| 251 | 251 | ||
| 252 | (defun smerge-auto-leave () | 252 | (defun smerge-auto-leave () |
| 253 | (when (and smerge-auto-leave | 253 | (when (and smerge-auto-leave |
diff --git a/lisp/startup.el b/lisp/startup.el index 198f59a3888..9bad1262579 100644 --- a/lisp/startup.el +++ b/lisp/startup.el | |||
| @@ -801,6 +801,14 @@ opening the first frame (e.g. open a connection to the server).") | |||
| 801 | ;; the startup message. | 801 | ;; the startup message. |
| 802 | (setq inhibit-startup-message nil) | 802 | (setq inhibit-startup-message nil) |
| 803 | 803 | ||
| 804 | ;; Warn for invalid user name. | ||
| 805 | (and init-file-user | ||
| 806 | (not (file-directory-p (expand-file-name (concat "~" init-file-user)))) | ||
| 807 | (display-warning 'initialization | ||
| 808 | (format "User %s has no home directory" | ||
| 809 | init-file-user) | ||
| 810 | :error)) | ||
| 811 | |||
| 804 | ;; Load that user's init file, or the default one, or none. | 812 | ;; Load that user's init file, or the default one, or none. |
| 805 | (let (debug-on-error-from-init-file | 813 | (let (debug-on-error-from-init-file |
| 806 | debug-on-error-should-be-set | 814 | debug-on-error-should-be-set |
diff --git a/lisp/subr.el b/lisp/subr.el index 2b631b17e20..8a78b6b1326 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -963,36 +963,32 @@ other hooks, such as major mode hooks, can do the job." | |||
| 963 | The test for presence of ELEMENT is done with `equal'. | 963 | The test for presence of ELEMENT is done with `equal'. |
| 964 | 964 | ||
| 965 | The resulting list is reordered so that the elements are in the | 965 | The resulting list is reordered so that the elements are in the |
| 966 | order given by each element's numeric list order. Elements which | 966 | order given by each element's numeric list order. |
| 967 | are not symbols, and symbol elements without a numeric list order | 967 | Elements without a numeric list order are placed at the end of |
| 968 | are placed at the end of the list. | 968 | the list. |
| 969 | 969 | ||
| 970 | If the third optional argument ORDER is non-nil and ELEMENT is | 970 | If the third optional argument ORDER is non-nil, set the |
| 971 | a symbol, set the symbol's list order to the given value. | 971 | element's list order to the given value. |
| 972 | 972 | ||
| 973 | The list order for each symbol is stored in LIST-VAR's | 973 | The list order for each element is stored in LIST-VAR's |
| 974 | `list-order' property. | 974 | `list-order' property. |
| 975 | 975 | ||
| 976 | The return value is the new value of LIST-VAR." | 976 | The return value is the new value of LIST-VAR." |
| 977 | (let* ((ordering (get list-var 'list-order)) | 977 | (let ((ordering (get list-var 'list-order))) |
| 978 | (cur (and (symbolp element) (assq element ordering)))) | 978 | (unless ordering |
| 979 | (put list-var 'list-order | ||
| 980 | (setq ordering (make-hash-table :weakness 'key :test 'eq)))) | ||
| 979 | (when order | 981 | (when order |
| 980 | (unless (symbolp element) | 982 | (puthash element order ordering)) |
| 981 | (error "cannot specify order for non-symbols")) | ||
| 982 | (if cur | ||
| 983 | (setcdr cur order) | ||
| 984 | (setq cur (cons element order)) | ||
| 985 | (setq ordering (cons cur ordering)) | ||
| 986 | (put list-var 'list-order ordering))) | ||
| 987 | (add-to-list list-var element) | 983 | (add-to-list list-var element) |
| 988 | (set list-var (sort (symbol-value list-var) | 984 | (set list-var (sort (symbol-value list-var) |
| 989 | (lambda (a b) | 985 | (lambda (a b) |
| 990 | (let ((oa (and (symbolp a) (assq a ordering))) | 986 | (let ((oa (gethash a ordering)) |
| 991 | (ob (and (symbolp b) (assq b ordering)))) | 987 | (ob (gethash b ordering))) |
| 992 | (cond | 988 | (cond |
| 993 | ((not oa) nil) | 989 | ((not oa) nil) |
| 994 | ((not ob) t) | 990 | ((not ob) t) |
| 995 | (t (< (cdr oa) (cdr ob)))))))))) | 991 | (t (< oa ob))))))))) |
| 996 | 992 | ||
| 997 | 993 | ||
| 998 | ;;; Load history | 994 | ;;; Load history |
diff --git a/lisp/term.el b/lisp/term.el index 00c1083892e..3295c87da14 100644 --- a/lisp/term.el +++ b/lisp/term.el | |||
| @@ -485,7 +485,7 @@ | |||
| 485 | :group 'term) | 485 | :group 'term) |
| 486 | 486 | ||
| 487 | (defvar term-prompt-regexp "^" | 487 | (defvar term-prompt-regexp "^" |
| 488 | "Regexp to recognise prompts in the inferior process. | 488 | "Regexp to recognize prompts in the inferior process. |
| 489 | Defaults to \"^\", the null string at BOL. | 489 | Defaults to \"^\", the null string at BOL. |
| 490 | 490 | ||
| 491 | Good choices: | 491 | Good choices: |
| @@ -499,7 +499,7 @@ Good choices: | |||
| 499 | This is a good thing to set in mode hooks.") | 499 | This is a good thing to set in mode hooks.") |
| 500 | 500 | ||
| 501 | (defvar term-delimiter-argument-list () | 501 | (defvar term-delimiter-argument-list () |
| 502 | "List of characters to recognise as separate arguments in input. | 502 | "List of characters to recognize as separate arguments in input. |
| 503 | Strings comprising a character in this list will separate the arguments | 503 | Strings comprising a character in this list will separate the arguments |
| 504 | surrounding them, and also be regarded as arguments in their own right (unlike | 504 | surrounding them, and also be regarded as arguments in their own right (unlike |
| 505 | whitespace). See `term-arguments'. | 505 | whitespace). See `term-arguments'. |
| @@ -570,8 +570,8 @@ This variable is buffer-local." | |||
| 570 | "Function that submits old text in term mode. | 570 | "Function that submits old text in term mode. |
| 571 | This function is called when return is typed while the point is in old text. | 571 | This function is called when return is typed while the point is in old text. |
| 572 | It returns the text to be submitted as process input. The default is | 572 | It returns the text to be submitted as process input. The default is |
| 573 | term-get-old-input-default, which grabs the current line, and strips off | 573 | `term-get-old-input-default', which grabs the current line, and strips off |
| 574 | leading text matching term-prompt-regexp") | 574 | leading text matching `term-prompt-regexp'.") |
| 575 | 575 | ||
| 576 | (defvar term-dynamic-complete-functions | 576 | (defvar term-dynamic-complete-functions |
| 577 | '(term-replace-by-expanded-history term-dynamic-complete-filename) | 577 | '(term-replace-by-expanded-history term-dynamic-complete-filename) |
| @@ -585,7 +585,7 @@ This is a good thing to set in mode hooks.") | |||
| 585 | (function (lambda (str) (not (string-match "\\`\\s *\\'" str)))) | 585 | (function (lambda (str) (not (string-match "\\`\\s *\\'" str)))) |
| 586 | "Predicate for filtering additions to input history. | 586 | "Predicate for filtering additions to input history. |
| 587 | Only inputs answering true to this function are saved on the input | 587 | Only inputs answering true to this function are saved on the input |
| 588 | history list. Default is to save anything that isn't all whitespace") | 588 | history list. Default is to save anything that isn't all whitespace.") |
| 589 | 589 | ||
| 590 | (defvar term-input-filter-functions '() | 590 | (defvar term-input-filter-functions '() |
| 591 | "Functions to call before input is sent to the process. | 591 | "Functions to call before input is sent to the process. |
| @@ -595,9 +595,9 @@ This variable is buffer-local.") | |||
| 595 | 595 | ||
| 596 | (defvar term-input-sender (function term-simple-send) | 596 | (defvar term-input-sender (function term-simple-send) |
| 597 | "Function to actually send to PROCESS the STRING submitted by user. | 597 | "Function to actually send to PROCESS the STRING submitted by user. |
| 598 | Usually this is just 'term-simple-send, but if your mode needs to | 598 | Usually this is just `term-simple-send', but if your mode needs to |
| 599 | massage the input string, this is your hook. This is called from | 599 | massage the input string, this is your hook. This is called from |
| 600 | the user command term-send-input. `term-simple-send' just sends | 600 | the user command `term-send-input'. `term-simple-send' just sends |
| 601 | the string plus a newline.") | 601 | the string plus a newline.") |
| 602 | 602 | ||
| 603 | (defcustom term-eol-on-send t | 603 | (defcustom term-eol-on-send t |
| @@ -607,16 +607,16 @@ See `term-send-input'." | |||
| 607 | :group 'term) | 607 | :group 'term) |
| 608 | 608 | ||
| 609 | (defcustom term-mode-hook '() | 609 | (defcustom term-mode-hook '() |
| 610 | "Called upon entry into term-mode | 610 | "Called upon entry into term mode. |
| 611 | This is run before the process is cranked up." | 611 | This is run before the process is cranked up." |
| 612 | :type 'hook | 612 | :type 'hook |
| 613 | :group 'term) | 613 | :group 'term) |
| 614 | 614 | ||
| 615 | (defcustom term-exec-hook '() | 615 | (defcustom term-exec-hook '() |
| 616 | "Called each time a process is exec'd by term-exec. | 616 | "Called each time a process is exec'd by `term-exec'. |
| 617 | This is called after the process is cranked up. It is useful for things that | 617 | This is called after the process is cranked up. It is useful for things that |
| 618 | must be done each time a process is executed in a term-mode buffer (e.g., | 618 | must be done each time a process is executed in a term mode buffer (e.g., |
| 619 | \(process-kill-without-query)). In contrast, the term-mode-hook is only | 619 | `process-kill-without-query'). In contrast, `term-mode-hook' is only |
| 620 | executed once when the buffer is created." | 620 | executed once when the buffer is created." |
| 621 | :type 'hook | 621 | :type 'hook |
| 622 | :group 'term) | 622 | :group 'term) |
| @@ -625,7 +625,7 @@ executed once when the buffer is created." | |||
| 625 | (defvar term-raw-map nil | 625 | (defvar term-raw-map nil |
| 626 | "Keyboard map for sending characters directly to the inferior process.") | 626 | "Keyboard map for sending characters directly to the inferior process.") |
| 627 | (defvar term-escape-char nil | 627 | (defvar term-escape-char nil |
| 628 | "Escape character for char-sub-mode of term mode. | 628 | "Escape character for char sub-mode of term mode. |
| 629 | Do not change it directly; use `term-set-escape-char' instead.") | 629 | Do not change it directly; use `term-set-escape-char' instead.") |
| 630 | (defvar term-raw-escape-map nil) | 630 | (defvar term-raw-escape-map nil) |
| 631 | 631 | ||
| @@ -3951,9 +3951,9 @@ See `term-dynamic-complete-filename'. Returns t if successful." | |||
| 3951 | 3951 | ||
| 3952 | (defun term-replace-by-expanded-filename () | 3952 | (defun term-replace-by-expanded-filename () |
| 3953 | "Dynamically expand and complete the filename at point. | 3953 | "Dynamically expand and complete the filename at point. |
| 3954 | Replace the filename with an expanded, canonicalised and completed replacement. | 3954 | Replace the filename with an expanded, canonicalized and completed replacement. |
| 3955 | \"Expanded\" means environment variables (e.g., $HOME) and `~'s are replaced | 3955 | \"Expanded\" means environment variables (e.g., $HOME) and `~'s are replaced |
| 3956 | with the corresponding directories. \"Canonicalised\" means `..' and `.' are | 3956 | with the corresponding directories. \"Canonicalized\" means `..' and `.' are |
| 3957 | removed, and the filename is made absolute instead of relative. For expansion | 3957 | removed, and the filename is made absolute instead of relative. For expansion |
| 3958 | see `expand-file-name' and `substitute-in-file-name'. For completion see | 3958 | see `expand-file-name' and `substitute-in-file-name'. For completion see |
| 3959 | `term-dynamic-complete-filename'." | 3959 | `term-dynamic-complete-filename'." |
diff --git a/lisp/term/linux.el b/lisp/term/linux.el index 80bfe83a4eb..71b9e0d4bcf 100644 --- a/lisp/term/linux.el +++ b/lisp/term/linux.el | |||
| @@ -4,6 +4,9 @@ | |||
| 4 | (unless (terminal-coding-system) | 4 | (unless (terminal-coding-system) |
| 5 | (set-terminal-coding-system 'iso-latin-1)) | 5 | (set-terminal-coding-system 'iso-latin-1)) |
| 6 | 6 | ||
| 7 | ;; It can't really display underlines. | ||
| 8 | (tty-no-underline) | ||
| 9 | |||
| 7 | ;; Make Latin-1 input characters work, too. | 10 | ;; Make Latin-1 input characters work, too. |
| 8 | ;; Meta will continue to work, because the kernel | 11 | ;; Meta will continue to work, because the kernel |
| 9 | ;; turns that into Escape. | 12 | ;; turns that into Escape. |
diff --git a/lisp/textmodes/bibtex.el b/lisp/textmodes/bibtex.el index ecaaf76639a..5f4a83b07eb 100644 --- a/lisp/textmodes/bibtex.el +++ b/lisp/textmodes/bibtex.el | |||
| @@ -4277,9 +4277,11 @@ signaled if point is outside key or BibTeX field." | |||
| 4277 | (bibtex-move-outside-of-entry) | 4277 | (bibtex-move-outside-of-entry) |
| 4278 | (indent-to-column bibtex-entry-offset) | 4278 | (indent-to-column bibtex-entry-offset) |
| 4279 | (insert "@Preamble" | 4279 | (insert "@Preamble" |
| 4280 | (bibtex-entry-left-delimiter)) | 4280 | (bibtex-entry-left-delimiter) |
| 4281 | (bibtex-field-left-delimiter)) | ||
| 4281 | (let ((endpos (point))) | 4282 | (let ((endpos (point))) |
| 4282 | (insert (bibtex-entry-right-delimiter) | 4283 | (insert (bibtex-entry-right-delimiter) |
| 4284 | (bibtex-field-right-delimiter) | ||
| 4283 | "\n") | 4285 | "\n") |
| 4284 | (goto-char endpos))) | 4286 | (goto-char endpos))) |
| 4285 | 4287 | ||
diff --git a/lisp/textmodes/sgml-mode.el b/lisp/textmodes/sgml-mode.el index 7e1167a9396..8e83a8fe90f 100644 --- a/lisp/textmodes/sgml-mode.el +++ b/lisp/textmodes/sgml-mode.el | |||
| @@ -1386,7 +1386,7 @@ LCON is the lexical context, if any." | |||
| 1386 | (* sgml-basic-offset (length context))))))) | 1386 | (* sgml-basic-offset (length context))))))) |
| 1387 | 1387 | ||
| 1388 | (otherwise | 1388 | (otherwise |
| 1389 | (error "Unrecognised context %s" (car lcon))) | 1389 | (error "Unrecognized context %s" (car lcon))) |
| 1390 | 1390 | ||
| 1391 | )) | 1391 | )) |
| 1392 | 1392 | ||
| @@ -1721,7 +1721,7 @@ This takes effect when first loading the library.") | |||
| 1721 | ("dir" . "Directory list (obsolete)") | 1721 | ("dir" . "Directory list (obsolete)") |
| 1722 | ("dl" . "Definition list") | 1722 | ("dl" . "Definition list") |
| 1723 | ("dt" . "Term to be definined") | 1723 | ("dt" . "Term to be definined") |
| 1724 | ("em" . "Emphasised") | 1724 | ("em" . "Emphasized") |
| 1725 | ("embed" . "Embedded data in foreign format") | 1725 | ("embed" . "Embedded data in foreign format") |
| 1726 | ("fig" . "Figure") | 1726 | ("fig" . "Figure") |
| 1727 | ("figa" . "Figure anchor") | 1727 | ("figa" . "Figure anchor") |
diff --git a/lisp/tooltip.el b/lisp/tooltip.el index 904f2bf8770..cb668f9cd00 100644 --- a/lisp/tooltip.el +++ b/lisp/tooltip.el | |||
| @@ -119,11 +119,6 @@ position to pop up the tooltip." | |||
| 119 | :tag "Use echo area" | 119 | :tag "Use echo area" |
| 120 | :group 'tooltip) | 120 | :group 'tooltip) |
| 121 | 121 | ||
| 122 | (make-obsolete-variable 'tooltip-use-echo-area | ||
| 123 | "To display help tooltips in the echo area turn tooltip-mode off. | ||
| 124 | To display GUD tooltips in the echo area turn gud-tooltip-mode on and set | ||
| 125 | gud-tooltip-echo-area to t." "22.1") | ||
| 126 | |||
| 127 | 122 | ||
| 128 | ;;; Variables that are not customizable. | 123 | ;;; Variables that are not customizable. |
| 129 | 124 | ||
| @@ -201,12 +196,12 @@ With ARG, turn tooltip mode on if and only if ARG is positive." | |||
| 201 | (setq tooltip-timeout-id nil))) | 196 | (setq tooltip-timeout-id nil))) |
| 202 | 197 | ||
| 203 | (defun tooltip-start-delayed-tip () | 198 | (defun tooltip-start-delayed-tip () |
| 204 | "Add a one-shot timeout to call function tooltip-timeout." | 199 | "Add a one-shot timeout to call function `tooltip-timeout'." |
| 205 | (setq tooltip-timeout-id | 200 | (setq tooltip-timeout-id |
| 206 | (add-timeout (tooltip-delay) 'tooltip-timeout nil))) | 201 | (add-timeout (tooltip-delay) 'tooltip-timeout nil))) |
| 207 | 202 | ||
| 208 | (defun tooltip-timeout (object) | 203 | (defun tooltip-timeout (object) |
| 209 | "Function called when timer with id tooltip-timeout-id fires." | 204 | "Function called when timer with id `tooltip-timeout-id' fires." |
| 210 | (run-hook-with-args-until-success 'tooltip-hook | 205 | (run-hook-with-args-until-success 'tooltip-hook |
| 211 | tooltip-last-mouse-motion-event)) | 206 | tooltip-last-mouse-motion-event)) |
| 212 | 207 | ||
| @@ -301,8 +296,8 @@ where the mouse is." | |||
| 301 | 296 | ||
| 302 | (defun tooltip-process-prompt-regexp (process) | 297 | (defun tooltip-process-prompt-regexp (process) |
| 303 | "Return regexp matching the prompt of PROCESS at the end of a string. | 298 | "Return regexp matching the prompt of PROCESS at the end of a string. |
| 304 | The prompt is taken from the value of COMINT-PROMPT-REGEXP in the buffer | 299 | The prompt is taken from the value of `comint-prompt-regexp' in |
| 305 | of PROCESS." | 300 | the buffer of PROCESS." |
| 306 | (let ((prompt-regexp (save-excursion | 301 | (let ((prompt-regexp (save-excursion |
| 307 | (set-buffer (process-buffer process)) | 302 | (set-buffer (process-buffer process)) |
| 308 | comint-prompt-regexp))) | 303 | comint-prompt-regexp))) |
| @@ -349,7 +344,7 @@ MSG is either a help string to display, or nil to cancel the display." | |||
| 349 | (defun tooltip-help-tips (event) | 344 | (defun tooltip-help-tips (event) |
| 350 | "Hook function to display a help tooltip. | 345 | "Hook function to display a help tooltip. |
| 351 | This is installed on the hook `tooltip-hook', which is run when | 346 | This is installed on the hook `tooltip-hook', which is run when |
| 352 | the timer with ID `tooltip-timeout-id' fires. | 347 | the timer with id `tooltip-timeout-id' fires. |
| 353 | Value is non-nil if this function handled the tip." | 348 | Value is non-nil if this function handled the tip." |
| 354 | (when (stringp tooltip-help-message) | 349 | (when (stringp tooltip-help-message) |
| 355 | (tooltip-show tooltip-help-message tooltip-use-echo-area) | 350 | (tooltip-show tooltip-help-message tooltip-use-echo-area) |
diff --git a/lisp/tree-widget.el b/lisp/tree-widget.el index 2a20e708729..93b466194a1 100644 --- a/lisp/tree-widget.el +++ b/lisp/tree-widget.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; tree-widget.el --- Tree widget | 1 | ;;; tree-widget.el --- Tree widget |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2004, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: David Ponce <david@dponce.com> | 5 | ;; Author: David Ponce <david@dponce.com> |
| 6 | ;; Maintainer: David Ponce <david@dponce.com> | 6 | ;; Maintainer: David Ponce <david@dponce.com> |
| @@ -174,7 +174,7 @@ no-handle an invisible handle | |||
| 174 | 174 | ||
| 175 | ;;; Image support | 175 | ;;; Image support |
| 176 | ;; | 176 | ;; |
| 177 | (eval-when-compile ;; GNU Emacs/XEmacs compatibility stuff | 177 | (eval-and-compile ;; GNU Emacs/XEmacs compatibility stuff |
| 178 | (cond | 178 | (cond |
| 179 | ;; XEmacs | 179 | ;; XEmacs |
| 180 | ((featurep 'xemacs) | 180 | ((featurep 'xemacs) |
| @@ -469,21 +469,6 @@ found." | |||
| 469 | 'widget-type) | 469 | 'widget-type) |
| 470 | property)) | 470 | property)) |
| 471 | 471 | ||
| 472 | (defsubst tree-widget-super-format-handler (widget escape) | ||
| 473 | "Call WIDGET's inherited format handler to process ESCAPE character." | ||
| 474 | (let ((handler (tree-widget-get-super widget :format-handler))) | ||
| 475 | (and handler (funcall handler widget escape)))) | ||
| 476 | |||
| 477 | (defun tree-widget-format-handler (widget escape) | ||
| 478 | "For WIDGET, signal that the %p format template is obsolete. | ||
| 479 | Call WIDGET's inherited format handler to process other ESCAPE | ||
| 480 | characters." | ||
| 481 | (if (eq escape ?p) | ||
| 482 | (message "The %%p format template is obsolete and ignored") | ||
| 483 | (tree-widget-super-format-handler widget escape))) | ||
| 484 | (make-obsolete 'tree-widget-format-handler | ||
| 485 | 'tree-widget-super-format-handler) | ||
| 486 | |||
| 487 | (defsubst tree-widget-node (widget) | 472 | (defsubst tree-widget-node (widget) |
| 488 | "Return the tree WIDGET :node value. | 473 | "Return the tree WIDGET :node value. |
| 489 | If not found setup a default 'item' widget." | 474 | If not found setup a default 'item' widget." |
| @@ -630,26 +615,28 @@ IGNORE other arguments." | |||
| 630 | (let* ((widget-image-enable (tree-widget-use-image-p)) ; Emacs | 615 | (let* ((widget-image-enable (tree-widget-use-image-p)) ; Emacs |
| 631 | (widget-glyph-enable widget-image-enable) ; XEmacs | 616 | (widget-glyph-enable widget-image-enable) ; XEmacs |
| 632 | (node (tree-widget-node tree)) | 617 | (node (tree-widget-node tree)) |
| 618 | (flags (widget-get tree :tree-widget--guide-flags)) | ||
| 619 | (indent (widget-get tree :indent)) | ||
| 633 | children buttons) | 620 | children buttons) |
| 621 | (and indent (not (widget-get tree :parent)) | ||
| 622 | (insert-char ?\ indent)) | ||
| 634 | (if (widget-get tree :open) | 623 | (if (widget-get tree :open) |
| 635 | ;;;; Unfolded node. | 624 | ;;;; Unfolded node. |
| 636 | (let* ((args (widget-get tree :args)) | 625 | (let ((args (widget-get tree :args)) |
| 637 | (dynargs (widget-get tree :dynargs)) | 626 | (dynargs (widget-get tree :dynargs)) |
| 638 | (flags (widget-get tree :tree-widget--guide-flags)) | 627 | (guide (tree-widget-guide tree)) |
| 639 | (rflags (reverse flags)) | 628 | (noguide (tree-widget-no-guide tree)) |
| 640 | (guide (tree-widget-guide tree)) | 629 | (endguide (tree-widget-end-guide tree)) |
| 641 | (noguide (tree-widget-no-guide tree)) | 630 | (handle (tree-widget-handle tree)) |
| 642 | (endguide (tree-widget-end-guide tree)) | 631 | (nohandle (tree-widget-no-handle tree)) |
| 643 | (handle (tree-widget-handle tree)) | 632 | ;; Lookup for images and set widgets' tag-glyphs here, |
| 644 | (nohandle (tree-widget-no-handle tree)) | 633 | ;; to allow to dynamically change the image theme. |
| 645 | ;; Lookup for images and set widgets' tag-glyphs here, | 634 | (guidi (tree-widget-find-image "guide")) |
| 646 | ;; to allow to dynamically change the image theme. | 635 | (noguidi (tree-widget-find-image "no-guide")) |
| 647 | (guidi (tree-widget-find-image "guide")) | 636 | (endguidi (tree-widget-find-image "end-guide")) |
| 648 | (noguidi (tree-widget-find-image "no-guide")) | 637 | (handli (tree-widget-find-image "handle")) |
| 649 | (endguidi (tree-widget-find-image "end-guide")) | 638 | (nohandli (tree-widget-find-image "no-handle")) |
| 650 | (handli (tree-widget-find-image "handle")) | 639 | child) |
| 651 | (nohandli (tree-widget-find-image "no-handle")) | ||
| 652 | child) | ||
| 653 | (when dynargs | 640 | (when dynargs |
| 654 | ;; Request the definition of dynamic children | 641 | ;; Request the definition of dynamic children |
| 655 | (setq dynargs (funcall dynargs tree)) | 642 | (setq dynargs (funcall dynargs tree)) |
| @@ -671,8 +658,9 @@ IGNORE other arguments." | |||
| 671 | (while args | 658 | (while args |
| 672 | (setq child (car args) | 659 | (setq child (car args) |
| 673 | args (cdr args)) | 660 | args (cdr args)) |
| 661 | (and indent (insert-char ?\ indent)) | ||
| 674 | ;; Insert guide lines elements | 662 | ;; Insert guide lines elements |
| 675 | (dolist (f rflags) | 663 | (dolist (f (reverse flags)) |
| 676 | (widget-create-child-and-convert | 664 | (widget-create-child-and-convert |
| 677 | tree (if f guide noguide) | 665 | tree (if f guide noguide) |
| 678 | :tag-glyph (if f guidi noguidi)) | 666 | :tag-glyph (if f guidi noguidi)) |
diff --git a/lisp/woman.el b/lisp/woman.el index de7d557f856..b1f8581ab9c 100644 --- a/lisp/woman.el +++ b/lisp/woman.el | |||
| @@ -828,7 +828,7 @@ Heading emboldening is NOT standard `man' behavior." | |||
| 828 | :group 'woman-formatting) | 828 | :group 'woman-formatting) |
| 829 | 829 | ||
| 830 | (defcustom woman-ignore t | 830 | (defcustom woman-ignore t |
| 831 | "*If non-nil then unrecognised requests etc. are ignored. Default is t. | 831 | "*If non-nil then unrecognized requests etc. are ignored. Default is t. |
| 832 | This gives the standard ?roff behavior. If nil then they are left in | 832 | This gives the standard ?roff behavior. If nil then they are left in |
| 833 | the buffer, which may aid debugging." | 833 | the buffer, which may aid debugging." |
| 834 | :type 'boolean | 834 | :type 'boolean |
| @@ -2504,7 +2504,7 @@ REQUEST is the invoking directive without the leading dot." | |||
| 2504 | (setq c (memq (following-char) woman-if-conditions-true))) | 2504 | (setq c (memq (following-char) woman-if-conditions-true))) |
| 2505 | ;; Unrecognised letter so reject: | 2505 | ;; Unrecognised letter so reject: |
| 2506 | ((looking-at "[A-Za-z]") (setq c nil) | 2506 | ((looking-at "[A-Za-z]") (setq c nil) |
| 2507 | (WoMan-warn "%s %s -- unrecognised condition name rejected!" | 2507 | (WoMan-warn "%s %s -- unrecognized condition name rejected!" |
| 2508 | request (match-string 0))) | 2508 | request (match-string 0))) |
| 2509 | ;; Accept strings if identical: | 2509 | ;; Accept strings if identical: |
| 2510 | ((save-restriction | 2510 | ((save-restriction |
diff --git a/lispref/ChangeLog b/lispref/ChangeLog index c565e8bdb5f..50bfc91479f 100644 --- a/lispref/ChangeLog +++ b/lispref/ChangeLog | |||
| @@ -1,3 +1,75 @@ | |||
| 1 | 2005-06-19 Luc Teirlinck <teirllm@auburn.edu> | ||
| 2 | |||
| 3 | * lists.texi (Rings): Various minor clarifications and corrections. | ||
| 4 | |||
| 5 | 2005-06-18 Richard M. Stallman <rms@gnu.org> | ||
| 6 | |||
| 7 | * functions.texi (Obsolete Functions): Simplify. | ||
| 8 | |||
| 9 | * variables.texi (Variable Aliases): Simplify. | ||
| 10 | |||
| 11 | * anti.texi, backups.texi, compile.texi, customization.texi: | ||
| 12 | * debugging.texi, display.texi, edebug.texi, errors.texi, frames.texi: | ||
| 13 | * functions.texi, help.texi, keymaps.texi, modes.texi, nonascii.texi: | ||
| 14 | * os.texi, processes.texi, searching.texi, strings.texi, text.texi: | ||
| 15 | * variables.texi: Fix formatting ugliness. | ||
| 16 | |||
| 17 | * elisp.texi: Add links to Rings and Byte Packing. | ||
| 18 | Update version and copyright years. | ||
| 19 | |||
| 20 | * minibuf.texi: Fix formatting ugliness. | ||
| 21 | (Completion Commands): Move keymap vars to the end | ||
| 22 | and vars completing-read binds to the top. | ||
| 23 | |||
| 24 | 2005-06-17 Luc Teirlinck <teirllm@auburn.edu> | ||
| 25 | |||
| 26 | * processes.texi: Fix typos. | ||
| 27 | (Bindat Spec): Correct Texinfo error. | ||
| 28 | (Byte Packing): Fix ungrammatical sentence. | ||
| 29 | |||
| 30 | 2005-06-17 Thien-Thi Nguyen <ttn@gnu.org> | ||
| 31 | |||
| 32 | * lists.texi (Rings): New node. | ||
| 33 | (Lists): Add it to menu. | ||
| 34 | |||
| 35 | * processes.texi (Byte Packing): New node. | ||
| 36 | (Processes): Add it to menu. | ||
| 37 | |||
| 38 | 2005-06-17 Richard M. Stallman <rms@gnu.org> | ||
| 39 | |||
| 40 | * syntax.texi (Parsing Expressions): Fix texinfo usage. | ||
| 41 | |||
| 42 | * help.texi (Documentation Basics): Explain the xref to | ||
| 43 | Documentation Tips. | ||
| 44 | |||
| 45 | * debugging.texi (Debugger Commands): Minor fix. | ||
| 46 | |||
| 47 | 2005-06-16 Luc Teirlinck <teirllm@auburn.edu> | ||
| 48 | |||
| 49 | * edebug.texi (Instrumenting): Eliminate duplicate link. | ||
| 50 | (Specification List): Replace references to "below", referring to | ||
| 51 | a later node, with one @ref to that node. | ||
| 52 | |||
| 53 | * os.texi (Timers): Timers should save and restore the match data | ||
| 54 | if they change it. | ||
| 55 | |||
| 56 | * debugging.texi (Debugger Commands): Mention that the Lisp | ||
| 57 | debugger can not step through primitive functions. | ||
| 58 | |||
| 59 | 2005-06-16 Juanma Barranquero <lekktu@gmail.com> | ||
| 60 | |||
| 61 | * functions.texi (Obsolete Functions): Update argument names of | ||
| 62 | `make-obsolete' and `define-obsolete-function-alias'. | ||
| 63 | |||
| 64 | * variables.texi (Variable Aliases): Update argument names of | ||
| 65 | `defvaralias', `make-obsolete-variable' and | ||
| 66 | `define-obsolete-variable-alias'. | ||
| 67 | |||
| 68 | 2005-06-15 Kim F. Storm <storm@cua.dk> | ||
| 69 | |||
| 70 | * searching.texi (Entire Match Data): Rephrase warnings about | ||
| 71 | evaporate arg to match-data and set-match-data. | ||
| 72 | |||
| 1 | 2005-06-14 Luc Teirlinck <teirllm@auburn.edu> | 73 | 2005-06-14 Luc Teirlinck <teirllm@auburn.edu> |
| 2 | 74 | ||
| 3 | * elisp.texi (Top): Update detailed menu. | 75 | * elisp.texi (Top): Update detailed menu. |
| @@ -50,7 +122,7 @@ | |||
| 50 | 122 | ||
| 51 | 2005-06-10 Luc Teirlinck <teirllm@auburn.edu> | 123 | 2005-06-10 Luc Teirlinck <teirllm@auburn.edu> |
| 52 | 124 | ||
| 53 | * syntax.texi (Parsing Exprssions): Fix Texinfo error. | 125 | * syntax.texi (Parsing Expressions): Fix Texinfo error. |
| 54 | 126 | ||
| 55 | 2005-06-10 Stefan Monnier <monnier@iro.umontreal.ca> | 127 | 2005-06-10 Stefan Monnier <monnier@iro.umontreal.ca> |
| 56 | 128 | ||
diff --git a/lispref/anti.texi b/lispref/anti.texi index 46375f3f157..c7a72f04df8 100644 --- a/lispref/anti.texi +++ b/lispref/anti.texi | |||
| @@ -164,9 +164,10 @@ the sentinel. | |||
| 164 | @item | 164 | @item |
| 165 | Many programming shortcuts have been deleted, to provide you with the | 165 | Many programming shortcuts have been deleted, to provide you with the |
| 166 | enjoyment of ``rolling your own''. The macros @code{while-no-input}, | 166 | enjoyment of ``rolling your own''. The macros @code{while-no-input}, |
| 167 | @code{with-local-quit}, @code{with-selected-window}, | 167 | @code{with-local-quit}, and @code{with-selected-window}, along with |
| 168 | @code{dynamic-completion-table}, and @code{lazy-completion-table} no | 168 | @code{dynamic-completion-table} and @code{lazy-completion-table} no |
| 169 | longer exist. Also, there are no built-in progress reporters. | 169 | longer exist. Also, there are no built-in progress reporters; |
| 170 | with Emacs, you can take progress for granted. | ||
| 170 | 171 | ||
| 171 | @item | 172 | @item |
| 172 | Variable aliases are no longer supported. Aliases are for functions, | 173 | Variable aliases are no longer supported. Aliases are for functions, |
diff --git a/lispref/backups.texi b/lispref/backups.texi index 8db24665a54..1ba7ed1b931 100644 --- a/lispref/backups.texi +++ b/lispref/backups.texi | |||
| @@ -589,10 +589,10 @@ This function auto-saves all buffers that need to be auto-saved. It | |||
| 589 | saves all buffers for which auto-saving is enabled and that have been | 589 | saves all buffers for which auto-saving is enabled and that have been |
| 590 | changed since the previous auto-save. | 590 | changed since the previous auto-save. |
| 591 | 591 | ||
| 592 | Normally, if any buffers are auto-saved, a message that says | 592 | If any buffers are auto-saved, @code{do-auto-save} normally displays a |
| 593 | @samp{Auto-saving...} is displayed in the echo area while auto-saving is | 593 | message saying @samp{Auto-saving...} in the echo area while |
| 594 | going on. However, if @var{no-message} is non-@code{nil}, the message | 594 | auto-saving is going on. However, if @var{no-message} is |
| 595 | is inhibited. | 595 | non-@code{nil}, the message is inhibited. |
| 596 | 596 | ||
| 597 | If @var{current-only} is non-@code{nil}, only the current buffer | 597 | If @var{current-only} is non-@code{nil}, only the current buffer |
| 598 | is auto-saved. | 598 | is auto-saved. |
diff --git a/lispref/compile.texi b/lispref/compile.texi index 91c0661a99e..951a090e0da 100644 --- a/lispref/compile.texi +++ b/lispref/compile.texi | |||
| @@ -426,7 +426,7 @@ to what @code{eval-when-compile} does. | |||
| 426 | @section Compiler Errors | 426 | @section Compiler Errors |
| 427 | @cindex compiler errors | 427 | @cindex compiler errors |
| 428 | 428 | ||
| 429 | Byte compilation writes errors and warnings into the buffer | 429 | Byte compilation outputs all errors and warnings into the buffer |
| 430 | @samp{*Compile-Log*}. The messages include file names and line | 430 | @samp{*Compile-Log*}. The messages include file names and line |
| 431 | numbers that identify the location of the problem. The usual Emacs | 431 | numbers that identify the location of the problem. The usual Emacs |
| 432 | commands for operating on compiler diagnostics work properly on | 432 | commands for operating on compiler diagnostics work properly on |
diff --git a/lispref/customize.texi b/lispref/customize.texi index 53c9fa92c32..baaceae47f0 100644 --- a/lispref/customize.texi +++ b/lispref/customize.texi | |||
| @@ -658,7 +658,8 @@ means you should always list the most specific types first, and the | |||
| 658 | most general last. Here's an example of proper usage: | 658 | most general last. Here's an example of proper usage: |
| 659 | 659 | ||
| 660 | @example | 660 | @example |
| 661 | (choice (const :tag "Off" nil) symbol (sexp :tag "Other")) | 661 | (choice (const :tag "Off" nil) |
| 662 | symbol (sexp :tag "Other")) | ||
| 662 | @end example | 663 | @end example |
| 663 | 664 | ||
| 664 | @noindent | 665 | @noindent |
diff --git a/lispref/debugging.texi b/lispref/debugging.texi index 739dd1fe298..66663aad131 100644 --- a/lispref/debugging.texi +++ b/lispref/debugging.texi | |||
| @@ -350,7 +350,8 @@ structures of an interpreted function, but cannot do so in a | |||
| 350 | byte-compiled function. If you would like to step through a | 350 | byte-compiled function. If you would like to step through a |
| 351 | byte-compiled function, replace it with an interpreted definition of | 351 | byte-compiled function, replace it with an interpreted definition of |
| 352 | the same function. (To do this, visit the source for the function and | 352 | the same function. (To do this, visit the source for the function and |
| 353 | type @kbd{C-M-x} on its definition.) | 353 | type @kbd{C-M-x} on its definition.) You cannot use the Lisp debugger |
| 354 | to step through a primitive function. | ||
| 354 | 355 | ||
| 355 | Here is a list of Debugger mode commands: | 356 | Here is a list of Debugger mode commands: |
| 356 | 357 | ||
| @@ -470,15 +471,15 @@ entered--entering a function:} as a line of text at the top of the | |||
| 470 | buffer. | 471 | buffer. |
| 471 | 472 | ||
| 472 | @item debug | 473 | @item debug |
| 473 | @code{debug} as first argument indicates a call to @code{debug} | 474 | @code{debug} as first argument means @code{debug} was called because |
| 474 | because of entry to a function that was set to debug on entry. The | 475 | of entry to a function that was set to debug on entry. The debugger |
| 475 | debugger displays @samp{Debugger entered--entering a function:}, just | 476 | displays the string @samp{Debugger entered--entering a function:}, |
| 476 | as in the @code{lambda} case. It also marks the stack frame for that | 477 | just as in the @code{lambda} case. It also marks the stack frame for |
| 477 | function so that it will invoke the debugger when exited. | 478 | that function so that it will invoke the debugger when exited. |
| 478 | 479 | ||
| 479 | @item t | 480 | @item t |
| 480 | When the first argument is @code{t}, this indicates a call to | 481 | When the first argument is @code{t}, this indicates a call to |
| 481 | @code{debug} due to evaluation of a list form when | 482 | @code{debug} due to evaluation of a function call form when |
| 482 | @code{debug-on-next-call} is non-@code{nil}. The debugger displays | 483 | @code{debug-on-next-call} is non-@code{nil}. The debugger displays |
| 483 | @samp{Debugger entered--beginning evaluation of function call form:} | 484 | @samp{Debugger entered--beginning evaluation of function call form:} |
| 484 | as the top line in the buffer. | 485 | as the top line in the buffer. |
diff --git a/lispref/display.texi b/lispref/display.texi index 87520fb4d4f..930f8aa31bc 100644 --- a/lispref/display.texi +++ b/lispref/display.texi | |||
| @@ -547,15 +547,15 @@ remaining time and clearly see that Emacs is busy working, not hung. | |||
| 547 | reporting operation progress. Here is a working example that does | 547 | reporting operation progress. Here is a working example that does |
| 548 | nothing useful: | 548 | nothing useful: |
| 549 | 549 | ||
| 550 | @example | 550 | @smallexample |
| 551 | (let ((progress-reporter | 551 | (let ((progress-reporter |
| 552 | (make-progress-reporter "Collecting some mana for Emacs..." | 552 | (make-progress-reporter "Collecting mana for Emacs..." |
| 553 | 0 500))) | 553 | 0 500))) |
| 554 | (dotimes (k 500) | 554 | (dotimes (k 500) |
| 555 | (sit-for 0.01) | 555 | (sit-for 0.01) |
| 556 | (progress-reporter-update progress-reporter k)) | 556 | (progress-reporter-update progress-reporter k)) |
| 557 | (progress-reporter-done progress-reporter)) | 557 | (progress-reporter-done progress-reporter)) |
| 558 | @end example | 558 | @end smallexample |
| 559 | 559 | ||
| 560 | @defun make-progress-reporter message min-value max-value &optional current-value min-change min-time | 560 | @defun make-progress-reporter message min-value max-value &optional current-value min-change min-time |
| 561 | This function creates and returns a @dfn{progress reporter}---an | 561 | This function creates and returns a @dfn{progress reporter}---an |
| @@ -1296,8 +1296,8 @@ A cons cell of the form @code{(foreground-color . @var{color-name})} or | |||
| 1296 | @code{(background-color . @var{color-name})}. These elements specify | 1296 | @code{(background-color . @var{color-name})}. These elements specify |
| 1297 | just the foreground color or just the background color. | 1297 | just the foreground color or just the background color. |
| 1298 | 1298 | ||
| 1299 | @code{(foreground-color . @var{color-name})} is equivalent to | 1299 | @code{(foreground-color . @var{color-name})} has the same effect as |
| 1300 | @code{(:foreground @var{color-name})}, and likewise for the background. | 1300 | @code{(:foreground @var{color-name})}; likewise for the background. |
| 1301 | @end itemize | 1301 | @end itemize |
| 1302 | 1302 | ||
| 1303 | @item mouse-face | 1303 | @item mouse-face |
| @@ -2757,10 +2757,9 @@ For instance, this changes the default fontset to use a font of which | |||
| 2757 | registry name is @samp{JISX0208.1983} for all characters belonging to | 2757 | registry name is @samp{JISX0208.1983} for all characters belonging to |
| 2758 | the charset @code{japanese-jisx0208}. | 2758 | the charset @code{japanese-jisx0208}. |
| 2759 | 2759 | ||
| 2760 | @example | 2760 | @smallexample |
| 2761 | (set-fontset-font nil 'japanese-jisx0208 '(nil . "JISX0208.1983")) | 2761 | (set-fontset-font nil 'japanese-jisx0208 '(nil . "JISX0208.1983")) |
| 2762 | @end example | 2762 | @end smallexample |
| 2763 | |||
| 2764 | @end defun | 2763 | @end defun |
| 2765 | 2764 | ||
| 2766 | @defun char-displayable-p char | 2765 | @defun char-displayable-p char |
| @@ -3137,7 +3136,7 @@ single unit. By contrast, characters that have similar but distinct | |||
| 3137 | Lisp objects as their @code{display} properties are handled | 3136 | Lisp objects as their @code{display} properties are handled |
| 3138 | separately. Here's a function that illustrates this point: | 3137 | separately. Here's a function that illustrates this point: |
| 3139 | 3138 | ||
| 3140 | @example | 3139 | @smallexample |
| 3141 | (defun foo () | 3140 | (defun foo () |
| 3142 | (goto-char (point-min)) | 3141 | (goto-char (point-min)) |
| 3143 | (dotimes (i 5) | 3142 | (dotimes (i 5) |
| @@ -3146,7 +3145,7 @@ separately. Here's a function that illustrates this point: | |||
| 3146 | (forward-char 1) | 3145 | (forward-char 1) |
| 3147 | (put-text-property (point) (1+ (point)) 'display string) | 3146 | (put-text-property (point) (1+ (point)) 'display string) |
| 3148 | (forward-char 1)))) | 3147 | (forward-char 1)))) |
| 3149 | @end example | 3148 | @end smallexample |
| 3150 | 3149 | ||
| 3151 | @noindent | 3150 | @noindent |
| 3152 | It gives each of the first ten characters in the buffer string | 3151 | It gives each of the first ten characters in the buffer string |
| @@ -3158,7 +3157,7 @@ Likewise for each following pair of characters. Thus, the ten | |||
| 3158 | characters appear as five A's. This function would have the same | 3157 | characters appear as five A's. This function would have the same |
| 3159 | results: | 3158 | results: |
| 3160 | 3159 | ||
| 3161 | @example | 3160 | @smallexample |
| 3162 | (defun foo () | 3161 | (defun foo () |
| 3163 | (goto-char (point-min)) | 3162 | (goto-char (point-min)) |
| 3164 | (dotimes (i 5) | 3163 | (dotimes (i 5) |
| @@ -3166,7 +3165,7 @@ results: | |||
| 3166 | (put-text-property (point) (2+ (point)) 'display string) | 3165 | (put-text-property (point) (2+ (point)) 'display string) |
| 3167 | (put-text-property (point) (1+ (point)) 'display string) | 3166 | (put-text-property (point) (1+ (point)) 'display string) |
| 3168 | (forward-char 2)))) | 3167 | (forward-char 2)))) |
| 3169 | @end example | 3168 | @end smallexample |
| 3170 | 3169 | ||
| 3171 | @noindent | 3170 | @noindent |
| 3172 | This illustrates that what matters is the property value for | 3171 | This illustrates that what matters is the property value for |
| @@ -3262,18 +3261,20 @@ as an absolute number of pixels. | |||
| 3262 | 3261 | ||
| 3263 | The following expressions are supported: | 3262 | The following expressions are supported: |
| 3264 | 3263 | ||
| 3265 | @example | 3264 | @smallexample |
| 3266 | @group | 3265 | @group |
| 3267 | @var{expr} ::= @var{num} | (@var{num}) | @var{unit} | @var{elem} | @var{pos} | @var{image} | @var{form} | 3266 | @var{expr} ::= @var{num} | (@var{num}) | @var{unit} | @var{elem} | @var{pos} | @var{image} | @var{form} |
| 3268 | @var{num} ::= @var{integer} | @var{float} | @var{symbol} | 3267 | @var{num} ::= @var{integer} | @var{float} | @var{symbol} |
| 3269 | @var{unit} ::= in | mm | cm | width | height | 3268 | @var{unit} ::= in | mm | cm | width | height |
| 3269 | @end group | ||
| 3270 | @group | ||
| 3270 | @var{elem} ::= left-fringe | right-fringe | left-margin | right-margin | 3271 | @var{elem} ::= left-fringe | right-fringe | left-margin | right-margin |
| 3271 | | scroll-bar | text | 3272 | | scroll-bar | text |
| 3272 | @var{pos} ::= left | center | right | 3273 | @var{pos} ::= left | center | right |
| 3273 | @var{form} ::= (@var{num} . @var{expr}) | (@var{op} @var{expr} ...) | 3274 | @var{form} ::= (@var{num} . @var{expr}) | (@var{op} @var{expr} ...) |
| 3274 | @var{op} ::= + | - | 3275 | @var{op} ::= + | - |
| 3275 | @end group | 3276 | @end group |
| 3276 | @end example | 3277 | @end smallexample |
| 3277 | 3278 | ||
| 3278 | The form @var{num} specifies a fraction of the default frame font | 3279 | The form @var{num} specifies a fraction of the default frame font |
| 3279 | height or width. The form @code{(@var{num})} specifies an absolute | 3280 | height or width. The form @code{(@var{num})} specifies an absolute |
| @@ -3331,7 +3332,7 @@ in the @code{display} text property. | |||
| 3331 | Display @var{string} instead of the text that has this property. | 3332 | Display @var{string} instead of the text that has this property. |
| 3332 | 3333 | ||
| 3333 | @item (image . @var{image-props}) | 3334 | @item (image . @var{image-props}) |
| 3334 | This display specification is an image descriptor (@pxref{Images}). | 3335 | This kind of display specification is an image descriptor (@pxref{Images}). |
| 3335 | When used as a display specification, it means to display the image | 3336 | When used as a display specification, it means to display the image |
| 3336 | instead of the text that has the display specification. | 3337 | instead of the text that has the display specification. |
| 3337 | 3338 | ||
diff --git a/lispref/edebug.texi b/lispref/edebug.texi index 981afbb894c..f074cf3dbd5 100644 --- a/lispref/edebug.texi +++ b/lispref/edebug.texi | |||
| @@ -203,14 +203,13 @@ function. | |||
| 203 | @code{interactive} forms with an expression argument, anonymous lambda | 203 | @code{interactive} forms with an expression argument, anonymous lambda |
| 204 | expressions, and other defining forms. However, Edebug cannot determine | 204 | expressions, and other defining forms. However, Edebug cannot determine |
| 205 | on its own what a user-defined macro will do with the arguments of a | 205 | on its own what a user-defined macro will do with the arguments of a |
| 206 | macro call, so you must provide that information; see @ref{Edebug and | 206 | macro call, so you must provide that information using Edebug |
| 207 | Macros}, for details. | 207 | specifications; see @ref{Edebug and Macros}, for details. |
| 208 | 208 | ||
| 209 | When Edebug is about to instrument code for the first time in a | 209 | When Edebug is about to instrument code for the first time in a |
| 210 | session, it runs the hook @code{edebug-setup-hook}, then sets it to | 210 | session, it runs the hook @code{edebug-setup-hook}, then sets it to |
| 211 | @code{nil}. You can use this to load Edebug specifications | 211 | @code{nil}. You can use this to load Edebug specifications |
| 212 | (@pxref{Edebug and Macros}) associated with a package you are | 212 | associated with a package you are using, but only when you use Edebug. |
| 213 | using, but only when you use Edebug. | ||
| 214 | 213 | ||
| 215 | @findex eval-expression @r{(Edebug)} | 214 | @findex eval-expression @r{(Edebug)} |
| 216 | To remove instrumentation from a definition, simply re-evaluate its | 215 | To remove instrumentation from a definition, simply re-evaluate its |
| @@ -331,7 +330,7 @@ program to stop. | |||
| 331 | Proceed to the stop point near where point is (@code{edebug-goto-here}). | 330 | Proceed to the stop point near where point is (@code{edebug-goto-here}). |
| 332 | 331 | ||
| 333 | @item f | 332 | @item f |
| 334 | Run the program forward over one expression | 333 | Run the program for one expression |
| 335 | (@code{edebug-forward-sexp}). | 334 | (@code{edebug-forward-sexp}). |
| 336 | 335 | ||
| 337 | @item o | 336 | @item o |
| @@ -463,9 +462,9 @@ point (@code{edebug-unset-breakpoint}). | |||
| 463 | 462 | ||
| 464 | @item x @var{condition} @key{RET} | 463 | @item x @var{condition} @key{RET} |
| 465 | Set a conditional breakpoint which stops the program only if | 464 | Set a conditional breakpoint which stops the program only if |
| 466 | @var{condition} evaluates to a non-@code{nil} value | 465 | evaluating @var{condition} produces a non-@code{nil} value |
| 467 | (@code{edebug-set-conditional-breakpoint}). With a prefix argument, the | 466 | (@code{edebug-set-conditional-breakpoint}). With a prefix argument, |
| 468 | breakpoint is temporary. | 467 | the breakpoint is temporary. |
| 469 | 468 | ||
| 470 | @item B | 469 | @item B |
| 471 | Move point to the next breakpoint in the current definition | 470 | Move point to the next breakpoint in the current definition |
| @@ -586,8 +585,8 @@ effect outside of Edebug. | |||
| 586 | 585 | ||
| 587 | @table @kbd | 586 | @table @kbd |
| 588 | @item v | 587 | @item v |
| 589 | View the outside window configuration (@code{edebug-view-outside}). | 588 | Switch to viewing the outside window configuration |
| 590 | Type @kbd{C-x X w} to return to Edebug. | 589 | (@code{edebug-view-outside}). Type @kbd{C-x X w} to return to Edebug. |
| 591 | 590 | ||
| 592 | @item p | 591 | @item p |
| 593 | Temporarily display the outside current buffer with point at its | 592 | Temporarily display the outside current buffer with point at its |
| @@ -1036,11 +1035,12 @@ saves (and later restores) these additional data: | |||
| 1036 | The current match data. @xref{Match Data}. | 1035 | The current match data. @xref{Match Data}. |
| 1037 | 1036 | ||
| 1038 | @item | 1037 | @item |
| 1039 | @code{last-command}, @code{this-command}, @code{last-command-char}, | 1038 | The variables @code{last-command}, @code{this-command}, |
| 1040 | @code{last-input-char}, @code{last-input-event}, | 1039 | @code{last-command-char}, @code{last-input-char}, |
| 1041 | @code{last-command-event}, @code{last-event-frame}, | 1040 | @code{last-input-event}, @code{last-command-event}, |
| 1042 | @code{last-nonmenu-event}, and @code{track-mouse}. Commands used within | 1041 | @code{last-event-frame}, @code{last-nonmenu-event}, and |
| 1043 | Edebug do not affect these variables outside of Edebug. | 1042 | @code{track-mouse}. Commands used within Edebug do not affect these |
| 1043 | variables outside of Edebug. | ||
| 1044 | 1044 | ||
| 1045 | The key sequence returned by @code{this-command-keys} is changed by | 1045 | The key sequence returned by @code{this-command-keys} is changed by |
| 1046 | executing commands within Edebug and there is no way to reset | 1046 | executing commands within Edebug and there is no way to reset |
| @@ -1100,13 +1100,13 @@ macro. To do this, add a @code{debug} declaration to the macro | |||
| 1100 | definition. Here is a simple example that shows the specification for | 1100 | definition. Here is a simple example that shows the specification for |
| 1101 | the @code{for} example macro (@pxref{Argument Evaluation}). | 1101 | the @code{for} example macro (@pxref{Argument Evaluation}). |
| 1102 | 1102 | ||
| 1103 | @example | 1103 | @smallexample |
| 1104 | (defmacro for (var from init to final do &rest body) | 1104 | (defmacro for (var from init to final do &rest body) |
| 1105 | "Execute a simple \"for\" loop. | 1105 | "Execute a simple \"for\" loop. |
| 1106 | For example, (for i from 1 to 10 do (print i))." | 1106 | For example, (for i from 1 to 10 do (print i))." |
| 1107 | (declare (debug (symbolp "from" form "to" form "do" &rest form))) | 1107 | (declare (debug (symbolp "from" form "to" form "do" &rest form))) |
| 1108 | ...) | 1108 | ...) |
| 1109 | @end example | 1109 | @end smallexample |
| 1110 | 1110 | ||
| 1111 | The Edebug specification says which parts of a call to the macro are | 1111 | The Edebug specification says which parts of a call to the macro are |
| 1112 | forms to be evaluated. For simple macros, the @var{specification} | 1112 | forms to be evaluated. For simple macros, the @var{specification} |
| @@ -1185,7 +1185,8 @@ balanced parentheses, recursive processing of forms, and recursion via | |||
| 1185 | indirect specifications. | 1185 | indirect specifications. |
| 1186 | 1186 | ||
| 1187 | Here's a table of the possible elements of a specification list, with | 1187 | Here's a table of the possible elements of a specification list, with |
| 1188 | their meanings: | 1188 | their meanings (see @ref{Specification Examples}, for the referenced |
| 1189 | examples): | ||
| 1189 | 1190 | ||
| 1190 | @table @code | 1191 | @table @code |
| 1191 | @item sexp | 1192 | @item sexp |
| @@ -1221,7 +1222,7 @@ as one does not match, Edebug stops matching at this level. | |||
| 1221 | To make just a few elements optional followed by non-optional elements, | 1222 | To make just a few elements optional followed by non-optional elements, |
| 1222 | use @code{[&optional @var{specs}@dots{}]}. To specify that several | 1223 | use @code{[&optional @var{specs}@dots{}]}. To specify that several |
| 1223 | elements must all match or none, use @code{&optional | 1224 | elements must all match or none, use @code{&optional |
| 1224 | [@var{specs}@dots{}]}. See the @code{defun} example below. | 1225 | [@var{specs}@dots{}]}. See the @code{defun} example. |
| 1225 | 1226 | ||
| 1226 | @item &rest | 1227 | @item &rest |
| 1227 | @c @kindex &rest @r{(Edebug)} | 1228 | @c @kindex &rest @r{(Edebug)} |
| @@ -1262,15 +1263,14 @@ a list specification. | |||
| 1262 | @item nil | 1263 | @item nil |
| 1263 | This is successful when there are no more arguments to match at the | 1264 | This is successful when there are no more arguments to match at the |
| 1264 | current argument list level; otherwise it fails. See sublist | 1265 | current argument list level; otherwise it fails. See sublist |
| 1265 | specifications and the backquote example below. | 1266 | specifications and the backquote example. |
| 1266 | 1267 | ||
| 1267 | @item gate | 1268 | @item gate |
| 1268 | @cindex preventing backtracking | 1269 | @cindex preventing backtracking |
| 1269 | No argument is matched but backtracking through the gate is disabled | 1270 | No argument is matched but backtracking through the gate is disabled |
| 1270 | while matching the remainder of the specifications at this level. This | 1271 | while matching the remainder of the specifications at this level. This |
| 1271 | is primarily used to generate more specific syntax error messages. See | 1272 | is primarily used to generate more specific syntax error messages. See |
| 1272 | @ref{Backtracking}, for more details. Also see the @code{let} example | 1273 | @ref{Backtracking}, for more details. Also see the @code{let} example. |
| 1273 | below. | ||
| 1274 | 1274 | ||
| 1275 | @item @var{other-symbol} | 1275 | @item @var{other-symbol} |
| 1276 | @cindex indirect specifications | 1276 | @cindex indirect specifications |
| @@ -1281,7 +1281,7 @@ If the symbol has an Edebug specification, this @dfn{indirect | |||
| 1281 | specification} should be either a list specification that is used in | 1281 | specification} should be either a list specification that is used in |
| 1282 | place of the symbol, or a function that is called to process the | 1282 | place of the symbol, or a function that is called to process the |
| 1283 | arguments. The specification may be defined with @code{def-edebug-spec} | 1283 | arguments. The specification may be defined with @code{def-edebug-spec} |
| 1284 | just as for macros. See the @code{defun} example below. | 1284 | just as for macros. See the @code{defun} example. |
| 1285 | 1285 | ||
| 1286 | Otherwise, the symbol should be a predicate. The predicate is called | 1286 | Otherwise, the symbol should be a predicate. The predicate is called |
| 1287 | with the argument and the specification fails if the predicate returns | 1287 | with the argument and the specification fails if the predicate returns |
| @@ -1302,7 +1302,7 @@ of @var{symbol} is the @var{string}, but the string form is preferred. | |||
| 1302 | 1302 | ||
| 1303 | @item (vector @var{elements}@dots{}) | 1303 | @item (vector @var{elements}@dots{}) |
| 1304 | The argument should be a vector whose elements must match the | 1304 | The argument should be a vector whose elements must match the |
| 1305 | @var{elements} in the specification. See the backquote example below. | 1305 | @var{elements} in the specification. See the backquote example. |
| 1306 | 1306 | ||
| 1307 | @item (@var{elements}@dots{}) | 1307 | @item (@var{elements}@dots{}) |
| 1308 | Any other list is a @dfn{sublist specification} and the argument must be | 1308 | Any other list is a @dfn{sublist specification} and the argument must be |
| @@ -1315,7 +1315,7 @@ dotted list specification may be another sublist specification (via a | |||
| 1315 | grouping or an indirect specification, e.g., @code{(spec . [(more | 1315 | grouping or an indirect specification, e.g., @code{(spec . [(more |
| 1316 | specs@dots{})])}) whose elements match the non-dotted list arguments. | 1316 | specs@dots{})])}) whose elements match the non-dotted list arguments. |
| 1317 | This is useful in recursive specifications such as in the backquote | 1317 | This is useful in recursive specifications such as in the backquote |
| 1318 | example below. Also see the description of a @code{nil} specification | 1318 | example. Also see the description of a @code{nil} specification |
| 1319 | above for terminating such recursion. | 1319 | above for terminating such recursion. |
| 1320 | 1320 | ||
| 1321 | Note that a sublist specification written as @code{(specs . nil)} | 1321 | Note that a sublist specification written as @code{(specs . nil)} |
| @@ -1327,7 +1327,7 @@ sublist-elements@dots{})}. | |||
| 1327 | @c Need to document extensions with &symbol and :symbol | 1327 | @c Need to document extensions with &symbol and :symbol |
| 1328 | 1328 | ||
| 1329 | Here is a list of additional specifications that may appear only after | 1329 | Here is a list of additional specifications that may appear only after |
| 1330 | @code{&define}. See the @code{defun} example below. | 1330 | @code{&define}. See the @code{defun} example. |
| 1331 | 1331 | ||
| 1332 | @table @code | 1332 | @table @code |
| 1333 | @item name | 1333 | @item name |
| @@ -1364,7 +1364,7 @@ The argument is a single, highest-level form in a definition. This is | |||
| 1364 | like @code{def-body}, except use this to match a single form rather than | 1364 | like @code{def-body}, except use this to match a single form rather than |
| 1365 | a list of forms. As a special case, @code{def-form} also means that | 1365 | a list of forms. As a special case, @code{def-form} also means that |
| 1366 | tracing information is not output when the form is executed. See the | 1366 | tracing information is not output when the form is executed. See the |
| 1367 | @code{interactive} example below. | 1367 | @code{interactive} example. |
| 1368 | @end table | 1368 | @end table |
| 1369 | 1369 | ||
| 1370 | @node Backtracking | 1370 | @node Backtracking |
diff --git a/lispref/elisp.texi b/lispref/elisp.texi index 4be680969a1..0a4849c236b 100644 --- a/lispref/elisp.texi +++ b/lispref/elisp.texi | |||
| @@ -6,7 +6,7 @@ | |||
| 6 | 6 | ||
| 7 | @c Version of the manual and of Emacs. | 7 | @c Version of the manual and of Emacs. |
| 8 | @c Please remember to update the edition number in README as well. | 8 | @c Please remember to update the edition number in README as well. |
| 9 | @set VERSION 2.9 | 9 | @set VERSION 2.7 |
| 10 | @set EMACSVER 22.0.50 | 10 | @set EMACSVER 22.0.50 |
| 11 | 11 | ||
| 12 | @dircategory Emacs | 12 | @dircategory Emacs |
| @@ -34,8 +34,8 @@ Published by the Free Software Foundation | |||
| 34 | 59 Temple Place, Suite 330 | 34 | 59 Temple Place, Suite 330 |
| 35 | Boston, MA 02111-1307 USA | 35 | Boston, MA 02111-1307 USA |
| 36 | 36 | ||
| 37 | Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2005,@* | 37 | Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, @* |
| 38 | 2000, 2002 Free Software Foundation, Inc. | 38 | 2000, 2002, 2003, 2004, 2005, Free Software Foundation, Inc. |
| 39 | 39 | ||
| 40 | Permission is granted to copy, distribute and/or modify this document | 40 | Permission is granted to copy, distribute and/or modify this document |
| 41 | under the terms of the GNU Free Documentation License, Version 1.1 or | 41 | under the terms of the GNU Free Documentation License, Version 1.1 or |
| @@ -60,7 +60,7 @@ Software Foundation raise funds for GNU development.'' | |||
| 60 | @page | 60 | @page |
| 61 | @vskip 0pt plus 1filll | 61 | @vskip 0pt plus 1filll |
| 62 | Copyright @copyright{} 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998,@* | 62 | Copyright @copyright{} 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998,@* |
| 63 | 1999, 2000, 2002 Free Software Foundation, Inc. | 63 | 1999, 2000, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 64 | 64 | ||
| 65 | @sp 2 | 65 | @sp 2 |
| 66 | Edition @value{VERSION} @* | 66 | Edition @value{VERSION} @* |
| @@ -288,6 +288,7 @@ Lists | |||
| 288 | * Modifying Lists:: Storing new pieces into an existing list. | 288 | * Modifying Lists:: Storing new pieces into an existing list. |
| 289 | * Sets And Lists:: A list can represent a finite mathematical set. | 289 | * Sets And Lists:: A list can represent a finite mathematical set. |
| 290 | * Association Lists:: A list can represent a finite relation or mapping. | 290 | * Association Lists:: A list can represent a finite relation or mapping. |
| 291 | * Rings:: Managing a fixed-size ring of objects. | ||
| 291 | 292 | ||
| 292 | Modifying Existing List Structure | 293 | Modifying Existing List Structure |
| 293 | 294 | ||
| @@ -983,6 +984,7 @@ Processes | |||
| 983 | * Datagrams:: UDP network connections. | 984 | * Datagrams:: UDP network connections. |
| 984 | * Low-Level Network:: Lower-level but more general function | 985 | * Low-Level Network:: Lower-level but more general function |
| 985 | to create connections and servers. | 986 | to create connections and servers. |
| 987 | * Byte Packing:: Using bindat to pack and unpack binary data. | ||
| 986 | 988 | ||
| 987 | Receiving Output from Processes | 989 | Receiving Output from Processes |
| 988 | 990 | ||
diff --git a/lispref/errors.texi b/lispref/errors.texi index 8591fb9a45f..a246539b8fd 100644 --- a/lispref/errors.texi +++ b/lispref/errors.texi | |||
| @@ -63,7 +63,7 @@ See @code{/} and @code{%} in @ref{Numbers}. | |||
| 63 | @xref{Function Indirection}. | 63 | @xref{Function Indirection}. |
| 64 | 64 | ||
| 65 | @item cyclic-variable-indirection | 65 | @item cyclic-variable-indirection |
| 66 | @code{"Symbol's chain of variable indirections contains a loop"}@* | 66 | @code{"Symbol's chain of variable indirections\@* contains a loop"}@* |
| 67 | @xref{Variable Aliases}. | 67 | @xref{Variable Aliases}. |
| 68 | 68 | ||
| 69 | @item end-of-buffer | 69 | @item end-of-buffer |
diff --git a/lispref/files.texi b/lispref/files.texi index 766220aa882..93c104e6ccd 100644 --- a/lispref/files.texi +++ b/lispref/files.texi | |||
| @@ -98,9 +98,9 @@ new buffer and reading the file into it. It also returns that buffer. | |||
| 98 | Aside from some technical details, the body of the @code{find-file} | 98 | Aside from some technical details, the body of the @code{find-file} |
| 99 | function is basically equivalent to: | 99 | function is basically equivalent to: |
| 100 | 100 | ||
| 101 | @example | 101 | @smallexample |
| 102 | (switch-to-buffer (find-file-noselect filename nil nil wildcards)) | 102 | (switch-to-buffer (find-file-noselect filename nil nil wildcards)) |
| 103 | @end example | 103 | @end smallexample |
| 104 | 104 | ||
| 105 | @noindent | 105 | @noindent |
| 106 | (See @code{switch-to-buffer} in @ref{Displaying Buffers}.) | 106 | (See @code{switch-to-buffer} in @ref{Displaying Buffers}.) |
| @@ -2731,9 +2731,9 @@ This function tests whether @var{filename} is a remote file. If | |||
| 2731 | If @var{filename} is indeed remote, the return value is a string that | 2731 | If @var{filename} is indeed remote, the return value is a string that |
| 2732 | identifies the remote system. | 2732 | identifies the remote system. |
| 2733 | 2733 | ||
| 2734 | This identifier string may include a host name, a user name, and | 2734 | This identifier string can include a host name and a user name, as |
| 2735 | characters designating the method used to access the remote system. | 2735 | well as characters designating the method used to access the remote |
| 2736 | For example, the remote identifier string for the filename | 2736 | system. For example, the remote identifier string for the filename |
| 2737 | @code{/ssh:user@@host:/some/file} is @code{/ssh:user@@host:}. | 2737 | @code{/ssh:user@@host:/some/file} is @code{/ssh:user@@host:}. |
| 2738 | 2738 | ||
| 2739 | If @code{file-remote-p} returns the same identifier for two different | 2739 | If @code{file-remote-p} returns the same identifier for two different |
diff --git a/lispref/frames.texi b/lispref/frames.texi index ffcc16f6289..10035b76f9f 100644 --- a/lispref/frames.texi +++ b/lispref/frames.texi | |||
| @@ -1550,13 +1550,13 @@ clients. It takes two optional arguments, @var{type} and | |||
| 1550 | The @var{data-type} argument specifies the form of data conversion to | 1550 | The @var{data-type} argument specifies the form of data conversion to |
| 1551 | use, to convert the raw data obtained from another X client into Lisp | 1551 | use, to convert the raw data obtained from another X client into Lisp |
| 1552 | data. Meaningful values include @code{TEXT}, @code{STRING}, | 1552 | data. Meaningful values include @code{TEXT}, @code{STRING}, |
| 1553 | @code{UTF8_STRING}, | 1553 | @code{UTF8_STRING}, @code{TARGETS}, @code{LENGTH}, @code{DELETE}, |
| 1554 | @code{TARGETS}, @code{LENGTH}, @code{DELETE}, @code{FILE_NAME}, | 1554 | @code{FILE_NAME}, @code{CHARACTER_POSITION}, @code{NAME}, |
| 1555 | @code{CHARACTER_POSITION}, @code{LINE_NUMBER}, @code{COLUMN_NUMBER}, | 1555 | @code{LINE_NUMBER}, @code{COLUMN_NUMBER}, @code{OWNER_OS}, |
| 1556 | @code{OWNER_OS}, @code{HOST_NAME}, @code{USER}, @code{CLASS}, | 1556 | @code{HOST_NAME}, @code{USER}, @code{CLASS}, @code{ATOM}, and |
| 1557 | @code{NAME}, @code{ATOM}, and @code{INTEGER}. (These are symbols with | 1557 | @code{INTEGER}. (These are symbols with upper-case names in accord |
| 1558 | upper-case names in accord with X conventions.) The default for | 1558 | with X conventions.) The default for @var{data-type} is |
| 1559 | @var{data-type} is @code{STRING}. | 1559 | @code{STRING}. |
| 1560 | @end defun | 1560 | @end defun |
| 1561 | 1561 | ||
| 1562 | @cindex cut buffer | 1562 | @cindex cut buffer |
| @@ -1822,8 +1822,8 @@ xterm.vt100.background: yellow | |||
| 1822 | @end example | 1822 | @end example |
| 1823 | 1823 | ||
| 1824 | @noindent | 1824 | @noindent |
| 1825 | in in your X resources file (usually named @file{~/.Xdefaults} or | 1825 | in in your X resources file (whose name is usually @file{~/.Xdefaults} |
| 1826 | @file{~/.Xresources}). Then: | 1826 | or @file{~/.Xresources}). Then: |
| 1827 | 1827 | ||
| 1828 | @example | 1828 | @example |
| 1829 | @group | 1829 | @group |
diff --git a/lispref/functions.texi b/lispref/functions.texi index bcdfc95cc1c..f58cad69bb7 100644 --- a/lispref/functions.texi +++ b/lispref/functions.texi | |||
| @@ -525,9 +525,9 @@ defines the symbol @var{name} as a function that looks like this: | |||
| 525 | @var{name}. It returns the value @var{name}, but usually we ignore this | 525 | @var{name}. It returns the value @var{name}, but usually we ignore this |
| 526 | value. | 526 | value. |
| 527 | 527 | ||
| 528 | As described previously (@pxref{Lambda Expressions}), | 528 | As described previously, @var{argument-list} is a list of argument |
| 529 | @var{argument-list} is a list of argument names and may include the | 529 | names and may include the keywords @code{&optional} and @code{&rest} |
| 530 | keywords @code{&optional} and @code{&rest}. Also, the first two of the | 530 | (@pxref{Lambda Expressions}). Also, the first two of the |
| 531 | @var{body-forms} may be a documentation string and an interactive | 531 | @var{body-forms} may be a documentation string and an interactive |
| 532 | declaration. | 532 | declaration. |
| 533 | 533 | ||
| @@ -1157,13 +1157,14 @@ a function defined by another package, it is cleaner to use | |||
| 1157 | You can use @code{make-obsolete} to declare a function obsolete. This | 1157 | You can use @code{make-obsolete} to declare a function obsolete. This |
| 1158 | indicates that the function may be removed at some stage in the future. | 1158 | indicates that the function may be removed at some stage in the future. |
| 1159 | 1159 | ||
| 1160 | @defun make-obsolete function new &optional when | 1160 | @defun make-obsolete obsolete-name current-name &optional when |
| 1161 | This function makes the byte compiler warn that the function | 1161 | This function makes the byte compiler warn that the function |
| 1162 | @var{function} is obsolete. If @var{new} is a symbol, the warning | 1162 | @var{obsolete-name} is obsolete. If @var{current-name} is a symbol, the |
| 1163 | message says to use @var{new} instead of @var{function}. @var{new} | 1163 | warning message says to use @var{current-name} instead of |
| 1164 | does not need to be an alias for @var{function}; it can be a different | 1164 | @var{obsolete-name}. @var{current-name} does not need to be an alias for |
| 1165 | function with similar functionality. If @var{new} is a string, it is | 1165 | @var{obsolete-name}; it can be a different function with similar |
| 1166 | the warning message. | 1166 | functionality. If @var{current-name} is a string, it is the warning |
| 1167 | message. | ||
| 1167 | 1168 | ||
| 1168 | If provided, @var{when} should be a string indicating when the function | 1169 | If provided, @var{when} should be a string indicating when the function |
| 1169 | was first made obsolete---for example, a date or a release number. | 1170 | was first made obsolete---for example, a date or a release number. |
| @@ -1172,20 +1173,14 @@ was first made obsolete---for example, a date or a release number. | |||
| 1172 | You can define a function as an alias and declare it obsolete at the | 1173 | You can define a function as an alias and declare it obsolete at the |
| 1173 | same time using the macro @code{define-obsolete-function-alias}. | 1174 | same time using the macro @code{define-obsolete-function-alias}. |
| 1174 | 1175 | ||
| 1175 | @defmac define-obsolete-function-alias function new &optional when docstring | 1176 | @defmac define-obsolete-function-alias obsolete-name current-name &optional when docstring |
| 1176 | This macro marks the function @var{function} obsolete and also defines | 1177 | This macro marks the function @var{obsolete-name} obsolete and also |
| 1177 | it as an alias for the function @var{new}. A typical call has the form: | 1178 | defines it as an alias for the function @var{current-name}. It is |
| 1179 | equivalent to the following: | ||
| 1178 | 1180 | ||
| 1179 | @example | 1181 | @example |
| 1180 | (define-obsolete-function-alias 'old-fun 'new-fun "22.1" "Doc.") | 1182 | (defalias @var{obsolete-name} @var{current-name} @var{docstring}) |
| 1181 | @end example | 1183 | (make-obsolete @var{obsolete-name} @var{current-name} @var{when}) |
| 1182 | |||
| 1183 | @noindent | ||
| 1184 | which is equivalent to the following two lines of code: | ||
| 1185 | |||
| 1186 | @example | ||
| 1187 | (defalias 'old-fun 'new-fun "Doc.") | ||
| 1188 | (make-obsolete 'old-fun 'new-fun "22.1") | ||
| 1189 | @end example | 1184 | @end example |
| 1190 | @end defmac | 1185 | @end defmac |
| 1191 | 1186 | ||
diff --git a/lispref/help.texi b/lispref/help.texi index dfbc6c220f3..2dbea2038cc 100644 --- a/lispref/help.texi +++ b/lispref/help.texi | |||
| @@ -47,13 +47,15 @@ of a function or variable. In a function definition, the documentation | |||
| 47 | string follows the argument list. In a variable definition, the | 47 | string follows the argument list. In a variable definition, the |
| 48 | documentation string follows the initial value of the variable. | 48 | documentation string follows the initial value of the variable. |
| 49 | 49 | ||
| 50 | When you write a documentation string, make the first line a complete | 50 | When you write a documentation string, make the first line a |
| 51 | sentence (or two complete sentences) since some commands, such as | 51 | complete sentence (or two complete sentences) since some commands, |
| 52 | @code{apropos}, show only the first line of a multi-line documentation | 52 | such as @code{apropos}, show only the first line of a multi-line |
| 53 | string. Also, you should not indent the second line of a documentation | 53 | documentation string. Also, you should not indent the second line of |
| 54 | string, if it has one, because that looks odd when you use @kbd{C-h f} | 54 | a documentation string, if it has one, because that looks odd when you |
| 55 | (@code{describe-function}) or @kbd{C-h v} (@code{describe-variable}) to | 55 | use @kbd{C-h f} (@code{describe-function}) or @kbd{C-h v} |
| 56 | view the documentation string. @xref{Documentation Tips}. | 56 | (@code{describe-variable}) to view the documentation string. There |
| 57 | are many other conventions for doc strings; see @ref{Documentation | ||
| 58 | Tips}. | ||
| 57 | 59 | ||
| 58 | Documentation strings can contain several special substrings, which | 60 | Documentation strings can contain several special substrings, which |
| 59 | stand for key bindings to be looked up in the current keymaps when the | 61 | stand for key bindings to be looked up in the current keymaps when the |
| @@ -117,7 +119,7 @@ retrieves the text from a file if the value calls for that. If the | |||
| 117 | property value isn't @code{nil}, isn't a string, and doesn't refer to | 119 | property value isn't @code{nil}, isn't a string, and doesn't refer to |
| 118 | text in a file, then it is evaluated to obtain a string. | 120 | text in a file, then it is evaluated to obtain a string. |
| 119 | 121 | ||
| 120 | Finally, @code{documentation-property} passes the string through | 122 | The last thing this function does is pass the string through |
| 121 | @code{substitute-command-keys} to substitute actual key bindings, | 123 | @code{substitute-command-keys} to substitute actual key bindings, |
| 122 | unless @var{verbatim} is non-@code{nil}. | 124 | unless @var{verbatim} is non-@code{nil}. |
| 123 | 125 | ||
diff --git a/lispref/keymaps.texi b/lispref/keymaps.texi index 63832ced1b4..79cbe478ea2 100644 --- a/lispref/keymaps.texi +++ b/lispref/keymaps.texi | |||
| @@ -1335,10 +1335,10 @@ a key binding. | |||
| 1335 | instead of @code{kill-line} and @code{kill-word}. It can establish | 1335 | instead of @code{kill-line} and @code{kill-word}. It can establish |
| 1336 | this by making these two command-remapping bindings in its keymap: | 1336 | this by making these two command-remapping bindings in its keymap: |
| 1337 | 1337 | ||
| 1338 | @example | 1338 | @smallexample |
| 1339 | (define-key my-mode-map [remap kill-line] 'my-kill-line) | 1339 | (define-key my-mode-map [remap kill-line] 'my-kill-line) |
| 1340 | (define-key my-mode-map [remap kill-word] 'my-kill-word) | 1340 | (define-key my-mode-map [remap kill-word] 'my-kill-word) |
| 1341 | @end example | 1341 | @end smallexample |
| 1342 | 1342 | ||
| 1343 | Whenever @code{my-mode-map} is an active keymap, if the user types | 1343 | Whenever @code{my-mode-map} is an active keymap, if the user types |
| 1344 | @kbd{C-k}, Emacs will find the standard global binding of | 1344 | @kbd{C-k}, Emacs will find the standard global binding of |
| @@ -1349,10 +1349,10 @@ so instead of running @code{kill-line}, Emacs runs | |||
| 1349 | 1349 | ||
| 1350 | Remapping only works through a single level. In other words, | 1350 | Remapping only works through a single level. In other words, |
| 1351 | 1351 | ||
| 1352 | @example | 1352 | @smallexample |
| 1353 | (define-key my-mode-map [remap kill-line] 'my-kill-line) | 1353 | (define-key my-mode-map [remap kill-line] 'my-kill-line) |
| 1354 | (define-key my-mode-map [remap my-kill-line] 'my-other-kill-line) | 1354 | (define-key my-mode-map [remap my-kill-line] 'my-other-kill-line) |
| 1355 | @end example | 1355 | @end smallexample |
| 1356 | 1356 | ||
| 1357 | @noindent | 1357 | @noindent |
| 1358 | does not have the effect of remapping @code{kill-line} into | 1358 | does not have the effect of remapping @code{kill-line} into |
diff --git a/lispref/lists.texi b/lispref/lists.texi index ab7d496e461..a5a2c33bcce 100644 --- a/lispref/lists.texi +++ b/lispref/lists.texi | |||
| @@ -24,6 +24,7 @@ the whole list. | |||
| 24 | * Modifying Lists:: Storing new pieces into an existing list. | 24 | * Modifying Lists:: Storing new pieces into an existing list. |
| 25 | * Sets And Lists:: A list can represent a finite mathematical set. | 25 | * Sets And Lists:: A list can represent a finite mathematical set. |
| 26 | * Association Lists:: A list can represent a finite relation or mapping. | 26 | * Association Lists:: A list can represent a finite relation or mapping. |
| 27 | * Rings:: Managing a fixed-size ring of objects. | ||
| 27 | @end menu | 28 | @end menu |
| 28 | 29 | ||
| 29 | @node Cons Cells | 30 | @node Cons Cells |
| @@ -714,7 +715,7 @@ Some examples: | |||
| 714 | primitives @code{setcar} and @code{setcdr}. We call these ``destructive'' | 715 | primitives @code{setcar} and @code{setcdr}. We call these ``destructive'' |
| 715 | operations because they change existing list structure. | 716 | operations because they change existing list structure. |
| 716 | 717 | ||
| 717 | @cindex CL note---@code{rplaca} vrs @code{setcar} | 718 | @cindex CL note---@code{rplaca} vs @code{setcar} |
| 718 | @quotation | 719 | @quotation |
| 719 | @findex rplaca | 720 | @findex rplaca |
| 720 | @findex rplacd | 721 | @findex rplacd |
| @@ -1676,6 +1677,94 @@ compares the @sc{cdr} of each @var{alist} association instead of the | |||
| 1676 | @sc{car}. | 1677 | @sc{car}. |
| 1677 | @end defun | 1678 | @end defun |
| 1678 | 1679 | ||
| 1680 | @node Rings | ||
| 1681 | @section Managing a Fixed-Size Ring of Objects | ||
| 1682 | |||
| 1683 | @cindex ring data structure | ||
| 1684 | This section describes functions for operating on rings. A | ||
| 1685 | @dfn{ring} is a fixed-size data structure that supports insertion, | ||
| 1686 | deletion, rotation, and modulo-indexed reference and traversal. | ||
| 1687 | |||
| 1688 | @defun make-ring size | ||
| 1689 | This returns a new ring capable of holding @var{size} objects. | ||
| 1690 | @var{size} should be an integer. | ||
| 1691 | @end defun | ||
| 1692 | |||
| 1693 | @defun ring-p object | ||
| 1694 | This returns @code{t} if @var{object} is a ring, @code{nil} otherwise. | ||
| 1695 | @end defun | ||
| 1696 | |||
| 1697 | @defun ring-size ring | ||
| 1698 | This returns the maximum capacity of the @var{ring}. | ||
| 1699 | @end defun | ||
| 1700 | |||
| 1701 | @defun ring-length ring | ||
| 1702 | This returns the number of objects that @var{ring} currently contains. | ||
| 1703 | The value will never exceed that returned by @code{ring-size}. | ||
| 1704 | @end defun | ||
| 1705 | |||
| 1706 | @defun ring-elements ring | ||
| 1707 | This returns a list of the objects in @var{ring}, in no particular | ||
| 1708 | order. | ||
| 1709 | @end defun | ||
| 1710 | |||
| 1711 | @defun ring-copy ring | ||
| 1712 | This returns a new ring which is a copy of @var{ring}. | ||
| 1713 | The new ring contains the same (@code{eq}) objects as @var{ring}. | ||
| 1714 | @end defun | ||
| 1715 | |||
| 1716 | @defun ring-empty-p ring | ||
| 1717 | This returns @code{t} if @var{ring} is empty, @code{nil} otherwise. | ||
| 1718 | @end defun | ||
| 1719 | |||
| 1720 | The newest element in the ring always has index 0. Higher indices | ||
| 1721 | correspond to older elements. Indices are computed modulo the ring | ||
| 1722 | length. Index @minus{}1 corresponds to the oldest element, @minus{}2 | ||
| 1723 | to the next-oldest, and so forth. | ||
| 1724 | |||
| 1725 | @defun ring-ref ring index | ||
| 1726 | This returns the object in @var{ring} found at index @var{index}. | ||
| 1727 | @var{index} may be negative or greater than the ring length. If | ||
| 1728 | @var{ring} is empty, @code{ring-ref} signals an error. | ||
| 1729 | @end defun | ||
| 1730 | |||
| 1731 | @defun ring-insert ring object | ||
| 1732 | This inserts @var{object} into @var{ring}, making it the newest | ||
| 1733 | element, and returns @var{object}. | ||
| 1734 | |||
| 1735 | If the ring is full, insertion removes the oldest element to | ||
| 1736 | make room for the new element. | ||
| 1737 | @end defun | ||
| 1738 | |||
| 1739 | @defun ring-remove ring &optional index | ||
| 1740 | Remove an object from @var{ring}, and return that object. The | ||
| 1741 | argument @var{index} specifies which item to remove; if it is | ||
| 1742 | @code{nil}, that means to remove the oldest item. If @var{ring} is | ||
| 1743 | empty, @code{ring-remove} signals an error. | ||
| 1744 | @end defun | ||
| 1745 | |||
| 1746 | @defun ring-insert-at-beginning ring object | ||
| 1747 | This inserts @var{object} into @var{ring}, treating it as the oldest | ||
| 1748 | element. The return value is not significant. | ||
| 1749 | |||
| 1750 | If the ring is full, this function removes the newest element to make | ||
| 1751 | room for the inserted element. | ||
| 1752 | @end defun | ||
| 1753 | |||
| 1754 | @cindex fifo data structure | ||
| 1755 | If you are careful not to exceed the ring size, you can | ||
| 1756 | use the ring as a first-in-first-out queue. For example: | ||
| 1757 | |||
| 1758 | @lisp | ||
| 1759 | (let ((fifo (make-ring 5))) | ||
| 1760 | (mapc (lambda (obj) (ring-insert fifo obj)) | ||
| 1761 | '(0 one "two")) | ||
| 1762 | (list (ring-remove fifo) t | ||
| 1763 | (ring-remove fifo) t | ||
| 1764 | (ring-remove fifo))) | ||
| 1765 | @result{} (0 t one t "two") | ||
| 1766 | @end lisp | ||
| 1767 | |||
| 1679 | @ignore | 1768 | @ignore |
| 1680 | arch-tag: 31fb8a4e-4aa8-4a74-a206-aa00451394d4 | 1769 | arch-tag: 31fb8a4e-4aa8-4a74-a206-aa00451394d4 |
| 1681 | @end ignore | 1770 | @end ignore |
diff --git a/lispref/minibuf.texi b/lispref/minibuf.texi index cdba210b625..a6153fdaca2 100644 --- a/lispref/minibuf.texi +++ b/lispref/minibuf.texi | |||
| @@ -414,10 +414,9 @@ symbol, not a list; it is a variable whose value is a list of strings | |||
| 414 | inputs. It's the Lisp programmer's job to specify the right history | 414 | inputs. It's the Lisp programmer's job to specify the right history |
| 415 | list for each use of the minibuffer. | 415 | list for each use of the minibuffer. |
| 416 | 416 | ||
| 417 | The basic minibuffer input functions @code{read-from-minibuffer} and | 417 | You specify the history list with the optional @var{hist} argument |
| 418 | @code{completing-read} both accept an optional argument named @var{hist} | 418 | to either @code{read-from-minibuffer} or @code{completing-read}. Here |
| 419 | which is how you specify the history list. Here are the possible | 419 | are the possible values for it: |
| 420 | values: | ||
| 421 | 420 | ||
| 422 | @table @asis | 421 | @table @asis |
| 423 | @item @var{variable} | 422 | @item @var{variable} |
| @@ -587,10 +586,11 @@ for reading certain kinds of names with completion. | |||
| 587 | @node Basic Completion | 586 | @node Basic Completion |
| 588 | @subsection Basic Completion Functions | 587 | @subsection Basic Completion Functions |
| 589 | 588 | ||
| 590 | The functions @code{try-completion}, @code{all-completions} and | 589 | The completion functions @code{try-completion}, |
| 591 | @code{test-completion} have nothing in themselves to do with | 590 | @code{all-completions} and @code{test-completion} have nothing in |
| 592 | minibuffers. We describe them in this chapter so as to keep them near | 591 | themselves to do with minibuffers. We describe them in this chapter |
| 593 | the higher-level completion features that do use the minibuffer. | 592 | so as to keep them near the higher-level completion features that do |
| 593 | use the minibuffer. | ||
| 594 | 594 | ||
| 595 | @defun try-completion string collection &optional predicate | 595 | @defun try-completion string collection &optional predicate |
| 596 | This function returns the longest common substring of all possible | 596 | This function returns the longest common substring of all possible |
| @@ -788,12 +788,12 @@ value @var{fun} returns becomes the permanent value of @var{var}. | |||
| 788 | 788 | ||
| 789 | Here are two examples of use: | 789 | Here are two examples of use: |
| 790 | 790 | ||
| 791 | @example | 791 | @smallexample |
| 792 | (defvar foo (lazy-completion-table foo make-my-alist 'global)) | 792 | (defvar foo (lazy-completion-table foo make-my-alist 'global)) |
| 793 | 793 | ||
| 794 | (make-local-variable 'bar) | 794 | (make-local-variable 'bar) |
| 795 | (setq bar (lazy-completion-table foo make-my-alist 'local) | 795 | (setq bar (lazy-completion-table foo make-my-alist 'local) |
| 796 | @end example | 796 | @end smallexample |
| 797 | @end defmac | 797 | @end defmac |
| 798 | 798 | ||
| 799 | @node Minibuffer Completion | 799 | @node Minibuffer Completion |
| @@ -879,12 +879,9 @@ Complete a foo: fo@point{} | |||
| 879 | If the user then types @kbd{@key{DEL} @key{DEL} b @key{RET}}, | 879 | If the user then types @kbd{@key{DEL} @key{DEL} b @key{RET}}, |
| 880 | @code{completing-read} returns @code{barfoo}. | 880 | @code{completing-read} returns @code{barfoo}. |
| 881 | 881 | ||
| 882 | The @code{completing-read} function binds three variables to pass | 882 | The @code{completing-read} function binds variables to pass |
| 883 | information to the commands that actually do completion. These | 883 | information to the commands that actually do completion. |
| 884 | variables are @code{minibuffer-completion-table}, | 884 | They are described in the following section. |
| 885 | @code{minibuffer-completion-predicate} and | ||
| 886 | @code{minibuffer-completion-confirm}. For more information about them, | ||
| 887 | see @ref{Completion Commands}. | ||
| 888 | @end defun | 885 | @end defun |
| 889 | 886 | ||
| 890 | @node Completion Commands | 887 | @node Completion Commands |
| @@ -898,55 +895,6 @@ some of the commands described below. @xref{Completion Options,,, | |||
| 898 | emacs, The GNU Emacs Manual}, for a short description of Partial | 895 | emacs, The GNU Emacs Manual}, for a short description of Partial |
| 899 | Completion mode. | 896 | Completion mode. |
| 900 | 897 | ||
| 901 | @defvar minibuffer-local-completion-map | ||
| 902 | @code{completing-read} uses this value as the local keymap when an | ||
| 903 | exact match of one of the completions is not required. By default, this | ||
| 904 | keymap makes the following bindings: | ||
| 905 | |||
| 906 | @table @asis | ||
| 907 | @item @kbd{?} | ||
| 908 | @code{minibuffer-completion-help} | ||
| 909 | |||
| 910 | @item @key{SPC} | ||
| 911 | @code{minibuffer-complete-word} | ||
| 912 | |||
| 913 | @item @key{TAB} | ||
| 914 | @code{minibuffer-complete} | ||
| 915 | @end table | ||
| 916 | |||
| 917 | @noindent | ||
| 918 | with other characters bound as in @code{minibuffer-local-map} | ||
| 919 | (@pxref{Definition of minibuffer-local-map}). | ||
| 920 | @end defvar | ||
| 921 | |||
| 922 | @defvar minibuffer-local-must-match-map | ||
| 923 | @code{completing-read} uses this value as the local keymap when an | ||
| 924 | exact match of one of the completions is required. Therefore, no keys | ||
| 925 | are bound to @code{exit-minibuffer}, the command that exits the | ||
| 926 | minibuffer unconditionally. By default, this keymap makes the following | ||
| 927 | bindings: | ||
| 928 | |||
| 929 | @table @asis | ||
| 930 | @item @kbd{?} | ||
| 931 | @code{minibuffer-completion-help} | ||
| 932 | |||
| 933 | @item @key{SPC} | ||
| 934 | @code{minibuffer-complete-word} | ||
| 935 | |||
| 936 | @item @key{TAB} | ||
| 937 | @code{minibuffer-complete} | ||
| 938 | |||
| 939 | @item @kbd{C-j} | ||
| 940 | @code{minibuffer-complete-and-exit} | ||
| 941 | |||
| 942 | @item @key{RET} | ||
| 943 | @code{minibuffer-complete-and-exit} | ||
| 944 | @end table | ||
| 945 | |||
| 946 | @noindent | ||
| 947 | with other characters bound as in @code{minibuffer-local-map}. | ||
| 948 | @end defvar | ||
| 949 | |||
| 950 | @defvar minibuffer-completion-table | 898 | @defvar minibuffer-completion-table |
| 951 | The value of this variable is the collection used for completion in | 899 | The value of this variable is the collection used for completion in |
| 952 | the minibuffer. This is the global variable that contains what | 900 | the minibuffer. This is the global variable that contains what |
| @@ -960,6 +908,13 @@ passes to @code{try-completion}. The variable is also used by the other | |||
| 960 | minibuffer completion functions. | 908 | minibuffer completion functions. |
| 961 | @end defvar | 909 | @end defvar |
| 962 | 910 | ||
| 911 | @defvar minibuffer-completion-confirm | ||
| 912 | When the value of this variable is non-@code{nil}, Emacs asks for | ||
| 913 | confirmation of a completion before exiting the minibuffer. | ||
| 914 | @code{completing-read} binds this variable, and the function | ||
| 915 | @code{minibuffer-complete-and-exit} checks the value before exiting. | ||
| 916 | @end defvar | ||
| 917 | |||
| 963 | @deffn Command minibuffer-complete-word | 918 | @deffn Command minibuffer-complete-word |
| 964 | This function completes the minibuffer contents by at most a single | 919 | This function completes the minibuffer contents by at most a single |
| 965 | word. Even if the minibuffer contents have only one completion, | 920 | word. Even if the minibuffer contents have only one completion, |
| @@ -980,13 +935,6 @@ immediately---the command is programmed to work without confirmation | |||
| 980 | when run twice in succession. | 935 | when run twice in succession. |
| 981 | @end deffn | 936 | @end deffn |
| 982 | 937 | ||
| 983 | @defvar minibuffer-completion-confirm | ||
| 984 | When the value of this variable is non-@code{nil}, Emacs asks for | ||
| 985 | confirmation of a completion before exiting the minibuffer. The | ||
| 986 | function @code{minibuffer-complete-and-exit} checks the value of this | ||
| 987 | variable before it exits. | ||
| 988 | @end defvar | ||
| 989 | |||
| 990 | @deffn Command minibuffer-completion-help | 938 | @deffn Command minibuffer-completion-help |
| 991 | This function creates a list of the possible completions of the | 939 | This function creates a list of the possible completions of the |
| 992 | current minibuffer contents. It works by calling @code{all-completions} | 940 | current minibuffer contents. It works by calling @code{all-completions} |
| @@ -1025,6 +973,55 @@ automatically display a list of possible completions whenever nothing | |||
| 1025 | can be completed because the next character is not uniquely determined. | 973 | can be completed because the next character is not uniquely determined. |
| 1026 | @end defopt | 974 | @end defopt |
| 1027 | 975 | ||
| 976 | @defvar minibuffer-local-completion-map | ||
| 977 | @code{completing-read} uses this value as the local keymap when an | ||
| 978 | exact match of one of the completions is not required. By default, this | ||
| 979 | keymap makes the following bindings: | ||
| 980 | |||
| 981 | @table @asis | ||
| 982 | @item @kbd{?} | ||
| 983 | @code{minibuffer-completion-help} | ||
| 984 | |||
| 985 | @item @key{SPC} | ||
| 986 | @code{minibuffer-complete-word} | ||
| 987 | |||
| 988 | @item @key{TAB} | ||
| 989 | @code{minibuffer-complete} | ||
| 990 | @end table | ||
| 991 | |||
| 992 | @noindent | ||
| 993 | with other characters bound as in @code{minibuffer-local-map} | ||
| 994 | (@pxref{Definition of minibuffer-local-map}). | ||
| 995 | @end defvar | ||
| 996 | |||
| 997 | @defvar minibuffer-local-must-match-map | ||
| 998 | @code{completing-read} uses this value as the local keymap when an | ||
| 999 | exact match of one of the completions is required. Therefore, no keys | ||
| 1000 | are bound to @code{exit-minibuffer}, the command that exits the | ||
| 1001 | minibuffer unconditionally. By default, this keymap makes the following | ||
| 1002 | bindings: | ||
| 1003 | |||
| 1004 | @table @asis | ||
| 1005 | @item @kbd{?} | ||
| 1006 | @code{minibuffer-completion-help} | ||
| 1007 | |||
| 1008 | @item @key{SPC} | ||
| 1009 | @code{minibuffer-complete-word} | ||
| 1010 | |||
| 1011 | @item @key{TAB} | ||
| 1012 | @code{minibuffer-complete} | ||
| 1013 | |||
| 1014 | @item @kbd{C-j} | ||
| 1015 | @code{minibuffer-complete-and-exit} | ||
| 1016 | |||
| 1017 | @item @key{RET} | ||
| 1018 | @code{minibuffer-complete-and-exit} | ||
| 1019 | @end table | ||
| 1020 | |||
| 1021 | @noindent | ||
| 1022 | with other characters bound as in @code{minibuffer-local-map}. | ||
| 1023 | @end defvar | ||
| 1024 | |||
| 1028 | @node High-Level Completion | 1025 | @node High-Level Completion |
| 1029 | @subsection High-Level Completion Functions | 1026 | @subsection High-Level Completion Functions |
| 1030 | 1027 | ||
diff --git a/lispref/modes.texi b/lispref/modes.texi index 2366fca5b96..ac13e30b90c 100644 --- a/lispref/modes.texi +++ b/lispref/modes.texi | |||
| @@ -395,7 +395,7 @@ setting up a buffer-local value for the variable | |||
| 395 | @item | 395 | @item |
| 396 | The mode should specify how Imenu should find the definitions or | 396 | The mode should specify how Imenu should find the definitions or |
| 397 | sections of a buffer, by setting up a buffer-local value for the | 397 | sections of a buffer, by setting up a buffer-local value for the |
| 398 | variable @code{imenu-generic-expression}, for the pair of variables | 398 | variable @code{imenu-generic-expression}, for the two variables |
| 399 | @code{imenu-prev-index-position-function} and | 399 | @code{imenu-prev-index-position-function} and |
| 400 | @code{imenu-extract-index-name-function}, or for the variable | 400 | @code{imenu-extract-index-name-function}, or for the variable |
| 401 | @code{imenu-create-index-function} (@pxref{Imenu}). | 401 | @code{imenu-create-index-function} (@pxref{Imenu}). |
| @@ -2290,8 +2290,8 @@ A nested sub-alist element looks like this: | |||
| 2290 | It creates the submenu @var{menu-title} specified by @var{sub-alist}. | 2290 | It creates the submenu @var{menu-title} specified by @var{sub-alist}. |
| 2291 | 2291 | ||
| 2292 | The default value of @code{imenu-create-index-function} is | 2292 | The default value of @code{imenu-create-index-function} is |
| 2293 | @code{imenu-default-create-index-function}. This function uses | 2293 | @code{imenu-default-create-index-function}. This function calls the |
| 2294 | @code{imenu-prev-index-position-function} and | 2294 | value of @code{imenu-prev-index-position-function} and the value of |
| 2295 | @code{imenu-extract-index-name-function} to produce the index alist. | 2295 | @code{imenu-extract-index-name-function} to produce the index alist. |
| 2296 | However, if either of these two variables is @code{nil}, the default | 2296 | However, if either of these two variables is @code{nil}, the default |
| 2297 | function uses @code{imenu-generic-expression} instead. | 2297 | function uses @code{imenu-generic-expression} instead. |
| @@ -2456,7 +2456,7 @@ highlighted (instead of the entire text that @var{matcher} matched). | |||
| 2456 | @end example | 2456 | @end example |
| 2457 | 2457 | ||
| 2458 | If you use @code{regexp-opt} to produce the regular expression | 2458 | If you use @code{regexp-opt} to produce the regular expression |
| 2459 | @var{matcher}, then you can use @code{regexp-opt-depth} (@pxref{Regexp | 2459 | @var{matcher}, you can use @code{regexp-opt-depth} (@pxref{Regexp |
| 2460 | Functions}) to calculate the value for @var{subexp}. | 2460 | Functions}) to calculate the value for @var{subexp}. |
| 2461 | 2461 | ||
| 2462 | @item (@var{matcher} . @var{facespec}) | 2462 | @item (@var{matcher} . @var{facespec}) |
| @@ -2657,8 +2657,7 @@ non-@code{nil} value, they are added at the end of | |||
| 2657 | Some modes provide specialized support you can use in additional | 2657 | Some modes provide specialized support you can use in additional |
| 2658 | highlighting patterns. See the variables | 2658 | highlighting patterns. See the variables |
| 2659 | @code{c-font-lock-extra-types}, @code{c++-font-lock-extra-types}, | 2659 | @code{c-font-lock-extra-types}, @code{c++-font-lock-extra-types}, |
| 2660 | @code{objc-font-lock-extra-types} and | 2660 | and @code{java-font-lock-extra-types}, for example. |
| 2661 | @code{java-font-lock-extra-types}, for example. | ||
| 2662 | 2661 | ||
| 2663 | @strong{Warning:} major mode functions must not call | 2662 | @strong{Warning:} major mode functions must not call |
| 2664 | @code{font-lock-add-keywords} under any circumstances, either directly | 2663 | @code{font-lock-add-keywords} under any circumstances, either directly |
diff --git a/lispref/nonascii.texi b/lispref/nonascii.texi index aaa23e90a48..9683156541d 100644 --- a/lispref/nonascii.texi +++ b/lispref/nonascii.texi | |||
| @@ -1067,11 +1067,11 @@ for decoding (in case @var{operation} does decoding), and | |||
| 1067 | @var{encoding-system} is the coding system for encoding (in case | 1067 | @var{encoding-system} is the coding system for encoding (in case |
| 1068 | @var{operation} does encoding). | 1068 | @var{operation} does encoding). |
| 1069 | 1069 | ||
| 1070 | The argument @var{operation} should be a symbol, one of | 1070 | The argument @var{operation} should be a symbol, any one of |
| 1071 | @code{insert-file-contents}, @code{write-region}, @code{call-process}, | 1071 | @code{insert-file-contents}, @code{write-region}, |
| 1072 | @code{call-process-region}, @code{start-process}, or | 1072 | @code{start-process}, @code{call-process}, @code{call-process-region}, |
| 1073 | @code{open-network-stream}. These are the names of the Emacs I/O primitives | 1073 | or @code{open-network-stream}. These are the names of the Emacs I/O |
| 1074 | that can do coding system conversion. | 1074 | primitives that can do coding system conversion. |
| 1075 | 1075 | ||
| 1076 | The remaining arguments should be the same arguments that might be given | 1076 | The remaining arguments should be the same arguments that might be given |
| 1077 | to that I/O primitive. Depending on the primitive, one of those | 1077 | to that I/O primitive. Depending on the primitive, one of those |
| @@ -1081,9 +1081,9 @@ name is the target. For subprocess primitives, the process name is the | |||
| 1081 | target. For @code{open-network-stream}, the target is the service name | 1081 | target. For @code{open-network-stream}, the target is the service name |
| 1082 | or port number. | 1082 | or port number. |
| 1083 | 1083 | ||
| 1084 | This function looks up the target in @code{file-coding-system-alist}, | 1084 | Depending on @var{operation}, this function looks up the target in |
| 1085 | @code{process-coding-system-alist}, or | 1085 | @code{file-coding-system-alist}, @code{process-coding-system-alist}, |
| 1086 | @code{network-coding-system-alist}, depending on @var{operation}. | 1086 | or @code{network-coding-system-alist}. |
| 1087 | @end defun | 1087 | @end defun |
| 1088 | 1088 | ||
| 1089 | @node Specifying Coding Systems | 1089 | @node Specifying Coding Systems |
diff --git a/lispref/os.texi b/lispref/os.texi index a1de8f09c36..7bc76799210 100644 --- a/lispref/os.texi +++ b/lispref/os.texi | |||
| @@ -91,10 +91,10 @@ name is usually @file{site-start.el}. | |||
| 91 | @cindex @file{site-start.el} | 91 | @cindex @file{site-start.el} |
| 92 | 92 | ||
| 93 | @item | 93 | @item |
| 94 | It loads your init file (usually @file{~/.emacs}), unless @samp{-q} | 94 | It loads your init file (usually @file{~/.emacs}), unless the option |
| 95 | (or @samp{--no-init-file}), @samp{-Q}, or @samp{--batch} was specified | 95 | @samp{-q} (or @samp{--no-init-file}), @samp{-Q}, or @samp{--batch} was |
| 96 | on the command line. The @samp{-u} option can specify another user | 96 | specified on the command line. The @samp{-u} option can specify |
| 97 | whose home directory should be used instead of @file{~}. | 97 | another user whose home directory should be used instead of @file{~}. |
| 98 | 98 | ||
| 99 | @item | 99 | @item |
| 100 | It loads the library @file{default} (if any), unless | 100 | It loads the library @file{default} (if any), unless |
| @@ -606,9 +606,10 @@ through various functions. These variables include the name of the | |||
| 606 | system, the user's @acronym{UID}, and so on. | 606 | system, the user's @acronym{UID}, and so on. |
| 607 | 607 | ||
| 608 | @defvar system-configuration | 608 | @defvar system-configuration |
| 609 | This variable holds the GNU configuration name for the hardware/software | 609 | This variable holds the standard GNU configuration name for the |
| 610 | configuration of your system, as a string. The convenient way to test | 610 | hardware/software configuration of your system, as a string. The |
| 611 | parts of this string is with @code{string-match}. | 611 | convenient way to test parts of this string is with |
| 612 | @code{string-match}. | ||
| 612 | @end defvar | 613 | @end defvar |
| 613 | 614 | ||
| 614 | @defvar system-type | 615 | @defvar system-type |
| @@ -1375,6 +1376,9 @@ both before and after changing the buffer, to separate the timer's | |||
| 1375 | changes from user commands' changes and prevent a single undo entry | 1376 | changes from user commands' changes and prevent a single undo entry |
| 1376 | from growing to be quite large. | 1377 | from growing to be quite large. |
| 1377 | 1378 | ||
| 1379 | If a timer function calls functions that can change the match data, | ||
| 1380 | it should save and restore the match data. @xref{Saving Match Data}. | ||
| 1381 | |||
| 1378 | @deffn Command run-at-time time repeat function &rest args | 1382 | @deffn Command run-at-time time repeat function &rest args |
| 1379 | This sets up a timer that calls the function @var{function} with | 1383 | This sets up a timer that calls the function @var{function} with |
| 1380 | arguments @var{args} at time @var{time}. If @var{repeat} is a number | 1384 | arguments @var{args} at time @var{time}. If @var{repeat} is a number |
diff --git a/lispref/processes.texi b/lispref/processes.texi index 07a72886355..f88b2c46159 100644 --- a/lispref/processes.texi +++ b/lispref/processes.texi | |||
| @@ -52,6 +52,7 @@ This function returns @code{t} if @var{object} is a process, | |||
| 52 | * Datagrams:: UDP network connections. | 52 | * Datagrams:: UDP network connections. |
| 53 | * Low-Level Network:: Lower-level but more general function | 53 | * Low-Level Network:: Lower-level but more general function |
| 54 | to create connections and servers. | 54 | to create connections and servers. |
| 55 | * Byte Packing:: Using bindat to pack and unpack binary data. | ||
| 55 | @end menu | 56 | @end menu |
| 56 | 57 | ||
| 57 | @node Subprocess Creation | 58 | @node Subprocess Creation |
| @@ -168,7 +169,7 @@ function. | |||
| 168 | (shell-quote-argument "foo > bar") | 169 | (shell-quote-argument "foo > bar") |
| 169 | @result{} "foo\\ \\>\\ bar" | 170 | @result{} "foo\\ \\>\\ bar" |
| 170 | 171 | ||
| 171 | ;; @r{This example shows the behavior on MS-DOS and MS-Windows systems.} | 172 | ;; @r{This example shows the behavior on MS-DOS and MS-Windows.} |
| 172 | (shell-quote-argument "foo > bar") | 173 | (shell-quote-argument "foo > bar") |
| 173 | @result{} "\"foo > bar\"" | 174 | @result{} "\"foo > bar\"" |
| 174 | @end example | 175 | @end example |
| @@ -766,9 +767,9 @@ specify the process to send input to, and the input data to send. The | |||
| 766 | data appears on the ``standard input'' of the subprocess. | 767 | data appears on the ``standard input'' of the subprocess. |
| 767 | 768 | ||
| 768 | Some operating systems have limited space for buffered input in a | 769 | Some operating systems have limited space for buffered input in a |
| 769 | @acronym{PTY}. On these systems, Emacs sends an @acronym{EOF} periodically amidst | 770 | @acronym{PTY}. On these systems, Emacs sends an @acronym{EOF} |
| 770 | the other characters, to force them through. For most programs, | 771 | periodically amidst the other characters, to force them through. For |
| 771 | these @acronym{EOF}s do no harm. | 772 | most programs, these @acronym{EOF}s do no harm. |
| 772 | 773 | ||
| 773 | Subprocess input is normally encoded using a coding system before the | 774 | Subprocess input is normally encoded using a coding system before the |
| 774 | subprocess receives it, much like text written into a file. You can use | 775 | subprocess receives it, much like text written into a file. You can use |
| @@ -972,7 +973,7 @@ primitive that waits. | |||
| 972 | @defvar process-adaptive-read-buffering | 973 | @defvar process-adaptive-read-buffering |
| 973 | On some systems, when Emacs reads the output from a subprocess, the | 974 | On some systems, when Emacs reads the output from a subprocess, the |
| 974 | output data is read in very small blocks, potentially resulting in | 975 | output data is read in very small blocks, potentially resulting in |
| 975 | very poor performance. This behaviour can be remedied to some extent | 976 | very poor performance. This behavior can be remedied to some extent |
| 976 | by setting the variable @var{process-adaptive-read-buffering} to a | 977 | by setting the variable @var{process-adaptive-read-buffering} to a |
| 977 | non-@code{nil} value (the default), as it will automatically delay reading | 978 | non-@code{nil} value (the default), as it will automatically delay reading |
| 978 | from such processes, thus allowing them to produce more output before | 979 | from such processes, thus allowing them to produce more output before |
| @@ -1559,7 +1560,7 @@ back to listening for more connection requests. | |||
| 1559 | keyword/argument pairs, for example @code{:server t} to create a | 1560 | keyword/argument pairs, for example @code{:server t} to create a |
| 1560 | server process, or @code{:type 'datagram} to create a datagram | 1561 | server process, or @code{:type 'datagram} to create a datagram |
| 1561 | connection. @xref{Low-Level Network}, for details. You can also use | 1562 | connection. @xref{Low-Level Network}, for details. You can also use |
| 1562 | the @code{open-network-stream} function descibed below. | 1563 | the @code{open-network-stream} function described below. |
| 1563 | 1564 | ||
| 1564 | You can distinguish process objects representing network connections | 1565 | You can distinguish process objects representing network connections |
| 1565 | and servers from those representing subprocesses with the | 1566 | and servers from those representing subprocesses with the |
| @@ -1823,7 +1824,8 @@ If you don't specify this keyword at all, the default | |||
| 1823 | is to determine the coding systems from the data. | 1824 | is to determine the coding systems from the data. |
| 1824 | 1825 | ||
| 1825 | @item :noquery @var{query-flag} | 1826 | @item :noquery @var{query-flag} |
| 1826 | Initialize the process query flag to @var{query-flag}. @xref{Query Before Exit}. | 1827 | Initialize the process query flag to @var{query-flag}. |
| 1828 | @xref{Query Before Exit}. | ||
| 1827 | 1829 | ||
| 1828 | @item :filter @var{filter} | 1830 | @item :filter @var{filter} |
| 1829 | Initialize the process filter to @var{filter}. | 1831 | Initialize the process filter to @var{filter}. |
| @@ -1938,7 +1940,8 @@ and @var{remote-address} arguments to @code{make-network-process}. | |||
| 1938 | 1940 | ||
| 1939 | @defun network-interface-info ifname | 1941 | @defun network-interface-info ifname |
| 1940 | This function returns information about the network interface named | 1942 | This function returns information about the network interface named |
| 1941 | @var{ifname}. The value is a list of the form @code{(@var{addr} @var{bcast} @var{netmask} @var{hwaddr} @var{flags})}. | 1943 | @var{ifname}. The value is a list of the form |
| 1944 | @code{(@var{addr} @var{bcast} @var{netmask} @var{hwaddr} @var{flags})}. | ||
| 1942 | 1945 | ||
| 1943 | @table @var | 1946 | @table @var |
| 1944 | @item addr | 1947 | @item addr |
| @@ -2015,7 +2018,411 @@ That particular network option is supported by | |||
| 2015 | @code{make-network-process} and @code{set-network-process-option}. | 2018 | @code{make-network-process} and @code{set-network-process-option}. |
| 2016 | @end table | 2019 | @end table |
| 2017 | 2020 | ||
| 2021 | @node Byte Packing | ||
| 2022 | @section Packing and Unpacking Byte Arrays | ||
| 2023 | |||
| 2024 | This section describes how to pack and unpack arrays of bytes, | ||
| 2025 | usually for binary network protocols. These functions convert byte arrays | ||
| 2026 | to alists, and vice versa. The byte array can be represented as a | ||
| 2027 | unibyte string or as a vector of integers, while the alist associates | ||
| 2028 | symbols either with fixed-size objects or with recursive sub-alists. | ||
| 2029 | |||
| 2030 | @cindex serializing | ||
| 2031 | @cindex deserializing | ||
| 2032 | @cindex packing | ||
| 2033 | @cindex unpacking | ||
| 2034 | Conversion from byte arrays to nested alists is also known as | ||
| 2035 | @dfn{deserializing} or @dfn{unpacking}, while going in the opposite | ||
| 2036 | direction is also known as @dfn{serializing} or @dfn{packing}. | ||
| 2037 | |||
| 2038 | @menu | ||
| 2039 | * Bindat Spec:: Describing data layout. | ||
| 2040 | * Bindat Functions:: Doing the unpacking and packing. | ||
| 2041 | * Bindat Examples:: Samples of what bindat.el can do for you! | ||
| 2042 | @end menu | ||
| 2043 | |||
| 2044 | @node Bindat Spec | ||
| 2045 | @subsection Describing Data Layout | ||
| 2046 | |||
| 2047 | To control unpacking and packing, you write a @dfn{data layout | ||
| 2048 | specification}, a special nested list describing named and typed | ||
| 2049 | @dfn{fields}. This specification controls length of each field to be | ||
| 2050 | processed, and how to pack or unpack it. | ||
| 2051 | |||
| 2052 | @cindex endianness | ||
| 2053 | @cindex big endian | ||
| 2054 | @cindex little endian | ||
| 2055 | @cindex network byte ordering | ||
| 2056 | A field's @dfn{type} describes the size (in bytes) of the object | ||
| 2057 | that the field represents and, in the case of multibyte fields, how | ||
| 2058 | the bytes are ordered within the field. The two possible orderings | ||
| 2059 | are ``big endian'' (also known as ``network byte ordering'') and | ||
| 2060 | ``little endian''. For instance, the number @code{#x23cd} (decimal | ||
| 2061 | 9165) in big endian would be the two bytes @code{#x23} @code{#xcd}; | ||
| 2062 | and in little endian, @code{#xcd} @code{#x23}. Here are the possible | ||
| 2063 | type values: | ||
| 2064 | |||
| 2065 | @table @code | ||
| 2066 | @item u8 | ||
| 2067 | @itemx byte | ||
| 2068 | Unsigned byte, with length 1. | ||
| 2069 | |||
| 2070 | @item u16 | ||
| 2071 | @itemx word | ||
| 2072 | @itemx short | ||
| 2073 | Unsigned integer in network byte order, with length 2. | ||
| 2074 | |||
| 2075 | @item u24 | ||
| 2076 | Unsigned integer in network byte order, with length 3. | ||
| 2077 | |||
| 2078 | @item u32 | ||
| 2079 | @itemx dword | ||
| 2080 | @itemx long | ||
| 2081 | Unsigned integer in network byte order, with length 4. | ||
| 2082 | Note: These values may be limited by Emacs' integer implementation limits. | ||
| 2083 | |||
| 2084 | @item u16r | ||
| 2085 | @itemx u24r | ||
| 2086 | @itemx u32r | ||
| 2087 | Unsigned integer in little endian order, with length 2, 3 and 4, respectively. | ||
| 2088 | |||
| 2089 | @item str @var{len} | ||
| 2090 | String of length @var{len}. | ||
| 2091 | |||
| 2092 | @item strz @var{len} | ||
| 2093 | Zero-terminated string of length @var{len}. | ||
| 2094 | |||
| 2095 | @item vec @var{len} | ||
| 2096 | Vector of @var{len} bytes. | ||
| 2097 | |||
| 2098 | @item ip | ||
| 2099 | Four-byte vector representing an Internet address. For example: | ||
| 2100 | @code{[127 0 0 1]} for localhost. | ||
| 2101 | |||
| 2102 | @item bits @var{len} | ||
| 2103 | List of set bits in @var{len} bytes. The bytes are taken in big | ||
| 2104 | endian order and the bits are numbered starting with @code{8 * | ||
| 2105 | @var{len} @minus{} 1} and ending with zero. For example: @code{bits | ||
| 2106 | 2} unpacks @code{#x28} @code{#x1c} to @code{(2 3 4 11 13)} and | ||
| 2107 | @code{#x1c} @code{#x28} to @code{(3 5 10 11 12)}. | ||
| 2108 | |||
| 2109 | @item (eval @var{form}) | ||
| 2110 | @var{form} is a Lisp expression evaluated at the moment the field is | ||
| 2111 | unpacked or packed. The result of the evaluation should be one of the | ||
| 2112 | above-listed type specifications. | ||
| 2113 | @end table | ||
| 2114 | |||
| 2115 | A field specification generally has the form @code{([@var{name}] | ||
| 2116 | @var{handler})}. The square braces indicate that @var{name} is | ||
| 2117 | optional. (Don't use names that are symbols meaningful as type | ||
| 2118 | specifications (above) or handler specifications (below), since that | ||
| 2119 | would be ambiguous.) @var{name} can be a symbol or the expression | ||
| 2120 | @code{(eval @var{form})}, in which case @var{form} should evaluate to | ||
| 2121 | a symbol. | ||
| 2122 | |||
| 2123 | @var{handler} describes how to unpack or pack the field and can be one | ||
| 2124 | of the following: | ||
| 2125 | |||
| 2126 | @table @code | ||
| 2127 | @item @var{type} | ||
| 2128 | Unpack/pack this field according to the type specification @var{type}. | ||
| 2129 | |||
| 2130 | @item eval @var{form} | ||
| 2131 | Evaluate @var{form}, a Lisp expression, for side-effect only. If the | ||
| 2132 | field name is specified, the value is bound to that field name. | ||
| 2133 | @var{form} can access and update these dynamically bound variables: | ||
| 2134 | |||
| 2135 | @table @code | ||
| 2136 | @item raw-data | ||
| 2137 | The data as a byte array. | ||
| 2138 | |||
| 2139 | @item pos | ||
| 2140 | Current position of the unpacking or packing operation. | ||
| 2141 | |||
| 2142 | @item struct | ||
| 2143 | Alist. | ||
| 2144 | |||
| 2145 | @item last | ||
| 2146 | Value of the last field processed. | ||
| 2147 | @end table | ||
| 2148 | |||
| 2149 | @item fill @var{len} | ||
| 2150 | Skip @var{len} bytes. In packing, this leaves them unchanged, | ||
| 2151 | which normally means they remain zero. In unpacking, this means | ||
| 2152 | they are ignored. | ||
| 2153 | |||
| 2154 | @item align @var{len} | ||
| 2155 | Skip to the next multiple of @var{len} bytes. | ||
| 2156 | |||
| 2157 | @item struct @var{spec-name} | ||
| 2158 | Process @var{spec-name} as a sub-specification. This describes a | ||
| 2159 | structure nested within another structure. | ||
| 2160 | |||
| 2161 | @item union @var{form} (@var{tag} @var{spec})@dots{} | ||
| 2162 | @c ??? I don't see how one would actually use this. | ||
| 2163 | @c ??? what kind of expression would be useful for @var{form}? | ||
| 2164 | Evaluate @var{form}, a Lisp expression, find the first @var{tag} | ||
| 2165 | that matches it, and process its associated data layout specification | ||
| 2166 | @var{spec}. Matching can occur in one of three ways: | ||
| 2167 | |||
| 2168 | @itemize | ||
| 2169 | @item | ||
| 2170 | If a @var{tag} has the form @code{(eval @var{expr})}, evaluate | ||
| 2171 | @var{expr} with the variable @code{tag} dynamically bound to the value | ||
| 2172 | of @var{form}. A non-@code{nil} result indicates a match. | ||
| 2173 | |||
| 2174 | @item | ||
| 2175 | @var{tag} matches if it is @code{equal} to the value of @var{form}. | ||
| 2176 | |||
| 2177 | @item | ||
| 2178 | @var{tag} matches unconditionally if it is @code{t}. | ||
| 2179 | @end itemize | ||
| 2180 | |||
| 2181 | @item repeat @var{count} @var{field-spec}@dots{} | ||
| 2182 | @var{count} may be an integer, or a list of one element naming a | ||
| 2183 | previous field. For correct operation, each @var{field-spec} must | ||
| 2184 | include a name. | ||
| 2185 | @c ??? What does it MEAN? | ||
| 2186 | @end table | ||
| 2187 | |||
| 2188 | @node Bindat Functions | ||
| 2189 | @subsection Functions to Unpack and Pack Bytes | ||
| 2190 | |||
| 2191 | In the following documentation, @var{spec} refers to a data layout | ||
| 2192 | specification, @code{raw-data} to a byte array, and @var{struct} to an | ||
| 2193 | alist representing unpacked field data. | ||
| 2194 | |||
| 2195 | @defun bindat-unpack spec raw-data &optional pos | ||
| 2196 | This function unpacks data from the byte array @code{raw-data} | ||
| 2197 | according to @var{spec}. Normally this starts unpacking at the | ||
| 2198 | beginning of the byte array, but if @var{pos} is non-@code{nil}, it | ||
| 2199 | specifies a zero-based starting position to use instead. | ||
| 2200 | |||
| 2201 | The value is an alist or nested alist in which each element describes | ||
| 2202 | one unpacked field. | ||
| 2203 | @end defun | ||
| 2204 | |||
| 2205 | @defun bindat-get-field struct &rest name | ||
| 2206 | This function selects a field's data from the nested alist | ||
| 2207 | @var{struct}. Usually @var{struct} was returned by | ||
| 2208 | @code{bindat-unpack}. If @var{name} corresponds to just one argument, | ||
| 2209 | that means to extract a top-level field value. Multiple @var{name} | ||
| 2210 | arguments specify repeated lookup of sub-structures. An integer name | ||
| 2211 | acts as an array index. | ||
| 2212 | |||
| 2213 | For example, if @var{name} is @code{(a b 2 c)}, that means to find | ||
| 2214 | field @code{c} in the second element of subfield @code{b} of field | ||
| 2215 | @code{a}. (This corresponds to @code{struct.a.b[2].c} in C.) | ||
| 2216 | @end defun | ||
| 2217 | |||
| 2218 | @defun bindat-length spec struct | ||
| 2219 | @c ??? I don't understand this at all -- rms | ||
| 2220 | This function returns the length in bytes of @var{struct}, according | ||
| 2221 | to @var{spec}. | ||
| 2222 | @end defun | ||
| 2223 | |||
| 2224 | @defun bindat-pack spec struct &optional raw-data pos | ||
| 2225 | This function returns a byte array packed according to @var{spec} from | ||
| 2226 | the data in the alist @var{struct}. Normally it creates and fills a | ||
| 2227 | new byte array starting at the beginning. However, if @var{raw-data} | ||
| 2228 | is non-@code{nil}, it specifies a pre-allocated string or vector to | ||
| 2229 | pack into. If @var{pos} is non-@code{nil}, it specifies the starting | ||
| 2230 | offset for packing into @code{raw-data}. | ||
| 2231 | |||
| 2232 | @c ??? Isn't this a bug? Shouldn't it always be unibyte? | ||
| 2233 | Note: The result is a multibyte string; use @code{string-make-unibyte} | ||
| 2234 | on it to make it unibyte if necessary. | ||
| 2235 | @end defun | ||
| 2236 | |||
| 2237 | @defun bindat-ip-to-string ip | ||
| 2238 | Convert the Internet address vector @var{ip} to a string in the usual | ||
| 2239 | dotted notation. | ||
| 2240 | |||
| 2241 | @example | ||
| 2242 | (bindat-ip-to-string [127 0 0 1]) | ||
| 2243 | @result{} "127.0.0.1" | ||
| 2244 | @end example | ||
| 2245 | @end defun | ||
| 2246 | |||
| 2247 | @node Bindat Examples | ||
| 2248 | @subsection Examples of Byte Unpacking and Packing | ||
| 2249 | |||
| 2250 | Here is a complete example of byte unpacking and packing: | ||
| 2251 | |||
| 2252 | @lisp | ||
| 2253 | (defvar fcookie-index-spec | ||
| 2254 | '((:version u32) | ||
| 2255 | (:count u32) | ||
| 2256 | (:longest u32) | ||
| 2257 | (:shortest u32) | ||
| 2258 | (:flags u32) | ||
| 2259 | (:delim u8) | ||
| 2260 | (:ignored fill 3) | ||
| 2261 | (:offset repeat (:count) | ||
| 2262 | (:foo u32))) | ||
| 2263 | "Description of a fortune cookie index file's contents.") | ||
| 2264 | |||
| 2265 | (defun fcookie (cookies &optional index) | ||
| 2266 | "Display a random fortune cookie from file COOKIES. | ||
| 2267 | Optional second arg INDEX specifies the associated index | ||
| 2268 | filename, which is by default constructed by appending | ||
| 2269 | \".dat\" to COOKIES. Display cookie text in possibly | ||
| 2270 | new buffer \"*Fortune Cookie: BASENAME*\" where BASENAME | ||
| 2271 | is COOKIES without the directory part." | ||
| 2272 | (interactive "fCookies file: ") | ||
| 2273 | (let* ((info (with-temp-buffer | ||
| 2274 | (insert-file-contents-literally | ||
| 2275 | (or index (concat cookies ".dat"))) | ||
| 2276 | (bindat-unpack fcookie-index-spec | ||
| 2277 | (buffer-string)))) | ||
| 2278 | (sel (random (bindat-get-field info :count))) | ||
| 2279 | (beg (cdar (bindat-get-field info :offset sel))) | ||
| 2280 | (end (or (cdar (bindat-get-field info | ||
| 2281 | :offset (1+ sel))) | ||
| 2282 | (nth 7 (file-attributes cookies))))) | ||
| 2283 | (switch-to-buffer | ||
| 2284 | (get-buffer-create | ||
| 2285 | (format "*Fortune Cookie: %s*" | ||
| 2286 | (file-name-nondirectory cookies)))) | ||
| 2287 | (erase-buffer) | ||
| 2288 | (insert-file-contents-literally | ||
| 2289 | cookies nil beg (- end 3)))) | ||
| 2290 | |||
| 2291 | (defun fcookie-create-index (cookies &optional index delim) | ||
| 2292 | "Scan file COOKIES, and write out its index file. | ||
| 2293 | Optional second arg INDEX specifies the index filename, | ||
| 2294 | which is by default constructed by appending \".dat\" to | ||
| 2295 | COOKIES. Optional third arg DELIM specifies the unibyte | ||
| 2296 | character which, when found on a line of its own in | ||
| 2297 | COOKIES, indicates the border between entries." | ||
| 2298 | (interactive "fCookies file: ") | ||
| 2299 | (setq delim (or delim ?%)) | ||
| 2300 | (let ((delim-line (format "\n%c\n" delim)) | ||
| 2301 | (count 0) | ||
| 2302 | (max 0) | ||
| 2303 | min p q len offsets) | ||
| 2304 | (unless (= 3 (string-bytes delim-line)) | ||
| 2305 | (error "Delimiter cannot be represented in one byte")) | ||
| 2306 | (with-temp-buffer | ||
| 2307 | (insert-file-contents-literally cookies) | ||
| 2308 | (while (and (setq p (point)) | ||
| 2309 | (search-forward delim-line (point-max) t) | ||
| 2310 | (setq len (- (point) 3 p))) | ||
| 2311 | (setq count (1+ count) | ||
| 2312 | max (max max len) | ||
| 2313 | min (min (or min max) len) | ||
| 2314 | offsets (cons (1- p) offsets)))) | ||
| 2315 | (with-temp-buffer | ||
| 2316 | (set-buffer-multibyte nil) | ||
| 2317 | (insert | ||
| 2318 | (string-make-unibyte | ||
| 2319 | (bindat-pack | ||
| 2320 | fcookie-index-spec | ||
| 2321 | `((:version . 2) | ||
| 2322 | (:count . ,count) | ||
| 2323 | (:longest . ,max) | ||
| 2324 | (:shortest . ,min) | ||
| 2325 | (:flags . 0) | ||
| 2326 | (:delim . ,delim) | ||
| 2327 | (:offset . ,(mapcar (lambda (o) | ||
| 2328 | (list (cons :foo o))) | ||
| 2329 | (nreverse offsets))))))) | ||
| 2330 | (let ((coding-system-for-write 'raw-text-unix)) | ||
| 2331 | (write-file (or index (concat cookies ".dat"))))))) | ||
| 2332 | @end lisp | ||
| 2333 | |||
| 2334 | Following is an example of defining and unpacking a complex structure. | ||
| 2335 | Consider the following C structures: | ||
| 2336 | |||
| 2337 | @example | ||
| 2338 | struct header @{ | ||
| 2339 | unsigned long dest_ip; | ||
| 2340 | unsigned long src_ip; | ||
| 2341 | unsigned short dest_port; | ||
| 2342 | unsigned short src_port; | ||
| 2343 | @}; | ||
| 2344 | |||
| 2345 | struct data @{ | ||
| 2346 | unsigned char type; | ||
| 2347 | unsigned char opcode; | ||
| 2348 | unsigned long length; /* In little endian order */ | ||
| 2349 | unsigned char id[8]; /* null-terminated string */ | ||
| 2350 | unsigned char data[/* (length + 3) & ~3 */]; | ||
| 2351 | @}; | ||
| 2352 | |||
| 2353 | struct packet @{ | ||
| 2354 | struct header header; | ||
| 2355 | unsigned char items; | ||
| 2356 | unsigned char filler[3]; | ||
| 2357 | struct data item[/* items */]; | ||
| 2358 | |||
| 2359 | @}; | ||
| 2360 | @end example | ||
| 2361 | |||
| 2362 | The corresponding data layout specification: | ||
| 2363 | |||
| 2364 | @lisp | ||
| 2365 | (setq header-spec | ||
| 2366 | '((dest-ip ip) | ||
| 2367 | (src-ip ip) | ||
| 2368 | (dest-port u16) | ||
| 2369 | (src-port u16))) | ||
| 2370 | |||
| 2371 | (setq data-spec | ||
| 2372 | '((type u8) | ||
| 2373 | (opcode u8) | ||
| 2374 | (length u16r) ;; little endian order | ||
| 2375 | (id strz 8) | ||
| 2376 | (data vec (length)) | ||
| 2377 | (align 4))) | ||
| 2378 | |||
| 2379 | (setq packet-spec | ||
| 2380 | '((header struct header-spec) | ||
| 2381 | (items u8) | ||
| 2382 | (fill 3) | ||
| 2383 | (item repeat (items) | ||
| 2384 | (struct data-spec)))) | ||
| 2385 | @end lisp | ||
| 2386 | |||
| 2387 | A binary data representation: | ||
| 2388 | |||
| 2389 | @lisp | ||
| 2390 | (setq binary-data | ||
| 2391 | [ 192 168 1 100 192 168 1 101 01 28 21 32 2 0 0 0 | ||
| 2392 | 2 3 5 0 ?A ?B ?C ?D ?E ?F 0 0 1 2 3 4 5 0 0 0 | ||
| 2393 | 1 4 7 0 ?B ?C ?D ?E ?F ?G 0 0 6 7 8 9 10 11 12 0 ]) | ||
| 2394 | @end lisp | ||
| 2395 | |||
| 2396 | The corresponding decoded structure: | ||
| 2397 | |||
| 2398 | @lisp | ||
| 2399 | (setq decoded (bindat-unpack packet-spec binary-data)) | ||
| 2400 | @result{} | ||
| 2401 | ((header | ||
| 2402 | (dest-ip . [192 168 1 100]) | ||
| 2403 | (src-ip . [192 168 1 101]) | ||
| 2404 | (dest-port . 284) | ||
| 2405 | (src-port . 5408)) | ||
| 2406 | (items . 2) | ||
| 2407 | (item ((data . [1 2 3 4 5]) | ||
| 2408 | (id . "ABCDEF") | ||
| 2409 | (length . 5) | ||
| 2410 | (opcode . 3) | ||
| 2411 | (type . 2)) | ||
| 2412 | ((data . [6 7 8 9 10 11 12]) | ||
| 2413 | (id . "BCDEFG") | ||
| 2414 | (length . 7) | ||
| 2415 | (opcode . 4) | ||
| 2416 | (type . 1)))) | ||
| 2417 | @end lisp | ||
| 2418 | |||
| 2419 | Fetching data from this structure: | ||
| 2420 | |||
| 2421 | @lisp | ||
| 2422 | (bindat-get-field decoded 'item 1 'id) | ||
| 2423 | @result{} "BCDEFG" | ||
| 2424 | @end lisp | ||
| 2425 | |||
| 2018 | @ignore | 2426 | @ignore |
| 2019 | arch-tag: ba9da253-e65f-4e7f-b727-08fba0a1df7a | 2427 | arch-tag: ba9da253-e65f-4e7f-b727-08fba0a1df7a |
| 2020 | @end ignore | 2428 | @end ignore |
| 2021 | |||
diff --git a/lispref/searching.texi b/lispref/searching.texi index 15037068dd2..f2f21458506 100644 --- a/lispref/searching.texi +++ b/lispref/searching.texi | |||
| @@ -244,16 +244,15 @@ first tries to match all three @samp{a}s; but the rest of the pattern is | |||
| 244 | The next alternative is for @samp{a*} to match only two @samp{a}s. With | 244 | The next alternative is for @samp{a*} to match only two @samp{a}s. With |
| 245 | this choice, the rest of the regexp matches successfully.@refill | 245 | this choice, the rest of the regexp matches successfully.@refill |
| 246 | 246 | ||
| 247 | Nested repetition operators can be extremely slow or loop infinitely | 247 | Nested repetition operators take a long time, or even forever, if they |
| 248 | if they use repetition operators inside repetition operators. For | 248 | lead to ambiguous matching. For example, trying to match the regular |
| 249 | example, it could take hours for the regular expression | 249 | expression @samp{\(x+y*\)*a} against the string |
| 250 | @samp{\(x+y*\)*a} to try to match the sequence | 250 | @samp{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxz} could take hours before it |
| 251 | @samp{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxz}, before it ultimately | 251 | ultimately fails. Emacs must try each way of grouping the 35 |
| 252 | fails. Emacs must try each way of grouping the 35 @samp{x}s before | 252 | @samp{x}s before concluding that none of them can work. Even worse, |
| 253 | concluding that none of them can work. Even worse, @samp{\(x*\)*} can | 253 | @samp{\(x*\)*} can match the null string in infinitely many ways, so |
| 254 | match the null string in infinitely many ways, so it causes an | 254 | it causes an infinite loop. To avoid these problems, check nested |
| 255 | infinite loop. To avoid these problems, check nested repetitions | 255 | repetitions carefully. |
| 256 | carefully. | ||
| 257 | 256 | ||
| 258 | @item @samp{+} | 257 | @item @samp{+} |
| 259 | @cindex @samp{+} in regexp | 258 | @cindex @samp{+} in regexp |
| @@ -347,9 +346,10 @@ different characters. | |||
| 347 | 346 | ||
| 348 | @item @samp{[^ @dots{} ]} | 347 | @item @samp{[^ @dots{} ]} |
| 349 | @cindex @samp{^} in regexp | 348 | @cindex @samp{^} in regexp |
| 350 | @samp{[^} begins a @dfn{complemented character alternative}, which matches any | 349 | @samp{[^} begins a @dfn{complemented character alternative}. This |
| 351 | character except the ones specified. Thus, @samp{[^a-z0-9A-Z]} matches | 350 | matches any character except the ones specified. Thus, |
| 352 | all characters @emph{except} letters and digits. | 351 | @samp{[^a-z0-9A-Z]} matches all characters @emph{except} letters and |
| 352 | digits. | ||
| 353 | 353 | ||
| 354 | @samp{^} is not special in a character alternative unless it is the first | 354 | @samp{^} is not special in a character alternative unless it is the first |
| 355 | character. The character following the @samp{^} is treated as if it | 355 | character. The character following the @samp{^} is treated as if it |
| @@ -1531,8 +1531,9 @@ are reseated to point to nowhere, and if the value is @code{evaporate}, | |||
| 1531 | the markers are put back on the free list. | 1531 | the markers are put back on the free list. |
| 1532 | 1532 | ||
| 1533 | @strong{Warning:} When @code{evaporate} is specified for @var{reseat}, | 1533 | @strong{Warning:} When @code{evaporate} is specified for @var{reseat}, |
| 1534 | no other references to the markers on the @var{reuse} list; otherwise, | 1534 | you must ensure that no other references to the markers on the |
| 1535 | Emacs may crash during the next garbage collection. | 1535 | @var{reuse} list exists; otherwise, Emacs may crash during the next |
| 1536 | garbage collection. | ||
| 1536 | 1537 | ||
| 1537 | As always, there must be no possibility of intervening searches between | 1538 | As always, there must be no possibility of intervening searches between |
| 1538 | the call to a search function and the call to @code{match-data} that is | 1539 | the call to a search function and the call to @code{match-data} that is |
| @@ -1563,8 +1564,9 @@ are reseated to point to nowhere, and if the value is @code{evaporate}, | |||
| 1563 | the markers are put back on the free list. | 1564 | the markers are put back on the free list. |
| 1564 | 1565 | ||
| 1565 | @strong{Warning:} When @code{evaporate} is specified for @var{reseat}, | 1566 | @strong{Warning:} When @code{evaporate} is specified for @var{reseat}, |
| 1566 | no other references to the markers on the @var{match-list} list; otherwise, | 1567 | you must ensure that no other references to the markers on the |
| 1567 | Emacs may crash during the next garbage collection. | 1568 | @var{match-list} list exists; otherwise, Emacs may crash during the |
| 1569 | next garbage collection. | ||
| 1568 | 1570 | ||
| 1569 | @findex store-match-data | 1571 | @findex store-match-data |
| 1570 | @code{store-match-data} is a semi-obsolete alias for @code{set-match-data}. | 1572 | @code{store-match-data} is a semi-obsolete alias for @code{set-match-data}. |
diff --git a/lispref/strings.texi b/lispref/strings.texi index b70e8d9f9d4..d0504684f82 100644 --- a/lispref/strings.texi +++ b/lispref/strings.texi | |||
| @@ -298,7 +298,8 @@ useful. If you need such a result, use an explicit value for | |||
| 298 | @var{separators}: | 298 | @var{separators}: |
| 299 | 299 | ||
| 300 | @example | 300 | @example |
| 301 | (split-string " two words " split-string-default-separators) | 301 | (split-string " two words " |
| 302 | split-string-default-separators) | ||
| 302 | @result{} ("" "two" "words" "") | 303 | @result{} ("" "two" "words" "") |
| 303 | @end example | 304 | @end example |
| 304 | 305 | ||
| @@ -353,8 +354,8 @@ practice: | |||
| 353 | @end defun | 354 | @end defun |
| 354 | 355 | ||
| 355 | @defvar split-string-default-separators | 356 | @defvar split-string-default-separators |
| 356 | The default value of @var{separators} for @code{split-string}, initially | 357 | The default value of @var{separators} for @code{split-string}. Its |
| 357 | @w{@samp{"[ \f\t\n\r\v]+"}}. | 358 | usual value is @w{@samp{"[ \f\t\n\r\v]+"}}. |
| 358 | @end defvar | 359 | @end defvar |
| 359 | 360 | ||
| 360 | @node Modifying Strings | 361 | @node Modifying Strings |
diff --git a/lispref/syntax.texi b/lispref/syntax.texi index e8707709fe2..282cbca794d 100644 --- a/lispref/syntax.texi +++ b/lispref/syntax.texi | |||
| @@ -754,10 +754,11 @@ necessary to flush the cache manually. | |||
| 754 | @end defun | 754 | @end defun |
| 755 | 755 | ||
| 756 | @defvar syntax-begin-function | 756 | @defvar syntax-begin-function |
| 757 | If this is non-nil, it should be a function that moves to an earlier | 757 | If this is non-@code{nil}, it should be a function that moves to an |
| 758 | buffer position where the parser state is equivalent to @code{nil}, | 758 | earlier buffer position where the parser state is equivalent to |
| 759 | i.e., a position outside of any comment, string, or parenthesis. | 759 | @code{nil}---in other words, a position outside of any comment, |
| 760 | @code{syntax-ppss} uses it to supplement its cache. | 760 | string, or parenthesis. @code{syntax-ppss} uses it to supplement its |
| 761 | cache. | ||
| 761 | @end defvar | 762 | @end defvar |
| 762 | 763 | ||
| 763 | @defun scan-lists from count depth | 764 | @defun scan-lists from count depth |
diff --git a/lispref/text.texi b/lispref/text.texi index cddeeb8fbde..5a4d743ab75 100644 --- a/lispref/text.texi +++ b/lispref/text.texi | |||
| @@ -1497,10 +1497,10 @@ of justification. It can be @code{left}, @code{right}, @code{full}, | |||
| 1497 | follow specified justification style (see @code{current-justification}, | 1497 | follow specified justification style (see @code{current-justification}, |
| 1498 | below). @code{nil} means to do full justification. | 1498 | below). @code{nil} means to do full justification. |
| 1499 | 1499 | ||
| 1500 | If @var{eop} is non-@code{nil}, that means do left-justification if | 1500 | If @var{eop} is non-@code{nil}, that means do only left-justification |
| 1501 | @code{current-justification} specifies full justification. This is used | 1501 | if @code{current-justification} specifies full justification. This is |
| 1502 | for the last line of a paragraph; even if the paragraph as a whole is | 1502 | used for the last line of a paragraph; even if the paragraph as a |
| 1503 | fully justified, the last line should not be. | 1503 | whole is fully justified, the last line should not be. |
| 1504 | 1504 | ||
| 1505 | If @var{nosqueeze} is non-@code{nil}, that means do not change interior | 1505 | If @var{nosqueeze} is non-@code{nil}, that means do not change interior |
| 1506 | whitespace. | 1506 | whitespace. |
| @@ -1727,12 +1727,11 @@ Adaptive Fill mode matches this regular expression against the text | |||
| 1727 | starting after the left margin whitespace (if any) on a line; the | 1727 | starting after the left margin whitespace (if any) on a line; the |
| 1728 | characters it matches are that line's candidate for the fill prefix. | 1728 | characters it matches are that line's candidate for the fill prefix. |
| 1729 | 1729 | ||
| 1730 | The default value of this variable is | 1730 | @w{@samp{"[ \t]*\\([-|#;>*]+[ \t]*\\|(?[0-9]+[.)][ \t]*\\)*"}} is the |
| 1731 | @w{@samp{"[ \t]*\\([-|#;>*]+[ \t]*\\|(?[0-9]+[.)][ \t]*\\)*"}}. This | 1731 | default value. This matches a number enclosed in parentheses or |
| 1732 | matches a number enclosed in parentheses or followed by a period, | 1732 | followed by a period, or certain punctuation characters, or any |
| 1733 | or certain punctuation characters, or any sequence of these | 1733 | sequence of these intermingled with whitespace. In particular, it |
| 1734 | intermingled with whitespace. In particular, it matches a sequence of | 1734 | matches a sequence of whitespace, possibly empty. |
| 1735 | whitespace, possibly empty. | ||
| 1736 | @end defopt | 1735 | @end defopt |
| 1737 | 1736 | ||
| 1738 | @defopt adaptive-fill-first-line-regexp | 1737 | @defopt adaptive-fill-first-line-regexp |
| @@ -2969,7 +2968,8 @@ A cons cell of the form @code{(foreground-color . @var{color-name})} or | |||
| 2969 | just the foreground color or just the background color. | 2968 | just the foreground color or just the background color. |
| 2970 | 2969 | ||
| 2971 | @code{(foreground-color . @var{color-name})} is equivalent to | 2970 | @code{(foreground-color . @var{color-name})} is equivalent to |
| 2972 | @code{(:foreground @var{color-name})}, and likewise for the background. | 2971 | specifying @code{(:foreground @var{color-name})}, and likewise for the |
| 2972 | background. | ||
| 2973 | @end itemize | 2973 | @end itemize |
| 2974 | 2974 | ||
| 2975 | You can use Font Lock Mode (@pxref{Font Lock Mode}), to dynamically | 2975 | You can use Font Lock Mode (@pxref{Font Lock Mode}), to dynamically |
| @@ -3561,9 +3561,9 @@ The action code is always @code{t}. | |||
| 3561 | 3561 | ||
| 3562 | For example, here is how Info mode handles @key{Mouse-1}: | 3562 | For example, here is how Info mode handles @key{Mouse-1}: |
| 3563 | 3563 | ||
| 3564 | @example | 3564 | @smallexample |
| 3565 | (define-key Info-mode-map [follow-link] 'mouse-face) | 3565 | (define-key Info-mode-map [follow-link] 'mouse-face) |
| 3566 | @end example | 3566 | @end smallexample |
| 3567 | 3567 | ||
| 3568 | @item a function | 3568 | @item a function |
| 3569 | If the condition is a valid function, @var{func}, then a position | 3569 | If the condition is a valid function, @var{func}, then a position |
| @@ -3574,11 +3574,11 @@ action code. | |||
| 3574 | For example, here is how pcvs enables @key{Mouse-1} to follow links on | 3574 | For example, here is how pcvs enables @key{Mouse-1} to follow links on |
| 3575 | file names only: | 3575 | file names only: |
| 3576 | 3576 | ||
| 3577 | @example | 3577 | @smallexample |
| 3578 | (define-key map [follow-link] | 3578 | (define-key map [follow-link] |
| 3579 | (lambda (pos) | 3579 | (lambda (pos) |
| 3580 | (if (eq (get-char-property pos 'face) 'cvs-filename-face) t))) | 3580 | (eq (get-char-property pos 'face) 'cvs-filename-face))) |
| 3581 | @end example | 3581 | @end smallexample |
| 3582 | 3582 | ||
| 3583 | @item anything else | 3583 | @item anything else |
| 3584 | If the condition value is anything else, then the position is inside a | 3584 | If the condition value is anything else, then the position is inside a |
diff --git a/lispref/variables.texi b/lispref/variables.texi index 27f0f4a7029..8ee941892c9 100644 --- a/lispref/variables.texi +++ b/lispref/variables.texi | |||
| @@ -1722,24 +1722,24 @@ be called later, or an expression that would be executed later, simply | |||
| 1722 | visiting a file could take over your Emacs. To prevent this, Emacs | 1722 | visiting a file could take over your Emacs. To prevent this, Emacs |
| 1723 | takes care not to allow to set such file local variables. | 1723 | takes care not to allow to set such file local variables. |
| 1724 | 1724 | ||
| 1725 | For one thing, any variable whose name ends in @samp{-command}, | 1725 | For one thing, any variable whose name ends in any of |
| 1726 | @samp{-frame-alist}, @samp{-function}, @samp{-functions}, | 1726 | @samp{-command}, @samp{-frame-alist}, @samp{-function}, |
| 1727 | @samp{-hook}, @samp{-hooks}, @samp{-form}, @samp{-forms}, @samp{-map}, | 1727 | @samp{-functions}, @samp{-hook}, @samp{-hooks}, @samp{-form}, |
| 1728 | @samp{-map-alist}, @samp{-mode-alist}, @samp{-program}, or | 1728 | @samp{-forms}, @samp{-map}, @samp{-map-alist}, @samp{-mode-alist}, |
| 1729 | @samp{-predicate} cannot be given a file local value. In general, | 1729 | @samp{-program}, or @samp{-predicate} cannot be given a file local |
| 1730 | you should use such a name whenever it is appropriate for the | 1730 | value. In general, you should use such a name whenever it is |
| 1731 | variable's meaning. The variables @samp{font-lock-keywords}, | 1731 | appropriate for the variable's meaning. The variables |
| 1732 | @samp{font-lock-keywords-[0-9]}, and | 1732 | @samp{font-lock-keywords}, @samp{font-lock-keywords} followed by a |
| 1733 | @samp{font-lock-syntactic-keywords} cannot be given file local values either. | 1733 | digit, and @samp{font-lock-syntactic-keywords} cannot be given file |
| 1734 | These rules can be overridden by giving the variable's | 1734 | local values either. These rules can be overridden by giving the |
| 1735 | name a non-@code{nil} @code{safe-local-variable} property. If one | 1735 | variable's name a non-@code{nil} @code{safe-local-variable} property. |
| 1736 | gives it a @code{safe-local-variable} property of @code{t}, then one | 1736 | If one gives it a @code{safe-local-variable} property of @code{t}, |
| 1737 | can give the variable any file local value. One can also give any | 1737 | then one can give the variable any file local value. One can also |
| 1738 | symbol, including the above, a @code{safe-local-variable} property | 1738 | give any symbol, including the above, a @code{safe-local-variable} |
| 1739 | that is a function taking exactly one argument. In that case, giving | 1739 | property that is a function taking exactly one argument. In that |
| 1740 | a variable with that name a file local value is only allowed if the | 1740 | case, giving a variable with that name a file local value is only |
| 1741 | function returns non-@code{nil} when called with that value as | 1741 | allowed if the function returns non-@code{nil} when called with that |
| 1742 | argument. | 1742 | value as argument. |
| 1743 | 1743 | ||
| 1744 | In addition, any variable whose name has a non-@code{nil} | 1744 | In addition, any variable whose name has a non-@code{nil} |
| 1745 | @code{risky-local-variable} property is also ignored. So are all | 1745 | @code{risky-local-variable} property is also ignored. So are all |
| @@ -1785,19 +1785,19 @@ chosen, or because its meaning has partly changed---it can be useful | |||
| 1785 | to keep the old name as an @emph{alias} of the new one for | 1785 | to keep the old name as an @emph{alias} of the new one for |
| 1786 | compatibility. You can do this with @code{defvaralias}. | 1786 | compatibility. You can do this with @code{defvaralias}. |
| 1787 | 1787 | ||
| 1788 | @defun defvaralias alias-var base-var &optional docstring | 1788 | @defun defvaralias new-alias base-variable &optional docstring |
| 1789 | This function defines the symbol @var{alias-var} as a variable alias | 1789 | This function defines the symbol @var{new-alias} as a variable alias |
| 1790 | for symbol @var{base-var}. This means that retrieving the value of | 1790 | for symbol @var{base-variable}. This means that retrieving the value of |
| 1791 | @var{alias-var} returns the value of @var{base-var}, and changing the | 1791 | @var{new-alias} returns the value of @var{base-variable}, and changing the |
| 1792 | value of @var{alias-var} changes the value of @var{base-var}. | 1792 | value of @var{new-alias} changes the value of @var{base-variable}. |
| 1793 | 1793 | ||
| 1794 | If the @var{docstring} argument is non-@code{nil}, it specifies the | 1794 | If the @var{docstring} argument is non-@code{nil}, it specifies the |
| 1795 | documentation for @var{alias-var}; otherwise, the alias gets the same | 1795 | documentation for @var{new-alias}; otherwise, the alias gets the same |
| 1796 | documentation as @var{base-var} has, if any, unless @var{base-var} is | 1796 | documentation as @var{base-variable} has, if any, unless |
| 1797 | itself an alias, in which case @var{alias-var} gets the documentation | 1797 | @var{base-variable} is itself an alias, in which case @var{new-alias} gets |
| 1798 | of the variable at the end of the chain of aliases. | 1798 | the documentation of the variable at the end of the chain of aliases. |
| 1799 | 1799 | ||
| 1800 | This function returns @var{base-var}. | 1800 | This function returns @var{base-variable}. |
| 1801 | @end defun | 1801 | @end defun |
| 1802 | 1802 | ||
| 1803 | Variable aliases are convenient for replacing an old name for a | 1803 | Variable aliases are convenient for replacing an old name for a |
| @@ -1805,12 +1805,12 @@ variable with a new name. @code{make-obsolete-variable} declares that | |||
| 1805 | the old name is obsolete and therefore that it may be removed at some | 1805 | the old name is obsolete and therefore that it may be removed at some |
| 1806 | stage in the future. | 1806 | stage in the future. |
| 1807 | 1807 | ||
| 1808 | @defun make-obsolete-variable variable new &optional when | 1808 | @defun make-obsolete-variable obsolete-name current-name &optional when |
| 1809 | This function makes the byte-compiler warn that the variable | 1809 | This function makes the byte-compiler warn that the variable |
| 1810 | @var{variable} is obsolete. If @var{new} is a symbol, it is the | 1810 | @var{obsolete-name} is obsolete. If @var{current-name} is a symbol, it is |
| 1811 | variable's new name; then the warning message says to use @var{new} | 1811 | the variable's new name; then the warning message says to use |
| 1812 | instead of @var{variable}. If @var{new} is a string, this is the | 1812 | @var{current-name} instead of @var{obsolete-name}. If @var{current-name} |
| 1813 | message and there is no replacement variable. | 1813 | is a string, this is the message and there is no replacement variable. |
| 1814 | 1814 | ||
| 1815 | If provided, @var{when} should be a string indicating when the | 1815 | If provided, @var{when} should be a string indicating when the |
| 1816 | variable was first made obsolete---for example, a date or a release | 1816 | variable was first made obsolete---for example, a date or a release |
| @@ -1820,20 +1820,14 @@ number. | |||
| 1820 | You can make two variables synonyms and declare one obsolete at the | 1820 | You can make two variables synonyms and declare one obsolete at the |
| 1821 | same time using the macro @code{define-obsolete-variable-alias}. | 1821 | same time using the macro @code{define-obsolete-variable-alias}. |
| 1822 | 1822 | ||
| 1823 | @defmac define-obsolete-variable-alias variable new &optional when docstring | 1823 | @defmac define-obsolete-variable-alias obsolete-name current-name &optional when docstring |
| 1824 | This macro marks the variable @var{variable} as obsolete and also | 1824 | This macro marks the variable @var{obsolete-name} as obsolete and also |
| 1825 | makes it an alias for the variable @var{new}. A typical call has the form: | 1825 | makes it an alias for the variable @var{current-name}. It is |
| 1826 | equivalent to the following: | ||
| 1826 | 1827 | ||
| 1827 | @example | 1828 | @example |
| 1828 | (define-obsolete-variable-alias 'old-var 'new-var "22.1" "Doc.") | 1829 | (defvaralias @var{obsolete-name} @var{current-name} @var{docstring}) |
| 1829 | @end example | 1830 | (make-obsolete-variable @var{obsolete-name} @var{current-name} @var{when}) |
| 1830 | |||
| 1831 | @noindent | ||
| 1832 | which is equivalent to the following two lines of code: | ||
| 1833 | |||
| 1834 | @example | ||
| 1835 | (defvaralias 'oldvar 'newvar "Doc.") | ||
| 1836 | (make-obsolete-variable 'old-var 'new-var "22.1") | ||
| 1837 | @end example | 1831 | @end example |
| 1838 | @end defmac | 1832 | @end defmac |
| 1839 | 1833 | ||
diff --git a/man/ChangeLog b/man/ChangeLog index cfbbf8aab89..82d78054ec3 100644 --- a/man/ChangeLog +++ b/man/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2005-06-17 Richard M. Stallman <rms@gnu.org> | ||
| 2 | |||
| 3 | * text.texi (Adaptive Fill): Minor clarification. | ||
| 4 | |||
| 1 | 2005-06-13 Carsten Dominik <dominik@science.uva.nl> | 5 | 2005-06-13 Carsten Dominik <dominik@science.uva.nl> |
| 2 | 6 | ||
| 3 | * org.texi: Version 3.11 | 7 | * org.texi: Version 3.11 |
diff --git a/man/text.texi b/man/text.texi index 3d6c0a6b763..13510deda6c 100644 --- a/man/text.texi +++ b/man/text.texi | |||
| @@ -745,8 +745,8 @@ never chosen automatically. | |||
| 745 | automatically by setting the variable @code{adaptive-fill-function} to a | 745 | automatically by setting the variable @code{adaptive-fill-function} to a |
| 746 | function. This function is called with point after the left margin of a | 746 | function. This function is called with point after the left margin of a |
| 747 | line, and it should return the appropriate fill prefix based on that | 747 | line, and it should return the appropriate fill prefix based on that |
| 748 | line. If it returns @code{nil}, that means it sees no fill prefix in | 748 | line. If it returns @code{nil}, @code{adaptive-fill-regexp} gets |
| 749 | that line. | 749 | a chance to find a prefix. |
| 750 | 750 | ||
| 751 | @node Longlines | 751 | @node Longlines |
| 752 | @subsection Long Lines Mode | 752 | @subsection Long Lines Mode |
diff --git a/nt/INSTALL b/nt/INSTALL index 214caf7dd80..ecf42a29b12 100644 --- a/nt/INSTALL +++ b/nt/INSTALL | |||
| @@ -18,12 +18,9 @@ | |||
| 18 | 18 | ||
| 19 | cvs update -kb | 19 | cvs update -kb |
| 20 | 20 | ||
| 21 | (WARNING: Do NOT use this suggestion if you have write access to the | 21 | Alternatively, use programs that convert end-of-line format, such as |
| 22 | Emacs CVS tree and intend to commit changes to CVS. This is because -kb | 22 | dos2unix and unix2dos available from GnuWin32 or dtou and utod from |
| 23 | is sticky: it will be used in all future CVS operations on the files you | 23 | the DJGPP project. |
| 24 | check out like this.) Alternatively, use programs that convert | ||
| 25 | end-of-line format, such as dos2unix and unix2dos available from | ||
| 26 | GnuWin32 or dtou and utod from the DJGPP project. | ||
| 27 | 24 | ||
| 28 | In addition to this file, you should also read INSTALL.CVS in the | 25 | In addition to this file, you should also read INSTALL.CVS in the |
| 29 | parent directory, and make sure that you have a version of | 26 | parent directory, and make sure that you have a version of |
| @@ -63,7 +60,7 @@ | |||
| 63 | 60 | ||
| 64 | and at this URL: | 61 | and at this URL: |
| 65 | 62 | ||
| 66 | http://ourcomments.org/Emacs/EmacsW32.html | 63 | http://ourcomments.org/Emacs/w32-build-emacs.html |
| 67 | 64 | ||
| 68 | For reference, here is a list of which builds of GNU make are known | 65 | For reference, here is a list of which builds of GNU make are known |
| 69 | to work or not, and whether they work in the presence and/or absence | 66 | to work or not, and whether they work in the presence and/or absence |
diff --git a/src/ChangeLog b/src/ChangeLog index 46cab9c1cba..12e52237e9b 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,30 @@ | |||
| 1 | 2005-06-17 Richard M. Stallman <rms@gnu.org> | ||
| 2 | |||
| 3 | * xdisp.c (get_next_display_element): Reverse | ||
| 4 | test of Vshow_nonbreak_escape. | ||
| 5 | |||
| 6 | * term.c (produce_special_glyphs): Use spec_glyph_lookup_face. | ||
| 7 | (Ftty_no_underline): New function. | ||
| 8 | (syms_of_term): defsubr it. | ||
| 9 | |||
| 10 | * keyboard.c (read_char): Call restore_getcjmp after jump occurs. | ||
| 11 | |||
| 12 | * dispnew.c (spec_glyph_lookup_face): New function. | ||
| 13 | (build_frame_matrix_from_leaf_window): Use it. | ||
| 14 | |||
| 15 | * dispextern.h (spec_glyph_lookup_face): Add declaration. | ||
| 16 | |||
| 17 | * buffer.c (syms_of_buffer) <cursor-type>: Doc fix. | ||
| 18 | |||
| 19 | 2005-06-12 Richard M. Stallman <rms@gnu.org> | ||
| 20 | |||
| 21 | * keyboard.c (read_char): After catching a longjmp, | ||
| 22 | call restore_getcjmp. | ||
| 23 | |||
| 24 | 2005-06-17 Juanma Barranquero <lekktu@gmail.com> | ||
| 25 | |||
| 26 | * xselect.c (lisp_data_to_selection_data): Fix spelling. | ||
| 27 | |||
| 1 | 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | 28 | 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> |
| 2 | 29 | ||
| 3 | * macterm.c (mac_compute_glyph_string_overhangs): Don't set | 30 | * macterm.c (mac_compute_glyph_string_overhangs): Don't set |
| @@ -101,7 +128,6 @@ | |||
| 101 | 128 | ||
| 102 | * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face | 129 | * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face |
| 103 | when mouse_face is not given. | 130 | when mouse_face is not given. |
| 104 | Remove unnecessary tabs. | ||
| 105 | 131 | ||
| 106 | 2005-06-09 Luc Teirlinck <teirllm@auburn.edu> | 132 | 2005-06-09 Luc Teirlinck <teirllm@auburn.edu> |
| 107 | 133 | ||
diff --git a/src/buffer.c b/src/buffer.c index a287e45df78..ed05daf77ec 100644 --- a/src/buffer.c +++ b/src/buffer.c | |||
| @@ -5934,8 +5934,8 @@ Values are interpreted as follows: | |||
| 5934 | hollow display a hollow box cursor | 5934 | hollow display a hollow box cursor |
| 5935 | bar display a vertical bar cursor with default width | 5935 | bar display a vertical bar cursor with default width |
| 5936 | (bar . WIDTH) display a vertical bar cursor with width WIDTH | 5936 | (bar . WIDTH) display a vertical bar cursor with width WIDTH |
| 5937 | hbar display a horizontal bar cursor with default width | 5937 | hbar display a horizontal bar cursor with default height |
| 5938 | (hbar . WIDTH) display a horizontal bar cursor with width WIDTH | 5938 | (hbar . HEIGHT) display a horizontal bar cursor with height HEIGHT |
| 5939 | ANYTHING ELSE display a hollow box cursor. | 5939 | ANYTHING ELSE display a hollow box cursor. |
| 5940 | 5940 | ||
| 5941 | When the buffer is displayed in a nonselected window, | 5941 | When the buffer is displayed in a nonselected window, |
diff --git a/src/dispextern.h b/src/dispextern.h index df6bbd00eec..8648303af8c 100644 --- a/src/dispextern.h +++ b/src/dispextern.h | |||
| @@ -366,7 +366,8 @@ struct glyph | |||
| 366 | 366 | ||
| 367 | #define FACE_ID_BITS 21 | 367 | #define FACE_ID_BITS 21 |
| 368 | 368 | ||
| 369 | /* Face of the glyph. */ | 369 | /* Face of the glyph. This is a realized face ID, |
| 370 | an index in the face cache of the frame. */ | ||
| 370 | unsigned face_id : FACE_ID_BITS; | 371 | unsigned face_id : FACE_ID_BITS; |
| 371 | 372 | ||
| 372 | /* Type of font used to display the character glyph. May be used to | 373 | /* Type of font used to display the character glyph. May be used to |
| @@ -2903,6 +2904,7 @@ Lisp_Object sit_for P_ ((int, int, int, int, int)); | |||
| 2903 | void init_display P_ ((void)); | 2904 | void init_display P_ ((void)); |
| 2904 | void syms_of_display P_ ((void)); | 2905 | void syms_of_display P_ ((void)); |
| 2905 | extern Lisp_Object Qredisplay_dont_pause; | 2906 | extern Lisp_Object Qredisplay_dont_pause; |
| 2907 | GLYPH spec_glyph_lookup_face P_ ((struct window *, GLYPH)); | ||
| 2906 | 2908 | ||
| 2907 | /* Defined in term.c */ | 2909 | /* Defined in term.c */ |
| 2908 | 2910 | ||
diff --git a/src/dispnew.c b/src/dispnew.c index b0e9944868b..30897a7a78f 100644 --- a/src/dispnew.c +++ b/src/dispnew.c | |||
| @@ -2711,6 +2711,7 @@ build_frame_matrix_from_leaf_window (frame_matrix, w) | |||
| 2711 | right_border_glyph = (dp && INTEGERP (DISP_BORDER_GLYPH (dp)) | 2711 | right_border_glyph = (dp && INTEGERP (DISP_BORDER_GLYPH (dp)) |
| 2712 | ? XINT (DISP_BORDER_GLYPH (dp)) | 2712 | ? XINT (DISP_BORDER_GLYPH (dp)) |
| 2713 | : '|'); | 2713 | : '|'); |
| 2714 | right_border_glyph = spec_glyph_lookup_face (w, right_border_glyph); | ||
| 2714 | } | 2715 | } |
| 2715 | } | 2716 | } |
| 2716 | else | 2717 | else |
| @@ -2791,6 +2792,27 @@ build_frame_matrix_from_leaf_window (frame_matrix, w) | |||
| 2791 | } | 2792 | } |
| 2792 | } | 2793 | } |
| 2793 | 2794 | ||
| 2795 | /* Given a user-specified glyph, possibly including a Lisp-level face | ||
| 2796 | ID, return a glyph that has a realized face ID. | ||
| 2797 | This is used for glyphs displayed specially and not part of the text; | ||
| 2798 | for instance, vertical separators, truncation markers, etc. */ | ||
| 2799 | |||
| 2800 | GLYPH | ||
| 2801 | spec_glyph_lookup_face (w, glyph) | ||
| 2802 | struct window *w; | ||
| 2803 | GLYPH glyph; | ||
| 2804 | { | ||
| 2805 | int lface_id = FAST_GLYPH_FACE (glyph); | ||
| 2806 | /* Convert the glyph's specified face to a realized (cache) face. */ | ||
| 2807 | if (lface_id > 0) | ||
| 2808 | { | ||
| 2809 | int face_id = merge_faces (XFRAME (w->frame), | ||
| 2810 | Qt, lface_id, DEFAULT_FACE_ID); | ||
| 2811 | glyph | ||
| 2812 | = FAST_MAKE_GLYPH (FAST_GLYPH_CHAR (glyph), face_id); | ||
| 2813 | } | ||
| 2814 | return glyph; | ||
| 2815 | } | ||
| 2794 | 2816 | ||
| 2795 | /* Add spaces to a glyph row ROW in a window matrix. | 2817 | /* Add spaces to a glyph row ROW in a window matrix. |
| 2796 | 2818 | ||
diff --git a/src/keyboard.c b/src/keyboard.c index 135c3313a7b..7f81dde35c7 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -2610,6 +2610,9 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) | |||
| 2610 | 2610 | ||
| 2611 | if (_setjmp (local_getcjmp)) | 2611 | if (_setjmp (local_getcjmp)) |
| 2612 | { | 2612 | { |
| 2613 | /* We must have saved the outer value of getcjmp here, | ||
| 2614 | so restore it now. */ | ||
| 2615 | restore_getcjmp (save_jump); | ||
| 2613 | XSETINT (c, quit_char); | 2616 | XSETINT (c, quit_char); |
| 2614 | internal_last_event_frame = selected_frame; | 2617 | internal_last_event_frame = selected_frame; |
| 2615 | Vlast_event_frame = internal_last_event_frame; | 2618 | Vlast_event_frame = internal_last_event_frame; |
diff --git a/src/term.c b/src/term.c index 8aa3b3969ee..774373e82f9 100644 --- a/src/term.c +++ b/src/term.c | |||
| @@ -1695,6 +1695,7 @@ produce_special_glyphs (it, what) | |||
| 1695 | enum display_element_type what; | 1695 | enum display_element_type what; |
| 1696 | { | 1696 | { |
| 1697 | struct it temp_it; | 1697 | struct it temp_it; |
| 1698 | GLYPH glyph; | ||
| 1698 | 1699 | ||
| 1699 | temp_it = *it; | 1700 | temp_it = *it; |
| 1700 | temp_it.dp = NULL; | 1701 | temp_it.dp = NULL; |
| @@ -1710,15 +1711,11 @@ produce_special_glyphs (it, what) | |||
| 1710 | && INTEGERP (DISP_CONTINUE_GLYPH (it->dp)) | 1711 | && INTEGERP (DISP_CONTINUE_GLYPH (it->dp)) |
| 1711 | && GLYPH_CHAR_VALID_P (XINT (DISP_CONTINUE_GLYPH (it->dp)))) | 1712 | && GLYPH_CHAR_VALID_P (XINT (DISP_CONTINUE_GLYPH (it->dp)))) |
| 1712 | { | 1713 | { |
| 1713 | temp_it.c = FAST_GLYPH_CHAR (XINT (DISP_CONTINUE_GLYPH (it->dp))); | 1714 | glyph = XINT (DISP_CONTINUE_GLYPH (it->dp)); |
| 1714 | temp_it.len = CHAR_BYTES (temp_it.c); | 1715 | glyph = spec_glyph_lookup_face (XWINDOW (it->window), glyph); |
| 1715 | } | 1716 | } |
| 1716 | else | 1717 | else |
| 1717 | temp_it.c = '\\'; | 1718 | glyph = '\\'; |
| 1718 | |||
| 1719 | produce_glyphs (&temp_it); | ||
| 1720 | it->pixel_width = temp_it.pixel_width; | ||
| 1721 | it->nglyphs = temp_it.pixel_width; | ||
| 1722 | } | 1719 | } |
| 1723 | else if (what == IT_TRUNCATION) | 1720 | else if (what == IT_TRUNCATION) |
| 1724 | { | 1721 | { |
| @@ -1727,18 +1724,22 @@ produce_special_glyphs (it, what) | |||
| 1727 | && INTEGERP (DISP_TRUNC_GLYPH (it->dp)) | 1724 | && INTEGERP (DISP_TRUNC_GLYPH (it->dp)) |
| 1728 | && GLYPH_CHAR_VALID_P (XINT (DISP_TRUNC_GLYPH (it->dp)))) | 1725 | && GLYPH_CHAR_VALID_P (XINT (DISP_TRUNC_GLYPH (it->dp)))) |
| 1729 | { | 1726 | { |
| 1730 | temp_it.c = FAST_GLYPH_CHAR (XINT (DISP_TRUNC_GLYPH (it->dp))); | 1727 | glyph = XINT (DISP_TRUNC_GLYPH (it->dp)); |
| 1731 | temp_it.len = CHAR_BYTES (temp_it.c); | 1728 | glyph = spec_glyph_lookup_face (XWINDOW (it->window), glyph); |
| 1732 | } | 1729 | } |
| 1733 | else | 1730 | else |
| 1734 | temp_it.c = '$'; | 1731 | glyph = '$'; |
| 1735 | |||
| 1736 | produce_glyphs (&temp_it); | ||
| 1737 | it->pixel_width = temp_it.pixel_width; | ||
| 1738 | it->nglyphs = temp_it.pixel_width; | ||
| 1739 | } | 1732 | } |
| 1740 | else | 1733 | else |
| 1741 | abort (); | 1734 | abort (); |
| 1735 | |||
| 1736 | temp_it.c = FAST_GLYPH_CHAR (glyph); | ||
| 1737 | temp_it.face_id = FAST_GLYPH_FACE (glyph); | ||
| 1738 | temp_it.len = CHAR_BYTES (temp_it.c); | ||
| 1739 | |||
| 1740 | produce_glyphs (&temp_it); | ||
| 1741 | it->pixel_width = temp_it.pixel_width; | ||
| 1742 | it->nglyphs = temp_it.pixel_width; | ||
| 1742 | } | 1743 | } |
| 1743 | 1744 | ||
| 1744 | 1745 | ||
| @@ -1757,7 +1758,8 @@ produce_special_glyphs (it, what) | |||
| 1757 | ? (tty->TN_no_color_video & (ATTR)) == 0 \ | 1758 | ? (tty->TN_no_color_video & (ATTR)) == 0 \ |
| 1758 | : 1) | 1759 | : 1) |
| 1759 | 1760 | ||
| 1760 | /* Turn appearances of face FACE_ID on tty frame F on. */ | 1761 | /* Turn appearances of face FACE_ID on tty frame F on. |
| 1762 | FACE_ID is a realized face ID number, in the face cache. */ | ||
| 1761 | 1763 | ||
| 1762 | static void | 1764 | static void |
| 1763 | turn_on_face (f, face_id) | 1765 | turn_on_face (f, face_id) |
| @@ -2195,7 +2197,7 @@ DEFUN ("display-name", Fdisplay_name, Sdisplay_name, 0, 1, 0, | |||
| 2195 | doc: /* Return the name of the device that DISPLAY uses. | 2197 | doc: /* Return the name of the device that DISPLAY uses. |
| 2196 | It is not guaranteed that the returned value is unique among opened displays. | 2198 | It is not guaranteed that the returned value is unique among opened displays. |
| 2197 | 2199 | ||
| 2198 | DISPLAY can be a display, a frame, or nil (meaning the selected | 2200 | DISPLAY may be a display, a frame, or nil (meaning the selected |
| 2199 | frame's display). */) | 2201 | frame's display). */) |
| 2200 | (display) | 2202 | (display) |
| 2201 | Lisp_Object display; | 2203 | Lisp_Object display; |
| @@ -2209,7 +2211,10 @@ frame's display). */) | |||
| 2209 | } | 2211 | } |
| 2210 | 2212 | ||
| 2211 | DEFUN ("display-tty-type", Fdisplay_tty_type, Sdisplay_tty_type, 0, 1, 0, | 2213 | DEFUN ("display-tty-type", Fdisplay_tty_type, Sdisplay_tty_type, 0, 1, 0, |
| 2212 | doc: /* Return the type of the TTY device that DISPLAY uses. */) | 2214 | doc: /* Return the type of the TTY device that DISPLAY uses. |
| 2215 | |||
| 2216 | DISPLAY may be a display, a frame, or nil (meaning the selected | ||
| 2217 | frame's display). */) | ||
| 2213 | (display) | 2218 | (display) |
| 2214 | Lisp_Object display; | 2219 | Lisp_Object display; |
| 2215 | { | 2220 | { |
| @@ -2225,7 +2230,10 @@ DEFUN ("display-tty-type", Fdisplay_tty_type, Sdisplay_tty_type, 0, 1, 0, | |||
| 2225 | } | 2230 | } |
| 2226 | 2231 | ||
| 2227 | DEFUN ("display-controlling-tty-p", Fdisplay_controlling_tty_p, Sdisplay_controlling_tty_p, 0, 1, 0, | 2232 | DEFUN ("display-controlling-tty-p", Fdisplay_controlling_tty_p, Sdisplay_controlling_tty_p, 0, 1, 0, |
| 2228 | doc: /* Return non-nil if DISPLAY is on the controlling tty of the Emacs process. */) | 2233 | doc: /* Return non-nil if DISPLAY is on the controlling tty of the Emacs process. |
| 2234 | |||
| 2235 | DISPLAY may be a display, a frame, or nil (meaning the selected | ||
| 2236 | frame's display). */) | ||
| 2229 | (display) | 2237 | (display) |
| 2230 | Lisp_Object display; | 2238 | Lisp_Object display; |
| 2231 | { | 2239 | { |
| @@ -2237,6 +2245,25 @@ DEFUN ("display-controlling-tty-p", Fdisplay_controlling_tty_p, Sdisplay_control | |||
| 2237 | return Qt; | 2245 | return Qt; |
| 2238 | } | 2246 | } |
| 2239 | 2247 | ||
| 2248 | DEFUN ("tty-no-underline", Ftty_no_underline, Stty_no_underline, 0, 1, 0, | ||
| 2249 | doc: /* Declare that the tty used by DISPLAY does not handle underlining. | ||
| 2250 | This is used to override the terminfo data, for certain terminals that | ||
| 2251 | do not really do underlining, but say that they do. This function has | ||
| 2252 | no effect if used on a non-tty display. | ||
| 2253 | |||
| 2254 | DISPLAY may be a display, a frame, or nil (meaning the selected | ||
| 2255 | frame's display). */) | ||
| 2256 | (display) | ||
| 2257 | Lisp_Object display; | ||
| 2258 | { | ||
| 2259 | struct display *d = get_display (display, 1); | ||
| 2260 | |||
| 2261 | if (d->type == output_termcap) | ||
| 2262 | d->display_info.tty->TS_enter_underline_mode = 0; | ||
| 2263 | return Qnil; | ||
| 2264 | } | ||
| 2265 | |||
| 2266 | |||
| 2240 | 2267 | ||
| 2241 | /*********************************************************************** | 2268 | /*********************************************************************** |
| 2242 | Initialization | 2269 | Initialization |
| @@ -3384,6 +3411,7 @@ See `resume-tty'. */); | |||
| 3384 | 3411 | ||
| 3385 | defsubr (&Stty_display_color_p); | 3412 | defsubr (&Stty_display_color_p); |
| 3386 | defsubr (&Stty_display_color_cells); | 3413 | defsubr (&Stty_display_color_cells); |
| 3414 | defsubr (&Stty_no_underline); | ||
| 3387 | defsubr (&Sdisplay_name); | 3415 | defsubr (&Sdisplay_name); |
| 3388 | defsubr (&Sdisplay_tty_type); | 3416 | defsubr (&Sdisplay_tty_type); |
| 3389 | defsubr (&Sdisplay_controlling_tty_p); | 3417 | defsubr (&Sdisplay_controlling_tty_p); |
diff --git a/src/xdisp.c b/src/xdisp.c index a7ce6159a01..6c11440dd1a 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -5139,7 +5139,7 @@ get_next_display_element (it) | |||
| 5139 | /* Handle non-break space in the mode where it only gets | 5139 | /* Handle non-break space in the mode where it only gets |
| 5140 | highlighting. */ | 5140 | highlighting. */ |
| 5141 | 5141 | ||
| 5142 | if (! EQ (Vshow_nonbreak_escape, Qt) | 5142 | if (EQ (Vshow_nonbreak_escape, Qt) |
| 5143 | && (it->c == 0x8a0 || it->c == 0x920 | 5143 | && (it->c == 0x8a0 || it->c == 0x920 |
| 5144 | || it->c == 0xe20 || it->c == 0xf20)) | 5144 | || it->c == 0xe20 || it->c == 0xf20)) |
| 5145 | { | 5145 | { |
diff --git a/src/xselect.c b/src/xselect.c index 5a899cfa389..7a1ceaabbb0 100644 --- a/src/xselect.c +++ b/src/xselect.c | |||
| @@ -2048,7 +2048,7 @@ lisp_data_to_selection_data (display, obj, | |||
| 2048 | 2048 | ||
| 2049 | /* Use sizeof(long) even if it is more than 32 bits. See comment | 2049 | /* Use sizeof(long) even if it is more than 32 bits. See comment |
| 2050 | in x_get_window_property and x_fill_property_data. */ | 2050 | in x_get_window_property and x_fill_property_data. */ |
| 2051 | 2051 | ||
| 2052 | if (*format_ret == 32) data_size = sizeof(long); | 2052 | if (*format_ret == 32) data_size = sizeof(long); |
| 2053 | *data_ret = (unsigned char *) xmalloc (*size_ret * data_size); | 2053 | *data_ret = (unsigned char *) xmalloc (*size_ret * data_size); |
| 2054 | for (i = 0; i < *size_ret; i++) | 2054 | for (i = 0; i < *size_ret; i++) |
| @@ -2062,7 +2062,7 @@ lisp_data_to_selection_data (display, obj, | |||
| 2062 | } | 2062 | } |
| 2063 | else | 2063 | else |
| 2064 | Fsignal (Qerror, /* Qselection_error */ | 2064 | Fsignal (Qerror, /* Qselection_error */ |
| 2065 | Fcons (build_string ("unrecognised selection data"), | 2065 | Fcons (build_string ("unrecognized selection data"), |
| 2066 | Fcons (obj, Qnil))); | 2066 | Fcons (obj, Qnil))); |
| 2067 | 2067 | ||
| 2068 | *type_ret = symbol_to_x_atom (dpyinfo, display, type); | 2068 | *type_ret = symbol_to_x_atom (dpyinfo, display, type); |
| @@ -2864,7 +2864,7 @@ are ignored. */) | |||
| 2864 | when sending to the root window. */ | 2864 | when sending to the root window. */ |
| 2865 | event.xclient.window = to_root ? FRAME_OUTER_WINDOW (f) : wdest; | 2865 | event.xclient.window = to_root ? FRAME_OUTER_WINDOW (f) : wdest; |
| 2866 | 2866 | ||
| 2867 | 2867 | ||
| 2868 | memset (event.xclient.data.b, 0, sizeof (event.xclient.data.b)); | 2868 | memset (event.xclient.data.b, 0, sizeof (event.xclient.data.b)); |
| 2869 | x_fill_property_data (dpyinfo->display, values, event.xclient.data.b, | 2869 | x_fill_property_data (dpyinfo->display, values, event.xclient.data.b, |
| 2870 | event.xclient.format); | 2870 | event.xclient.format); |