パーソナルツール

Vimエディタで線を描画する

作者: 小見 拓 最終変更 2012年01月08日 11時58分

この記事では、構造化テキストや、メモの見出し項目、あるいは図を描画する際に多用することの多い、 ライン、線の描画方法を紹介します。 (Windows, Mac)

概要

この記事では、構造化テキストや、メモの見出し項目、あるいは図を描画する際に多用することの多い、
ライン、線の描画方法を紹介します。

ここでいうラインとは、下図の例で言えば、「概要」という文字の上下に引かれた直線の事です。
この例では、1本のラインは60個の「=」で構成されています。
このラインを描画する方法を説明します。

============================================================
概要
============================================================

繰り返しを利用して線を引く

もっとも単純で手軽な方法です。手早く、一定の長さのラインを描画できます。

まず、ノーマルモードでラインの長さの数値を入力した後、 i を入力します。
今回の場合は、 60i と入力することになります。

60i

すると、入力モードに入るので、
次に、描画する線を構成する文字を入力します。
今回の例の場合はラインは「=」で構成されているので、 = と入力します。

=

そこまで作業したら、 ESC キーを押下して、入力モードを抜けてください。 60個の「=」で構成されるラインは描画できましたか?
うまくいけば、次のように描画されます。

============================================================

リプレースモードを利用して線を引く

ビジュアルモードでラインを引きたい範囲を選択して、 r キーで、選択範囲文字を置換する方法。
この方法は、線の引かれる範囲、挙動、やり方がとても分かりやすいのが利点です。

v キーを押下してビジュアルモードになり、線を引きたい範囲を選択してから、

                                                            
概要(この上に線を引く)

r キーを押下してリプレースモードに入り、
置換文字として線を構成する文字、この場合は、 = と入力します。

r=

うまくいけば、次のように描画されます。

============================================================
概要(この上に線を引く)

virtualeditオプション

リプレースモードを利用する方法では、線を引く範囲をビジュアルモードで選択する必要があるので、
あらかじめVimエディタの設定ファイルで、「virtualedit」オプションに「block」か、「all」を設定しておくと便利です。

「virtualedit」オプションに「block」や「all」を設定しておくと、
文字の無いところにカーソルを移動できるようになるので、線を引く範囲を指定しやすくなります。

" 設定例
" ビジュアルモードの矩形選択時に仮想編集できるようにする。
:set virtualedit+=block

" いくつかのモードで仮想編集できるようにする。
:set virtualedit+=all

Note

ノーマルモードで Control-v と押下すると
ビジュアルモードで矩形選択できます。

virtualeditオプションの設定
設定 説明
block ビジュアルモードの矩形選択時に文字の無いところまで選択範囲を広げられる。
all いくつかのモード(ノーマル、入力、ビジュアルなど)で、文字の無いところにカーソルを移動できるようになる。

Note

virtualeditオプションの詳細については、Vimエディタのヘルプを参照してください。

:help virtualedit

プラグインを利用して線を引く

「DrawIt!」のような、描画用のVimエディタプラグインもあります。
参考: DrawIt!
http://www.vim.org/scripts/script.php?script_id=40

描画用のプラグインをインストールすると、線を引く機能以外にも機能があるので、なかなかお得です。

DrawIt!プラグインの使い方 その1(カーソル移動による線の描画)

DrawIt!の使い方を簡単に説明します。

  1. \di を入力して、DrawIt!の描画を開始します。
  2. DrawIt!プラグインの描画を開始した後で、 キーを押下してカーソルを移動すると、カーソルの通った位置に線が描画されます。
  3. DrawIt!による描画を停止するには、 \ds と入力してください。

また、DrawIt!による描画中に Space キーで、カーソル移動で線の描画、カーソル移動で消去、と機能を切り替えられます。

DrawIt!プラグインの使い方 その2(選択範囲への線の描画)

  1. その1の方法の時と同じく、最初に \di を入力して、DrawIt!の描画を開始します。
  2. Control-v をビジュアルモードの矩形選択を開始します。
  3. 線を描画する範囲をビジュアルモードで選択する。
                                                            
概要(この上に線を引く)
  1. \l を押下する。
  2. 選択範囲に線が描画されます。
____________________________________________________________
概要(この上に線を引く)

Note

DrawIt! には、他にも機能があります。
詳しくは、DrawIt! プラグインのドキュメントを参照してください。

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