人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

現在 Ubuntu Linux 7.10 を使用しており、Emacs でC言語のプログラミングをする上で、関数の入力補完を利用しようと
思っています。
できればcscope、それがダメならばgtags、それでもダメならばctagsを利用したemacsでの関数の入力補完方法を教えて
ください。
cscope、gtagsでの方法ならば、いるか賞の人に500ポイント差し上げます。
ctagsならば、いるか賞の人に200ポイント差し上げます。

●質問者: BlueSkyDetector
●カテゴリ:コンピュータ 学習・教育
✍キーワード:C言語 Emacs Ubuntu Linux いるか賞 ダメ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● felix33jp
●5ポイント

emacsって開発した人はもう使うのやめたらって言ってるんですよね。私ももう使ってません。今はブラウザがすべての中心になっていますから。

◎質問者からの返答

寡聞にして、「emacsって開発した人はもう使うのやめたらって言ってる」ということは知りません。

ポインタを示してください。

javaならともかく、c言語プログラミングではまだまだ現役だと思っています。

あと、すいませんが、この回答ではポイントは差し上げにくいです。質問に対する回答になってませんよね?

こういう内容はコメントで書いてください。

もしこういう内容のことを書くならば、せめてLinux上で動作するC言語アプリケーションを作成する上で代替と

なるものを教えてください。

ちなみに、Linuxのkernelのコードを見るためにも使用していますが、vi、emacs以外で有用なものを知りませんし、実際のkernel開発者でvi、emacs以外使用している方も知りません。

追記:

つい最近のRMSへのインタビューがありましたが、emacsがさらに進化していく未来について語っています。

おそらく、felix33jp さんはRMSがメンテナを交代したニュースを見て、内容を取り違えたのではないでしょうか?

http://www.networkworld.com/community/node/25360

> What do you see as the future of Emacs?

> I would like to see it extended to operate as a word processor, editing formatted text.


2 ● pyopyopyo
●750ポイント ベストアンサー

* global + gtags.el の場合

gtags.el自体には補完の機能はなかったと思います。しかし以下の方法で一度 *Completions* というバッファを作成しておけば、補完できるようになります

  1. コマンドラインから gtags -v で、GTAGSファイルなどを生成する
  2. 以下の手順で、emacs 上に *Completions* というバッファをつくる。
    1. emacs で、M-x gtags-mode として、gtags モードにする
    2. M-x gtags-visit-rootdir で GTAGS ファイルのあるディレクトリを指定する
    3. M-x gtags-find-symbol を一度実行。TABを押す。
  3. 以上で、 M-/ で補完ができるようになります。

* ctags の場合

  1. コマンドラインから etags *.c *.h などとして TAGS ファイルをつくる
  2. emacs で M-x visit-tags-table として、TAGS ファイルのあるディレクトリを指定
  3. 以上で、M-TAB または M-x complete-symbol で補完できるようになります。

* 番外編

ソースコードが数個しかない、小規模なプロジェクトであれば emacsのデフォルトの機能である M-/ (つまり Alt + / )を使うのが良いと思います。

  1. emacs *.c *.h などとして一度全部のソースコードをemacsで開く
  2. 以上で、 M-/ で補完できるようになります。
◎質問者からの返答

ありがとうございます。

gtagsのほうのやり方で補完を利用できました。

gtagsとくらべるとctagsの方がリストにでてこないものが多い印象があるので、gtagsの方を使用したいと思います。

なお、環境変数に GTAGSROOT を設定しておけば M-x gtags-visit-rootdir を実行せずとも良いようです。

非常に勉強になりました。ありがとうございました。

一応、cscopeでの方法についても回答の募集をつづけます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