1
0
mirror of https://github.com/golang/go synced 2024-11-25 03:07:56 -07:00
go/misc/vim
David Symonds 1a7d09c847 misc/vim: new Vim indentation script.
This uses a fully custom function for indenting Go code in Vim.
It provides a lot more flexibility than a cindent-based approach,
so this version gets the := operator correct, as well as switch
labels and jump labels.

One outstanding TODO is to handle lines immediately after jump labels.

R=adg, n13m3y3r, jnwhiteh, dchest, rsc, rlight2
CC=golang-dev, rivercheng
https://golang.org/cl/4534047
2011-05-13 08:29:44 -07:00
..
ftdetect misc/vim: always override filetype detection for .go files 2010-06-22 15:22:49 +01:00
ftplugin/go misc/vim: add plugin with Fmt command. 2011-04-13 11:55:41 +10:00
indent misc/vim: new Vim indentation script. 2011-05-13 08:29:44 -07:00
syntax misc/vim: update type highlighting for new reflect package 2011-04-11 08:48:19 +10:00
readme.txt misc/vim: Add indent script for Vim 2011-03-08 15:42:23 +11:00

Vim syntax highlighting for Go (http://golang.org)
==================================================

To install automatic syntax highlighting for GO programs:

  1. Copy or link the filetype detection script to the ftdetect directory
     underneath your vim runtime directory (normally $HOME/.vim/ftdetect)
  2. Copy or link syntax/go.vim to the syntax directory underneath your vim
     runtime directory (normally $HOME/.vim/syntax). Linking this file rather
     than just copying it will ensure any changes are automatically reflected
     in your syntax highlighting.
  3. Add the following line to your .vimrc file (normally $HOME/.vimrc):

     syntax on

In a typical unix environment you might accomplish this using the following
commands:

  mkdir -p $HOME/.vim/ftdetect
  mkdir -p $HOME/.vim/syntax
  ln -s $GOROOT/misc/vim/ftdetect/gofiletype.vim $HOME/.vim/ftdetect/
  ln -s $GOROOT/misc/vim/syntax/go.vim $HOME/.vim/syntax
  echo "syntax on" >> $HOME/.vimrc


Vim filetype plugins for Go
===========================

To install one of the available filetype plugins for Go:

  1. Same as 1 above.
  2. Copy or link one or more plugins from ftplugin/go/*.vim to the
     Go-specific ftplugin directory underneath your vim runtime directory
     (normally $HOME/.vim/ftplugin/go/*.vim).
  3. Add the following line to your .vimrc file (normally $HOME/.vimrc):

     filetype plugin on


Vim indentation plugin for Go
=============================

To install automatic indentation for Go:

  1. Same as 1 above.
  2. Copy or link indent/go.vim to the indent directory underneath your vim
     runtime directory (normally $HOME/.vim/indent).
  3. Add the following line to your .vimrc file (normally $HOME/.vimrc):

     filetype indent on