diff options
author | Andrew Gerrand <adg@golang.org> | 2013-11-01 11:24:57 +1100 |
---|---|---|
committer | Alan Donovan <adonovan@google.com> | 2013-11-01 11:24:57 +1100 |
commit | 2737f274f5e7aabbeac039da744b21a0a578cd67 (patch) | |
tree | f9581eebcd6d476caad9118e8b9a69dfbc4d0d80 | |
parent | 744d53cdeb9a6727622d5efeb92c18a7976cc119 (diff) | |
download | go-2737f274f5e7aabbeac039da744b21a0a578cd67.tar.gz go-2737f274f5e7aabbeac039da744b21a0a578cd67.zip |
[release-branch.go1.2] misc/emacs: support godef-jump on import statements
««« CL 18230043 / f2b59b5163b0
misc/emacs: support godef-jump on import statements
The newest version of godef supports jumping to a package's source
directory if point is on an import statement.
R=adonovan
CC=golang-dev
https://golang.org/cl/18230043
»»»
R=golang-dev
CC=golang-dev
https://golang.org/cl/20620043
-rw-r--r-- | misc/emacs/go-mode.el | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/misc/emacs/go-mode.el b/misc/emacs/go-mode.el index 6cc03edb06..b74bc45e8d 100644 --- a/misc/emacs/go-mode.el +++ b/misc/emacs/go-mode.el @@ -950,11 +950,12 @@ will be commented, otherwise they will be removed completely." "Given a file name in the format of `filename:line:column', visit FILENAME and go to line LINE and column COLUMN." (if (not (string-match "\\(.+\\):\\([0-9]+\\):\\([0-9]+\\)" specifier)) - (error "Unexpected godef output: %s" specifier) + ;; We've only been given a directory name + (funcall (if other-window #'find-file-other-window #'find-file) specifier) (let ((filename (match-string 1 specifier)) (line (string-to-number (match-string 2 specifier))) (column (string-to-number (match-string 3 specifier)))) - (with-current-buffer (funcall (if other-window 'find-file-other-window 'find-file) filename) + (with-current-buffer (funcall (if other-window #'find-file-other-window #'find-file) filename) (go--goto-line line) (beginning-of-line) (forward-char (1- column)) @@ -1008,6 +1009,8 @@ description at POINT." (message "%s" file)) ((go--string-prefix-p "godef: no declaration found for " file) (message "%s" file)) + ((go--string-prefix-p "error finding import path for " file) + (message "%s" file)) (t (push-mark) (ring-insert find-tag-marker-ring (point-marker)) |