Evilのカスタム変数の一覧です.
- 導入編
- 設定編
- 拡張編
-
付録
- カスタム変数一覧
- evil-auto-indent
- evil-shift-width
- evil-shift-round
- evil-cross-lines
- evil-move-cursor-back
- evil-repeat-move-cursor
- evil-kbd-macro-suppress-motion-error
- evil-track-eol
- evil-bigword
- evil-mouse-word
- evil-cjk-emacs-word-boundary
- evil-cjk-word-separating-categories
- evil-cjk-word-combining-categories
- evil-want-fine-undo
- evil-want-change-word-to-end
- evil-want-C-i-jump
- evil-want-C-u-scroll
- evil-want-C-w-delete
- evil-want-C-w-in-emacs-state
- evil-want-visual-char-semi-exclusive
- evil-show-paren-range
- evil-highlight-closing-paren-at-point-states
- evil-search-module
- evil-regexp-search
- evil-search-wrap
- evil-flash-delay
- evil-symbol-word-search
- evil-magic
- evil-ex-search-case
- evil-ex-search-vim-style-regexp
- evil-ex-hl-update-delay
- evil-ex-search-interactive
- evil-ex-search-highlight-all
- evil-ex-interactive-search-highlight
- evil-ex-substitute-case
- evil-ex-substitute-global
- evil-ex-substitute-highlight-all
- evil-ex-substitute-interactive-replace
- evil-ex-visual-char-range
- evil-ex-complete-emacs-commands
- evil-complete-all-buffers
- evil-complete-next-func
- evil-complete-previous-func
- evil-complete-next-minibuffer-func
- evil-complete-previous-minibuffer-func
- evil-complete-next-line-func
- evil-complete-previous-line-func
- evil-lookup-func
- evil-default-cursor
- evil-mode-line-format
- evil-echo-state
- evil-fold-level
- evil-auto-balance-windows
- evil-esc-delay
- evil-intercept-esc
- evil-toggle-key
- evil-default-state
- evil-buffer-regexps
- evil-emacs-state-modes
- evil-insert-state-modes
- evil-motion-state-modes
- evil-overriding-maps
- evil-intercept-maps
- evil-motions
- evil-visual-newline-commands
- カスタム変数一覧
カスタム変数一覧
evil-auto-indent
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- autoindent
自動的にインデントするかどうか. Vimと違いデフォルトで有効です.
evil-shift-width
- 型
- integer
- 初期値
- 4
- バージョン
- 1.0.0
- Vim
- shiftwidth
<
オペレータ(evil-shift-left
)と>
オペレータ(evil-shift-right
)で使うオフセット値. Vimと違い初期値は4
です.
evil-shift-round
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- shiftround
<
オペレータ(evil-shift-left
)と>
オペレータ(evil-shift-right
)を使用したとき, evil-shift-width
の値で丸めるかどうか. t
の場合は, シフトした後のインデントの深さがevil-shift-width
の倍数になるようにします. Vimと違いデフォルトで有効です.
evil-cross-lines
カーソル移動時に行をまたぐかどうか. t
はVimのwhichwrap=b,s,h,l,<,>,[,]
に相当(バージョン1.0-devからはwhichwrap=b,s,h,l,<,>,[,],~
に相当)し, nil
はVimのwhichwrap=[,]
に相当します. Vimの初期値とは異なります.
evil-move-cursor-back
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
挿入ステートを抜けるときにカーソルを後退するかどうか. また, nil
の場合, Vimとは違ってカーソルを改行文字の上に移動することができるようになります.
evil-repeat-move-cursor
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
繰り返しコマンド.
(evil-repeat
)がカーソルを移動するかどうか. nil
に設定すると, 繰り返し操作の後もカーソルが元の場所に留まります.
evil-kbd-macro-suppress-motion-error
キーボードマクロの記録(繰り返しコマンド.
で使う操作の記録)時に, エラーを無視するかどうか. nil
の場合は無視せず, record
の場合はキーボードマクロの記録中のみ無視, replay
の場合はキーボードマクロの実行中のみ無視, t
の場合はどちらの場合も無視します.
evil-track-eol
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
$
コマンド(evil-end-of-line
)を実行した後の操作で行末に留まるかどうか. これは矩形選択の挙動をVimに合わせるために導入されました.
evil-bigword
- 型
- string
- 初期値
- "^ \t\r\n"
- バージョン
- 1.0.0
- Vim
- -
W
コマンド(evil-forward-WORD-begin
)が単語とみなす文字集合. 正規表現の[]
の中に指定する文字列を指定します.
evil-mouse-word
- 型
- symbol
- 初期値
- evil-move-word
- バージョン
- 1.0.0
- Vim
- -
マウスでダブルクリックした際の単語選択に使用する関数.
evil-cjk-emacs-word-boundary
日本語等の単語境界をEmacsのものにするかどうか. nil
の場合はVimと互換で, 漢字・ひらがな等の種類が変わるところが単語境界になります. t
の場合はEmacsと互換で, 漢字の直後にひらがなが続く場合は, 漢字部分とひらがな部分を同一の単語とみなします(日本語の文節に近いものを単語とみなします).
evil-cjk-word-separating-categories
- 型
- (list (cons (character . character)))
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
単語の境界を判別するためのリスト. 2つの連続する文字のカテゴリをペアにしたものが, このリストに入っている場合は, その部分は単語境界とみなされます. デフォルトではVimの単語境界を表す値が入っています. 詳細はM-x describe-variable RET word-separating-categories RET
を, 文字のカテゴリについてM-x describe-categories RET
を参照して下さい.
evil-cjk-word-combining-categories
- 型
- (list (cons (character . character)))
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
単語の途中を判別するためのリスト. 2つの連続する文字のカテゴリをペアにしたものが, このリストに入っている場合は, その部分は単語の途中とみなされます. デフォルトではVimの単語の途中を表す値が入っています. 詳細はM-x describe-variable RET word-combining-categories RET
を, 文字のカテゴリについてM-x describe-categories RET
を参照して下さい.
evil-want-fine-undo
cw
などの操作を元に戻す単位を細かくするかどうか. nil
の場合, 元に戻す単位はVim同様, 挿入ステートに入ってから挿入ステートを抜けるまでの操作になります. t
の場合, 元に戻す単位はEmacs本来のものとなり, より細かくなります.
evil-want-change-word-to-end
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
cw
がce
のように振る舞うようにするかどうか. nil
に設定すると, cw
はw
で移動する位置までを変更するようになります.
evil-want-C-i-jump
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
C-i
をジャンプコマンド(evil-jump-forward
)に割り当てるかどうか. デフォルトでVimと同様にC-i
はジャンプコマンドに割り当てられます. デフォルト設定のままだと, TAB
とC-i
の区別がないため, ノーマルステートやビジュアルステートではTAB
で自動インデントなどの操作ができません.
evil-want-C-u-scroll
C-u
を上スクロール(evil-scroll-up
)に割り当てるかどうか. Vimと違い, デフォルトではEmacsのプレフィックス引数を無効化しないように, 上スクロールには割り当てません.
evil-want-C-w-delete
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
挿入ステートでC-w
を単語削除(evil-delete-backward-word
に割り当てるかどうか). nil
に設定すると挿入ステートでもC-w
はウィンドウ移動コマンドになります.
evil-want-C-w-in-emacs-state
EmacsステートでもC-w
をウィンドウ移動コマンドに割り当てます.
evil-want-visual-char-semi-exclusive
限定的に選択範囲からカーソル位置を除くかどうか. nil
の場合は, Vimと同様に, 選択範囲にはカーソル位置を含みます. t
の場合は, 行頭と行末ではEmacsと同様に選択範囲にカーソル位置を含みません.
evil-show-paren-range
- 型
- integer
- 初期値
- 0
- バージョン
- 1.0.0
- Vim
- -
対応する括弧をハイライトする範囲. 括弧からカーソルまでの距離がこの値以下のときに括弧をハイライトします.
evil-highlight-closing-paren-at-point-states
カーソル下に閉じ括弧があるときに括弧をハイライトするステートのリスト. このリストに入っているステートでは, Vimのノーマルモードのように, カーソル下に閉じ括弧がある場合に括弧をハイライトします. これ以外のステートでは, Emacsのように, カーソルが閉じ括弧の直後にある場合に括弧をハイライトします. リストの先頭がnot
の場合は条件を反転します.
evil-search-module
- 型
- isearch | evil-search
- 初期値
- isearch
- バージョン
- 1.0.0
- Vim
- -
検索に使うモジュール. isearch
はEmacsに組み込みの検索モジュール, evil-search
はEvil独自の検索モジュールです. evil-search
を選択すると, Vimの検索により近い挙動になります.
evil-regexp-search
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
検索に正規表現を使うかどうか. この設定はevil-search-module
がisearch
の場合のみ有効です.
evil-search-wrap
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- wrapscan
検索時にバッファ末尾に到達した場合にバッファ先頭に戻るかどうか. この設定はevil-search-module
がisearch
の場合のみ有効です.
evil-flash-delay
- 型
- number
- 初期値
- 2
- バージョン
- 1.0.0
- Vim
- -
検索にマッチした部分のハイライトをやめるまでの秒数. この設定はevil-search-module
がisearch
の場合のみ有効です.
evil-symbol-word-search
*
や#
で単語単位ではなくシンボル単位で検索するかどうか.
evil-magic
検索パターンで使える特殊文字の範囲. この範囲に含まれている文字は, \
をつけない限り特殊文字として扱われます. また, このオプションを変更しなくても, Vim同様, 検索パターン中に\v
, \m
, \M
, \V
のいずれかのトークンが現れると, それ以降のパターンでは特殊文字の範囲が切り替わります(ただしこれらのトークン自身に関しては変わりません). 設定値と範囲, トークン, Vimのオプションの対応は以下の通りです.
設定値 | トークン | Vimオプション | 範囲 |
---|---|---|---|
very-magic |
\v |
0-9A-Za-z_ 以外 |
|
t |
\m |
magic |
][{}*+?.&~$^ |
nil |
\M |
nomagic |
][}{*+?$^ |
very-nomagic |
\V |
\ |
この設定はevil-search-module
がevil-search
の場合のみ有効です.
evil-ex-search-case
- 型
- sensitive | insensitive | smart
- 初期値
- smart
- バージョン
- 1.0.0
- Vim
- ignorecase, smartcase
検索時に大文字・小文字を区別するかどうか. sensitive
の場合は区別し, insensitive
の場合は区別せず, smart
の場合は, 先頭が大文字のときは区別し, 先頭が小文字のときは区別しません. Vimと違い, 初期値はsmart
です. この設定はevil-search-module
がevil-search
の場合のみ有効です.
evil-ex-search-vim-style-regexp
Vim風の正規表現を使うかどうか. nil
の場合は従来のEmacsの正規表現を用います. t
の場合はVimと互換な正規表現を内部でEmacsの正規表現に変換します. Vimと違い, デフォルトではEmacsの正規表現を用います. この設定はevil-search-module
がevil-search
の場合のみ有効です. evil-search-module
がisearch
の場合は常にEmacsの正規表現を用います.
evil-ex-hl-update-delay
- 型
- number
- 初期値
- 0.02
- バージョン
- 1.0.0
- Vim
- -
検索結果のハイライトをするまでの待ち時間. この値をキーリピートの間隔よりも短くすることで, (j
やC-e
による)スクロール中にもハイライトが更新されるようになります. この設定はevil-search-module
がevil-search
の場合のみ有効です.
evil-ex-search-interactive
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- (incsearch)
検索をインタラクティブにするかどうか. t
の場合は検索結果がハイライトされ, 検索パターンの入力中にもハイライトが更新されます. この設定はVimのincsearch
に似ていますが, nil
の場合もハイライトされないだけで検索そのものはこの設定によらず常にインクリメンタルにする点が異なります. Vimと違い, デフォルトで有効です. この設定はevil-search-module
がevil-search
の場合のみ有効です.
evil-ex-search-highlight-all
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- hlsearch
検索結果をすべてハイライトするかどうか. t
の場合, :nohlsearch
するか, 別のパターンを検索するまでハイライトされ続けます. Vimと違いデフォルトで有効です. この設定は, evil-search-module
がevil-search
で, evil-ex-search-interactive
がt
の場合のみ有効です.
evil-ex-interactive-search-highlight
検索結果をハイライトする範囲. all-windows
の場合はすべてのウィンドウでハイライトされます. selected-window
の場合は現在のウィンドウでハイライトします. nil
の場合はハイライトしません. この設定はevil-search-module
がevil-search
の場合のみ有効です.
evil-ex-substitute-case
置換時に大文字・小文字を区別するかどうか. sensitive
の場合は区別し, insensitive
の場合は区別せず, smart
の場合は, 先頭が大文字のときは区別し, 先頭が小文字のときは区別しません. nil
の場合は, evil-ex-search-case
の設定に従います.
evil-ex-substitute-global
置換時にデフォルトで複数回マッチするかどうか. t
にすると, g
フラグをつけなくても複数回マッチするようになり, 逆にg
をつけたときは複数回マッチをやめるようになります.
evil-ex-substitute-highlight-all
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
置換対象をハイライトするかどうか. t
の場合, 置換(:substitute
)の際に置換パターンにマッチする部分をすべてハイライトします.
evil-ex-substitute-interactive-replace
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
置換結果を表示するかどうか. t
の場合, 置換(:substitute
)の結果を, 置換対象の部分の直後にインタラクティブに表示します. この設定はevil-ex-substitute-highlight-all
がt
の場合のみ有効です.
evil-ex-visual-char-range
:
コマンドを文字単位の選択範囲に対して適用するかどうか. nil
の場合はVimと同様に, '<,'>
が:
によって挿入されます. t
の場合は, Vimにはない`<,`>
が挿入されます. Evilでは, :'<,'>
は行単位の選択範囲, :`<,`>
は文字単位の選択範囲に対してコマンドを適用することを表します.
evil-ex-complete-emacs-commands
コマンドライン(:
)でEmacsのコマンドを補完の対象にするかどうか. nil
の場合はVimのコマンドのみ補完します. t
の場合は常にEmacsのコマンドも補完します. in-turn
の場合は, Vimのコマンドにマッチするものがない場合のみ, Emacsのコマンドを補完対象にします.
evil-complete-all-buffers
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- (complete)
補完の際にすべてのバッファから候補を探すかどうか.
evil-complete-next-func
- 型
- function
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
挿入ステートのC-n
コマンド(evil-complete-next
)で使う補完関数.
evil-complete-previous-func
- 型
- function
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
挿入ステートのC-p
コマンド(evil-complete-previous
)で使う補完関数.
evil-complete-next-minibuffer-func
- 型
- function
- 初期値
- minibuffer-complete
- バージョン
- 1.0.0
- Vim
- -
ミニバッファのC-n
コマンド(evil-complete-next
)で使う補完関数.
evil-complete-previous-minibuffer-func
- 型
- function
- 初期値
- minibuffer-complete
- バージョン
- 1.0.0
- Vim
- -
ミニバッファのC-p
コマンド(evil-complete-previous
)で使う補完関数.
evil-complete-next-line-func
- 型
- function
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
ミニバッファのC-x C-n
コマンド(evil-complete-next-line
)で使う補完関数.
evil-complete-previous-line-func
- 型
- function
- 初期値
- evil-complete-next-line-func
- バージョン
- 1.0.0
- Vim
- -
ミニバッファのC-x C-p
コマンド(evil-complete-previous-line
)で使う補完関数.
evil-lookup-func
- 型
- function
- 初期値
- woman
- バージョン
- 1.0.0
- Vim
- -
キーワード検索コマンドK
(evil-lookup
)で使う関数.
evil-default-cursor
- 型
- (set ...)
- 初期値
- ("black" t)
- バージョン
- 1.0.0
- Vim
- -
デフォルトのカーソル. cursor-type
に設定するカーソルの形状, カーソル色を表す文字列, あるいはカーソルを変更する0引数関数を要素として含むリストを設定します. デフォルトのカーソル色は(frame-parameter nil 'cursor-color)
の値(もしnil
のときは"black"
)です.
evil-mode-line-format
- 型
- before | after | (after . symbol) | (before . symbol)
- 初期値
- before
- バージョン
- 1.0.0
- Vim
- -
ステートをモードラインのどの位置に表示するか. before
はモードリストの前, after
はモードリストの後です. cons
セルを指定することで, mode-line-format
中の特定のシンボルの前か後を指定することもできます.
evil-echo-state
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0.0
- Vim
- -
エコー領域にステートの変更を通知するかどうか.
evil-fold-level
- 型
- integer
- 初期値
- 0
- バージョン
- 1.0.0
- Vim
- foldlevel
デフォルトの折り畳みレベル.
evil-auto-balance-windows
- 型
- boolean
- 初期値
- t
- バージョン
- 1.0-dev
- Vim
- -
Evilのコマンドによってウィンドウが作成/削除されたとき, ウィンドウの大きさを揃え直すかどうか. ただし, Emacsの組込み関数が直接あるいは他のパッケージから間接的に呼び出された場合は, 揃え直しません.
evil-esc-delay
- 型
- number
- 初期値
- 0.01
- バージョン
- 1.0.0
- Vim
- -
ESC
が押された際に後続のキーを待つ秒数. 端末では単体のESC
とM-
を区別することができないため, ごく短い間に(事実上同時に)他のキーが押された場合のみM-
として認識する必要があります. 端末そのもの(screen
やtmux
)でも同様に短い時間待つ設定がある場合は, そちらの調整も必要です.
evil-intercept-esc
ESC
キーをinput-decode-map
で特別扱いするかどうか. ターミナル上のEmacs(emacs -nw
)ではESC
とメタキーが同じイベントになるため, input-decode-map
でESC
を特別扱いし, イベントを変換する必要があります. この変数はどういう場合にイベントを変換するかを制御します. nil
の場合は一切変換しません. t
の場合はターミナル上のEmacsでのみ変換します. always
の場合はGUI版のEmacsでも変換します. GUI版でのイベント変換は, C-[
をESC
の代わりに使いたい場合に必要です.
evil-toggle-key
- 型
- string
- 初期値
- "C-z"
- バージョン
- 1.0.0
- Vim
- -
Emacsステートと行き来するキー.
evil-default-state
- 型
- symbol
- 初期値
- normal
- バージョン
- 1.0.0
- Vim
- -
初期状態のステート.
evil-buffer-regexps
- 型
- (alist string symbol)
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
バッファの初期状態のステートを表す連想配列. キーはバッファ名の正規表現で, 値はステートまたはnil
です. nil
の場合, そのバッファではEvilが完全に無効になります.
evil-emacs-state-modes
- 型
- (repeat symbol)
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
初期状態でEmacsステートになるべきメジャーモードのリスト.
evil-insert-state-modes
- 型
- (repeat symbol)
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
初期状態で挿入ステートになるべきメジャーモードのリスト.
evil-motion-state-modes
- 型
- (repeat symbol)
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
初期状態で移動ステートになるべきメジャーモードのリスト.
evil-overriding-maps
- 型
- (alist symbol symbol)
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
Evilのキーバインドを上書きするキーマップの連想配列. キーにはキーマップのシンボルを, 値にはどのステートで上書きするかを指定します. ステートにnil
を指定するとすべてのステートで上書きします.
evil-intercept-maps
- 型
- (alist symbol symbol)
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
Evilのキーバインドを遮るキーマップの連想配列. キーにはキーマップのシンボルを, 値にはどのステートで遮るかを指定します. ステートにnil
を指定するとすべてのステートで遮ります. ここで指定したキーマップはEvilのあらゆるキーより優先的に処理され, デバッグ用途に用いられることを想定しています. 通常はevil-overriding-maps
を使うべきです.
evil-motions
- 型
- (repeat symbol)
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
移動コマンドとして認識されるべきコマンドのリスト. ここに指定したコマンドは, Evilの移動コマンドと同様に, 移動コマンドと認識されます. 繰り返し操作などで非Evilな移動コマンドがうまく扱われない場合はこのリストに追加するとよいでしょう.
evil-visual-newline-commands
- 型
- (repeat symbol)
- 初期値
- ...
- バージョン
- 1.0.0
- Vim
- -
選択範囲に対するコマンドのうち, 末尾の改行を含めてはいけないもののリスト. 行選択で末尾に改行が含まれるとうまく動作しない場合はこのリストに追加するとよいでしょう.