【问题标题】:Vim project plugin \R not refreshing new directories createdVim 项目插件 \R 不刷新创建的新目录
【发布时间】:2010-06-22 01:19:03
【问题描述】:

我正在使用 vim 项目插件来管理项目,每当有新文件进入时,我都需要使用 \R 来刷新项目树。这很好,但是我最近在树中创建了一个新目录,\R 没有更新它并放入项目中。

我做错了什么?

【问题讨论】:

  • 您最近是否更改了您的mapleader?项目插件可能实际上使用了<Leader>R,而不是在其映射中明确使用\R
  • 不,我没有。只是好奇这对其他人有用吗?

标签: vim plugins editor project


【解决方案1】:

\R 只更新折叠。我发现添加新目录的唯一令人满意的方法是删除条目并重新运行\C 以再次创建项目(如果有很多新目录要包含,我只会使用它)或像这样手动添加目录:

Name=Path {
}

然后在该折叠中点击\r

虽然我有时觉得这很令人沮丧,但我现在倾向于认为它是一个特性:我的项目中有一个文档目录,其中包含所有 doxygen 生成的文件和目录,其中有很多。如果我在运行 doxygen 后使用\C,则会出现大量可笑的折叠,因此我将它们从列表中删除。 \R 然后不会重新添加它们,这是一件好事。

这也意味着我可以拥有(例如)这样一个愚蠢的文件夹结构:

Project/
    Source/
        File1.c
        File2.c
    Headers/
        File1.h
        File2.h
    LibraryModules/
        FreeRTOS/
            Source/
                RTOSSource.c
                portable/
                    RVDS/
                        ARM_CM3/
                            port.c

并将其显示为:

Project=/path/to/Project {
  Source=Source {
    File1.c
    File2.c
  }
  Headers=Headers {
    File1.h
    File2.h
  }
  LibraryModules=LibraryModules {
    FreeRTOSSource=FreeRTOS/Source {
      RTOSSource.c
    }
    FreeRTOSPort=FreeRTOS/Source/portable/RVDS/ARM_CM3 {
      port.c
    }
  }
}

这至少更易于管理。

【讨论】:

  • 我原来用的是\C,没想到你可以手动添加这样的目录。
【解决方案2】:

我的理解是 \R 递归更新项目插件的折叠而不是目录 存储文件的位置。 要包含目录,您必须相应地设置过滤器,例如:

filter="newdirectory/*.c *.c *.h"

【讨论】:

    【解决方案3】:

    如果您只需要更新一个文件夹,您可以在表单中手动添加:

    folder=folder {
    }
    

    然后将光标放在文件夹行上方并点击“\R”。这将填充文件而不是子文件夹。

    我发现对于几个文件夹,删除项目并使用“\C”重新创建它会更快。

    在 GnomeVim (GVim) 和 MacVim 下,它会打开 GUI 文件夹窗口,等待为项目根文件夹选择一个文件。这是不行的。最好在终端上执行,插入完整的根路径。

    【讨论】:

      猜你喜欢
      • 2011-10-24
      • 2014-05-27
      • 2020-08-05
      • 1970-01-01
      • 2015-04-23
      • 2012-11-03
      • 2018-02-11
      • 2012-09-21
      • 2015-09-20
      相关资源
      最近更新 更多