scratch utility : 自由に開閉できる作業用バッファ管理プラグイン
「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
プラグインの設定
マッピングを変更する
スクラッチバッファを開閉するためのキーのマッピングを「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」コマンドを使用したファイルタイプの判別は、
テキストの内容からファイルタイプが特定できる場合か、
モードラインが定義されている場合に可能です。