O Vim キーマッピング● Emacs はモードが無いのでキーバインドが複雑● 私には、<C-c> <C-x> … とか押せない● Emacs だとカーソル移動時にコントロールを押し 忘れて泣けることがある● ただし、Vim もインサートモードのキーマッピングは Emacs 並に足りない● つまり、 Vim はインサートモードで Emacs と戦うと 圧倒的に不利
6.
O Emacs スクリプト言語● Vim script はよく批判される● 例: 無名関数がない、オブジェクト指向がやりづら い、ライブラリの欠如、コマンドと関数の混 在、eval(:execute) の多用、組み込み機能をカスタ マイズしづらい etc...● とはいえ、Emacs Lisp が Vim script よりも圧倒的 に優れているわけではない
7.
O Vim ファイル編集能力● Vim のモードは高速にファイルを編集するため● Vim のファイル編集能力は圧倒的● 気分は人間フィルタ● 自分もそれほど使いこなせているわけではない● 「詰め Vi(Vim)」 はあるが、「詰め Emacs」は見た ことがない● おそらく思想の違い
8.
O Emacs 拡張性● テキストエディタの枠を超えた圧倒的な拡張性● 最初から拡張することを考えられている● Vim の場合はスクリプト言語が後付け● 組み込み機能の自由自在なカスタマイズ● 本体の機能が Emacs Lisp で記述されている● ただし、パフォーマンスが犠牲になっている
9.
O Vim コミュニティ● Vim の方がコミュニティの力がある(日本での話)● Vim-users.jp, vim-jp● Vim 本体で貢献する日本人の存在● Emacs の場合、個人で活動している人はいるが、あ まりまとまっていない印象● ただ、これから Emacs のコミュニティも活性化する かも?
10.
O Emacs 非同期通信● Emacs は標準で非同期通信が可能● 標準添付されている Emacs でも非同期通信は多 用されている● エディタ内で引きこもるには必須の機能● Deferred.el, concurrent.el 等の補助ライブラリ● Vim の場合、Python 等の外部インタフェースや vimproc を使用しないといけない
11.
O Vim 正規表現● Emacs の正規表現はエスケープが多い● Vim の正規表現は '' を用いるとエスケープがいら ない● ただし、(, ), ?, + はなれない人は戸惑うらし い● 更に、先読みや後読みが書きやすい
12.
O Emacs 標準添付プラグイン● Emacs は標準添付プラグインが豊富● Eshell, org-mode, tramp, dired, ...● 節操がない、とも言える● Vim の場合、標準添付プラグインは殆ど無い● ほとんどの場合、組み込み機能でやってしまうため
13.
O Vim ユーザ数● Vim の方がユーザ数が多い● ただし、普通のエディタの代わりに使う人も相当数 いる● Emacs の方が全体的なレベルは高い印象● Vim はあまり設定しなくても動くから?
O Vim シンタックスハイライト● Vim のシンタックスハイライトは 300 種類を超える● シンタックスハイライトの文法もやたらと高機能● 自分が Vim を使い始めたのはシンタックスハイラ イトの充実があったから
16.
O Emacs 開発安定性● 一時期リリースが不定期だったが、最近のEmacs は開発がコミュニティベースで安定している● Vim もコミュニティベースだが、パッチを当ててリ リースするのは原作者の Bram Moolenaar 氏● いつリリースされるかはBram氏にしかわからない● Vim のソースコードを読める人・パッチを書く人が 少ない● ただし、Vim には日本人の貢献も数多い(多言語 対応・オムニ補完)
17.
O Vim インデント● Vim はなぜかインデントの設定がやたらと多い● 標準のインデントプラグインも充実している● 自作するのも難しくはない● Emacs はインデント設定で苦労している人が多い 印象がある
18.
O Emacs フォント● Emacs は任意の位置でフォントを自由自在に変更 できる● もはやワープロのようである● Vim は等幅フォントのみ。一部フォントを変更できる が制限が多い● Web ブラウザやプレゼンテーションツールを実現す るには必須の機能● プログラマ用のエディタとして考えると必須機能で はない
19.
O Vim パフォーマンス● Vim が(ある程度)拡張性を犠牲にしても、組み込 み機能を重視する理由● ほとんどの機能が組み込みなので組み込み機能は 圧倒的なパフォーマンスを誇る● 単純なエディタとしてみた場合、速度はとても重要● ただし、 Vim script の実行速度が高速なわけでは ない