Sublime text 2 - 在Zend Framework中按类名查找文件

时间:2013-08-09 16:38:12

标签: zend-framework sublimetext2 sublimetext

当您按Ctrl+p时,Sublime会在您轻松找到文件时打开弹出窗口。当您按/或文件路径部分之间的空格时,Sublime会自动检测文件位置。

在Zend Framework中,所有类都在跟随模板中有名称:Namespace_Module_Other_Part_Of_Class_Location,当我按_并复制出类名时,如何让Sublime将Ctrl+p理解为路径分隔符有?

因此,应在地点识别上述课程:Project/Namespace/Module/Other/Part/Of/Class/Location.php

Sublime Ctrl+p screenshot

我仍在寻找它的解决方案。即使文件搜索在Sublime 3中是硬编码的,并且你有一个解决方法可以使它工作,也许写一些插件?不客气。

谢谢。

2 个答案:

答案 0 :(得分:2)

您可以使用简单的插件和键绑定来完成此操作。选择 Tools -> New Plugin... 并将内容替换为以下内容:

import sublime
import sublime_plugin

class UnderscoreToSpaceCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        self.view.run_command('copy')
        clipboard = sublime.get_clipboard()
        clipboard = clipboard.replace('_', ' ')
        sublime.set_clipboard(clipboard)

将文件另存为Packages/User/underscore_to_space.py,其中Packages是点击 Preferences -> Browse Packages... 时打开的文件夹。

接下来,为命令创建自定义键绑定。选择 Preferences -> Key Bindings-User 并添加以下内容:

{ "keys": ["ctrl+shift+c"], "command": "underscore_to_space" }

如果文件在打开时为空,请用方括号[ ]包围上面的行。保存文件(它会自动保存到正确的位置),然后你就可以了。

现在,您需要做的就是选择要转换的文本,然后按 Ctrl Shift C 。这会将文本复制到剪贴板,用空格替换下划线,然后将修改后的文本放回剪贴板。您现在可以按 Ctrl P 打开Goto Anything...并使用 Ctrl V 粘贴修改后的文本

如果您希望将下划线替换为正斜杠/,只需将clipboard.replace()参数从('_', ' ')更改为('_', '/')

答案 1 :(得分:1)

要获得您正在寻找的类定义,存在几个执行“代码智能”的插件。插件是特定于语言的。

最受欢迎的是SublimeCodeIntel,它提供跳转到符号定义功能。 SublimeCodeIntel声称也为PHP做这个。但是,为您的项目设置此项的人应该是另一个问题。

此博客文章中Sublime Text 2中可能的源代码静态分析的更多选项: