更好的SwitchHeaderImplementation
为C系列提供更全面的Switch文件功能
详细信息
安装
- 总计 1K
- Win 568
- Mac 224
- Linux 299
8月6日 | 8月5日 | 8月4日 | 8月3日 | 8月2日 | 8月1日 | 7月31日 | 7月30日 | 7月29日 | 7月28日 | 7月27日 | 7月26日 | 7月25日 | 7月24日 | 7月23日 | 7月22日 | 7月21日 | 7月20日 | 7月19日 | 7月18日 | 7月17日 | 7月16日 | 7月15日 | 7月14日 | 7月13日 | 7月12日 | 7月11日 | 7月10日 | 7月9日 | 7月8日 | 7月7日 | 7月6日 | 7月5日 | 7月4日 | 7月3日 | 7月2日 | 7月1日 | 6月30日 | 6月29日 | 6月28日 | 6月27日 | 6月26日 | 6月25日 | 6月24日 | 6月23日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Mac | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Linux | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
README
BetterSwitchHeaderImplementation
一个简单的插件,它“接管”Goto -> Switch File -> Switch Header/Implementation菜单项。实际上,它接管了该菜单项调用的命令。
用法
就像通常一样使用Switch Header/Implementation。也就是说,无论是从Goto -> Switch File -> Switch Header/Implementation的菜单项,还是通过其快捷键(无论是什么),都可以。
例如,如果你的头文件位于
$project_path/include/awesome/foo.hpp
并且你的实现文件位于
$project_path/lib/foo.cpp
那么这个插件实际上将进行切换。
两种操作模式
当你在文件夹模式下(你没有打开.sublime-project
文件),那么插件将遍历父目录。向上遍历三个父目录的合理限制已实施。你可以在插件的设置中更改此数字,但不要设置得太高,否则Sublime可能会冻结。
如果您的代码库看起来像这样
$project_path/include/foo/bar.hpp
$project_path/include/foo/baz/bar.hpp
$project_path/src/bar.cpp
然后从src/bar.cpp
进行切换,你很可能会结束在include/foo/bar.hpp
,因为那是第一个匹配项。这是文件夹模式的缺点。
当您处于项目模式(您已打开.sublime-project
文件)时,插件会假定项目文件位于目录的根目录,搜索将从那里开始。所有候选文件将被收集,如果有多个候选文件,则会弹出一个快速面板,让您选择正确的文件。从那时起,插件将始终选择您选择的选项进行切换。此模式功能更加强大。使用sublime项目文件的强大功能。
局限性
插件可能会出现错误正例。例如,如果您的代码库看起来像这样
$project_path/include/awesome/foo.hpp
$project_path/include/awesome/bar/foo.hpp
$project_path/src/bar/foo.cpp
那么从include/awesome/foo.hpp
切换,它会打开src/bar/foo.cpp
。但src/bar/foo.cpp
可能配对的是include/awesome/bar/foo.hpp
。