eldoc for go language
Clone or download
syohex Merge pull request #48 from syohex/issue-47
Kill temporary buffer at error case too
Latest commit cbbd2ea Mar 5, 2017


go-eldoc.el travis badge melpa badge melpa stable badge


go-eldoc.el provides eldoc for Go language. go-eldoc.el shows type information for variable, functions and current argument position of function.


Argument Type of Function

Screenshot of showing argument type of function

Variable Type Information

Screenshot of showing variable type information

Return Value Type

Screenshot of showing return value type


You can install go-mode with package.el from MELPA. And you can install gocode by go get as below.

% go get -u github.com/nsf/gocode


You can install go-eldoc.el from MELPA with package.el.

(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))

evaluate this code and M-x package-install go-eldoc.


Call go-eldoc-setup function at go-mode-hook

(require 'go-eldoc) ;; Don't need to require, if you install by package.el
(add-hook 'go-mode-hook 'go-eldoc-setup)


You can change face of current argument position by eldoc-highlight-function-argument like this.

(set-face-attribute 'eldoc-highlight-function-argument nil
                    :underline t :foreground "green"
                    :weight 'bold)
go-eldoc-gocode(Default: gocode)

gocode location. You need not to set this variable if you set ($GOPATH/bin) to PATH environment variable correctly.

go-eldoc-gocode-args(Default: nil)

Arguments of gocode command. Type of this variable is list of strings.