diff options
| author | Chong Yidong | 2009-10-18 22:25:36 +0000 |
|---|---|---|
| committer | Chong Yidong | 2009-10-18 22:25:36 +0000 |
| commit | 7346a407f45d7eaff6ef8742bc054b7e3a9c17c0 (patch) | |
| tree | 237a38b704a111b12a1033d7716fbf024838ac8e | |
| parent | 6873acca85ebfa0e5b1396250f8c4fd1b577404d (diff) | |
| download | emacs-7346a407f45d7eaff6ef8742bc054b7e3a9c17c0.tar.gz emacs-7346a407f45d7eaff6ef8742bc054b7e3a9c17c0.zip | |
* minibuffer.el (read-file-name): Check for repeat before putting
a default argument in file-name-history (Bug#4657).
* emacs-lisp/lisp-mode.el (preceding-sexp): Recognize hash table
read syntax (Bug#4737).
* textmodes/sgml-mode.el (sgml-delete-tag): Use
sgml-looking-back-at.
| -rw-r--r-- | lisp/ChangeLog | 11 | ||||
| -rw-r--r-- | lisp/emacs-lisp/lisp-mode.el | 5 | ||||
| -rw-r--r-- | lisp/minibuffer.el | 8 | ||||
| -rw-r--r-- | lisp/textmodes/sgml-mode.el | 2 |
4 files changed, 23 insertions, 3 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 39829c2c3d7..e689b83cf0d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,14 @@ | |||
| 1 | 2009-10-18 Chong Yidong <cyd@stupidchicken.com> | ||
| 2 | |||
| 3 | * minibuffer.el (read-file-name): Check for repeat before putting | ||
| 4 | a default argument in file-name-history (Bug#4657). | ||
| 5 | |||
| 6 | * emacs-lisp/lisp-mode.el (preceding-sexp): Recognize hash table | ||
| 7 | read syntax (Bug#4737). | ||
| 8 | |||
| 9 | * textmodes/sgml-mode.el (sgml-delete-tag): Use | ||
| 10 | sgml-looking-back-at. | ||
| 11 | |||
| 1 | 2009-10-18 Aaron S. Hawley <aaron.s.hawley@gmail.com> | 12 | 2009-10-18 Aaron S. Hawley <aaron.s.hawley@gmail.com> |
| 2 | 13 | ||
| 3 | * textmodes/sgml-mode.el (sgml-tag-help): Prompt user for tag. | 14 | * textmodes/sgml-mode.el (sgml-tag-help): Prompt user for tag. |
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index b9b7c6ad8f9..362c75a8caf 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el | |||
| @@ -673,6 +673,11 @@ If CHAR is not a character, return nil." | |||
| 673 | (when (eq (preceding-char) ??) | 673 | (when (eq (preceding-char) ??) |
| 674 | (forward-char -1))) | 674 | (forward-char -1))) |
| 675 | 675 | ||
| 676 | ;; Skip over hash table read syntax. | ||
| 677 | (and (> (point) (1+ (point-min))) | ||
| 678 | (looking-back "#s" (- (point) 2)) | ||
| 679 | (forward-char -2)) | ||
| 680 | |||
| 676 | ;; Skip over `#N='s. | 681 | ;; Skip over `#N='s. |
| 677 | (when (eq (preceding-char) ?=) | 682 | (when (eq (preceding-char) ?=) |
| 678 | (let (labeled-p) | 683 | (let (labeled-p) |
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index ca2a5fc6b64..c8bb26002af 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el | |||
| @@ -1289,12 +1289,16 @@ and `read-file-name-function'." | |||
| 1289 | 1289 | ||
| 1290 | (if replace-in-history | 1290 | (if replace-in-history |
| 1291 | ;; Replace what Fcompleting_read added to the history | 1291 | ;; Replace what Fcompleting_read added to the history |
| 1292 | ;; with what we will actually return. | 1292 | ;; with what we will actually return. As an exception, |
| 1293 | ;; if that's the same as the second item in | ||
| 1294 | ;; file-name-history, it's really a repeat (Bug#4657). | ||
| 1293 | (let ((val1 (minibuffer--double-dollars val))) | 1295 | (let ((val1 (minibuffer--double-dollars val))) |
| 1294 | (if history-delete-duplicates | 1296 | (if history-delete-duplicates |
| 1295 | (setcdr file-name-history | 1297 | (setcdr file-name-history |
| 1296 | (delete val1 (cdr file-name-history)))) | 1298 | (delete val1 (cdr file-name-history)))) |
| 1297 | (setcar file-name-history val1)) | 1299 | (if (string= val1 (cadr file-name-history)) |
| 1300 | (pop file-name-history) | ||
| 1301 | (setcar file-name-history val1))) | ||
| 1298 | (if add-to-history | 1302 | (if add-to-history |
| 1299 | ;; Add the value to the history--but not if it matches | 1303 | ;; Add the value to the history--but not if it matches |
| 1300 | ;; the last value already there. | 1304 | ;; the last value already there. |
diff --git a/lisp/textmodes/sgml-mode.el b/lisp/textmodes/sgml-mode.el index d009e77adb2..ff3054423b9 100644 --- a/lisp/textmodes/sgml-mode.el +++ b/lisp/textmodes/sgml-mode.el | |||
| @@ -909,7 +909,7 @@ With prefix argument ARG, repeat this ARG times." | |||
| 909 | (kill-sexp 1)) | 909 | (kill-sexp 1)) |
| 910 | (setq open (point)) | 910 | (setq open (point)) |
| 911 | (when (and (sgml-skip-tag-forward 1) | 911 | (when (and (sgml-skip-tag-forward 1) |
| 912 | (not (looking-back "/>"))) | 912 | (not (sgml-looking-back-at "/>"))) |
| 913 | (kill-sexp -1))) | 913 | (kill-sexp -1))) |
| 914 | ;; Delete any resulting empty line. If we didn't kill-sexp, | 914 | ;; Delete any resulting empty line. If we didn't kill-sexp, |
| 915 | ;; this *should* do nothing, because we're right after the tag. | 915 | ;; this *should* do nothing, because we're right after the tag. |