emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 923602f 10/14: Merge from origin/emacs-24


From: Paul Eggert
Subject: [Emacs-diffs] master 923602f 10/14: Merge from origin/emacs-24
Date: Tue, 03 Mar 2015 22:56:45 +0000

branch: master
commit 923602fefbfadd47e0b675d97aa1b28a16971da0
Merge: 1fb87f1 0077b36
Author: Paul Eggert <address@hidden>
Commit: Paul Eggert <address@hidden>

    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
---
 etc/ChangeLog               |    5 +++
 etc/NEWS                    |   22 +++++++++++++
 lisp/ChangeLog              |   23 +++++++++++++-
 lisp/erc/ChangeLog          |    8 +++++
 lisp/erc/erc.el             |    4 ++-
 lisp/simple.el              |    9 +++--
 lisp/textmodes/flyspell.el  |   72 ++++++++++++++++++++++++++++++------------
 lisp/textmodes/text-mode.el |   17 ++++++++++
 src/ChangeLog               |    5 +++
 src/buffer.c                |    1 +
 10 files changed, 139 insertions(+), 27 deletions(-)

diff --git a/etc/ChangeLog b/etc/ChangeLog
index 99a74f9..9c11e18 100644
--- a/etc/ChangeLog
+++ b/etc/ChangeLog
@@ -1,3 +1,8 @@
+2015-03-03  Kelvin White  <address@hidden>
+
+       * NEWS: Add section to include ERC changes
+
+2015-03-03  Eli Zaretskii  <address@hidden>
 2015-03-02  Daniel Colascione  <address@hidden>
 
        * NEWS: Mention finalizers.
diff --git a/etc/NEWS b/etc/NEWS
index a94c4ca..8509cc0 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -25,8 +25,11 @@ otherwise leave it unmarked.
 * Installation Changes in Emacs 25.1
 
 +++
+
 ** Building Emacs now requires C99 or later.
 
