タグファイルを作れば、関数名、#defineされた定数、typedefされたタイプ名が、シンボル名として検索できる。
$ cd src $ etags *.[ch]
emacsの中からなら、diredでディレクトリを呼び出して、M-! etags *.c *h としてもよい。 カレント・ディレクトリに TAGS というファイルができる。 emacsでソースを呼び出して、TAGジャンプさせる
ファイルの最初から8行以内に Time-stamp: <> と書いてから ESC-x time-stamp とすれば時刻を入れてくれる。.emacs でカスタマイズして、Last-Update 等のようにファイルの保存時に自動的に入れることも出来る。
<愚痴>たったこれだけ(Time Stamp を入れる)のことをどうやるのか調べる手段がなさすぎ。ソースを読めって..最近の Linux Distribution では、emacs-lisp のソースは入ってないし、めったに使わない情報のために膨大なソースを入れるのもなんだかなぁ</愚痴>
xtermの表示内容をマウスの左ボタンで選択して、別のxtermに中ボタンで貼り付けるという操作は、直感的でわかりやすいので良く使う。
ほんの数行の設定を別のコンピュータに移す場合、いちいちファイルを作って転送してとやるより、端末を呼び出してその場で編集してしまったほうが簡単だ。 ところが、xtermの選択範囲(x11のselection)を、emacsの編集画面で中ボタンを押して貼り付けようとすると、成功するときと失敗するときがある。 emacsを立ち上げてから一度もリージョン(region)を使っていないとうまくいくようだが、 そうで無い場合は、リージョンとして保存してあるバッファの内容を貼り付けてしまう。
M-x clipboard-yank
というコマンドを使えば、x11のclipboadの内容を貼り付けることができる。
ところが、これでも貼り付けに失敗することがある。xtermで左ボタンを選択してできる selection 領域は、clipboard ではないから、clipboard-yank では出てこないからだ。 面倒だが、xclipboard を立ち上げて New ボタンを押して selection を clipboard に 変えて、clipboard-yank としなければならないようだ。
逆に emacs のリージョンを clipboard に送るには、.emacs に以下のように書いておく必要がある。
(setq x-select-enable-clipboard t)
全く「誰か何とかしてくれ」と叫びたくなる面倒さだ。Mac や Windows のクリップボックスが如何に良くできているか(というかポリシーを貫いているか)が分かる例だ。
C-SPC | マークの設定 |
ESC-w | コピー |
C-w | 切り取り |
C-y | 貼り付け |
C-x h | バッファ全体のコピー |
ESC-x | replace-string |
ESC-x | query-replace |
SPC 置き換え | |
DEL スキップ | |
ESC 終わり | |
! 以後全て | |
^ 前へ |
C-/ | undo |
C-x ESC ESC | repeat-complex-command |
M-p | previous-complex-command |
M-n | next-complex-commnad |
C-\ とするとモードライン・インジケータに 'Aあ' というような表示が出る。 このモードで C-h I <RET> とすると説明が出る。Windows に比べると、 変換がかなり変だったりキー操作がかなり異なるので注意。
quail入力中
K | カタカナに変換 |
変換候補表示中
C-o | 文節を伸ばす |
C-i | 文節を縮める |
C-f | 次の文節 |
C-p | 前候補 |
l | 次の候補グループ |
L | 前の候補グループ |
C-c | キャンセル |
変なローマ字
よみ | 私の記憶 | quail |
ん | nn | n' |
ちょう | cyou | chou |
でぃすく | dhisuku | dyisuku |