Viプラグイン


インストール

配布サイトから、モジュールを取得してpluginディレクトリに配置します.

注意

結構、頻繁にバージョンアップしてます。
新しいバージョンを入れる場合は、旧バージョンの削除をお忘れなく。

アンインストール

無効にしたいものがフィーチャーになっているなら、「インストール/更新」パースペクティブでそのフィーチャーを選択して「すぐに使用不可にする」をクリックします。

そうでなければ、Eclipseを起動していない状態で、Eclipseの plugins ディレクトリから、放り込んだプラグインを削除すればOKです。Escaped とかいうディレクトリを作って移動するだけでもOKです。

設定はそのまま残っており、プラグインを復活させたら設定は復活します。設定自体は workspace/.metadata/plugins に格納されていることがおおいので、こいつを削除すればデフォルト設定に戻すことができます。

Usage.txt

Description:

viPlugin is an Eclipse based plugin for adding vi(m) functionality to an open editor. Since 0.1.1 it contains a viEditor that can be associated with a file-extension in the workbench preferences (so that the plugin doesn't need to be loaded for that extension). The viEditor has no additional JDT, CDT functionality!

How to start:

viPlugin: Right click the toolbar and set "Other->viPlugin" visible. Now just click on the vi Action in the Toolbar (or the menu) and the viPlugin is loaded. As long as the plugin is loaded all editors that are an instance of ITextEditor? are using the viLayer. By clicking the icon again the viPlugin is unloaded.

viEditor: Set the preferred editor in the preferences of the Workbench to ViEditor? and open a file of that type.

Following is a short description of implemented commands. For more information have a look at the vim documentation at http://www.vim.org.

Commands that are different from vim:

Z used instead of CTRL-R (redo)

Commands:

ESCインサートモードと編集モードの切り替え
i,a,I,Aインサートモードの開始
sカレントの1文字を削除して、インサートモードへ
oカレント行の下に新しい行を挿入
Oカレント行の上に新しい行を挿入
$行末へ移動
0行頭へ移動
yy現在行をコピー
y選択範囲をコピー(yank)
pコピーした内容をペースト
dd現在行の削除
dk,d↑カレント行を削除して、上の行へ移動
dj,d↓カレント行を削除して、下の行へ移動
dw一単語を削除
d$現在位置から行末まで削除
d0現在位置から行頭まで削除
cc,S現在行を削除して、インサートモードへ
cw現在のワードを編集
c$現在位置から行末までを編集
c0現在位置から行頭までを編集
gg先頭行へ移動
G最終行へ移動
nG指定した行番号(n)へ移動
/xxxキーワード検索
*カーソル位置のワードをキーワードにして検索
#カーソル位置のワードをキーワードにして検索(逆方向)
n次検索
N前検索
xカーソル位置の一文字を削除
:wファイルの保存
:wqファイルを保存して終了
:q現在使用中のエディタを閉じる
:nn行にジャンプ
hjklカーソル移動
wワード移動(前)
bワード移動(後)
qQページ移動
J次行(除く空行)を結合
.直前のコマンドを実行

BUGS.txt

KNOWN BUGS ==========

  • 'w' command throws exception on lineend (probably last changes from Brian!)
  • 'b' and 'w' should not jump over e.g. "aa/bb"

ChangeLog?.txt

2004-04-13

	<Michael Bartl>
	* some refactoring done
	* fixed '.' repetition for delete commands
	* fixed horizonal scrolling bug #900339

2004-04-07

	<Michael Bartl>
	* cleaned up MatchBrace
	* fixed bug #859066

2004-04-06

	<Michael Bartl>
	* added MatchBrace Testcase showing bug #859066

2004-04-05

	<Michael Bartl>
	* cleaning up Search implementation
	* started working on bug #859066 (infinite recursion in MatchBrace)

2004-03-01

	<Luke deGruchy>
	* fixed bug #819741: search/replace infinite loop

2004-02-25

	<Ben Damm>
	* renamed getCarretPosition to getCaretPosition

TODO.txt

TODO ====

Features:

  • B, W commands
  • multiple register/buffer handling
  • macros
  • visual mode (linewise, blockwise)
  • ranged commands
  • replace mode
  • using vim configuration file

Design improvements:

  • replace CommandBuffer?'s conditions with classes of type Command
  • TextModificatorTest? was disabled due to the VisualMode? related refactoring
     (create new Commands tests)