8f emacs seminar 1st

6
EMACS勉強会() 〜開発環境を晒しあげ〜 @toshi_pp 2011 7 21 1

Upload: toshipp

Post on 06-Aug-2015

1.115 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: 8F Emacs seminar 1st

EMACS勉強会(仮) 〜開発環境を晒しあげ〜

@toshi_pp

2011年7月21日 1

Page 2: 8F Emacs seminar 1st

EMACS

環境

MacPortsでいれたemacs23

便利だと思う設定

フレーム間をcommand+F1で移動

(global-set-key [(meta f1)] 'other-frame)

ヘッダとソースの切り替え

ff-find-other-file

行末のスペースを色づけ

(setq show-trailing-whitespace t)

(set-face-background 'trailing-whitespace "Purple”)

shift+矢印でバッファの移動

(windmove-default-keybindings)

2011年7月21日 2

Page 3: 8F Emacs seminar 1st

FF-FIND-OTHER-FILE

2011年7月21日 3

(define-key c-mode-base-map "¥M-t" 'ff-find-other-file)

(setq ff-other-file-alist

'(("¥¥.cc$" (".hh" ".h"))

("¥¥.hh$" (".cc" ".C"))

("¥¥.c$" (".h"))

("¥¥.h$" (".c" ".cc" ".C" ".CC" ".cxx" ".cpp" ".m" ".mm" ".cu"))

("¥¥.C$" (".H" ".hh" ".h"))

("¥¥.H$" (".C" ".CC"))

("¥¥.CC$" (".HH" ".H" ".hh" ".h"))

("¥¥.HH$" (".CC"))

("¥¥.cxx$" (".hh" ".h"))

("¥¥.cpp$" (".hpp" ".hh" ".h"))

("¥¥.hpp$" (".cpp" ".c"))

("¥¥.cu$" (".h"))))

Page 4: 8F Emacs seminar 1st

GCC

flymake使ってますよね?

とりあえず付けておけオプション

-Wall

-Wextra

付けておくとポータビリティ上がるよ(僕は使ってないけど)

-pedantic

えー、C++03?使っていいのは(ry

-std=c++0x

なんか警告とエラーがごっちゃになるんですが…(gcc4.5↑?)

(setq flymake-err-line-patterns (cons

'("¥¥(.+¥¥):¥¥([0-9]+¥¥):¥¥([0-9]+¥¥): ¥¥(.+¥¥)" 1 2 3 4)

flymake-err-line-patterns))

2011年7月21日 4

Page 5: 8F Emacs seminar 1st

みんな大好きセグフォ

皆さんセグフォしてますか?

最強のデバッグ技法printf

セグフォ時にはバッファのフラッシュができなかったりして

gdbつこうた

使い方なんか覚えなくてもよろしい

gdb ./a.out

(gdb) run

(gdb) bt

これでコールスタックが出るのでだいぶ楽です

デバッグ情報を入れておくと捗るかもね

gcc –g

-0と一緒に使えるけど情報の一貫性が取れないかも

2011年7月21日 5

Page 6: 8F Emacs seminar 1st

ちっぷす

gcc –E

マクロを展開

メタプログラミング時に捗るぞ

gcc –x <lang>

ファイルを<lang>として認識

例 gcc –x c hoge.tmp

ここをブックマークすると捗るぞ

http://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html

2011年7月21日 6