これは私がドキュメントから得たものです。\zs
前の正規表現\@<=
に一致した後に「強調表示された部分を開始」し、前のアトムに一致した後に「強調表示された部分を開始」します。しかし、私はこれの微妙さを正確に理解していないので、誰がそれらが少し深く異なっているかを誰かが説明できますか?
これが私を不思議に思った理由です。
/\_s\zsnnoremap
つまり、nnoremap
先頭にスペースまたは行頭(つまり、前の行からの改行、つまり\_
前のs
)を選択し、実行gn
してビジュアルモードに入り、何らかの理由で最初の列のみ(つまり、最初の列(つまり最初の内は)選択されている-全体という事実にもかかわらず、言葉がされて強調して点灯します。n
nnoremap
nnoremap
:hlsearch
ただし、代わりに検索を実行すると
/\_s\@<=nnoremap
を試してみてください。gn
全体nnoremap
が適切に選択されています。ここで何が起こっているのでしょうか?私は(あえて言う)いくつかのあいまいなバグを発見しましたか?
:h patterns
が、私の記憶では、正規表現は原子で構成されていることを示唆しています。