From 2d1fa08967a6bcb064f7690719ea9638866c7715 Mon Sep 17 00:00:00 2001 From: Peter Kleiweg Date: Tue, 29 May 2012 16:30:06 -0400 Subject: [PATCH] Emacs go-mode: don't indent the inside of strings. Two fixes for indentation problems: 1. Properly recognize multi-line strings. These start with `, not ". 2. Don't indent a line if the beginning of the line is the end of a multi-line string. This happened for instance when inserting a closing bracket after a multi-line string. R=sameer CC=golang-dev https://golang.org/cl/6157044 --- misc/emacs/go-mode.el | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/misc/emacs/go-mode.el b/misc/emacs/go-mode.el index 783d1a8bb5..f6ae568229 100644 --- a/misc/emacs/go-mode.el +++ b/misc/emacs/go-mode.el @@ -250,8 +250,8 @@ comment or string." (unless pos (setq pos (point))) - (when (> pos go-mode-mark-cs-end) - (go-mode-mark-cs pos)) + (when (>= pos go-mode-mark-cs-end) + (go-mode-mark-cs (1+ pos))) (get-text-property pos 'go-mode-cs)) (defun go-mode-mark-cs (end) @@ -597,7 +597,7 @@ indented one level." (cond ((and cs (save-excursion (goto-char (car cs)) - (looking-at "\\s\""))) + (looking-at "`"))) ;; Inside a multi-line string. Don't mess with indentation. nil) (cs -- 2.48.1