+** The variable `redisplay-dont-pause' is obsolete.
+
 ** Building Emacs now requires GNU make, version 3.81 or later.
 
 +++
@@ -40,9 +43,28 @@ should be able to work around the problem either by porting 
the Emacs
 undumping code to GCC under IRIX, or by configuring --with-wide-int,
 or by sticking with Emacs 24.4.
 
+** ERC
+
 ** 'configure' now prefers gnustep-config when configuring GNUstep.
 If gnustep-config is not available, the old heuristics are used.
 
++++
+*** New option `erc-rename-buffers'.
+
+---
+*** New faces `erc-my-nick-prefix-face' and `erc-nick-prefix-face'.
+
++++
+*** address@hidden' displays all user modes instead of only op and voice.
+
+---
+*** The display of irc commands in the current buffer has been disabled.
+
+---
+*** `erc-version' now follows the Emacs version.
+
+** Obsolete packages
+
 ---
 *** cc-compat.el
 
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 69ccbfa..47ddeda 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,7 +1,28 @@
+2015-03-03  Glenn Morris  <address@hidden>
+
+       * textmodes/flyspell.el (flyspell-duplicate-distance):
+       Bump :version.
+
+2015-03-03  Eli Zaretskii  <address@hidden>
+
+       * textmodes/text-mode.el (text-mode-syntax-table): Make some
+       punctuation character behave as word-constituent, for more
+       compatibility with Unicode.
+
+       * simple.el (transient-mark-mode): Doc fix.  (Bug#19841)
+
+2015-03-03  Agustín Martín Domingo <address@hidden>
+
+       Improve string search in `flyspell-word-search-*`. (Bug#16800)
+       * flyspell.el (flyspell-duplicate-distance): Limit default search
+       distance for duplicated words to 40000.
+       (flyspell-word-search-backward, flyspell-word-search-forward):
+       Search as full word with defined casechars, not as substring.
+
+2015-03-03  Juri Linkov  <address@hidden>
 2015-03-03  Juri Linkov  <address@hidden>
 
        Better support for the case of typing RET on the prompt in comint.
-
        * comint.el (comint-get-old-input-default): Go to the field end
        when comint-use-prompt-regexp is nil.
        (comint-line-beginning-position): Check if point is already
diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog
index 4c1c843..f89d5a2 100644
--- a/lisp/erc/ChangeLog
+++ b/lisp/erc/ChangeLog
@@ -1,3 +1,11 @@
+2015-03-03  Glenn Morris  <address@hidden>
+
+       * erc.el (erc-rename-buffers): Doc fix.  Add :version.
+
+2015-03-03  Dima Kogan  <address@hidden>
+
+       * erc-backend.el (define-erc-response-handler): Give hook-name
+       default value of nil and add-to-list (bug#19363).
 2015-02-14  Stefan Monnier  <address@hidden>
 
        * erc-spelling.el (erc-spelling-init):
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index 7b9a3eb..e2366a1 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -197,7 +197,8 @@ parameters and authentication."
          (set sym (if (functionp val) (funcall val) val))))
 
 (defcustom erc-rename-buffers nil
-  "When this is set to t, buffers will be renamed to network name if available"
+  "Non-nil means rename buffers with network name, if available."
+  :version "24.5"
   :group 'erc
   :type 'boolean)
 
@@ -1148,6 +1149,7 @@ which the local user typed."
   "Faces for ERC."
   :group 'erc)
 
+;; FIXME faces should not end in "-face".
 (defface erc-default-face '((t))
   "ERC default face."
   :group 'erc-faces)
diff --git a/lisp/simple.el b/lisp/simple.el
index 2f09042..1e64f99 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -5168,10 +5168,11 @@ positive, and disable it otherwise.  If called from 
Lisp, enable
 Transient Mark mode if ARG is omitted or nil.
 
 Transient Mark mode is a global minor mode.  When enabled, the
-region is highlighted whenever the mark is active.  The mark is
-\"deactivated\" by changing the buffer, and after certain other
-operations that set the mark but whose main purpose is something
-else--for example, incremental search, \\[beginning-of-buffer], and 
\\[end-of-buffer].
+region is highlighted with the `region' face whenever the mark
+is active.  The mark is \"deactivated\" by changing the buffer,
+and after certain other operations that set the mark but whose
+main purpose is something else--for example, incremental search,
+\\[beginning-of-buffer], and \\[end-of-buffer].
 
 You can also deactivate the mark by typing \\[keyboard-quit] or
 \\[keyboard-escape-quit].
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index ffaf7e7..8aadf51 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -93,7 +93,7 @@ downcased before comparing with these exceptions."
   :version "21.1"
   :type 'boolean)
 
-(defcustom flyspell-duplicate-distance -1
+(defcustom flyspell-duplicate-distance 400000
   "The maximum distance for finding duplicates of unrecognized words.
 This applies to the feature that when a word is not found in the dictionary,
 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.
 -1 means no limit (search the whole buffer).
 0 means do not search for duplicate unrecognized spellings."
   :group 'flyspell
-  :version "21.1"
+  :version "24.5"                      ; -1 -> 400000
   :type '(choice (const :tag "no limit" -1)
                 number))
 
