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

incsearch.vim を使いたい

$
0
0

incsearch.vimを使いたいと思っているけれど、標準のインクリメンタルサーチの場合にできていることを同様に実現する方法がわかっていないので移行できていない。

実現方法がわからないのは、下記のようなこと。

検索結果を置換用に流用

インクリメンタルサーチを実行中に <C-t> で検索文字列を置換用に流用している。

" https://raw.githubusercontent.com/cohama/.vim/master/.vimrc" / と :s///g をトグルする {{{
cnoremap <expr><C-t> ToggleSubstituteSearch(getcmdtype(), getcmdline())function! ToggleSubstituteSearch(type, line)ifa:type ==# '/'||a:type ==# '?'let range = GetOnetime('s:range','%')return"\<End>\<C-U>\<BS>" . substitute(a:line,'^\(.*\)',':' . range . 's/\1','')elseifa:type ==# ':'letg:line =a:line
    let [s:range, expr] = matchlist(a:line,'^\(.*\)s\%[ubstitute]\/\(.*\)$')[1:2]
    ifs:range ==# '''<,''>'call setpos('.', getpos('''<'))endifreturn"\<End>\<C-U>\<BS>" . '/' . expr
  endifendfunctionfunction! GetOnetime(varname, defaultValue)if!exists(a:varname)returna:defaultValue
  endiflet varValue = eval(a:varname)
  execute 'unlet ' . a:varname
  return varValue
endfunction" }}}

クリップボードからの貼付け

/ 押下後にクリップボードから貼り付けてインクリメンタルサーチに使っている


Viewing all articles
Browse latest Browse all 5608

Trending Articles



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