Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

スクリプトでちょっと足回り強化

$
0
0

正直: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に対してはちょっと調べないと出来る気がせんやつだなーってなってます。そんなに考えることなさそうなんでちょっとやってみますか…


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>