Skip to content

hmahmood/go-projectile

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Synopsis

Go Projectile is a set of Go language related add-ons for the Emacs Projectile mode.

Configuration

(require 'go-projectile)

Usage

After running projectile-switch-project (C-c p s) the features of go-projectile will be (optionally) enabled.

Managing GOPATH

Rather than have a global GOPATH set in your .bashrc or similar, go-projectile makes it easier for each project to have their own GOPATH automatically configured. Upon switching to a projectile project, the GOPATH environment variable will be set appropriately, see go-projectile-switch-gopath. The go-projectile-set-gopath function can also be called directly, without using projectile-switch-project.

Go tools

Most of the Emacs Go packages have hard or soft dependencies on programs installed via go get, such as gocode, godef, etc. You can install the complete set of go-projectile-tools using: M-x go-projectile-install-tools And update the tools using: M-x go-projectile-update-tools These tools are installed within their own GOPATH, configurable via the go-projectile-tools-path variable.

Searching

Run vc-git-grep on *.go in the $GOPATH/src/ directory of the current buffer using go-projectile-git-grep (C-c p G).

Useful for use within multi-language projects and/or repositories that include vendored packages.

Importing projects

Create a new projectile project via go-projectile-get (C-c p N). This function will 'go get' an existing repo and switch to the new project.

Refactoring

Renaming of Go identifiers is available via go-rename (C-c p w).

Very basic refactoring is made available via go-projectile-rewrite (C-c p W). It is just a wrapper around gofmt -r, where go-projectile tries to help generate the rewrite pattern based on the cursor's location. The rewrite rule will only apply to '*.go' files in the current project, excluding patterns listed in `go-project-files-ignore'.

About

Go language related add-ons for Projectile

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Emacs Lisp 94.3%
  • Makefile 4.2%
  • Go 1.5%