段落のない単純なリストであるテキスト ファイルがあります。アイテムに集中したいときは、Vim Wikia のおかげで、検索に一致するものを除いてすべてを折りたたむことができます (ヒント 282 :"単純な折りたたみ"):
:set foldexpr=getline(v:lnum)!~@/
:nnoremap <F8> :set foldmethod=expr<CR><Bar>zM
これは有用であることが証明されています。したがって、探しているアイテムを非常にはっきりと見ることができます。それらは黒の背景に白で表示されますが、折り目はグレー (ctermbg) にダークグレー (ctermfg) です。
しかし、マイナーな不具合があります。パターンを含む 2 つの行の間に、パターンを含まない単一の行が残ることがあります (実際、よく起こります)。たとえば、次のようになります。
1 pattern
2 not pattern
3 not pattern
4 pattern
5 not pattern
6 pattern
シンプルな折り畳みは、5 行目ではなく、2 行目と 3 行目を折り畳みます。
この1行を非表示にするにはどうすればよいですか?
ゼロ ラインを折りたたむ方法はありますか (これは、片手拍手に関する公案を思い起こさせます…) ? これはありえないと思います。
では、関数を使用して線を単純に非表示にする方法はありますか (たとえば、折り目と同じハイライトを使用)?