Hack #181: Vimで使い捨てのファイルを作成する
Posted at 2010/11/03ツイート
ちょっとしたメモを取ったりしたいとき、いちいちファイル名を付けていられません。ここでは簡単に使い捨てのファイルを作成する方法について検討をします。
:enewを使う
まず考えられるのが、:enew
コマンドを用いることです。何も特別な設定はいらず、任意のキーにマッピングをしておけば、便利に使えるのですが、バッファを切り換えてしまったときに内容が失われてしまうという欠点があります。これのおかげでよく事故が起こったため、私は使用していません。
scratch.vimを使う
次に考えられるのは、kanaさんの作成したscratch.vimを用いることです。 これはEmacsライクなscratchバッファをVim上に実装したものです。しかしfiletypeがvimに固定されてしまうため、Vim scriptの実験には良いのですが、ちょっとしたスクリプトを書くのには向きません。
howmを使う
howm-mode.vimを用いるという手もあります。ただし、これはメモ書き専用なので、スクリプトを書くのには向きません。
:JunkFileを用いる
私は次の:JunkFile
コマンドを使っています。このコマンドを実行すると、~/.vim_junk
ディレクトリに日付の名前が付いたファイルを自動生成します。
ファイルには拡張子を与えることができるので、使い捨てのスクリプトを書く際にも有用です。もちろん、:setfiletype
を用いて手動でfiletypeを設定することもできます。thincaさんの作成したquickrunを用いれば、スクリプトの実行も簡単です。ファイルは保存されているので、ちょっとしたメモ書きにも使えます。
私はunite.vimのfile_mru
で以前のメモを参照する、ということをよくやります。何かのキーにマッピングしておくと良いでしょう。
" Open junk file."{{{
command! -nargs=0 JunkFile call s:open_junk_file()
function! s:open_junk_file()
let l:junk_dir = $HOME . '/.vim_junk'. strftime('/%Y/%m')
if !isdirectory(l:junk_dir)
call mkdir(l:junk_dir, 'p')
endif
let l:filename = input('Junk Code: ', l:junk_dir.strftime('/%Y-%m-%d-%H%M%S.'))
if l:filename != ''
execute 'edit ' . l:filename
endif
endfunction"}}}
このスクリプトはるびきちさんのopen-junk-file.elにインスパイアされました。
Shougoもどる
blog comments powered by Disqus