Commits on Oct 15, 2017
Commits on Oct 13, 2017
  1. Fix struct autocompletion.

    nsf committed Oct 13, 2017
Commits on Oct 7, 2017
Commits on Sep 3, 2017
Commits on Sep 1, 2017
  1. correct spelling mistake

    EdwardBetts committed Sep 1, 2017
Commits on Aug 25, 2017
  1. Keep "csv" formatter as is. Introduce new "csv-with-package" formatter.

    nsf committed Aug 25, 2017
    Emacs-company plugin is switched to "csv-with-package" format.
    Adding one field to "csv" formatter breaks local sublime plugin. It's python
    there, args spread goes into a function with 3 arguments, it says you give it
    4 and throws an exception.
    Fucking fuck. I said - backwards compatibility, please.
    See: #463
  2. Merge pull request #463 from antifuchs/emit-package-name-and-importpath

    nsf committed Aug 25, 2017
    Pass through package names, use it for godoc in emacs-company
Commits on Aug 17, 2017
  1. Introduce godoc command and arg variables, restructure query

    antifuchs committed Aug 17, 2017
    * Add the -u flag (customizably) to the `go doc` command line: This
      ensures that un-exported/private names get matched & have their docs
      displayed, too.
    * Add a company-go customization option for the `go doc` command line.
    * Make sure that if company-go gets no package, it looks in the
      current directory. This can more reliably show documentation for the
      current package's names (including internals).
Commits on Aug 16, 2017
  1. Guard against packages not present on the cache

    antifuchs committed Aug 16, 2017
    There were some places that could have been nil, and the pcache might
    just not contain an entry either. This change should guard against
    these cases & use a default (no package) instead.
  2. Integrate godoc lookup into company-go

    antifuchs committed Aug 16, 2017
    Using the package information the 4th field in CSV output,
    call `godoc` on the symbol being completed. This activates the
    automatic documentation functionality for go in company.
  3. Attach package import path to scopes, pass it through to formatters

    antifuchs committed Aug 16, 2017
    This makes JSON and CSV formatters emit the import path for the
    package defining the symbol being completed. This should help tools
    like company get documentation for symbols, as gocode expects
    `importpath.symbol` as input.
Commits on Aug 15, 2017
  1. Rename "path" to "abspath", add a relative import path

    antifuchs committed Aug 15, 2017
    This should let us retain each package's import path, potentially
    useful for attaching to the symbols we emit (definitely useful for
    gocode further down the line).
Commits on Jun 30, 2017
  1. Add a feature I called "canonical aliases".

    nsf committed Jun 30, 2017
    When you import a package "x", and do autocompletions which involve types from
    "x", for ages gocode is adding default type alias of "x" to the types when
    printing them out. This is purely for improving readability, because types
    within a scope of the package are local, however they are not local to you,
    usually. But there is a case when you import a package and redefine its name
    via aliased import statement. E.g.
        import myio "io"
    Yet, gocode didn't respect that and used default alias anyway. Sadly some
    people use very ugly default aliases like "v1" (stands for version 1). To
    overcome this problem a hack is added. It doesn't work in all cases, but it
    works in some cases. When you import package with a custom alias for a current
    file. Gocode will try to use that alias for package's own types, when you talk
    to them directly via that package (e.g. accessing them directly or indirectly
    via your package alias). E.g.
        package main
        import myast "go/ast"
        func main() {
    Will show myast.NewPackage function signature where types are prefix with
    "myast.". However if you do something like that:
        import myio "io"
        import "compress/bzip2"
    bzip.NewReader function will use default "io" alias which is "io". Maybe I'll
    improve the hack later to include this case as well.
Commits on Jun 26, 2017
  1. Let user specify path to gocode bin

    jacksgt committed Jun 26, 2017
    Emacs package go-autocomplete.el:
    Add option to let users specify the path (and/or name)
    of the gocode binary
Commits on Apr 25, 2017
  1. package_bin: improve efficiency of binary export position encoding

    zchee committed Apr 25, 2017
    Backports golang/go@a6b16e0(
    Original commit message:
      cmd/compile: improve efficiency of binary export position encoding
      Use -64 instead of 0 as the magic "new file"
      line delta, since it is much less common.
      Use a new path encoding that breaks up paths
      into /-separated components, allowing
      reuse of the component strings, and making
      many re-used paths a single byte to encode.
      Bump the export version to 5.
    Signed-off-by: Koichi Shiraishi <>
Commits on Apr 24, 2017
  1. force symlink creation

    asymmetric committed Apr 24, 2017
    vim-plug's :PlugInstall! runs the callbacks each time.
    if the symlinks exist, the call failed.
Commits on Apr 20, 2017
  1. Respect global-font-lock-mode

    Wilfred committed Apr 20, 2017
Commits on Apr 1, 2017
  1. Remove unnecessary nil check.

    nsf committed Apr 1, 2017
Commits on Mar 31, 2017
  1. Make company-go an interactive Emacs function

    Wilfred committed Mar 31, 2017
    The convention for company backends is to make them interactive, so
    users can manually invoke them. This is particularly useful when
    setting up a backend, to allow the user to explicitly test their
Commits on Mar 22, 2017
  1. package_bin: backport interface embedding support

    zchee committed Mar 22, 2017
    Backport of golang/tools@b08393c
    Original commit message:
      go/gcimporter15: backport interface embedding support
      Backports from go/internal/gcimporter.
    Signed-off-by: Koichi Shiraishi <>
  2. testing: add interface embedding support test

    zchee committed Mar 22, 2017
    Signed-off-by: Koichi Shiraishi <>
Commits on Mar 21, 2017
  1. decl/type_dealias: add handle the nil of decl

    zchee committed Mar 21, 2017
    Add handle dd is nil, such as typealias C type
    Signed-off-by: Koichi Shiraishi <>
Commits on Mar 17, 2017
  1. declcache: support '-race' build when gb mode

    zchee committed Mar 17, 2017
    Signed-off-by: Koichi Shiraishi <>
Commits on Mar 4, 2017
Commits on Mar 3, 2017
Commits on Mar 1, 2017
  1. Fix it for real. Closes #434.

    nsf committed Mar 1, 2017
  2. Fix build hack. Fixes #434.

    nsf committed Mar 1, 2017
Commits on Feb 28, 2017