Skip to content

Instantly share code, notes, and snippets.

@Dubhead
Created November 24, 2010 09:29
Show Gist options
  • Save Dubhead/713395 to your computer and use it in GitHub Desktop.
Save Dubhead/713395 to your computer and use it in GitHub Desktop.
Vimで ( や ) を全然使わないので、「開き括弧へ移動する」という動作に割り当ててみた。
function! SearchOpenParenForward()
let l:_ = search("\\((\\|\\[\\|{\\|<\\|「\\|『\\)\\zs")
endfunction
function! SearchOpenParenBackward()
let l:_ = search("\\((\\|\\[\\|{\\|<\\|「\\|『\\)\\zs", 'b')
endfunction
noremap <silent> ) :call SearchOpenParenForward()<CR>
noremap <silent> ( :call SearchOpenParenBackward()<CR>
@tyru
Copy link

tyru commented Nov 24, 2010

let l:_ = search("\\((\\|\\[\\|{\\|<\\|「\\|『\\)\\zs")

これは

call search("\\((\\|\\[\\|{\\|<\\|「\\|『\\)\\zs")

がやりたかったことでしょうか?

あとfork先でいろいろ変更したので、見てみてください。

  • noremapだとnormal mode, operator-pending mode, visual mode全部マッピングしてしまうので、normal modeのみにした
  • して3)とかcountを与えられた場合にエラー出ないようにした
  • 関数を作らずいっそ直にcall search()してみた

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment