c-indent-line
public void f() { ■ }
■にカーソルがある時に,C-i しても,インデントしてくれねーときがあります。
以前,ワタシは書きました。
C-i を c-indent-line-or-region にバインドすればいいと。
けど,これだと役をしないじゃないか。
あぁ,オレは嘘を垂れ流していたんだ。。。
けどけど,上記の場所にカーソルがある時に,
M-: して,(c-indent-line) すると,インデントしてくれる。
ほうほう。
だもんで,M-: して,(local-set-key "\t" 'c-indent-line) して,
C-i したら,ごらぁ! と怒られました。
むむむ。
ならばと,my-c-indent-line というインタラクティブなラッパー?関数を定義して,
バインドしてみました。
(defun my-c-indent-line (&optional syntax quiet ignore-point-pos) (interactive) (c-indent-line syntax quiet ignore-point-pos))
を評価して,M-: して,(local-set-key "\t" 'my-c-indent-line) して,
C-i !! おぉー,きちんとインデントしてくれるね−。
あとは,c-mode-hook にでも追加しておけばオッケーね。
なんか別解がありそうだが。。。