この機能を利用して、それぞれの画面で別の file を開いておいて、 一方の file からもう一方の file へのカット&ペーストを する、なんてことが出来ます。
間違って、必要な方の window を閉じてしまったときは、 再び C-x C-f (または menu-bar) で file を開き直してください。
Fortran-mode で M-x abbrev-mode とすると、 mode-line の (Fortran) の所が (Fortran Abbrev) となるはずです。 この mode で、Fortran のキーワードの略称入力が出来ます。 例えば、 ;in Space と 入力すると、;in が integer に置き換わります。 Fortran のどのようなキーワードが、どのような略称で登録されている かは、 ;? として下さい。 対応の一覧表が出ます。
略称をいったん覚えてしまえば、高速に入力出来ることが期待されますが、 略称を覚える手間を考えると、難しいところです。 まあ、良く使うやつを 2つ3つ覚えておくだけでも、 結構、楽できるでしょう。
ちなみに
(defvar fortran-mode-hook nil) (setq fortran-mode-hook '(lambda () (abbrev-mode 1) ))を .emacs に加えておくと、次に Mule を起動したときから、 Fortran の source file を開けば、自動的に略称モードになります。
キーボード・マクロとは、ある一連のキー操作を、 ひとかたまりのコマンドとして Mule に(一時的に)登録する機能です。 これだけでは分かりにくいでしょうから、例によって例で説明します。
例えば、Fortran の source を、うっかり、 最初の 7桁を開けずに書いてしまい、しかも TAB キーが 使えなかったりする場合を考えます。 (これは、説明のために考えた仮想的な状況で、 現実には、こんなことは無いでしょう。) これを修正するのに、一行目から、space を 6回たたいて、次の行の先頭に 移動して、再び space を 6回たたいて、、、なんてやっていたら、 日が暮れてしまいますね。 (例えば)こんな時に役立つのが、キーボード・マクロです。
今の場合、「space を 6回打って、次の行の先頭に移動する」 というのが、ひとかたまりのコマンドに出来たら、便利ですね。 これをするには、
C-x ( space space space space space space C-n C-a C-x )
とします。 C-x ( が、 キーボード・マクロの登録開始のコマンド、 C-x ) が、 キーボード・マクロの登録終了のコマンドです。 これで、「space を 6回打って、次の行の先頭に移動する」 という動作が キーボード・マクロに登録できました。 登録したキーボード・マクロを実行するには、 C-x e です。
もしも、今の Fortran の source に comment が全く無いとしたら、
C-u (source の行数) C-x e
とすれば、全ての行の先頭に 6個のスペースを入れる、 ということが一発で出来てしまいます。
キーボード・マクロは、使い方次第で、非常に便利なコマンドになります。
が、これは、はっきりいって使うのが面倒臭いと思います。 ので、今まで説明しなかったんですが、実は、 .emacs ファイルに、
(global-set-key "\C-x\C-g" 'goto-line)と加えておくと、(次に mule を起動したときから) C-x C-g で、このコマンドを使う事ができます。
noriaki
と入力後、C-x u すると
noriak
となり、再び C-x u すると
noria
となります。(ここまでは良いですね? 良くない、
という人は、もう一度undo の説明
を読み直してしてください。)
ここで C-g してから
C-x u すると
noriak
となり、さらに C-x u すると、
noriaki
となります。この様にして undo の undo が出来ます。
キー操作 | 機能の名称 | 機能の説明 |
---|---|---|
C-x i | insert-file | file をカーソル位置に挿入する。 |
M-y | yank-pop | yank 直後に使うと、kill したテキストを順次さかのぼって yank する。 |
C-x C-x | exchange-point-and-mark | カーソル位置とマーク位置を入れ替える。 |
C-v | scroll-up | 下方にスクロールする。 |
M-v | scroll-down | 上方にスクロールする。 |
M-x goto-line | goto-line | 指定した行にカーソル移動 |
(undo の直後に) C-g | ---------- | undo の向きの逆転。 |
(Fortran-abbrev-mode で) ; | fortran-abbrev-start | Fortran のキーワードの略称入力。 Fortran-mode の時に、M-x abbrev-mode とすると、 Fortran-abbrev-mode になる。 ;? で、略称一覧が表示される。 |
Window 操作 | ||
C-x 2 | split-window-vertically | 画面をを上下 2つの window に分割する。 |
C-x o | other-window | 分割した window 間のカーソル移動。 |
C-x 1 | delete-other-windows | カーソルの無い window を消す。 |
C-x 0 | delete-window | カーソルのある window を消す。 |
C-x ^ | enlarge-window | window を一行だけ大きくする。 実際には、C-u と組み合わせて使う。 |
キーボード・マクロ | ||
C-x ( | start-kbd-macro | キーボード・マクロの登録開始。 |
C-x ( | end-kbd-macro | キーボード・マクロの登録終了。 |
C-x e | call-last-kbd-macro | (最後に)登録したキーボード・マクロを実行する。 |