正直:ls
は使いづらくて…
使いづらいってほどじゃないんだけど、コマンド実行後の画面専有があまり嬉しくないので定期的にふっ飛ばしたくなりつつも、あると便利なのも本音なのでうまいこと調節してやりたいんですよね。それは:oldfiles
も一緒で…でもいちいち:filter
もめんどくさい。
ということはスクリプトですよね?
SCRIPT OR DIE!!!!!!!!!
command.vim
" :lsと:oldfilesのフィルタリング用function!s:loadList(...) abort
ifa:0!=1letl:query ='/'.a:2.'/ 'elseletl:query ='// 'endif
exec 'filter '.l:query.a:1endfunction
command!-nargs=? RRoldfiles calls:loadList('oldfiles',<f-args>)
command!-nargs=? BBls calls:loadList('ls',<f-args>)
noremap <Leader>rr :RRoldfiles
noremap <Leader>bb :BBls
これでリーダーから省略で入力してもその状態からフィルタリングして出力の量が減らしやすくなりました。さておき、それでも多いときは多いし出来ればコマンドの出力結果自体を画面の半分くらいにしてほしいんだけど、どっか設定できる所あるんですかね?おしえてvimmer!
間違えて何度ウィンドウ閉じたことか…
編集ウィンドウが一つしかない時によく間違えて:q
してしまうので…
command.com
function!s:chkQuit() abort
if winnr() * tabpagenr()>1:quit
else:enewendifendfunction
command!-bang CQ :calls:chkQuit('')
nnoremap q:CQ
:q
に対して引数ないので簡単だったけどこれ:wq
に対してはちょっと調べないと出来る気がせんやつだなーってなってます。そんなに考えることなさそうなんでちょっとやってみますか…