txtfmtテキスト装飾プラグイン #3 落ち穂拾い、各機能詳細
このページでは、ここまで紹介していないtxtfmtプラグイン機能の詳細や、 個別の機能のオプションなどを説明します。 (Windows, Mac)
概要
txtfmt : Syntax/Filetype plugin for formatting plain text
http://www.vim.org/scripts/script.php?script_id=2208
このページでは、ここまで紹介していないtxtfmtプラグイン機能の詳細や、 個別の機能のオプションなどを説明します。
ファイルタイプの設定
txtfmtプラグインは、ファイルタイプtxtfmtの時に動作します。
通常、txtfmtプラグインの機能を使用したい対象のファイルは、
そのままではtxtfmtファイルタイプのファイルではないでしょうから、
ファイルタイプをtxtfmtに変更する必要があると思います。
ファイルタイプをtxtfmtに変更するには、
- :set filetypeコマンドでファイルタイプを設定する
- モードラインでファイルごとに、ファイルタイプを設定する
- :autocmdコマンドを使用して、ファイルタイプを設定する
といった方法があります。
:set filetypeコマンドでファイルタイプを設定する
「set filetype」コマンドを実行して、ファイルタイプを「txtfmt」に変更します。
この方法では、ファイルを開くたびにコマンドを実行する必要があります。
:set filetype=txtfmt
txtfmtプラグインは、たいてい、他のファイルタイプと同時に使用することになるので、
実際には、例えば、次のようにコマンドを実行することになります。
" perlファイルタイプとtxtfmtファイルタイプを設定 :set filetype=perl.txtfmt
モードラインでファイルごとに、ファイルタイプを設定する
モードラインを利用して、ファイルにファイルタイプの設定を埋め込みます。
ファイル別にtxtfmtファイルタイプを使うか使わないかを指定できます。
この方法では、ファイルを再度開いても設定は残りますが、ファイルにモードラインを埋め込む必要があります。
モードラインの設定方法については、記事を書いてあるので、そちらを参照してください。
モードラインを使って、ファイルごとにvimエディタのオプションを指定する。
モードラインを使用してファイルタイプを設定する場合は、
# vim:set ft=perl.txtfmt :
のようなコードをファイルの上端か、下端に埋め込むことになります。
:autocmdコマンドを使用して、ファイルタイプを設定する
設定ファイルでtxtfmtファイルタイプを使用するように設定してしまう方法です。
この方法は、ファイルの拡張子などで、txtfmtファイルタイプを使用するかしないかを指定できます。
Vimエディタの設定ファイルか、
設定ファイルディレクトリに用意した「filetype.vim」ファイルに、次のような設定を書きます。
" 拡張子plのファイルをperl、txtfmtファイルタイプで開く :autcmd! BufRead,BufNewFile *.pl setfiletype perl.txtfmt
txtfmtプラグインのプロンプトの呼び出し
txtfmtテキスト装飾プラグイン #1 インストールから簡単な使い方まで では「\i」と入力して txtfmtプラグインのプロンプトを呼び出すと説明していますが、実際には、 「\i」の他にもプロンプトを呼び出すキーマッピングは用意されていました。 下表が、その用意されているキーマップの一覧です。
コマンド | プロンプト実行後ステータス | 説明 |
---|---|---|
<LocalLeader>i | 入力モード | カーソル左の位置にマーカー文字列を挿入する。 |
<LocalLeader>I | 入力モード | 行の先頭位置にマーカー文字列を挿入する。 |
<LocalLeader>a | 入力モード | カーソル右の位置にマーカー文字列を挿入する。 |
<LocalLeader>A | 入力モード | 行末にマーカー文字列を挿入する。 |
<LocalLeader>o | 入力モード | カーソル行の下の行にマーカー文字列を挿入する。 |
<LocalLeader>O | 入力モード | カーソル行の上の行にマーカー文字列を挿入する。 |
<LocalLeader>s | 入力モード | テキスト削除後、マーカー文字列を挿入する。 |
↑上表のキーマッピングを実行すると、プロンプト実行後に入力モードになります。
↓下表のキーマッピングはプロンプト実行後、ノーマルモードに戻ります。
上下の表で、対応するコマンドが用意されているのがわかるでしょうか。
コマンド | プロンプト実行後ステータス | 説明 |
---|---|---|
<LocalLeader>vi | ノーマルモード | カーソル左の位置にマーカー文字列を挿入する。 |
<LocalLeader>vI | ノーマルモード | 行の先頭位置にマーカー文字列を挿入する。 |
<LocalLeader>va | ノーマルモード | カーソル右の位置にマーカー文字列を挿入する。 |
<LocalLeader>vA | ノーマルモード | 行末にマーカー文字列を挿入する。 |
<LocalLeader>vo | ノーマルモード | カーソル行の下の行にマーカー文字列を挿入する。 |
<LocalLeader>vO | ノーマルモード | カーソル行の上の行にマーカー文字列を挿入する。 |
<LocalLeader>vs | ノーマルモード | テキスト削除後、マーカー文字列を挿入する。 |
Note
<LocalLeader> は何か特別な設定を行っていなければ、「\」になります。
つまり、 <LocalLeader>a であれば、 \a と入力してください。
txtfmtプラグインで指定できるフォーマット
txtfmtプラグインで指定できるテキストフォーマットは下表の通りです。
txtfmtプラグインのプロンプトを使用してマーカー文字列を挿入すると、
マーカー文字列以降のテキストが指定したフォーマットに変更されます。
入力コード | フォーマット | 説明 | 備考 |
---|---|---|---|
fu | underline | アンダーライン | デフォルトで使用可能。 |
fb | bold | ボールド | デフォルトで使用可能。 |
fi | italic | イタリック | デフォルトで使用可能。 |
f- | - | フォーマットを無効にする | デフォルトで使用可能。 |
txtfmtプラグインで指定できるカラー
下表がtxtfmtプラグインで指定できる文字描画色の一覧です。
Txtfmtプラグインのプロンプトで下表のコードを入力しマーカー文字列を埋め込むと、
マーカー文字列以降のテキストが入力したコードに対応する色に変化します。
入力コード | 設定される色 | 説明 |
---|---|---|
ck | Black | ブラック |
cbla[ck] | Black | ブラック |
cb[lue] | DarkBlue | ブルー |
cg[reen] | DarkGreen | グリーン |
ct[urquoise] | LightGreen | ライトグリーン |
cr[ed] | DarkRed | レッド |
cv[iolet] | DarkMagenta | マゼンダ |
cy[ellow] | DarkYellow | イエロー |
cw[hite] | White | ホワイト |
c- | - | 色設定を無効にする |
Note
表中で、 "[" と "]" に囲まれた範囲のコードは省略できます。
例えば、 "cr[ed]" の場合は、 "cr" と入力しても動作します。
トークンへのジャンプコマンド
マーカー文字列を埋め込んだ場所までカーソルを移動するコマンドが用意されています。
コマンドの書式は次の通りです。
{移動する方向} [{移動する距離}] {マーカー文字列の種類}
このコマンドは、移動する方向を示すキーワード、移動する距離を示すキーワード、 マーカー文字列の種類を示すキーワードを組み合わせ、
" 次のマーカー文字列まで移動。 ]a " 次のフォーマット指定のマーカー文字列まで移動。 ]f " 次のtxtfmtプラグインのテキスト装飾エリアの最後の位置まで移動。 ]ef " 前方のカラー指定のマーカー文字列まで移動。 [c
のように実行します。
移動コマンドとして使える各命令の詳細は以下の通りです。
キーワード | 説明 |
---|---|
] | 後方(↓) |
[ | 前方(↑) |
キーワード | 説明 |
---|---|
未指定にした場合。マーカー文字列の位置まで移動。 | |
t | マーカー文字列の前の位置まで移動。 |
b | txtfmtプラグインのテキスト装飾エリアの先頭位置まで移動。 |
e | txtfmtプラグインのテキスト装飾エリアの末尾位置まで移動。 |
キーワード | 説明 |
---|---|
a | txtfmtプラグインのマーカー文字列 |
f | フォーマット設定のマーカー文字列 |
c | カラー設定のマーカー文字列 |
その他のコマンド
:MakeTestPage
「:MakeTestPage」コマンドを実行すると、txtfmtプラグインの用意するテキスト装飾の一覧と、
現在の設定状況を確認できる専用ページを表示します。
:MakeTestPage
Recent Comments
ありがとうございます!
http://nanasi.jp/articles/howto/editing/visualcursor-endtoend.html · 7 years ago
知りませんでした。有難うございました。
http://nanasi.jp/articles/howto/file/open-with-format.html · 9 years ago
<c-f>1ページ分、下にスクロールする<c-b>1ページ分、上にスクロールする
どっちも逆です。
http://nanasi.jp/articles/howto/user-manual/user-manual-motion.html · 10 years ago
set 使用時に : で閉じるのを忘れて右往左往してました。
http://nanasi.jp/articles/howto/file/modeline.html · 11 years ago
やっぱり日本語の方が早いっす。
http://nanasi.jp/articles/howto/help/help_ja.html · 12 years ago