[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r115024: * lisp/progmodes/sh-script.el (sh-smie--sh-
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] trunk r115024: * lisp/progmodes/sh-script.el (sh-smie--sh-keyword-in-p): Don't inf-loop |
Date: |
Fri, 08 Nov 2013 04:33:39 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 115024
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15826
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Thu 2013-11-07 23:33:32 -0500
message:
* lisp/progmodes/sh-script.el (sh-smie--sh-keyword-in-p): Don't inf-loop
at bobp.
(sh-smie--sh-keyword-in-p): Recognize keywords at bobp.
modified:
lisp/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1432
lisp/progmodes/sh-script.el shscript.el-20091113204419-o5vbwnq5f7feedwu-727
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2013-11-08 04:09:56 +0000
+++ b/lisp/ChangeLog 2013-11-08 04:33:32 +0000
@@ -1,3 +1,9 @@
+2013-11-08 Stefan Monnier <address@hidden>
+
+ * progmodes/sh-script.el (sh-smie--sh-keyword-in-p): Don't inf-loop
+ at bobp (bug#15826).
+ (sh-smie--sh-keyword-in-p): Recognize keywords at bobp.
+
2013-11-08 Darren Hoo <address@hidden>
* man.el (Man-start-calling): New macro, extracted from
=== modified file 'lisp/progmodes/sh-script.el'
--- a/lisp/progmodes/sh-script.el 2013-10-24 21:16:20 +0000
+++ b/lisp/progmodes/sh-script.el 2013-11-08 04:33:32 +0000
@@ -1730,7 +1730,7 @@
like a keyword, then it is a keyword."
(let ((prev (funcall smie-backward-token-function)))
(if (zerop (length prev))
- (looking-back "\\s(" (1- (point)))
+ (looking-back "\\`\\|\\s(" (1- (point)))
(assoc prev smie-grammar))))
(defun sh-smie--newline-semi-p (&optional tok)
@@ -1804,12 +1804,14 @@
(setq prev (funcall smie-backward-token-function))
(cond
((zerop (length prev))
- (if newline
- (progn (cl-assert words) (setq res 'word))
+ (cond
+ (newline (cl-assert words) (setq res 'word))
+ ((bobp) (setq res 'word))
+ (t
(setq words t)
(condition-case nil
(forward-sexp -1)
- (scan-error (setq res 'unknown)))))
+ (scan-error (setq res 'unknown))))))
((equal prev ";")
(if words (setq newline t)
(setq res 'keyword)))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r115024: * lisp/progmodes/sh-script.el (sh-smie--sh-keyword-in-p): Don't inf-loop,
Stefan Monnier <=