[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
Emacs は自由にカスタマイズできるテキストエディタです.そのため,自分が使い慣れて いたソフトと同じように使うことができるようにカスタマイズする人もいます.
ここでは,他のソフトに似せるための設定を紹介します.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
標準で 3 種類の Elisp が附属しています.必要に応じて選択するといいでしょう.
特にこだわりなどがなければ, viper-mode がお勧めです.
ただし,どのモードも日本語入力と使うと,期待した通りに動かないことがたまにありま す.
14.1.1 メジャーモードとして動く vi ― vi-mode (2003/11/18) 14.1.2 マイナーモードとして動く vi ― vip-mode (2003/11/24) 14.1.3 Emacs と vi を共存させる― viper-mode (2004/03/05)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
メジャーモードとして動作する vi
vi のような操作を実現することができます.
Meadow には標準で附属しています.
設定はなくても構いませんが,
(define-key global-map "\e\e" 'vi-mode)
|
があると簡単に vi-mode に切り替えることができて便利です.
M-x vi-modeで起動します.後は普通の vi のように操作できます.
編集に入るコマンド (iなど) を入力すると,通常のモードに戻ります.この状態で, vi-mode にするためには,再度M-x vi-modeとする必要があります (上記設定があれ ばESC ESCでも可能) .
IME がオンになっていると,編集モードに入れないなどということがあります.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
マイナーモードとして動作する vi モード. vi-mode よりも使い勝手がいい
vi のような操作を実現できます.
Meadow に標準で附属しています.
不要ですが,
(setq vip-inhibit-startup-message t) (setq vip-re-search t) (setq vip-re-replace t) (setq vip-re-query-replace t) (setq vip-open-with-indent t) (eval-after-load "vip" '(define-key vip-mode-map "s" 'vip-substitute)) |
ぐらいがあると便利になるでしょう.
M-x vip-modeで起動します.これでモードラインに「 Vi:」と表示され, vi モード になります.
iなどの編集コマンドを入力すると,モードラインの表示は「 Insert:」になり編集 モードになります.コマンドモードにするのはESCでできます.
また,コマンドモードでC-zとすると, vip-mode を終了できます.編集モードで C-z xとすると,M-xと同じ意味になります.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
マイナーモードとして動作する vi モード. Emacs モードもあり,同種のものと比べ, 便利.
Emacs で vi と同じ操作を実現できる.
Meadow には標準で附属しています.
特に設定は不要です.
M-x viper-modeで実行できます.初回のみレベル選択をする必要があります.
1 に近いほど, vi に近くなり, Emacs のコマンドが使えなくなります. SKK などを使 うのであれば, 3 以上が必要です.
後は,普通の vi と同じように操作できます.ただし,C-\ xでM-xと同じこと になります.
このため,C-\による IME のトグルはできなくなります.
デフォルトでは vip-mode の状態でカーソルを切り替えています.しかし,これでは bar-mode になってしまい,あまり好ましくありません.
そこで,~/.viper に以下を追加しておきます.
(eval-after-load "viper-init" '(defun viper-set-insert-cursor-type () (if viper-xemacs-p (setq bar-cursor 2) (setq cursor-type 'box)))) |
これで,カーソル形状は box になります.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
C-cでのコピーなど Windows のキーバインドに似せるための方法を紹介します.
ちなみに Shift+ カーソルキーでリージョンを選択する方法は16.7.2 カーソルキーでリージョンを選択 (2003/11/05) で紹介していますので,そちらを参照してください.
また、この Windows 標準のキーバインドは 「 Common User Access 」を略して「 CUA 」と呼ばれます。そのため、 cua.el など cua で始まるものは、この手の機能を持つ Elisp と判断できます.
14.2.1 C-c でコピーを行う― CUA (2003/11/05)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |
Windows で一般的に用いられているコピーなどのキーバインドを Emacs でも実現できま す.また,矩形処理もコピーと同様の操作で簡単にできます.
C-c など Windows で標準的になっているキーバインドがあります. Windows を使っ ていると,ついついこれらのキーを使ってしまいますが, Emacs では動作しません.
Windows で一般的なキーを実現できます.
Storm's Free Software Collection より cua.el をダウンロードし,ロードパスの通ったところへ置きます.
以下を.emacs に追加します
(require 'cua) (CUA-mode t) |
起動すると,C-c,C-x,C-vでコピー/切り取り/貼り付けが可能にな ります.C-c,C-xはリージョンがなければ,普通にC-c,C-xと して使えますので,C-x C-fができないということもありません.
また,Shift+Returnでカーソルを移動させると,
09 10 11 10 20 0
のように,矩形選択を簡単に行うことができます.この状態でM-wで矩形部分をコ ピーできますし,削除なども可能です.Shift+Return を入力すると,ミニバッファ にキーバインドが表示されるので,これを参考に試してみるといいです.
また,矩形処理で始めたけど普通のリージョンにしたいなという時には C-SPCで切 り替えることができます.その逆も Shift+Return で可能です.
C-cはキーバインドされるとうれしくないという場合には
(CUA-mode 'emacs) |
に変えておくといいです.こうしておくと,矩形処理などの拡張機能は利用できますが, キーバインドの変更はされません.
慣れている人ほど,C-vやC-zなどのバインドが変わるのは戸惑うと思うので, とりあえずこれで試してみるといいでしょう.
さらに
(setq CUA-mode-normal-cursor-color "red") (setq CUA-mode-overwrite-cursor-color "yellow") (setq CUA-mode-read-only-cursor-color "green") |
という設定を追加しておくと,バッファの状態が通常,上書きモード,読み込み専用のど の状態かでカーソルの色が変わります.
矩形処理でC-wによる切り取りができなかったり, IME のオン でカーソル色を変えていたのに消されてしまったりと多少不満はあるけど,結構いい出来 です.特に矩形処理は便利です.
[ << ] | [ >> ] | [表紙] | [目次] | [索引] | [検索] [上端 / 下端] [?] |