From: Dmitry Gutov Date: Thu, 27 Mar 2014 06:53:13 +0000 (+0200) Subject: Fix bug#17097 X-Git-Tag: emacs-24.3.90~81 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=42ebc34ea8f93efe5b23c0124691207f32055666;p=emacs.git Fix bug#17097 * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize-function): Don't propertize `?' or `!' as symbol constituent when after colon. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index cb256740a03..ff76cadf945 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2014-03-27 Dmitry Gutov + + * progmodes/ruby-mode.el (ruby-syntax-propertize-function): + Don't propertize `?' or `!' as symbol constituent when after + colon. (Bug#17097) + 2014-03-27 Juanma Barranquero * frameset.el (frameset--restore-frame): Remove workaround for bug#14795 diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el index 2b8f2fa6868..7219221d4e7 100644 --- a/lisp/progmodes/ruby-mode.el +++ b/lisp/progmodes/ruby-mode.el @@ -1812,6 +1812,7 @@ It will be properly highlighted even when the call omits parens.") ("[!?]" (0 (unless (save-excursion (or (nth 8 (syntax-ppss (match-beginning 0))) + (eq (char-before) ?:) (let (parse-sexp-lookup-properties) (zerop (skip-syntax-backward "w_"))) (memq (preceding-char) '(?@ ?$)))) diff --git a/test/indent/ruby.rb b/test/indent/ruby.rb index 99482433145..fb341ee7ba6 100644 --- a/test/indent/ruby.rb +++ b/test/indent/ruby.rb @@ -148,6 +148,11 @@ if something == :== ) end +# Bug#17097 +if x == :!= + something +end + # Example from http://www.ruby-doc.org/docs/ProgrammingRuby/html/language.html d = 4 + 5 + # no '\' needed 6 + 7