1

当你按下Ctrl+pSublime 会打开弹窗的时候你可以很容易的找到文件。/当您按下或文件路径部分之间的空格时,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 截图

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

谢谢你。

4

2 回答 2

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所在的位置。PackagesPreferences -> Browse Packages...

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

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

如果打开文件时文件为空,请用方括号将上述行括起来[ ]。保存文件(它会自动保存到正确的位置),一切就绪。

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

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

于 2014-10-18T20:04:21.720 回答
1

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

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

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

于 2013-08-12T06:41:01.330 回答