グラフィカルなポジション表示プラギン graphical-position.js (for Vimperator) 書いた

はじめに

簡単に言うと Vimperator で現在の垂直スクロール位置を表示するデフォルトの設定である

set status=position

のテキストではなくて円グラフで表示する版.名前は graphical な position ということで gposition とした.

position と gposition の対応表

位置 position と gposition の
実際の表示
0%
69%
100%
(Loading *1 )
Google トップのように
一ページ内に収まってるケース

分かりにくいけど,一番右の円っぽい図形(だけ)が gposition 担当.

設定,または set noscrollbars ノススメ

graphical-position.js

上記ファイルを plugin フォルダに置くだけで有効になる.

内部で set status+=gposition 相当の処理をしているので,.vimperatorrc 内で設定する必要はない.がしかし,ステータスバーの並び順を気にする場合は以下のようにプラグイン有効後に設定すればよい.

autocmd VimperatorEnter ".*" set status=input,location,bookmark,history,tabcount,gposition,ssl

また,これを機にスクロールバーを非表示にすべく set noscrollbars を設定してもいいかもしれない.ちなみに私はこのプラギンを作ってから思い切ってスクロールバーを非表示にして使ってるが,特に支障は出ていない.

あとがき

言葉で表現するのは難しいけどスクロールバーはあの可動部分の長さで全体のスクロール量を表現しているんだけど,これを gposition で実装すべきかどうかは迷った.けどとりあえず今回はシンプルに position と同等の機能をグラフィカルに置き換えるのみに留めた.

あと gposition の表示色をユーザーが自由に CSS で変更できる機能は,現在実装中・・・.

*1:positionには該当する表示は実装されていないけど,gposition では適当な図形をアニメーションしている