在 NERDTree gVim 中隐藏点和点点(“./”、“../”)目录

在 NERDTree gVim 中隐藏点和点点(“./”、“../”)目录

这是在 Windows 上的 gVim 中。

NERDTree 在每个目录中注册.././链接。->我以为它们可能是添加到我所有目录中的快捷方式/符号链接,但是在 Windows 文件资源管理器中我没有看到任何指向这种情况的内容。我可以按Shift+i隐藏它们,但我喜欢能够看到点文件。

我最近还安装了 mysysgit,安装后会将一些 Unix 工具添加到路径中。我在 Windows 系统上一直这样做,没有产生任何不利影响,但我以前没有使用 gVim 和 NERDTree。也许在添加 Unix 工具时,它会cd ../在 Windows 提示符中允许某些操作?在我的 Debian 系统上,NERDTree 不会这样做。

我对 Vim 和 NERDTree 还不太熟悉,而且我通常不在 Windows 中工作,所以我很迷茫。

截图 -> 截屏

为了澄清一下,我试图隐藏这些。

我尝试摆弄但let NERDTreeIgnore=[...]没有成功。

答案1

下面做了我所希望的事情let NERDTreeIgnore=['\.\.$', '\.$', '\~$']

笔记:'\~$'是一个单独的正则表达式,用于忽略 Vim 生成的“tilda-d”备份文件,例如somefile.text~

此答案复制自Goluptious 的问题中写错的答案。

答案2

Windows 的文件系统(FAT、FAT32、NTFS)在每个目录中都有目录项...,分别对应于当前目录和父目录。

来自Microsoft EFI FAT32 文件系统规范

当创建一个目录时,[...] [i]如果该目录不是根目录,则需要在该目录的前两个 32 字节目录条目(刚刚分配的群集的数据区域中的前两个 32 字节条目)中创建两个特殊条目。

第一个目录条目的 DIR_Name 设置为:
“。”

第二个将 DIR_Name 设置为:
“.. ”

这些被称为点点条目。两个条目上的 DIR_FileSize 字段都设置为 0,并且这两个条目中的所有日期和时间字段都设置为与您刚创建的目录的目录条目中的值相同的值。现在,您为条目(第一个条目)的值应与目录条目(包含该条目的簇的簇号)中的值相同。点点条目)。

最后,设置 DIR_FstClusLO 和 DIR_FstClusHI点点条目(第二个条目)到您刚刚创建目录的目录的第一个簇号(如果此目录是根目录,则值为 0,即使对于 FAT32 卷也是如此)。

以下是点点条目:

  • entry 是指向其自身的目录。
  • 点点条目指向此目录的父目录的起始簇(如果此目录的父目录是根目录,则为 0)。

事实上,这些目录条目存在于每个目录中。它们是隐含的,因此在 NERDTree 中显示它们可能没有多大价值,但这只是一种设计选择。

相关内容