パーソナルツール

scratch utility : 自由に開閉できる作業用バッファ管理プラグイン

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

「scratch utility」はスクラッチバッファを作成するプラグインです。 このプラグインで作成したスクラッチバッファは、 vimエディタを終了するまでは何度でも開き直せるので、手軽な作業用領域として利用できます。 (Windows)

概要

scratch utility : A simple utility to create scratch buffers
http://www.vim.org/script.php?script_id=389

「scratch utility」はスクラッチバッファを作成するプラグインです。
このプラグインで作成したスクラッチバッファは、
vimエディタを終了するまでは何度でも開き直せるので、手軽な作業用領域として利用できます。

スクラッチバッファを閉じる、開く

インストール方法

vim online からスクリプトをダウンロードし、
ユーザ設定ファイルディレクトリの「plugin」ディレクトリにコピーしてください。

" Windows環境の場合のインストールディレクトリ
$HOME/vimfiles/plugin/

" Mac OSX環境の場合のインストールディレクトリ
$HOME/.vim/plugin/
ファイル URL
scratch.vim http://www.vim.org/script.php?script_id=389

使用方法

マッピングからスクラッチバッファを開く

スクラッチバッファを開くには「F8」キーを押します。 開いたスクラッチバッファを閉じるには、再度「F8」キーを押してください。
「F8」キーは、ノーマルモード、入力モード、どちらかのモードで入力を受け付けます。

<F8>
スクラッチバッファを閉じる、開く

コマンドからスクラッチバッファを開く

「F8」キーの代わりに次のコマンドを実行しても、スクラッチバッファを開閉できます。

:Scratch

Note

「:Scratch」コマンドと同じ名前のコマンドが cmdex.vim で定義されているので、
Kaoriya版vimエディタを使用している場合は、「:Scratch」コマンドを実行すると、 cmdex.vim が用意するスクラッチバッファが開かれます。
cmdex.vim の「:Scratch」コマンドが読み込まれた場合も、「F8」キーのマッピングは使用できます。

参考: cmdex.vim : Kaoriyaパッチ ユーティリティコマンド集

プラグインの設定

マッピングを変更する

スクラッチバッファを開閉するためのキーのマッピングを「F8」から、他のキーに変更するには、 次の例のようにvimエディタの設定ファイルに記述してください。
設定例では「F11」キーをスクラッチバッファを開くためのキーとして定義しています。
この設定を行うと、スクラッチバッファを開く「F8」キーのマッピングが設定されなくなります。

:nmap <unique> <silent> <F11> <Plug>ShowScratchBuffer
:imap <unique> <silent> <F11> <Plug>InsShowScratchBuffer

マッピングを設定しない

スクラッチバッファを開閉するキーをマッピングしたくない場合は、 次の設定をvimエディタの設定ファイルで記述してください。
この場合、スクラッチバッファを開く時、「:Scratch」コマンドを使用することになります。

" スクラッチバッファを開くマッピングを定義しない
:let no_plugin_maps = 1

終了時、バックアップファイルにスクラッチバッファを書き出す

スクラッチバッファに書き込んだテキストは、vimエディタ終了時に消えてしまいます。
万が一の時のための保険を取りたいのなら、 「g:scratchBackupFile」変数にバックアップ先のファイルのパスを設定しておくと、 vimエディタ終了時にスクラッチバッファのテキストをファイルに出力します。
もし、スクラッチバッファに大事な事柄を記述したままvimエディタを終了したとしても、 バックアップファイルから復元できます。

" 例1. ホームディレクトリのscratch.txtにバックアップする
:let g:scratchBackupFile=$HOME . "/scratch.txt"

" 例2. /tmp/scratch.txtにバックアップする
:let g:scratchBackupFile="/tmp/scratch.txt"

注意事項など

スクラッチバッファでもシンタックスハイライトを有効に

もしかしたら、スクラッチバッファでは、vimエディタのシンタックスハイライトは 利かないと考えている人がいるかもしれません。
しかし、自力でファイルタイプをセットしたり、

" ファイルタイプに「perl」をセット
:set filetype=perl

「:filetype detect」コマンドを実行すれば、 スクラッチバッファでもシンタックスハイライトを有効にできます。

" ファイルタイプを判定
:filetype detect
スクラッチバッファでシンタックスハイライトを有効に

スクラッチバッファにはファイル名が無いので (ファイル名からファイルタイプを判別できないので)、
「:filetype detect」コマンドを使用したファイルタイプの判別は、 テキストの内容からファイルタイプが特定できる場合か、
モードラインが定義されている場合に可能です。

参考: モードラインを使って、ファイルごとにvimエディタのオプションを指定する。

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