xdebug跟踪如下所示:
1 TRACE START [2011-12-06 12:50:29]
2 0.0018 350384 -> {main}() /index.php:0
3 0.0019 350464 -> error_reporting() /index.php:4
4 0.0019 350704 -> define() /index.php:8
5 0.0021 370136 -> require_once(/forum/global.php) /index.php:43
6 0.0022 370216 -> error_reporting() /forum/global.php:13
7 0.0020 353760 -> chdir() /index.php:42
8 0.0019 350704 -> define() /index.php:9
9 0.0019 353760 -> dirname() /index.php:42
每次调用函数或include()时,第三列都会缩进另一个位置。例如,在第5行中,我们看到一个require_once(/forum/global.php),其中调用了error_reporting()和chdir()函数,然后代码流返回到原始文件(/index.php)。 p>
如何从include()ed文件中的文件行(比如/index.php中的第5行)跳转到文件的下一行(在上面的示例中为第8行) )。
我能想到的一个解决方案是重载“j”以查看它是否在空格字符上,如果是则再次运行“j”。如果有更好的解决方案,那么我很想知道它。
答案 0 :(得分:2)
在您提供的文件中,您可以跳转到具有“ - >”特定位置的行你对(在第29-30栏)使用正则表达式的以下搜索感兴趣:
搜索模式:/^.\{28\}-
以下是详细信息:
/
是搜索键^
表示行开头.\{28}
表示28个随机字符-
只匹配“ - ”作为下一个(第29个)字符输入一次此搜索后,您可以使用n
(转发)和N
(向后)浏览您感兴趣的行。
- 编辑 -
根据以下评论,这是另一个更接近O.P.寻找的版本:
Ex命令::exe '/^.\{'.(col(".")-1).'\}->'
这建立在前一个搜索模式的基础上,使用光标前面的列的值而不是固定值。
答案 1 :(得分:0)
并非完全相关,但我使用debugger.vim
来调试PHP代码,并发现它非常宝贵。
你可以在这里编写脚本,或者在我的github上稍微修改一下版本