【问题标题】:Vim netrw_list_hide doesn't behave like a normal regexpVim netrw_list_hide 不像普通的正则表达式
【发布时间】:2022-04-10 22:29:12
【问题描述】:

我试图通过设置在 Vim 的 Netrw 中隐藏 Python 的 __pycache__ 目录:

:let g:netrw_list_hide = '^__pycache__$'

这个变量的值应该是一个正则表达式,但上面的模式并没有隐藏__pycache__ 目录。将其设置为更简单:

:let g:netrw_list_hide = '__pycache__'

确实有效,但它会过度匹配到任何包含此子字符串的任何路径,因此例如 __pycache__foo 也会被忽略。

知道为什么第一个匹配模式不起作用吗?

【问题讨论】:

  • 检查可能影响功能的其他选项。尝试注释掉let g:netrw_liststyle = 1 行(如果有的话)。
  • @WiktorStribiżew:我试过了,似乎没有任何效果。

标签: regex vim netrw


【解决方案1】:

试试 :let g:netrw_list_hide = '__pycache__/'

【讨论】:

    【解决方案2】:

    您可以使用netrw_gitignore#Hide() 函数,该函数将隐藏 .gitignore 文件中的所有文件。

    这是我在 vimrc 中使用 g:netrw_list_hide 的函数的方法。

     let g:netrw_list_hide = netrw_gitignore#Hide()
    

    您可能需要重新加载您的 vim 或获取您的配置才能使其正常工作。

    有关netrw_list_hidenetrw_gitignore 的更多信息,只需输入

    :h netrw_list_hide:h netrw_gitignore

    在vim命令行模式下看手册

    干杯

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多