diff options
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/simple.el | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/lisp/simple.el b/lisp/simple.el index 47ce0364d14..5e4cd8f5bc0 100644 --- a/lisp/simple.el +++ b/lisp/simple.el | |||
| @@ -2041,7 +2041,7 @@ See also `minibuffer-history-case-insensitive-variables'." | |||
| 2041 | (null minibuffer-text-before-history)) | 2041 | (null minibuffer-text-before-history)) |
| 2042 | (setq minibuffer-text-before-history | 2042 | (setq minibuffer-text-before-history |
| 2043 | (minibuffer-contents-no-properties))) | 2043 | (minibuffer-contents-no-properties))) |
| 2044 | (let ((history (symbol-value minibuffer-history-variable)) | 2044 | (let ((history (minibuffer-history-value)) |
| 2045 | (case-fold-search | 2045 | (case-fold-search |
| 2046 | (if (isearch-no-upper-case-p regexp t) ; assume isearch.el is dumped | 2046 | (if (isearch-no-upper-case-p regexp t) ; assume isearch.el is dumped |
| 2047 | ;; On some systems, ignore case for file names. | 2047 | ;; On some systems, ignore case for file names. |
| @@ -2141,6 +2141,14 @@ the end of the list of defaults just after the default value." | |||
| 2141 | (append def all) | 2141 | (append def all) |
| 2142 | (cons def (delete def all))))) | 2142 | (cons def (delete def all))))) |
| 2143 | 2143 | ||
| 2144 | (defun minibuffer-history-value () | ||
| 2145 | "Return the value of the minibuffer input history list. | ||
| 2146 | If `minibuffer-history-variable' points to a buffer-local variable and | ||
| 2147 | the minibuffer is active, return the buffer-local value for the buffer | ||
| 2148 | that was current when the minibuffer was activated." | ||
| 2149 | (buffer-local-value minibuffer-history-variable | ||
| 2150 | (window-buffer (minibuffer-selected-window)))) | ||
| 2151 | |||
| 2144 | (defun goto-history-element (nabs) | 2152 | (defun goto-history-element (nabs) |
| 2145 | "Puts element of the minibuffer history in the minibuffer. | 2153 | "Puts element of the minibuffer history in the minibuffer. |
| 2146 | The argument NABS specifies the absolute history position in | 2154 | The argument NABS specifies the absolute history position in |
| @@ -2169,8 +2177,8 @@ negative number -N means the Nth entry of \"future history.\"" | |||
| 2169 | (user-error (if minibuffer-default | 2177 | (user-error (if minibuffer-default |
| 2170 | "End of defaults; no next item" | 2178 | "End of defaults; no next item" |
| 2171 | "End of history; no default available"))) | 2179 | "End of history; no default available"))) |
| 2172 | (if (> nabs (if (listp (symbol-value minibuffer-history-variable)) | 2180 | (if (> nabs (if (listp (minibuffer-history-value)) |
| 2173 | (length (symbol-value minibuffer-history-variable)) | 2181 | (length (minibuffer-history-value)) |
| 2174 | 0)) | 2182 | 0)) |
| 2175 | (user-error "Beginning of history; no preceding item")) | 2183 | (user-error "Beginning of history; no preceding item")) |
| 2176 | (unless (memq last-command '(next-history-element | 2184 | (unless (memq last-command '(next-history-element |
| @@ -2192,7 +2200,7 @@ negative number -N means the Nth entry of \"future history.\"" | |||
| 2192 | (setq minibuffer-returned-to-present t) | 2200 | (setq minibuffer-returned-to-present t) |
| 2193 | (setq minibuffer-text-before-history nil)) | 2201 | (setq minibuffer-text-before-history nil)) |
| 2194 | (t (setq elt (nth (1- minibuffer-history-position) | 2202 | (t (setq elt (nth (1- minibuffer-history-position) |
| 2195 | (symbol-value minibuffer-history-variable))))) | 2203 | (minibuffer-history-value))))) |
| 2196 | (insert | 2204 | (insert |
| 2197 | (if (and (eq minibuffer-history-sexp-flag (minibuffer-depth)) | 2205 | (if (and (eq minibuffer-history-sexp-flag (minibuffer-depth)) |
| 2198 | (not minibuffer-returned-to-present)) | 2206 | (not minibuffer-returned-to-present)) |
| @@ -2445,7 +2453,7 @@ or to the last history element for a backward search." | |||
| 2445 | ;; beginning/end of the history, wrap the search to the first/last | 2453 | ;; beginning/end of the history, wrap the search to the first/last |
| 2446 | ;; minibuffer history element. | 2454 | ;; minibuffer history element. |
| 2447 | (if isearch-forward | 2455 | (if isearch-forward |
| 2448 | (goto-history-element (length (symbol-value minibuffer-history-variable))) | 2456 | (goto-history-element (length (minibuffer-history-value))) |
| 2449 | (goto-history-element 0)) | 2457 | (goto-history-element 0)) |
| 2450 | (setq isearch-success t) | 2458 | (setq isearch-success t) |
| 2451 | (goto-char (if isearch-forward (minibuffer-prompt-end) (point-max)))) | 2459 | (goto-char (if isearch-forward (minibuffer-prompt-end) (point-max)))) |