summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2016-10-23 02:43:17 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2016-10-23 02:43:17 -0700
commit6129cd03e20a0aaee46ceb742a9ed1ae2904eab3 (patch)
treef432bbffba80979cec74cfc125a9f73abfd06a91 /lisp
parent16d126d7559c2f58c8af6cf86c9f54b6e21cceb4 (diff)
parentb73f4668ab685dfb690eced15b20ed47f90efccb (diff)
downloademacs-6129cd03e20a0aaee46ceb742a9ed1ae2904eab3.tar.gz
Merge from origin/emacs-25
b73f466 * lisp/cus-start.el (exec-path): Handle nil elements. (Bug#2... 55ebb70 Catch the imenu-unavailable error in sh-mode completion table 993acb5 ; Minor fix for last change in characters.el 30c4bb5 More char-width fixes 4eb4463 Fix char-width-table values for some Emoji 528997d Keep point when switching from and to *terminal* buffer 2130005 * INSTALL: Use correct Emacs release number 25. 10835b1 Avoid crashes due to objects read with the #n=object form 4de671d Improve doc string of 'completion-at-point-functions' ceb46f0 Fix crash in evaluating functions d8374c4 * src/filelock.c (current_lock_owner): Update comment.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/cus-start.el4
-rw-r--r--lisp/international/characters.el29
-rw-r--r--lisp/minibuffer.el18
-rw-r--r--lisp/progmodes/sh-script.el5
-rw-r--r--lisp/term.el16
5 files changed, 33 insertions, 39 deletions
diff --git a/lisp/cus-start.el b/lisp/cus-start.el
index 127a574c7e3..b7cc6261a1b 100644
--- a/lisp/cus-start.el
+++ b/lisp/cus-start.el
@@ -173,7 +173,9 @@ Leaving \"Default\" unchecked is equivalent with specifying a default of
(directory :format "%v")))
nil
:standard
- (mapcar 'directory-file-name
+ (mapcar (lambda (f)
+ (if f (directory-file-name f)
+ "."))
(append (parse-colon-path (getenv "PATH"))
(list exec-directory))))
(exec-suffixes execute (repeat string))
diff --git a/lisp/international/characters.el b/lisp/international/characters.el
index 1757d2ba12c..2a7bc32f821 100644
--- a/lisp/international/characters.el
+++ b/lisp/international/characters.el
@@ -1239,38 +1239,23 @@ with L, LRE, or LRO Unicode bidi character type.")
(#x2B50 . #x2B50)
(#x2B55 . #x2B55)
(#x2E80 . #x303E)
- (#x3040 . #xA4CF)
+ (#x3040 . #x4DBF)
+ (#x4E00 . #xA4CF)
+ (#xA960 . #xA97F)
(#xAC00 . #xD7A3)
(#xF900 . #xFAFF)
+ (#xFE10 . #xFE19)
(#xFE30 . #xFE6F)
(#xFF01 . #xFF60)
(#xFFE0 . #xFFE6)
(#x16FE0 . #x16FE0)
(#x17000 . #x187EC)
(#x18800 . #x18AF2)
+ (#x1B000 . #x1B001)
(#x1F18E . #x1F18E)
(#x1F191 . #x1F19A)
- (#x1F200 . #x1F202)
- (#x1F210 . #x1F23B)
- (#x1F300 . #x1F320)
- (#x1F32D . #x1F335)
- (#x1F337 . #x1F37C)
- (#x1F37E . #x1F393)
- (#x1F3A0 . #x1F3CA)
- (#x1F3CF . #x1F3D3)
- (#x1F3E0 . #x1F3F0)
- (#x1F3F4 . #x1F3F4)
- (#x1F3F8 . #x1F3FA)
- (#x1F3FB . #x1F3FF)
- (#x1F440 . #x1F440)
- (#x1F442 . #x1F4FC)
- (#x1F4FF . #x1F53D)
- (#x1F54B . #x1F54E)
- (#x1F550 . #x1F567)
- (#x1F57A . #x1F57A)
- (#x1F595 . #x1F596)
- (#x1F5A4 . #x1F5A4)
- (#x1F5FB . #x1F5FF)
+ (#x1F200 . #x1F2FF)
+ (#x1F300 . #x1F5FF)
(#x1F600 . #x1F64F)
(#x1F680 . #x1F6C5)
(#x1F6CC . #x1F6CC)
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index 3d63ca8bd5f..175189c1b48 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -2052,22 +2052,22 @@ Also respects the obsolete wrapper hook `completion-in-region-functions'.
minor-mode-map-alist))
(defvar completion-at-point-functions '(tags-completion-at-point-function)
- "Special hook to find the completion table for the thing at point.
-Each function on this hook is called in turn without any argument and should
-return either nil to mean that it is not applicable at point,
-or a function of no argument to perform completion (discouraged),
-or a list of the form (START END COLLECTION . PROPS) where
+ "Special hook to find the completion table for the entity at point.
+Each function on this hook is called in turn without any argument and
+should return either nil, meaning it is not applicable at point,
+or a function of no arguments to perform completion (discouraged),
+or a list of the form (START END COLLECTION . PROPS), where:
START and END delimit the entity to complete and should include point,
- COLLECTION is the completion table to use to complete it, and
+ COLLECTION is the completion table to use to complete the entity, and
PROPS is a property list for additional information.
Currently supported properties are all the properties that can appear in
`completion-extra-properties' plus:
`:predicate' a predicate that completion candidates need to satisfy.
- `:exclusive' If `no', means that if the completion table fails to
+ `:exclusive' value of `no' means that if the completion table fails to
match the text at point, then instead of reporting a completion
failure, the completion should try the next completion function.
-As is the case with most hooks, the functions are responsible to preserve
-things like point and current buffer.")
+As is the case with most hooks, the functions are responsible for
+preserving things like point and current buffer.")
(defvar completion--capf-misbehave-funs nil
"List of functions found on `completion-at-point-functions' that misbehave.
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index 7a9e6c7422d..5d362e42c30 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -1744,7 +1744,10 @@ This adds rules for comments and assignments."
(defun sh--cmd-completion-table (string pred action)
(let ((cmds
(append (when (fboundp 'imenu--make-index-alist)
- (mapcar #'car (imenu--make-index-alist)))
+ (mapcar #'car
+ (condition-case nil
+ (imenu--make-index-alist)
+ (imenu-unavailable nil))))
(mapcar (lambda (v) (concat v "="))
(sh--vars-before-point))
(locate-file-completion-table
diff --git a/lisp/term.el b/lisp/term.el
index 1adeae24098..5177ab4b921 100644
--- a/lisp/term.el
+++ b/lisp/term.el
@@ -1109,12 +1109,16 @@ Entry to this mode runs the hooks on `term-mode-hook'."
(term-update-mode-line))
(defun term-reset-size (height width)
- (setq term-height height)
- (setq term-width width)
- (setq term-start-line-column nil)
- (setq term-current-row nil)
- (setq term-current-column nil)
- (term-set-scroll-region 0 height))
+ (when (or (/= height term-height)
+ (/= width term-width))
+ (let ((point (point)))
+ (setq term-height height)
+ (setq term-width width)
+ (setq term-start-line-column nil)
+ (setq term-current-row nil)
+ (setq term-current-column nil)
+ (term-set-scroll-region 0 height)
+ (goto-char point))))
;; Recursive routine used to check if any string in term-kill-echo-list
;; matches part of the buffer before point.