diff options
| author | John Wiegley | 2016-03-03 23:52:26 -0800 |
|---|---|---|
| committer | John Wiegley | 2016-03-03 23:52:26 -0800 |
| commit | 2f3f7fcb576c333efd3c299b29fbbe05bd317d90 (patch) | |
| tree | 477edea3845f30b4dd5b7ef308ce3a414d8c0f00 /lisp | |
| parent | 887f6126c5ce9084f93083765ac026ca6b28175c (diff) | |
| parent | 6620944f8325101d6a0e01690aea7901a66f0461 (diff) | |
| download | emacs-2f3f7fcb576c333efd3c299b29fbbe05bd317d90.tar.gz emacs-2f3f7fcb576c333efd3c299b29fbbe05bd317d90.zip | |
Merge from origin/emacs-25
6620944 (cl-union): Do not ignore :test argument when lists are equal.
17dd3fb Add `isearch' to `basic-faces'
c1ec743 Make $, : and @ "prefix characters" in ruby-mode
e72a26e Make find-tag-default-bounds more strict
1bc0e0a Minor fixes in filenotify.el
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/emacs-lisp/cl-seq.el | 2 | ||||
| -rw-r--r-- | lisp/filenotify.el | 19 | ||||
| -rw-r--r-- | lisp/progmodes/ruby-mode.el | 15 | ||||
| -rw-r--r-- | lisp/replace.el | 1 | ||||
| -rw-r--r-- | lisp/subr.el | 24 |
5 files changed, 23 insertions, 38 deletions
diff --git a/lisp/emacs-lisp/cl-seq.el b/lisp/emacs-lisp/cl-seq.el index 61ee5698435..21aec6cdfcd 100644 --- a/lisp/emacs-lisp/cl-seq.el +++ b/lisp/emacs-lisp/cl-seq.el | |||
| @@ -774,7 +774,7 @@ to avoid corrupting the original LIST1 and LIST2. | |||
| 774 | \nKeywords supported: :test :test-not :key | 774 | \nKeywords supported: :test :test-not :key |
| 775 | \n(fn LIST1 LIST2 [KEYWORD VALUE]...)" | 775 | \n(fn LIST1 LIST2 [KEYWORD VALUE]...)" |
| 776 | (cond ((null cl-list1) cl-list2) ((null cl-list2) cl-list1) | 776 | (cond ((null cl-list1) cl-list2) ((null cl-list2) cl-list1) |
| 777 | ((equal cl-list1 cl-list2) cl-list1) | 777 | ((and (not cl-keys) (equal cl-list1 cl-list2)) cl-list1) |
| 778 | (t | 778 | (t |
| 779 | (or (>= (length cl-list1) (length cl-list2)) | 779 | (or (>= (length cl-list1) (length cl-list2)) |
| 780 | (setq cl-list1 (prog1 cl-list2 (setq cl-list2 cl-list1)))) | 780 | (setq cl-list1 (prog1 cl-list2 (setq cl-list2 cl-list1)))) |
diff --git a/lisp/filenotify.el b/lisp/filenotify.el index 21046a85a7a..f8a53631135 100644 --- a/lisp/filenotify.el +++ b/lisp/filenotify.el | |||
| @@ -27,8 +27,7 @@ | |||
| 27 | 27 | ||
| 28 | ;;; Code: | 28 | ;;; Code: |
| 29 | 29 | ||
| 30 | (eval-when-compile | 30 | (require 'cl-lib) |
| 31 | (require 'cl)) | ||
| 32 | 31 | ||
| 33 | (defconst file-notify--library | 32 | (defconst file-notify--library |
| 34 | (cond | 33 | (cond |
| @@ -58,7 +57,7 @@ DESCRIPTOR should be an object returned by `file-notify-add-watch'. | |||
| 58 | If it is registered in `file-notify-descriptors', a stopped event is sent." | 57 | If it is registered in `file-notify-descriptors', a stopped event is sent." |
| 59 | (let* ((desc (if (consp descriptor) (car descriptor) descriptor)) | 58 | (let* ((desc (if (consp descriptor) (car descriptor) descriptor)) |
| 60 | (registered (gethash desc file-notify-descriptors)) | 59 | (registered (gethash desc file-notify-descriptors)) |
| 61 | (file (if (consp descriptor) (cdr descriptor) (caadr registered))) | 60 | (file (if (consp descriptor) (cdr descriptor) (cl-caadr registered))) |
| 62 | (dir (car registered))) | 61 | (dir (car registered))) |
| 63 | 62 | ||
| 64 | (when (consp registered) | 63 | (when (consp registered) |
| @@ -104,7 +103,7 @@ It is a form ((DESCRIPTOR ACTION FILE [FILE1-OR-COOKIE]) CALLBACK).") | |||
| 104 | Could be different from the directory watched by the backend library." | 103 | Could be different from the directory watched by the backend library." |
| 105 | (let* ((desc (if (consp (car event)) (caar event) (car event))) | 104 | (let* ((desc (if (consp (car event)) (caar event) (car event))) |
| 106 | (registered (gethash desc file-notify-descriptors)) | 105 | (registered (gethash desc file-notify-descriptors)) |
| 107 | (file (if (consp (car event)) (cdar event) (caadr registered))) | 106 | (file (if (consp (car event)) (cdar event) (cl-caadr registered))) |
| 108 | (dir (car registered))) | 107 | (dir (car registered))) |
| 109 | (if file (expand-file-name file dir) dir))) | 108 | (if file (expand-file-name file dir) dir))) |
| 110 | 109 | ||
| @@ -274,11 +273,13 @@ EVENT is the cadr of the event in `file-notify-handle-event' | |||
| 274 | `(,(file-notify--descriptor desc (car entry)) ,action ,file)))) | 273 | `(,(file-notify--descriptor desc (car entry)) ,action ,file)))) |
| 275 | 274 | ||
| 276 | ;; Send `stopped' event. | 275 | ;; Send `stopped' event. |
| 277 | (when (and (memq action '(deleted renamed)) | 276 | (when (or stopped |
| 278 | ;; Not, when a file is backed up. | 277 | (and (memq action '(deleted renamed)) |
| 279 | (not (and (stringp file1) (backup-file-name-p file1))) | 278 | ;; Not, when a file is backed up. |
| 280 | ;; Watched file or directory is concerned. | 279 | (not (and (stringp file1) (backup-file-name-p file1))) |
| 281 | (string-equal file (file-notify--event-watched-file event))) | 280 | ;; Watched file or directory is concerned. |
| 281 | (string-equal | ||
| 282 | file (file-notify--event-watched-file event)))) | ||
| 282 | (file-notify-rm-watch (file-notify--descriptor desc (car entry)))))))) | 283 | (file-notify-rm-watch (file-notify--descriptor desc (car entry)))))))) |
| 283 | 284 | ||
| 284 | ;; `kqueue', `gfilenotify' and `w32notify' return a unique descriptor | 285 | ;; `kqueue', `gfilenotify' and `w32notify' return a unique descriptor |
diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el index e3fe315f3bd..fb942b34ddc 100644 --- a/lisp/progmodes/ruby-mode.el +++ b/lisp/progmodes/ruby-mode.el | |||
| @@ -32,7 +32,7 @@ | |||
| 32 | ;; file after putting it on your load path: | 32 | ;; file after putting it on your load path: |
| 33 | ;; | 33 | ;; |
| 34 | ;; (autoload 'ruby-mode "ruby-mode" "Major mode for ruby files" t) | 34 | ;; (autoload 'ruby-mode "ruby-mode" "Major mode for ruby files" t) |
| 35 | ;; (add-to-list 'auto-mode-alist '("\\.rb$" . ruby-mode)) | 35 | ;; (add-to-list 'auto-mode-alist '("\\.rb\\'" . ruby-mode)) |
| 36 | ;; (add-to-list 'interpreter-mode-alist '("ruby" . ruby-mode)) | 36 | ;; (add-to-list 'interpreter-mode-alist '("ruby" . ruby-mode)) |
| 37 | ;; | 37 | ;; |
| 38 | ;; Still needs more docstrings; search below for TODO. | 38 | ;; Still needs more docstrings; search below for TODO. |
| @@ -188,9 +188,10 @@ This should only be called after matching against `ruby-here-doc-beg-re'." | |||
| 188 | (modify-syntax-entry ?# "<" table) | 188 | (modify-syntax-entry ?# "<" table) |
| 189 | (modify-syntax-entry ?\n ">" table) | 189 | (modify-syntax-entry ?\n ">" table) |
| 190 | (modify-syntax-entry ?\\ "\\" table) | 190 | (modify-syntax-entry ?\\ "\\" table) |
| 191 | (modify-syntax-entry ?$ "." table) | 191 | (modify-syntax-entry ?$ "'" table) |
| 192 | (modify-syntax-entry ?_ "_" table) | 192 | (modify-syntax-entry ?_ "_" table) |
| 193 | (modify-syntax-entry ?: "_" table) | 193 | (modify-syntax-entry ?: "'" table) |
| 194 | (modify-syntax-entry ?@ "'" table) | ||
| 194 | (modify-syntax-entry ?< "." table) | 195 | (modify-syntax-entry ?< "." table) |
| 195 | (modify-syntax-entry ?> "." table) | 196 | (modify-syntax-entry ?> "." table) |
| 196 | (modify-syntax-entry ?& "." table) | 197 | (modify-syntax-entry ?& "." table) |
| @@ -1858,6 +1859,10 @@ It will be properly highlighted even when the call omits parens.") | |||
| 1858 | (string-to-syntax "_")))) | 1859 | (string-to-syntax "_")))) |
| 1859 | ;; Backtick method redefinition. | 1860 | ;; Backtick method redefinition. |
| 1860 | ("^[ \t]*def +\\(`\\)" (1 "_")) | 1861 | ("^[ \t]*def +\\(`\\)" (1 "_")) |
| 1862 | ;; Ternary operator colon followed by opening paren or bracket | ||
| 1863 | ;; (semi-important for indentation). | ||
| 1864 | ("\\(:\\)\\(?:[\({]\\|\\[[^]]\\)" | ||
| 1865 | (1 (string-to-syntax "."))) | ||
| 1861 | ;; Regular expressions. Start with matching unescaped slash. | 1866 | ;; Regular expressions. Start with matching unescaped slash. |
| 1862 | ("\\(?:\\=\\|[^\\]\\)\\(?:\\\\\\\\\\)*\\(/\\)" | 1867 | ("\\(?:\\=\\|[^\\]\\)\\(?:\\\\\\\\\\)*\\(/\\)" |
| 1863 | (1 (let ((state (save-excursion (syntax-ppss (match-beginning 1))))) | 1868 | (1 (let ((state (save-excursion (syntax-ppss (match-beginning 1))))) |
| @@ -2023,7 +2028,7 @@ It will be properly highlighted even when the call omits parens.") | |||
| 2023 | "The syntax table to use for fontifying Ruby mode buffers. | 2028 | "The syntax table to use for fontifying Ruby mode buffers. |
| 2024 | See `font-lock-syntax-table'.") | 2029 | See `font-lock-syntax-table'.") |
| 2025 | 2030 | ||
| 2026 | (defconst ruby-font-lock-keyword-beg-re "\\(?:^\\|[^.@$]\\|\\.\\.\\)") | 2031 | (defconst ruby-font-lock-keyword-beg-re "\\(?:^\\|[^.@$:]\\|\\.\\.\\)") |
| 2027 | 2032 | ||
| 2028 | (defconst ruby-font-lock-keywords | 2033 | (defconst ruby-font-lock-keywords |
| 2029 | `(;; Functions. | 2034 | `(;; Functions. |
| @@ -2196,7 +2201,7 @@ See `font-lock-syntax-table'.") | |||
| 2196 | ("\\(\\$\\|@\\|@@\\)\\(\\w\\|_\\)+" | 2201 | ("\\(\\$\\|@\\|@@\\)\\(\\w\\|_\\)+" |
| 2197 | 0 font-lock-variable-name-face) | 2202 | 0 font-lock-variable-name-face) |
| 2198 | ;; Constants. | 2203 | ;; Constants. |
| 2199 | ("\\(?:\\_<\\|::\\)\\([A-Z]+\\(\\w\\|_\\)*\\)" | 2204 | ("\\_<\\([A-Z]+\\(\\w\\|_\\)*\\)" |
| 2200 | 1 (unless (eq ?\( (char-after)) font-lock-type-face)) | 2205 | 1 (unless (eq ?\( (char-after)) font-lock-type-face)) |
| 2201 | ;; Ruby 1.9-style symbol hash keys. | 2206 | ;; Ruby 1.9-style symbol hash keys. |
| 2202 | ("\\(?:^\\s *\\|[[{(,]\\s *\\|\\sw\\s +\\)\\(\\(\\sw\\|_\\)+:\\)[^:]" | 2207 | ("\\(?:^\\s *\\|[[{(,]\\s *\\|\\sw\\s +\\)\\(\\(\\sw\\|_\\)+:\\)[^:]" |
diff --git a/lisp/replace.el b/lisp/replace.el index b7e26c96fc5..a2ce78a8bb2 100644 --- a/lisp/replace.el +++ b/lisp/replace.el | |||
| @@ -1268,6 +1268,7 @@ Compatibility function for \\[next-error] invocations." | |||
| 1268 | (t :background "gray")) | 1268 | (t :background "gray")) |
| 1269 | "Face used to highlight matches permanently." | 1269 | "Face used to highlight matches permanently." |
| 1270 | :group 'matching | 1270 | :group 'matching |
| 1271 | :group 'basic-faces | ||
| 1271 | :version "22.1") | 1272 | :version "22.1") |
| 1272 | 1273 | ||
| 1273 | (defcustom list-matching-lines-default-context-lines 0 | 1274 | (defcustom list-matching-lines-default-context-lines 0 |
diff --git a/lisp/subr.el b/lisp/subr.el index 447c3eb1a4f..6eea54f2a32 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -2765,29 +2765,7 @@ See also `locate-user-emacs-file'.") | |||
| 2765 | "Determine the boundaries of the default tag, based on text at point. | 2765 | "Determine the boundaries of the default tag, based on text at point. |
| 2766 | Return a cons cell with the beginning and end of the found tag. | 2766 | Return a cons cell with the beginning and end of the found tag. |
| 2767 | If there is no plausible default, return nil." | 2767 | If there is no plausible default, return nil." |
| 2768 | (let (from to bound) | 2768 | (bounds-of-thing-at-point 'symbol)) |
| 2769 | (when (or (progn | ||
| 2770 | ;; Look at text around `point'. | ||
| 2771 | (save-excursion | ||
| 2772 | (skip-syntax-backward "w_") (setq from (point))) | ||
| 2773 | (save-excursion | ||
| 2774 | (skip-syntax-forward "w_") (setq to (point))) | ||
| 2775 | (> to from)) | ||
| 2776 | ;; Look between `line-beginning-position' and `point'. | ||
| 2777 | (save-excursion | ||
| 2778 | (and (setq bound (line-beginning-position)) | ||
| 2779 | (skip-syntax-backward "^w_" bound) | ||
| 2780 | (> (setq to (point)) bound) | ||
| 2781 | (skip-syntax-backward "w_") | ||
| 2782 | (setq from (point)))) | ||
| 2783 | ;; Look between `point' and `line-end-position'. | ||
| 2784 | (save-excursion | ||
| 2785 | (and (setq bound (line-end-position)) | ||
| 2786 | (skip-syntax-forward "^w_" bound) | ||
| 2787 | (< (setq from (point)) bound) | ||
| 2788 | (skip-syntax-forward "w_") | ||
| 2789 | (setq to (point))))) | ||
| 2790 | (cons from to)))) | ||
| 2791 | 2769 | ||
| 2792 | (defun find-tag-default () | 2770 | (defun find-tag-default () |
| 2793 | "Determine default tag to search for, based on text at point. | 2771 | "Determine default tag to search for, based on text at point. |