Une fonction très utile a été introduite, j'ai donc écrit la version Linux. (Ce qui précède est Mac) Enfin, les paramètres d'Emacs sont également publiés.
Veuillez vérifier ici la dernière version. Getting GLOBAL
homebrew or linuxbrew
brew install global
Installation source
VERSION=6.4
wget http://tamacom.com/global/global-${VERSION}.tar.gz
tar xvf global-${VERSION}.tar.gz
cd global-${VERSION}
./configure
make
make install
cp /usr/local/share/gtags/gtags.conf /etc/
Vous n'avez pas besoin de modifier gtags.conf cette fois, mais si le chemin vers pygments-parser.la est différent, modifiez-le en conséquence.
Si vous souhaitez spécifier les paramètres GNU GLOBAL pour chaque utilisateur, vous pouvez écraser les paramètres en plaçant gtags.conf
dans $ HOME / .globalrc
.
Pour Linux, je pense que la plupart des distributions l'ont préinstallé. S'il n'est pas installé, installez Python à partir du gestionnaire de packages de chaque distribution.
J'ai confirmé l'opération avec Python 2.6.6.
pip est un système de gestion de packages permettant d'installer et de gérer des logiciels packagés écrits en Python.
curl -kL https://bootstrap.pypa.io/get-pip.py | python
Pygments est un surligneur de syntaxe pour différentes langues.
pip install pygments
Veuillez consulter ici pour la génération de balises et la référence des balises. L'importation de l'analyseur Pygments dans GNU GLOBAL devrait rendre la lecture du code source incroyablement rapide
Pour autant que je sache, la génération de balises a réussi dans tous les rubis, python et go, mais seule la référence de la balise Go à l'aide de la commande global
ne fonctionnait pas.
(Rien n'est sorti en standard même s'il est exécuté)
Cependant, comme la référence de balise Go réussit à partir des balises helm-gtags ci-dessous, il semble que seule la référence de balise de la commande global
ne fonctionne pas.
gtags.vim
et gtags.el
se trouvent dans/ usr / local / share / gtags /
.
ll /usr/local/share/gtags/gtags.{vim,el}
-rw-r--r-- 1 root root 36494 Sep 17 19:50 /usr/local/share/gtags/gtags.el
-rw-r--r-- 1 root root 16170 Sep 17 19:50 /usr/local/share/gtags/gtags.vim
+α for Emacs
Dans ce qui précède, gtags.el est introduit, mais voici un helm-gtags.el plus pratique. Veuillez installer Emacs 24.3, helm, helm-gtags, go-mode.
Cliquez ici pour les balises helm-gtags. helm-gtags - Emacs JP
(require 'helm-gtags)
(add-hook 'go-mode-hook (lambda () (helm-gtags-mode)))
(add-hook 'python-mode-hook (lambda () (helm-gtags-mode)))
(add-hook 'ruby-mode-hook (lambda () (helm-gtags-mode)))
(setq helm-gtags-path-style 'root)
(setq helm-gtags-auto-update t)
(add-hook 'helm-gtags-mode-hook
'(lambda ()
(local-set-key (kbd "M-g") 'helm-gtags-dwim)
(local-set-key (kbd "M-s") 'helm-gtags-show-stack)
(local-set-key (kbd "M-p") 'helm-gtags-previous-history)
(local-set-key (kbd "M-n") 'helm-gtags-next-history)))
Après cela, vous pouvez démarrer Emacs, déplacer le curseur sur la cible et sauter la fonction avec M-g.
L'image en haut de la page est Emacs + helm-gtags, qui fait référence à la balise Go.
Vous pouvez désormais sauter des fonctions dans Python, Ruby, Go sans aucun paramètre Emacs spécial en exécutant la commande gtags une fois!
Je suis impressionné.
Recommended Posts