J'essaie d'ajouter la syntaxe de langage Go surlignée à VIM sur Ubuntu avec les ressources et la direction fournies ici http://go-lang.cat-v.org/text-editors/vim/ .
Go est fourni avec un fichier go.vim
qui contient les paramètres de syntaxe pour VIM. La page ci-dessus contient les instructions suivantes.
Placez $ GOROOT/misc/vim/syntax/go.vim dans ~/.vim/syntax/et mettez ce qui suit dans ~/.vim/ftdetect/go.vim:
au BufRead,BufNewFile *.go set filetype=go
C’est plus ou moins la même procédure de personnalisation de la syntaxe de vim que j’ai vue ailleurs ( Vim 7.3 sur Ubuntu 12.10 n’a pas le répertoire 'ftplugin' nulle part et https: // github. com/jnwhiteh/vim-golang/blob/master/readme.txt )
Je pense donc que je fais le bon choix lorsque je crée des répertoires:
~/.vim
~/.vim/syntaxe
~/.vim/ftdetect
et suivez les instructions ci-dessus en ajoutant
go.vim dans ~/.vim/syntax / et créer un fichier, go.vim, dans ~/.vim/ftdetect/qui contient
au BufRead,BufNewFile *.go set filetype=go
Cependant, la coloration syntaxique ne semble pas se produire. Dois-je faire quelque chose pour forcer VIM à examiner ces nouveaux fichiers de paramètres?
vous pouvez simplement ajouter ces lignes à votre ~/.vimrc
:
set rtp+=$GOROOT/misc/vim
filetype plugin indent on
syntax on
EDITCeci suppose que filetype plugin indent off
se trouve avant ces lignes (c'est-à-dire au début du fichier .vimrc
) et peut causer des problèmes si ce n'est pas le cas. Voir la réponse de @ peterSO ci-dessous pour la version plus sûre.
METTRE À JOUR:
Répertoire divers de niveau supérieur du référentiel standard utilisé pour contenir Go support pour les éditeurs et les IDE: plugins, initialisation scripts et ainsi de suite. Leur entretien prenait beaucoup de temps et avait besoin d’aide externe car de nombreux éditeurs répertoriés n’étaient pas utilisés par les membres de l'équipe principale. Cela nous obligeait également à prendre des décisions sur quel plugin était le mieux pour un éditeur donné, même pour les éditeurs que nous faisons Ne pas utiliser. La communauté Go dans son ensemble est beaucoup mieux à même de gérer ces informations. Par conséquent, dans Go 1.4, ce support a été supprimé de le référentiel. Au lieu de cela, il y a une liste curative et informative de ce qui est disponible sur une page wiki .
La distribution standard de Go inclut les fichiers Go de Vim dans go/misc/vim/
. Ce répertoire contient un fichier readme.txt
qui contient les instructions d’installation.
Plugins Vim pour Go (
http://golang.org
)Pour utiliser tous les plugins Vim, ajoutez ces lignes à votre
$HOME/.vimrc
." Some Linux distributions set filetype in /etc/vimrc. " Clear filetype flags before changing runtimepath to force Vim to reload them. filetype off filetype plugin indent off set runtimepath+=$GOROOT/misc/vim filetype plugin indent on syntax on
Si vous souhaitez sélectionner moins de plugins, utilisez les instructions du reste de ce fichier.
<< .. SNIP .. >>
Sur Debian, je suppose que c'est la même chose sur Ubuntu, vous venez de:
Sudo apt-get install vim-gocomplete gocode vim-syntax-go
vim-addon-manager install go-syntax
vim-addon-manager install gocode
Pour une coloration syntaxique optimale, essayez https://github.com/fatih/vim-go
C'est un nouveau projet qui consolide de nombreux plugins vim et ajoute de nombreuses fonctionnalités. Du readme:
le 25/Jan/2015
S'il vous plaît voir https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins comme maintenant tout support de l'éditeur et Shell dans le repo Go est supprimé ( https://codereview.appspot.com/105470043 )
Pour quelque raison que ce soit, en dehors de mes propres décisions, nous avons installé Golang sur nos machines virtuelles de développement avec les paquets Debian. Cette distribution particulière de vim ne vient avec aucun des bonus pour vim aussi loin que j'ai pu le dire à partir d'une recherche. Quoi qu'il en soit, j'ai décidé de suivre la voie de la fraude afin de déployer rapidement les goodies sur toutes ces machines virtuelles de développement. Vous pourriez probablement utiliser cette méthode pour créer une marionnette ou quelque chose comme vous voulez, mais nous ne l'avons pas fait. Quoi qu'il en soit, voici ce que j'ai fait:
Étape 1: Installez la vundle: https://github.com/gmarik/vundle
Étape 2: placez cette ligne dans votre fichier .vimrc (à partir d’ici, bien sûr: https://github.com/jnwhiteh/vim-golang ), puis exécutez vim à partir de la ligne de commande, à l’aide de vim +BundleInstall +qall
ou depuis vim avec :BundleInstall
Bundle 'jnwhiteh/vim-golang'
Étape 3: Sauvegardez ce petit script bash que j'ai créé en tant que govim.sh ou autre chose, chmod +x govim.sh
, et lancez-le comme ./govim.sh
Script comme suit:
#!/bin/bash
mkdir $HOME/.vim/ftdetect
mkdir $HOME/.vim/syntax
mkdir $HOME/.vim/autoload
mkdir $HOME/.vim/autoload/go
mkdir $HOME/.vim/ftplugin
mkdir $HOME/.vim/ftplugin/go
mkdir $HOME/.vim/indent
mkdir $HOME/.vim/compiler
mkdir $HOME/.vim/plugin
mkdir $HOME/.vim/plugin/godoc
ln -s $HOME/.vim/bundle/vim-golang/ftdetect/gofiletype.vim $HOME/.vim/ftdetect
ln -s $HOME/.vim/bundle/vim-golang/syntax/go.vim $HOME/.vim/syntax/
ln -s $HOME/.vim/bundle/vim-golang/autoload/go/complete.vim $HOME/.vim/autoload/go/
ln -s $HOME/.vim/bundle/vim-golang/ftplugin/go.vim $HOME/.vim/ftplugin/
ln -s $HOME/.vim/bundle/vim-golang/ftplugin/go/*.vim $HOME/.vim/ftplugin/go/
ln -s $HOME/.vim/bundle/vim-golang/indent/go.vim $HOME/.vim/indent/
ln -s $HOME/.vim/bundle/vim-golang/compiler/go.vim $HOME/.vim/compiler/
ln -s $HOME/.vim/bundle/vim-golang/plugin/godoc/godoc.vim $HOME/.vim/plugin/godoc/
ln -s $HOME/.vim/bundle/vim-golang/syntax/godoc.vim $HOME/.vim/syntax/
Kaching! Vous avez maintenant tous les bonus installés, et quelqu'un me corrige si je me trompe, mais peut-être plus que ce qui vient avec la distribution officielle de Golang. Je ne sais pas non plus si cela n’a pas encore été essayé, mais je pense que le runtimepath/rtp est surchargé si vous utilisez Vundle avec les autres réponses ici de toute façon.
Cette page dit que:
Place $GOROOT/misc/vim/syntax/go.vim in ~/.vim/syntax/
and put the following in ~/.vim/ftdetect/go.vim:
au BufRead,BufNewFile *.go set filetype=go
Cela a fonctionné pour moi, seulement je n'ai pas trouvé le répertoire /misc/vim/go.vim au début. Donc, j'ai copié les fichiers d'un autre ordinateur qui avait installé allez sur/usr/local/go/...
Je n'ai pas trouvé d'instructions sur l'activation de la coloration syntaxique vim pour CentOS 7. J'ai testé les instructions suivantes pour pouvoir utiliser CentOS 7.3.1611. Commencez par créer le répertoire suivant dans votre répertoire personnel:
$ mkdir ~/.vim/ftdetect/
Ensuite, créez un fichier nommé go.vim
dans le répertoire ci-dessus avec le contenu:
au BufRead,BufNewFile *.go set filetype=go
Téléchargez le fichier de définition de syntaxe pour Go: vim.go . Transférez-le dans le bon répertoire système afin que plusieurs utilisateurs puissent le partager:
$ Sudo mv -i go.vim /usr/share/vim/vim74/syntax/
Ce devrait être facile comme 1, 2, 3:
Téléchargez le fichier vim.go et placez-le dans ~/.vim/syntax
sous le nom vim.go
(créez le répertoire syntax
si vous ne l'avez pas déjà).
Si vous n'avez pas déjà le fichier ~/.vim/ftdetect/go.vim
, créez-le (et le dossier si nécessaire).
Dans .vim/ftdetect/go.vim
, ajoutez la ligne suivante: au BufRead,BufNewFile *.go set filetype=go