@@ -1012,17 +1012,33 @@ Mostly we check word delimiters."
 ;;*---------------------------------------------------------------------*/
 (defun flyspell-word-search-backward (word bound &optional ignore-case)
   (save-excursion
-    (let ((r '())
-         (inhibit-point-motion-hooks t)
-         p)
-      (while (and (not r) (setq p (search-backward word bound t)))
-       (let ((lw (flyspell-get-word)))
-         (if (and (consp lw)
-                  (if ignore-case
-                      (string-equal (downcase (car lw)) (downcase word))
-                    (string-equal (car lw) word)))
-             (setq r p)
-           (goto-char p))))
+    (let* ((r '())
+          (inhibit-point-motion-hooks t)
+          (flyspell-not-casechars (flyspell-get-not-casechars))
+          (bound (if (and bound
+                          (> bound (point-min)))
+                     (- bound 1)))
+          (word-re (concat
+                     "\\(?:" flyspell-not-casechars "\\|\\`\\)"
+                     (regexp-quote word)
+                     flyspell-not-casechars))
+          p)
+      (while
+         (and (not r)
+               (setq p
+                     (and
+                      (re-search-backward word-re bound t)
+                     (if (bobp)
+                         (point)
+                        (forward-char)
+                        (point)))))
+        (let ((lw (flyspell-get-word)))
+          (if (and (consp lw)
+                   (if ignore-case
+                       (string-equal (downcase (car lw)) (downcase word))
+                     (string-equal (car lw) word)))
+              (setq r p)
+            (goto-char p))))
       r)))
 
 ;;*---------------------------------------------------------------------*/
@@ -1030,14 +1046,28 @@ Mostly we check word delimiters."
 ;;*---------------------------------------------------------------------*/
 (defun flyspell-word-search-forward (word bound)
   (save-excursion
-    (let ((r '())
-         (inhibit-point-motion-hooks t)
-         p)
-      (while (and (not r) (setq p (search-forward word bound t)))
-       (let ((lw (flyspell-get-word)))
-         (if (and (consp lw) (string-equal (car lw) word))
-             (setq r p)
-           (goto-char (1+ p)))))
+    (let* ((r '())
+          (inhibit-point-motion-hooks t)
+          (flyspell-not-casechars (flyspell-get-not-casechars))
+          (bound (if (and bound
+                          (< bound (point-max)))
+                     (+ bound 1)))
+          (word-re (concat flyspell-not-casechars
+                            (regexp-quote word)
+                            "\\(?:" flyspell-not-casechars "\\|\\'\\)"))
+          p)
+      (while
+         (and (not r)
+               (setq p (and
+                        (re-search-forward word-re bound t)
+                        (if (eobp)
+                            (point)
+                          (backward-char)
+                          (point)))))
+        (let ((lw (flyspell-get-word)))
+          (if (and (consp lw) (string-equal (car lw) word))
+              (setq r p)
+            (goto-char (1+ p)))))
       r)))
 
 (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 5f2f671..84b578b 100644
--- a/lisp/textmodes/text-mode.el
+++ b/lisp/textmodes/text-mode.el
@@ -45,6 +45,23 @@ Use (derived-mode-p 'text-mode) instead.")
     (modify-syntax-entry ?\\ ".   " st)
     ;; We add `p' so that M-c on 'hello' leads to 'Hello' rather than 'hello'.
     (modify-syntax-entry ?' "w p" st)
+    ;; UAX #29 says HEBREW PUNCTUATION GERESH behaves like a letter
+    ;; for the purposes of finding word boundaries.
+    (modify-syntax-entry #x5f3 "w   ") ; GERESH
+    ;; UAX #29 says HEBREW PUNCTUATION GERSHAYIM should not be a word
+    ;; boundary when surrounded by letters.  Our infrastructure for
+    ;; finding a word boundary doesn't support 3-character
+    ;; definitions, so for now simply make this a word-constituent
+    ;; character.  This leaves a problem of having GERSHAYIM at the
+    ;; beginning or end of a word, where it should be a boundary;
+    ;; FIXME.
+    (modify-syntax-entry #x5f4 "w   ") ; GERSHAYIM
+    ;; These all should not be a word boundary when between letters,
+    ;; according to UAX #29, so they again are prone to the same
+    ;; problem as GERSHAYIM; FIXME.
+    (modify-syntax-entry #xb7 "w   ")  ; MIDDLE DOT
+    (modify-syntax-entry #x2027 "w   ")        ; HYPHENATION POINT
+    (modify-syntax-entry #xff1a "w   ")        ; FULLWIDTH COLON
     st)
   "Syntax table used while in `text-mode'.")
 
diff --git a/src/ChangeLog b/src/ChangeLog
index 2609ed7..7a30c6e 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,10 @@
 2015-03-03  Eli Zaretskii  <address@hidden>
 
+       * buffer.c (syms_of_buffer): Doc fix.  (Bug#19841)
+
+2015-03-03  Eli Zaretskii  <address@hidden>
+2015-03-03  Eli Zaretskii  <address@hidden>
+
        * xfaces.c (map_tty_color): Use assoc_no_quit instead of
        assq_no_quit to fetch color definition by its string name.
        (Bug#19802)
diff --git a/src/buffer.c b/src/buffer.c
index 371588b..332d6d5 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.  */);
 See the command `transient-mark-mode' for a description of this minor mode.
 
 Non-nil also enables highlighting of the region whenever the mark is active.
+The region is highlighted with the `region' face.
 The variable `highlight-nonselected-windows' controls whether to highlight
 all windows or just the selected window.
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]