25
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

GNU Global のタグファイル自動更新

Last updated at Posted at 2012-01-26

Emacsで日々コードと戦っている諸氏は、当然 GNU Global のタグファイルを作ってEmacsから便利に使っていることかと思います。まだの人は急げ http://d.hatena.ne.jp/aduka/20090308/1236493524

そのような諸氏におかれましては、下記のような emacs lisp を .emacs などに書いておくことで、現在編集しているプロジェクトのタグファイルをファイル保存時に自動で更新するようにできます。

.emacs.el
(defun my-c-mode-update-gtags ()
  (let* ((file (buffer-file-name (current-buffer)))
	 (dir (directory-file-name (file-name-directory file))))
    (when (executable-find "global")
      (start-process "gtags-update" nil
		     "global" "-uv"))))

(add-hook 'after-save-hook
	  'my-c-mode-update-gtags)

中身の説明

global -uv を実行すると、カレントディレクトリからルートにさかのぼって GTAGS などのタグファイルを検索し、見つかったらタグファイルを更新してくれます。このコマンドを、ファイル保存のフックから起動しているだけです。

25
24
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?