ecb problem
http://osdir.com/ml/emacs.jdee/2007-07/msg00008.html
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
Subject: ede-save-cache: Buffer is read-only: #
A new problem: After just upgrading JDE, ecb, and CEDET whenever I try to quit emacs (even if I never opened a file to edit) I get:
ede-save-cache: Buffer is read-only: #
There is this buffer .projects.ede that I can't get rid of.
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
Can resolve as the following
sudo rm ~/.projects.ede
In my case, "~/.projects.ede" owned by root
emacs C++ 開発環境 link集
emacsでc++開発を行うための情報を集めました。まとめをここでしています
以下それぞれのリンク
Emacs で C 言語プログラミングを始める人へのイントロダクション
- 初心者向けdocment
- 以下の2項目が役立つ
- タグジャンプ
- ここで説明しているtagファイルの作成方法 $ find . -name "*.[chCH]" -print | etags - はubuntu7.10では動かなかった
- 関数名の補完入力がM-tabでできる
- タグジャンプ
- タグジャンプはここで説明してるetagより後述のgtagの方が便利
Benjamin Rutt's Emacs C development tips (English)
- complieをする窓の大きさを小さめにする方法
- インデントを自分好みにする方法
- etagの使い方。Emacs で C 言語プログラミングを始める人へのイントロダクション よりも詳しく解説している。
- gdbモードの標準的な使い方(emcas22のよりGUIが充実した方法には触れてない)
Using Emacs for Programming(English)
- Emacs で C 言語プログラミングを始める人へのイントロダクション と同様の基本的な流れを説明している
- gdbの使い方が詳しく解説されている
- 後述のgdbの見える化の方が便利
GNU GLOBAL ソースコードタグシステム (gtag)
- install から.emacsの設定まで解説 Emacs + GLOBALでソース読みを快適に
- ubuntu7.10の場合 sudo apt-get install global でinstallできる
- さらに詳しい解説 http://uguisu.skr.jp/Windows/gtags.html
- current 以外のパスにgtags fileを作成する方法 http://eigyr.dip.jp/gtags.html
ebrowse
etags ctags
- 簡単な説明http://www.cr.ie.u-ryukyu.ac.jp/~game/pukiwiki/index.php?%B0%EC%C8%CCTips#content_1_0
- もう少しだけ詳しい説明 http://www.proton.jp/apps/emacs.html#etags
- emacsのetagsを便利にする方法を見つけました http://d.hatena.ne.jp/jkani4/20080206/1202308935
- etags `find . -name \*.[ch]
ffap
- fileを開くタグジャンプのようなもの
#include
Emacs Code Browser http://ecb.sourceforge.net/
様々な機能がある。使いこなせてない。
- Emacs Code Browser の使い方 http://d.hatena.ne.jp/norisuke3/20070530/1180503032
- Emacs Code Browser(ECB)を入れてみたhttp://d.hatena.ne.jp/Tetsujin/20070720/1184861022
flymake
- gdbを使わないdebug
- 構文のチェックしかしないのでメモリーのアロケーションエラーなどは検出しない
- 簡単に設定する方法(日本語) http://d.hatena.ne.jp/pyopyopyo/20070715/
- 日本語の詳しい解説 http://d.hatena.ne.jp/nyaasan/20071216/
- 詳しい設定や使い方など(English) emacs wiki flymake http://www.emacswiki.org/cgi-bin/wiki/FlyMake
- ecb(cedet)からflymakeを動かす方法も書かれているがubuntu7.10にはlmcompileがないので動かなかった。設定済みmeadowにはlmcompileがあった。
- flymake のエラー/警告表示をミニバッファで : デフォルトのエラーメッセージ表示が使いにくいのでミニバッファーに表示するようにした方法
- flymake の使い方demo動画 http://www.youtube.com/watch?v=F5Cc2W6PbL8
emacs gdb-mode の使い方
- emacs22の高機能なgdb-modeの使い方 gdbの見える化
- まるでVisual Studioのようです
- このGUIなgdbモードを終了にはmainの窓でquitと入力すればよい
- http://www.emacswiki.org/cgi-bin/wiki/GrandUnifiedDebugger
- gdbの使い方をコンパクトにまとめた表 (refcard) http://refcards.com/docs/peschr/gdb/gdb-refcard-a4.pdf
- もっとシンプルな使い方 http://www.kiso.tsukuba.ac.jp/~makimura/text/node195.html
printf debug
- カーソルの位置にデバッグ用のprintfを挿入 http://d.hatena.ne.jp/higepon/20060212/1139757670
Making Emacs Stand Up To Visual Studio 7 http://www.kuro5hin.org/print/2003/4/1/21741/10470
- 情報が古くあまり役に立たなかったecb使えばすむ話
その他emacs関連
- C/C++開発者向けemacsの設定
- Visual Studio風key-bindを設定する方法
- Emacs Tiny Tools Project
- c開発のrefcard http://refcards.com/docs/silvermanj/ansi-c/ansi-c-refcard-a4.pdf
- Getting latest Emacs 23, SBCL 1.0.13 and Slime on a fresh Ubuntu 7.10 box
- Emacs Tips n Tricks for Everybody http://infolab.stanford.edu/~manku/dotemacs.html
- elispのmacroについてhttp://www.fan.gr.jp/~ring/doc/elisp_20/elisp_13.html
- emacs tips http://www.ep.sci.hokudai.ac.jp/~morikawa/memo/emacs.txt
- emacs Wiki http://www.emacswiki.org/cgi-bin/emacs-ja/
- cc mode マニュアルhttp://www.gnu.org/software/emacs/manual/html_node/ccmode/Minor-Modes.html
- 様々なリンク http://swik.net/C+Emacs?page=1
.emacsの使いかた
リンク集の情報をまとめた.emacsの使いかたをまとめた
- C-c C-q (c-indent-defun) 関数全体のindent
- M-x align そろえる
- M-; (comment-dwim) 選択領域をコメントアウトまたは逆
- M-x comment-region リージョンをコメント・アウトする。
- M-x uncomment-region リージョンのコメントを解除する
- M-$ (ispell-word) カーソル下のワードのスペル・チェックを行なう。
- M-x ispell-region リージョンに対してスペル・チェックを行なう。
- M-x ispell-comments-and-strings コメントと文字列だけを対象にスペル・チェックを行なう。
- ispell
- (スペース・キー) 一度だけ正しい単語として受け入れる
- i 正しい単語として辞書に登録する
- a 正しい単語として、このセッションの間受け入れる
- r 正しい単語をユーザーが入力する
- q ispell を終了する
- M-$ (ispell-word) flyspellで自動チェック中の修正
- gtags
- M-t 関数定義にジャンプ
- M-r 関数呼び出し場所にジャンプ
- M-s シンボル参照先にジャンプ
- etags
- M-x visit-tags-table TAGSファイルを生成
- M-. 関数定義にジャンプ
- C-u M-. 次の候補にジャンプ
- C-x 4 . 別ウィンドウを開いて、タグ・ジャンプする。
- C-x 5 . 別フレームを開いて、タグ・ジャンプする。
- M-* タグ・ジャンプする前の位置へ戻る。
- M-TAB 関数名の補間入力
- C-u M-TAB Cの標準関数の補間入力
- compile
- C-c c compile実行
- M-x compile compile実行
- C-x ` エラー行へジャンプ
- M-x goto-line
- BOOKMARK
- C-x r m RET ブックマークを設定する。
- C-x r m BOOKMARK RET BOOKMARKという名前のブックマークを設定する(bookmark-set)
- C-x r b BOOKMARK RET BOOKMARKであるブックマークに移動する(bookmark-jump)。
- C-x r l すべてのブックマークを一覧表示する(list-bookmarks)。
- M-x bookmark-save ブックマークファイルに保存する
まとめと .emcas
emacsでc++をするための情報をまとめたリンクまとめおよびその他の周辺情報のリンクemacs C++ 開発環境link集をまとめた開発環境は以下で作れる.なおここで紹介している方法の大部分はemacs22でしか動かないので注意.
まず必要なソフトをインストールする.ubuntu7.10の場合は以下でinstallできる
$sudo apt-get install global exuberant-ctags ecb emacs22
.emacsは以下のようにする(設定済みmeadowでも動くようにしてある.).
;;c-mode auto indent http://at-aka.blogspot.com/2006/12/emacs-c.html (add-hook 'c-mode-common-hook '(lambda () ;; センテンスの終了である ';' を入力したら、自動改行+インデント (c-toggle-auto-hungry-state 1) ;; RET キーで自動改行+インデント (define-key c-mode-base-map "\C-m" 'newline-and-indent) )) ;;c-mode flyspell http://at-aka.blogspot.com/2006/12/emacs-c.html (add-hook 'c-mode-common-hook '(lambda () ;; flyspell-prog-mode をオンにする (flyspell-prog-mode) )) ;; C-c c で compile コマンドを呼び出す http://at-aka.blogspot.com/2006/12/emacs-c.html (define-key mode-specific-map "c" 'compile) ;http://www.bloomington.in.us/~brutt/emacs-c-dev.html ;(c-toggle-hungry-state 1);emacs22 ubuntu7.10で動かない ;;ffap http://www.bookshelf.jp/soft/meadow_23.html#SEC226 (ffap-bindings) ;(setq ffap-c-path (cons "~/src" ffap-c-path )) ;自分のソース置き場のパスを通す ;;gtags href="http://d.hatena.ne.jp/higepon/20060107/1136628498 (autoload 'gtags-mode "gtags" "" t) ;なぜか動かない。デフォルトのままで使っている ;(setq gtags-mode-hook ; '(lambda () ; (local-set-key "\M-t" 'gtags-find-tag) ; (local-set-key "\M-r" 'gtags-find-rtag) ; (local-set-key "\M-s" 'gtags-find-symbol) ; (local-set-key "\C-t" 'gtags-pop-stack) ; )) (add-hook 'c-mode-common-hook '(lambda() (gtags-mode 1) (gtags-make-complete-list) )) (when (and (featurep 'meadow) (locate-library "cygwin-mount")) (require 'cygwin-mount) (cygwin-mount-activate)) ;;gdb href="http://narupon.tdiary.net/20061022.html (setq gdb-many-windows t) (setq gdb-use-separate-io-buffer t) ; "IO buffer" が必要ない場合は nil で ;ecb cedet etc http://d.hatena.ne.jp/Tetsujin/20070720/1184861022 ;; Load CEDET ; ;(load-file "~/usr/share/emacs/site-lisp/cedet-1.0pre4/common/cedet.el") (if (featurep 'meadow) (load-file "C:/meadow/packages/lisp/cedet/common/cedet.el") (load-file "/usr/share/emacs/site-lisp/cedet-common/cedet.el") ; for ubuntu7.10 ) ;; Enabling various SEMANTIC minor modes. See semantic/INSTALL for more ideas. ;; Select one of the following: (setq semantic-load-turn-everything-on t) ;;;ecb ; (add-to-list 'load-path ; "~/usr/share/emacs/site-lisp/ecb-2.32") ; (add-to-list 'load-path ; "~/usr/share/emacs/22.1/site-lisp/ecb-2.32") (if (featurep 'meadow)() (require 'ecb) ) ;;flymake with CEDET http://www.emacswiki.org/cgi-bin/wiki/FlyMake から (if (featurep 'meadow) (progn (require 'lmcompile) (add-hook 'compilation-finish-functions 'vj-compilation-finish-highlight) (defun vj-compilation-finish-highlight (buffer result-str) (interactive) (lmcompile-do-highlight)) ) )
emacs C++開発環境
emacs C++ 開発環境を学習する
emacsでc++開発をする方法は以下の順番で下記リンクを読むことで学ぶことができる.
- Emacs で C 言語プログラミングを始める人へのイントロダクション で基本を学ぶ
- etagsの使いかた
- tag fileの生成は以下
- sudo apt-get install exuberant-ctags
- cd src_dir
- etags -R . my-src-dir
- あとはM-. で呼べる
- etagsの使いかた
- ffepの使い方を学ぶ http://www.bookshelf.jp/soft/meadow_23.html#SEC226
- Emacs + GLOBALでソース読みを快適にでgtagsの使い方を学ぶ
- 準備は
- sudo apt-get install global
- cd src_dir
- gtags -v
- 準備は
- gdbの見える化 でgdbの使い方を学ぶ
- Emacs Code Browser(ECB)を入れてみたでecbの使い方を学ぶ
- 本筋は以上だがその他の話題はemacs C++ 開発環境link集
- c++に限定されないemacs一般の情報についてはemacs link集に書いた