projectile使用手册

现在快捷键改了,C-c C-p

C-p-f 用caps 替换C还是用其他键来替换,都要两只手,有点弹钢琴的意思
谢谢楼主的分享;

又改回C-c p

现在没有默认的快捷键……但建议设置为C-c p

重度projectile用户,非常好用。 感谢分享

projectile如何手动指定一个项目目录, projectile-discover-projects-in-directory只会把特定的目录(比如git, svn)当做项目目录

看手册,touch .projectile 不行吗

找到自定义添加project的方法了,执行projectile-add-known-project,然后输入路径即可。

本以为这能解决我的问题,但不曾想,我的困扰依旧存在:

我有个很大的svn项目(chromium),但我自己的项目代码基本集中的chromium的一个子目录(比如foo),我想执行projectile-find-file时,只在foo目录搜索,然后实际情况是就算我通过projectile-add-known-project把foo的添加到项目列表并执行projectile-switch-project切换到foo项目(projectile会自动把chromium加到项目列表,所以我手动把项目切到foo),projectile依旧会在chromium根目录建立索引。

==================================分割一下=========================================

尝试解决(未奏效):

将Projectile Root Files Functions列表里的function删掉,只留projectile-root-local,这样一来projectile就不会自动创建chromium项目了,但是,如果打开foo子目录bar里的文件,然后我执行projectile-find-file时,projectile只会在bar里搜索,并不会在foo里搜索

通过M-x浏览projectile函数列表,发现projectile提供了projectile-find-file-in-known-projects方法,配合楼上的尝试可以解决问题,但缺点是,这会查找所有的projects

你还可以C-h v 来查看所有的变量

还在不懈尝试中,不知道有没有有同样的需求

主要是我不想跳到foo,如果要做这一步,那么我的“尝试解决”便解决了问题

你在 foo 目录下创建一个.projectile 文件,然后把项目切换到 foo,这样不行么?

添加.projectile文件后,可以在foo搜索了,但是我发现每次搜索都需要我选择project,难道projectile没有current project的概念么

有啊,切换了就在当前项目搜索。看看projectile-project-root是什么。 多查查手册吧

多看看源码里的注释吧

我执行projectile-add-project时能看到foo,但是projectile-project-root是nil

每次都需要我手动选project的原因是我把projectile-project-root-files-functions列表里的四个值删得只剩projectile-root-local了,但我不这么做,projectile又会在chromium(项目根目录)进行indexing

问题解决了,感谢各位的支持

解决方案:

  1. 将projectile-project-root-files-functions设为(quote (projectile-root-local projectile-root-bottom-up))
  2. 在foo目录创建.projectile文件
1 个赞

解决就好,手册里肯定有说明的。