From: Sameer Ajmani Date: Mon, 2 Apr 2012 16:59:37 +0000 (-0400) Subject: misc/emacs: fix go-mode syntax table and whitespace handling. X-Git-Tag: go1.1rc2~3462 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=b0f4d805f27fc8b24ced42fdce39b859d90ce101;p=gostls13.git misc/emacs: fix go-mode syntax table and whitespace handling. - flag * and / as comment characters - mark newline as a comment-ender - include newline in go-mode-whitespace-p Thanks Jonathan Amsterdam and Steve Yegge for the patch! R=golang-dev, rsc CC=golang-dev, jba, stevey https://golang.org/cl/5938056 --- diff --git a/misc/emacs/go-mode.el b/misc/emacs/go-mode.el index 33ee7022fd..a98c7de589 100644 --- a/misc/emacs/go-mode.el +++ b/misc/emacs/go-mode.el @@ -33,8 +33,8 @@ ;; Operators (punctuation) (modify-syntax-entry ?+ "." st) (modify-syntax-entry ?- "." st) - (modify-syntax-entry ?* "." st) - (modify-syntax-entry ?/ "." st) + (modify-syntax-entry ?* ". 23" st) ; also part of comments + (modify-syntax-entry ?/ ". 124b" st) ; ditto (modify-syntax-entry ?% "." st) (modify-syntax-entry ?& "." st) (modify-syntax-entry ?| "." st) @@ -50,6 +50,9 @@ (modify-syntax-entry ?` "." st) (modify-syntax-entry ?\\ "." st) + ;; Newline is a comment-ender. + (modify-syntax-entry ?\n "> b" st) + st) "Syntax table for Go mode.") @@ -545,8 +548,9 @@ token on the line." (not (looking-at go-mode-non-terminating-keywords-regexp))))))) (defun go-mode-whitespace-p (char) - "Is char whitespace in the syntax table for go." - (eq 32 (char-syntax char))) + "Is newline, or char whitespace in the syntax table for go." + (or (eq char ?\n) + (eq 32 (char-syntax char)))) (defun go-mode-backward-skip-comments () "Skip backward over comments and whitespace."