| golint is a linter for Go source code. |
| |
| To install, run |
| go get github.com/golang/lint/golint |
| |
| Invoke golint with one or more filenames. |
| The output of this tool is a list of suggestions in Vim quickfix format, |
| which is accepted by lots of different editors. |
| |
| golint differs from govet. govet is concerned with correctness, whereas |
| golint is concerned with coding style. golint is in use at Google, and it |
| seeks to match the accepted style of the open source Go project. |
| |
| The suggestions made by golint are exactly that: suggestions. |
| golint is not perfect, and has both false positives and false negatives. |
| Do not treat its output as a gold standard. We will not be adding pragmas |
| or other knobs to suppress specific warnings, so do not expect or require |
| code to be completely "lint-free". |
| Unlimited effort will not be expended to make golint perfect. |
| It is considered an abuse of this tool to run it for machine consumption. |
| |
| If you find an established style that is frequently violated, and which |
| you think golint could statically check, file an issue at |
| https://github.com/golang/lint/issues |
| |
| |
| Vim |
| --- |
| Add this to your ~/.vimrc: |
| function! s:GoLint() |
| cexpr system("golint " . shellescape(expand('%'))) |
| copen |
| endfunction |
| command! GoLint :call s:GoLint() |
| |
| Running :GoLint will run golint on the current file and populate the quickfix list. |