2010-06-22 116 views
1

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

我在做什么错?

+0

你最近改变了'mapleader'吗?项目插件实际上可能使用' R'而不是在它的映射中显式使用'\ R'。 – 2010-06-22 01:49:58

+0

不,我没有。只是好奇这是否为其他人工作? – random 2010-06-22 02:29:45

回答

2

\R只更新倍。我发现添加新目录的唯一令人满意的方式是删除条目并重新运行\C以再次创建项目(如果需要添加大量新目录,我只会倾向于使用此项目)或添加该目录手动如下:

Name=Path { 
} 

然后在该折叠中按\r

尽管有时候我觉得这很令人沮丧,但现在我倾向于认为它是一个功能:我的项目中有一个Documentation目录,其中包含所有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 
    } 
    } 
} 

其至少一个BIT更易于管理。

+0

我最初使用\ C,我没有意识到你可以手动添加一个这样的目录。 – random 2010-06-22 17:47:17

0

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

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

如果需要更新一个唯一的文件夹,则可以手动添加的形式:

folder=folder { 
} 

然后将光标定位在该文件夹线的上方并点击“\ R”。这将填充文件,但不包含子文件夹。

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

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