diff options
| author | Paul Eggert | 2015-03-03 14:38:53 -0800 |
|---|---|---|
| committer | Paul Eggert | 2015-03-03 14:38:53 -0800 |
| commit | 923602fefbfadd47e0b675d97aa1b28a16971da0 (patch) | |
| tree | 8f2c148120694da902f3947e8bd097c0d0f469a8 | |
| parent | 1fb87f1f1aa0947ec7b572a0ec1677c18aefc9f0 (diff) | |
| parent | 0077b36e2ed14e484c1f736496db9314ef7ca177 (diff) | |
| download | emacs-923602fefbfadd47e0b675d97aa1b28a16971da0.tar.gz emacs-923602fefbfadd47e0b675d97aa1b28a16971da0.zip | |
Merge from origin/emacs-24
0077b36 # NEWS copyedits
3ca2ff3 * lisp/erc/erc.el (erc-rename-buffers): Doc fix. Add :version.
b85523f * lisp/textmodes/flyspell.el (flyspell-duplicate-distance):
decb48d Augment text-mode syntax table for a few special characters
8b3ba7a Improve docs of transient-mark-mode (Bug#19841)
72fd047 NEWS: Add section to include ERC changes
a7254bb Improve string search in `flyspell-word-search-*`. (Bug#16800)
Conflicts:
etc/ChangeLog
etc/NEWS
lisp/ChangeLog
lisp/erc/ChangeLog
src/ChangeLog
| -rw-r--r-- | etc/ChangeLog | 5 | ||||
| -rw-r--r-- | etc/NEWS | 22 | ||||
| -rw-r--r-- | lisp/ChangeLog | 23 | ||||
| -rw-r--r-- | lisp/erc/ChangeLog | 8 | ||||
| -rw-r--r-- | lisp/erc/erc.el | 4 | ||||
| -rw-r--r-- | lisp/simple.el | 9 | ||||
| -rw-r--r-- | lisp/textmodes/flyspell.el | 72 | ||||
| -rw-r--r-- | lisp/textmodes/text-mode.el | 17 | ||||
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/buffer.c | 1 |
10 files changed, 139 insertions, 27 deletions
diff --git a/etc/ChangeLog b/etc/ChangeLog index 99a74f942f2..9c11e18fb69 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2015-03-03 Kelvin White <kwhite@gnu.org> | ||
| 2 | |||
| 3 | * NEWS: Add section to include ERC changes | ||
| 4 | |||
| 5 | 2015-03-03 Eli Zaretskii <eliz@gnu.org> | ||
| 1 | 2015-03-02 Daniel Colascione <dancol@dancol.org> | 6 | 2015-03-02 Daniel Colascione <dancol@dancol.org> |
| 2 | 7 | ||
| 3 | * NEWS: Mention finalizers. | 8 | * NEWS: Mention finalizers. |
| @@ -25,8 +25,11 @@ otherwise leave it unmarked. | |||
| 25 | * Installation Changes in Emacs 25.1 | 25 | * Installation Changes in Emacs 25.1 |
| 26 | 26 | ||
| 27 | +++ | 27 | +++ |
| 28 | |||
| 28 | ** Building Emacs now requires C99 or later. | 29 | ** Building Emacs now requires C99 or later. |
| 29 | 30 | ||
| 31 | ** The variable `redisplay-dont-pause' is obsolete. | ||
| 32 | |||
| 30 | ** Building Emacs now requires GNU make, version 3.81 or later. | 33 | ** Building Emacs now requires GNU make, version 3.81 or later. |
| 31 | 34 | ||
| 32 | +++ | 35 | +++ |
| @@ -40,9 +43,28 @@ should be able to work around the problem either by porting the Emacs | |||
| 40 | undumping code to GCC under IRIX, or by configuring --with-wide-int, | 43 | undumping code to GCC under IRIX, or by configuring --with-wide-int, |
| 41 | or by sticking with Emacs 24.4. | 44 | or by sticking with Emacs 24.4. |
| 42 | 45 | ||
| 46 | ** ERC | ||
| 47 | |||
| 43 | ** 'configure' now prefers gnustep-config when configuring GNUstep. | 48 | ** 'configure' now prefers gnustep-config when configuring GNUstep. |
| 44 | If gnustep-config is not available, the old heuristics are used. | 49 | If gnustep-config is not available, the old heuristics are used. |
| 45 | 50 | ||
| 51 | +++ | ||
| 52 | *** New option `erc-rename-buffers'. | ||
| 53 | |||
| 54 | --- | ||
| 55 | *** New faces `erc-my-nick-prefix-face' and `erc-nick-prefix-face'. | ||
| 56 | |||
| 57 | +++ | ||
| 58 | *** `erc-format-@nick' displays all user modes instead of only op and voice. | ||
| 59 | |||
| 60 | --- | ||
| 61 | *** The display of irc commands in the current buffer has been disabled. | ||
| 62 | |||
| 63 | --- | ||
| 64 | *** `erc-version' now follows the Emacs version. | ||
| 65 | |||
| 66 | ** Obsolete packages | ||
| 67 | |||
| 46 | --- | 68 | --- |
| 47 | *** cc-compat.el | 69 | *** cc-compat.el |
| 48 | 70 | ||
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 69ccbfaa507..47ddedae883 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,7 +1,28 @@ | |||
| 1 | 2015-03-03 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * textmodes/flyspell.el (flyspell-duplicate-distance): | ||
| 4 | Bump :version. | ||
| 5 | |||
| 6 | 2015-03-03 Eli Zaretskii <eliz@gnu.org> | ||
| 7 | |||
| 8 | * textmodes/text-mode.el (text-mode-syntax-table): Make some | ||
| 9 | punctuation character behave as word-constituent, for more | ||
| 10 | compatibility with Unicode. | ||
| 11 | |||
| 12 | * simple.el (transient-mark-mode): Doc fix. (Bug#19841) | ||
| 13 | |||
| 14 | 2015-03-03 Agustín Martín Domingo <agustin6martin@gmail.com> | ||
| 15 | |||
| 16 | Improve string search in `flyspell-word-search-*`. (Bug#16800) | ||
| 17 | * flyspell.el (flyspell-duplicate-distance): Limit default search | ||
| 18 | distance for duplicated words to 40000. | ||
| 19 | (flyspell-word-search-backward, flyspell-word-search-forward): | ||
| 20 | Search as full word with defined casechars, not as substring. | ||
| 21 | |||
| 22 | 2015-03-03 Juri Linkov <juri@linkov.net> | ||
| 1 | 2015-03-03 Juri Linkov <juri@linkov.net> | 23 | 2015-03-03 Juri Linkov <juri@linkov.net> |
| 2 | 24 | ||
| 3 | Better support for the case of typing RET on the prompt in comint. | 25 | Better support for the case of typing RET on the prompt in comint. |
| 4 | |||
| 5 | * comint.el (comint-get-old-input-default): Go to the field end | 26 | * comint.el (comint-get-old-input-default): Go to the field end |
| 6 | when comint-use-prompt-regexp is nil. | 27 | when comint-use-prompt-regexp is nil. |
| 7 | (comint-line-beginning-position): Check if point is already | 28 | (comint-line-beginning-position): Check if point is already |
diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog index 4c1c8432733..f89d5a2d043 100644 --- a/lisp/erc/ChangeLog +++ b/lisp/erc/ChangeLog | |||
| @@ -1,3 +1,11 @@ | |||
| 1 | 2015-03-03 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * erc.el (erc-rename-buffers): Doc fix. Add :version. | ||
| 4 | |||
| 5 | 2015-03-03 Dima Kogan <dima@secretsauce.net> | ||
| 6 | |||
| 7 | * erc-backend.el (define-erc-response-handler): Give hook-name | ||
| 8 | default value of nil and add-to-list (bug#19363). | ||
| 1 | 2015-02-14 Stefan Monnier <monnier@iro.umontreal.ca> | 9 | 2015-02-14 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 10 | ||
| 3 | * erc-spelling.el (erc-spelling-init): | 11 | * erc-spelling.el (erc-spelling-init): |
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index 7b9a3eb8620..e2366a1b58f 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el | |||
| @@ -197,7 +197,8 @@ parameters and authentication." | |||
| 197 | (set sym (if (functionp val) (funcall val) val)))) | 197 | (set sym (if (functionp val) (funcall val) val)))) |
| 198 | 198 | ||
| 199 | (defcustom erc-rename-buffers nil | 199 | (defcustom erc-rename-buffers nil |
| 200 | "When this is set to t, buffers will be renamed to network name if available" | 200 | "Non-nil means rename buffers with network name, if available." |
| 201 | :version "24.5" | ||
| 201 | :group 'erc | 202 | :group 'erc |
| 202 | :type 'boolean) | 203 | :type 'boolean) |
| 203 | 204 | ||
| @@ -1148,6 +1149,7 @@ which the local user typed." | |||
| 1148 | "Faces for ERC." | 1149 | "Faces for ERC." |
| 1149 | :group 'erc) | 1150 | :group 'erc) |
| 1150 | 1151 | ||
| 1152 | ;; FIXME faces should not end in "-face". | ||
| 1151 | (defface erc-default-face '((t)) | 1153 | (defface erc-default-face '((t)) |
| 1152 | "ERC default face." | 1154 | "ERC default face." |
| 1153 | :group 'erc-faces) | 1155 | :group 'erc-faces) |
diff --git a/lisp/simple.el b/lisp/simple.el index 2f09042d817..1e64f998fd4 100644 --- a/lisp/simple.el +++ b/lisp/simple.el | |||
| @@ -5168,10 +5168,11 @@ positive, and disable it otherwise. If called from Lisp, enable | |||
| 5168 | Transient Mark mode if ARG is omitted or nil. | 5168 | Transient Mark mode if ARG is omitted or nil. |
| 5169 | 5169 | ||
| 5170 | Transient Mark mode is a global minor mode. When enabled, the | 5170 | Transient Mark mode is a global minor mode. When enabled, the |
| 5171 | region is highlighted whenever the mark is active. The mark is | 5171 | region is highlighted with the `region' face whenever the mark |
| 5172 | \"deactivated\" by changing the buffer, and after certain other | 5172 | is active. The mark is \"deactivated\" by changing the buffer, |
| 5173 | operations that set the mark but whose main purpose is something | 5173 | and after certain other operations that set the mark but whose |
| 5174 | else--for example, incremental search, \\[beginning-of-buffer], and \\[end-of-buffer]. | 5174 | main purpose is something else--for example, incremental search, |
| 5175 | \\[beginning-of-buffer], and \\[end-of-buffer]. | ||
| 5175 | 5176 | ||
| 5176 | You can also deactivate the mark by typing \\[keyboard-quit] or | 5177 | You can also deactivate the mark by typing \\[keyboard-quit] or |
| 5177 | \\[keyboard-escape-quit]. | 5178 | \\[keyboard-escape-quit]. |
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el index ffaf7e753f4..8aadf51871f 100644 --- a/lisp/textmodes/flyspell.el +++ b/lisp/textmodes/flyspell.el | |||
| @@ -93,7 +93,7 @@ downcased before comparing with these exceptions." | |||
| 93 | :version "21.1" | 93 | :version "21.1" |
| 94 | :type 'boolean) | 94 | :type 'boolean) |
| 95 | 95 | ||
| 96 | (defcustom flyspell-duplicate-distance -1 | 96 | (defcustom flyspell-duplicate-distance 400000 |
| 97 | "The maximum distance for finding duplicates of unrecognized words. | 97 | "The maximum distance for finding duplicates of unrecognized words. |
| 98 | This applies to the feature that when a word is not found in the dictionary, | 98 | This applies to the feature that when a word is not found in the dictionary, |
| 99 | if the same spelling occurs elsewhere in the buffer, | 99 | if the same spelling occurs elsewhere in the buffer, |
| @@ -102,7 +102,7 @@ This variable specifies how far to search to find such a duplicate. | |||
| 102 | -1 means no limit (search the whole buffer). | 102 | -1 means no limit (search the whole buffer). |
| 103 | 0 means do not search for duplicate unrecognized spellings." | 103 | 0 means do not search for duplicate unrecognized spellings." |
| 104 | :group 'flyspell | 104 | :group 'flyspell |
| 105 | :version "21.1" | 105 | :version "24.5" ; -1 -> 400000 |
| 106 | :type '(choice (const :tag "no limit" -1) | 106 | :type '(choice (const :tag "no limit" -1) |
| 107 | number)) | 107 | number)) |
| 108 | 108 | ||
| @@ -1012,17 +1012,33 @@ Mostly we check word delimiters." | |||
| 1012 | ;;*---------------------------------------------------------------------*/ | 1012 | ;;*---------------------------------------------------------------------*/ |
| 1013 | (defun flyspell-word-search-backward (word bound &optional ignore-case) | 1013 | (defun flyspell-word-search-backward (word bound &optional ignore-case) |
| 1014 | (save-excursion | 1014 | (save-excursion |
| 1015 | (let ((r '()) | 1015 | (let* ((r '()) |
| 1016 | (inhibit-point-motion-hooks t) | 1016 | (inhibit-point-motion-hooks t) |
| 1017 | p) | 1017 | (flyspell-not-casechars (flyspell-get-not-casechars)) |
| 1018 | (while (and (not r) (setq p (search-backward word bound t))) | 1018 | (bound (if (and bound |
| 1019 | (let ((lw (flyspell-get-word))) | 1019 | (> bound (point-min))) |
| 1020 | (if (and (consp lw) | 1020 | (- bound 1))) |
| 1021 | (if ignore-case | 1021 | (word-re (concat |
| 1022 | (string-equal (downcase (car lw)) (downcase word)) | 1022 | "\\(?:" flyspell-not-casechars "\\|\\`\\)" |
| 1023 | (string-equal (car lw) word))) | 1023 | (regexp-quote word) |
| 1024 | (setq r p) | 1024 | flyspell-not-casechars)) |
| 1025 | (goto-char p)))) | 1025 | p) |
| 1026 | (while | ||
| 1027 | (and (not r) | ||
| 1028 | (setq p | ||
| 1029 | (and | ||
| 1030 | (re-search-backward word-re bound t) | ||
| 1031 | (if (bobp) | ||
| 1032 | (point) | ||
| 1033 | (forward-char) | ||
| 1034 | (point))))) | ||
| 1035 | (let ((lw (flyspell-get-word))) | ||
| 1036 | (if (and (consp lw) | ||
| 1037 | (if ignore-case | ||
| 1038 | (string-equal (downcase (car lw)) (downcase word)) | ||
| 1039 | (string-equal (car lw) word))) | ||
| 1040 | (setq r p) | ||
| 1041 | (goto-char p)))) | ||
| 1026 | r))) | 1042 | r))) |
| 1027 | 1043 | ||
| 1028 | ;;*---------------------------------------------------------------------*/ | 1044 | ;;*---------------------------------------------------------------------*/ |
| @@ -1030,14 +1046,28 @@ Mostly we check word delimiters." | |||
| 1030 | ;;*---------------------------------------------------------------------*/ | 1046 | ;;*---------------------------------------------------------------------*/ |
| 1031 | (defun flyspell-word-search-forward (word bound) | 1047 | (defun flyspell-word-search-forward (word bound) |
| 1032 | (save-excursion | 1048 | (save-excursion |
| 1033 | (let ((r '()) | 1049 | (let* ((r '()) |
| 1034 | (inhibit-point-motion-hooks t) | 1050 | (inhibit-point-motion-hooks t) |
| 1035 | p) | 1051 | (flyspell-not-casechars (flyspell-get-not-casechars)) |
| 1036 | (while (and (not r) (setq p (search-forward word bound t))) | 1052 | (bound (if (and bound |
| 1037 | (let ((lw (flyspell-get-word))) | 1053 | (< bound (point-max))) |
| 1038 | (if (and (consp lw) (string-equal (car lw) word)) | 1054 | (+ bound 1))) |
| 1039 | (setq r p) | 1055 | (word-re (concat flyspell-not-casechars |
| 1040 | (goto-char (1+ p))))) | 1056 | (regexp-quote word) |
| 1057 | "\\(?:" flyspell-not-casechars "\\|\\'\\)")) | ||
| 1058 | p) | ||
| 1059 | (while | ||
| 1060 | (and (not r) | ||
| 1061 | (setq p (and | ||
| 1062 | (re-search-forward word-re bound t) | ||
| 1063 | (if (eobp) | ||
| 1064 | (point) | ||
| 1065 | (backward-char) | ||
| 1066 | (point))))) | ||
| 1067 | (let ((lw (flyspell-get-word))) | ||
| 1068 | (if (and (consp lw) (string-equal (car lw) word)) | ||
| 1069 | (setq r p) | ||
| 1070 | (goto-char (1+ p))))) | ||
| 1041 | r))) | 1071 | r))) |
| 1042 | 1072 | ||
| 1043 | (defvar flyspell-word) ;Backward compatibility; some predicates made use of it! | 1073 | (defvar flyspell-word) ;Backward compatibility; some predicates made use of it! |
diff --git a/lisp/textmodes/text-mode.el b/lisp/textmodes/text-mode.el index 5f2f671993c..84b578b5059 100644 --- a/lisp/textmodes/text-mode.el +++ b/lisp/textmodes/text-mode.el | |||
| @@ -45,6 +45,23 @@ Use (derived-mode-p 'text-mode) instead.") | |||
| 45 | (modify-syntax-entry ?\\ ". " st) | 45 | (modify-syntax-entry ?\\ ". " st) |
| 46 | ;; We add `p' so that M-c on 'hello' leads to 'Hello' rather than 'hello'. | 46 | ;; We add `p' so that M-c on 'hello' leads to 'Hello' rather than 'hello'. |
| 47 | (modify-syntax-entry ?' "w p" st) | 47 | (modify-syntax-entry ?' "w p" st) |
| 48 | ;; UAX #29 says HEBREW PUNCTUATION GERESH behaves like a letter | ||
| 49 | ;; for the purposes of finding word boundaries. | ||
| 50 | (modify-syntax-entry #x5f3 "w ") ; GERESH | ||
| 51 | ;; UAX #29 says HEBREW PUNCTUATION GERSHAYIM should not be a word | ||
| 52 | ;; boundary when surrounded by letters. Our infrastructure for | ||
| 53 | ;; finding a word boundary doesn't support 3-character | ||
| 54 | ;; definitions, so for now simply make this a word-constituent | ||
| 55 | ;; character. This leaves a problem of having GERSHAYIM at the | ||
| 56 | ;; beginning or end of a word, where it should be a boundary; | ||
| 57 | ;; FIXME. | ||
| 58 | (modify-syntax-entry #x5f4 "w ") ; GERSHAYIM | ||
| 59 | ;; These all should not be a word boundary when between letters, | ||
| 60 | ;; according to UAX #29, so they again are prone to the same | ||
| 61 | ;; problem as GERSHAYIM; FIXME. | ||
| 62 | (modify-syntax-entry #xb7 "w ") ; MIDDLE DOT | ||
| 63 | (modify-syntax-entry #x2027 "w ") ; HYPHENATION POINT | ||
| 64 | (modify-syntax-entry #xff1a "w ") ; FULLWIDTH COLON | ||
| 48 | st) | 65 | st) |
| 49 | "Syntax table used while in `text-mode'.") | 66 | "Syntax table used while in `text-mode'.") |
| 50 | 67 | ||
diff --git a/src/ChangeLog b/src/ChangeLog index 2609ed7dd01..7a30c6e897a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,10 @@ | |||
| 1 | 2015-03-03 Eli Zaretskii <eliz@gnu.org> | 1 | 2015-03-03 Eli Zaretskii <eliz@gnu.org> |
| 2 | 2 | ||
| 3 | * buffer.c (syms_of_buffer): Doc fix. (Bug#19841) | ||
| 4 | |||
| 5 | 2015-03-03 Eli Zaretskii <eliz@gnu.org> | ||
| 6 | 2015-03-03 Eli Zaretskii <eliz@gnu.org> | ||
| 7 | |||
| 3 | * xfaces.c (map_tty_color): Use assoc_no_quit instead of | 8 | * xfaces.c (map_tty_color): Use assoc_no_quit instead of |
| 4 | assq_no_quit to fetch color definition by its string name. | 9 | assq_no_quit to fetch color definition by its string name. |
| 5 | (Bug#19802) | 10 | (Bug#19802) |
diff --git a/src/buffer.c b/src/buffer.c index 371588b3093..332d6d51a81 100644 --- a/src/buffer.c +++ b/src/buffer.c | |||
| @@ -6196,6 +6196,7 @@ If the buffer has never been shown in a window, the value is nil. */); | |||
| 6196 | See the command `transient-mark-mode' for a description of this minor mode. | 6196 | See the command `transient-mark-mode' for a description of this minor mode. |
| 6197 | 6197 | ||
| 6198 | Non-nil also enables highlighting of the region whenever the mark is active. | 6198 | Non-nil also enables highlighting of the region whenever the mark is active. |
| 6199 | The region is highlighted with the `region' face. | ||
| 6199 | The variable `highlight-nonselected-windows' controls whether to highlight | 6200 | The variable `highlight-nonselected-windows' controls whether to highlight |
| 6200 | all windows or just the selected window. | 6201 | all windows or just the selected window. |
| 6201 | 6202 | ||