パーソナルツール

Visual Mark : 行をハイライト表示して、後でその行に移動できるスクリプト

— カテゴリ:
作者: 小見 拓 最終変更 2012年01月10日 02時12分

visualmark.vimは指定した行をハイライト表示する機能と、 ハイライトした行に移動する機能を提供するマーカースクリプトです。 機能としてはマークした場所を目立つように表示する「ShowMarks」に似ています。 (Windows, Mac)

概要

Visual Mark : Visual mark, similar to UltraEdit's bookmark
http://www.vim.org/scripts/script.php?script_id=1026

visualmark.vimは指定した行をハイライト表示する機能と、
ハイライトした行に移動する機能を提供するマーカースクリプトです。
機能としてはマークした場所を目立つように表示する「 ShowMarks 」に似ています。

インストール方法

vim onlineで配布している visualmark.vimスクリプトの修正版 を用意してあるので、
このスクリプトをダウンロードし、pluginディレクトリにコピーしてください。

ファイル URL
オリジナル版 http://www.vim.org/scripts/script.php?script_id=1026
名無しのvim使い修正版 https://github.com/taku-o/downloads/raw/master/visualmark.vim

使用方法

visualmark.vimスクリプトには、大きく2種類の機能があります。
ひとつが行をハイライト表示する機能、行のハイライトを取り消す機能で、
もうひとつがハイライトした行への移動機能です。

行のハイライト表示、ハイライト表示取消

デフォルトでは、ノーマルモードで「Control-F2」を押下すると、カーソルのある行をハイライト表示します。
このハイライト表示を消すには、ハイライトされた行にカーソルを移動し、「Control-F2」を押します。

カーソル行をハイライト表示、ハイライト表示取消する
<C-F2>

つまり、「Control-F2」を押すたびに、行のハイライト表示、ハイライト表示取消で切り替えられます。

行のハイライト表示

Note

名無しのvim使い修正版visualmark.vim は、MacOSX環境では、
「コマンドキー + F2」でハイライトの切り替えができるように修正してあります。
「Control-F2」がMac OSX環境ではメニューバー選択に割り当てられているためです。

ハイライトした行への移動

「Control-F2」でハイライト表示しておいた行へは「F2」キーでカーソルを移動できます。
また、「Shift-F2」で逆方向に移動できます。

コマンド 説明
<F2> 順方向にハイライトした行に移動。
<S-F2> 逆方向にハイライトした行に移動。
ハイライト位置へのカーソルの移動

「F2」によるカーソル移動は、編集中のファイル内のみ移動できます。

設定

行をハイライトするキー、ハイライトした行に移動するキーといった、
スクリプトの機能を呼び出すキーをvimエディタの設定ファイルで変更できます。

ハイライトするキー、ハイライトを取り消すキーを変更する

行をハイライトするキーを「F2」から他のキーに変更する場合は、
次のようにvimエディタの設定ファイルで定義してください。

" 例。行をハイライトするキーを「Control-F3」に変更。
:map <unique> <C-F3> <Plug>Vm_toggle_sign
:map <silent> <unique> mm <Plug>Vm_toggle_sign

ハイライトした行へのカーソル移動キーを変更する

ハイライト行へのカーソルの移動キーも同じく変更できます。
変更するには、次の例のようにvimエディタの設定ファイルで設定します。

" 例。順方向にハイライトされた行に移動するキーを「F3」に変更。
:map <unique> <F3> <Plug>Vm_goto_next_sign

" 例。逆方向にハイライトされた行に移動するキーを「Control-F3」に変更。
:map <unique> <S-F3> <Plug>Vm_goto_prev_sign

注意事項など

スクリプトを使用するのに必要なコンパイルオプション

visualmark.vimスクリプトを使用するには「+signs」オプション付きで、 vimエディタがコンパイルされている必要があります。
使用しているvimエディタのコンパイルオプションを確認するには、 次のコマンドを実行してください。

:version

:signコマンド

「F2」によるカーソル移動は編集ファイル内での移動限定ですが、
visualmark.vimスクリプトの機能は「:sign」コマンドの機能で実現されているため、
次のようにすれば、別ファイルのハイライト行へも移動できます。

" まず、サインの一覧を表示。
:sign place
定義されたサインの表示
" 次のコマンドを実行し、サインの位置に移動。
:sign jump {識別子} buffer={バッファ番号}

しかし、コマンドが非常に面倒なうえ、 「m」コマンドで似たような機能を容易に実現できるので、
無理して覚える必要はありません。

:help mark
ドキュメントアクション
コメント
blog comments powered by Disqus