画面を分割して、それぞれのペイン(フレーム)に違うバッファを開く事ができます。
ウェブブラウザでいうフレームを、ウィンドウという様になったのは、マルチウィンドウシステムが一般的でなかった時に、複数のファイルを開けた為、ウィンドウと呼ばれたのだと思いますが、どうなのでしょう?
ちなみに、一般的にウィンドウと言われている物も複数開く事ができ、emacsではそれをフレームと言います。ちょっとややこしいかもしれません。
ウィンドウ関連のコマンドは重要で、普通に使っていると、頻繁にウィンドウが開くので、閉じたりウィンドウ間の移動等は覚えておかないと、作業効率が飛躍的に悪くなります。
Windowを閉じる
C-x 0
現在カーソルのあるウィンドウを閉じます。
現在のWindow以外を閉じる
C-x 1
現在カーソルのあるウィンドウ以外を閉じます。
C-x 2
いわゆる水平分割です。テキストは横書きなので、よく使います。
Window縦分割
C-x 3
いわゆる垂直分割です。あまり使わないです。
Windowを移動する
C-x o
複数ウィンドウが開いている場合に、順繰りにウィンドウ間を移動します。よく使います。
画面サイズの縦拡大
C-x ^
分割したウィンドウのペインの高さや、幅を変更します。カーソルのあるウィンドウが拡大します。
画面サイズの幅拡大/縮小
C-x { / C-x }縦分割をする事はあまりありませんが、縦分割をした時は、覚えていないと不便なので、覚えておいた方が良いと思います。
[unix][emacs] emacsコマンド(フレーム系)
私は、フレームをほとんど使いません。バッファがマルチウィンドウの機能を持っているので、特に不便は感じていないからです。もっと、本格的に使い込んでいる場合は必要なのかもしれませんが、ちょっと、私には状況が想像できないですね。
新しいフレームを開く
C-x 5 f / C-x 5 2
5 fでは、ファイルを指定して新しいフレームで開きますが、C-x 5 2は現在のバッファを新しいフレームにも表示します。普通は5 2を使ってからファイルをC-x C-fで指定します
フレームの削除
C-x 5 0
フレームの切り替え
C-x 5 b
基本的には、バッファやウィンドウの操作に5がつくとう風に覚えれば、問題ないと思います。
[unix][emacs] 最後に
emacsについての、基本的なコマンドは大体紹介できたと思います。あとは、C-uでコマンドを反復実行するというのをよく使いますが、どこで紹介していい物か判断がつかなかったので、ここで紹介します。
C-u 5 C-x k
C-uコマンドは、その後に指定したコマンドを、指定回数実行するというコマンドで、上記の場合は、C−kを5回実行します。つまり、カーソル位置から行末まで削除を5回行います。
よく使うのは、C-u 10 C-x ^でウィンドウ幅を一度で10行拡大したり、C-u 2 C-oでウィンドウを移動したり、C-u 100 C-x nで百行下に移動したりとか、結構対した事無い動作です。C-u 2 C-x oに至ってはC-x oを二回入力した方が早いんじゃないかと思うんですが、C-uが癖になってるので、あまり不便を感じません。もっと楽なやり方があったり、もっとスマートなやり方があるのに<%= fn 'しかもやり方も知っているのに' %>できてないというか、やってない事って結構あります。まだまだですね。
ちなみに、ウィンドウの移動はwindmove-default-keybindingsをOnにすると、Shift+カーソルキーで移動できるようになったりします。縦横に複数分割する場合、確かに便利そうですが、あまりウィンドウを作らないので使いませんね。
なには、ともあれ、このemacsコマンドをまとめるのに、色々なサイトとか見て、再勉強というか、新たに勉強できました。これが一番の収穫のような気がします。
しかし、当初いくつかのコマンドを覚えるだけで使えるって書いたりしてるけど、思ったより沢山のコマンドを普段から使ってて少し驚き。感覚的には20個ぐらいしか使ってないような気がするんだけど、そうでは無いみたいね。これ見たらやっぱり、覚えられないと思われるかもしれないし、まとめたというには長過ぎて、読む気にならないだろな。
今正しく書き直すなら「結構コマンド使ってるけど、覚えるのは案外苦痛ではない」とかになるのかな?インパクト無いなぁ…。