auto-complete-gtags.el を修正

ドーモデス。
相変わらず,auto-complete.el はすげえ便利で感謝の気持ちがいっぱいです。
んでもって,auto-complete-gtags.el もすげえ便利で感謝の気持ちがいっぱいです。


でも。
GTAGS ファイルがないときに,エラーとなり,タグファイルの場所を聞いてきて,
困る,という現象に遭遇。総員戦闘配置!!
パターン,青!
閑話休題


だもんで,ちょっとしたコードを書くときには,タグファイルなんて作ってないわけで,
困るわけですよ。


そこで。
auto-complete-gtags.el をのぞいてコードを修正。
万事解決っぽい。
要は,global を呼んでタグがねぇぞってなって,タグファイルどこよ?
って聞いてきていると推測。
なので,global --help してながめてみました。


すると。

-q, --quiet
       Quiet mode.

それっぽいのが。
コマンドラインからパチパチと確認すると,期待通りの動作っぽい。
んで,auto-complete-gtags.el を修正。
global を呼んでいるところに,-q オプションを追加。
んで,C-M-x。さらには,M-x my-c-mode-common-hook-func して,確認。
おぉ。治ったみたい。いや,たぶんだけど。
それから何遍もいうけど,global に -c オプションと,-i オプションは,排他的なはず。
別に害はないからいいね。

(defun ac-gtags-candidate ()
  (if (memq major-mode ac-gtags-modes)
      (ignore-errors
        (with-temp-buffer
          ;;(when (eq (call-process "global" nil t nil "-ci" ac-prefix) 0)
          (when (eq (call-process "global" nil t nil "-ciq" ac-prefix) 0)
            (goto-char (point-min))
            (let (candidates)
              (while (and (not (eobp))
                          (push (buffer-substring-no-properties (line-beginning-position) (line-end-position)) candidates)
                          (eq (forward-line) 0)))
              (nreverse candidates)))))))


ちなみに。
プロジェクトのページ見たら,auto-complete-gtags.el は,
auto-complete.el に取り込まれているけど,コードは変わってないっぽいね。
というか,すげえ充実している。補完用キーワードとかぼこぼこ追加されているね。
機を見て(感じ合ってる? ぶっ。漢字あってる?)試してみようっと。


auto-complete.el を作っている人たち,ほんとにありがとう!