我搜索了很多关于IntelliJ IDEA 12和xdebug.file_link_format
配置值的信息。
我发现什么都行不通......
是否可以使用与IntelliJ IDEA或PhpStorm的xdebug文件链接?
答案 0 :(得分:8)
是和否。
否 - 对此没有正确的内置支持。观看此票证了解详情:http://youtrack.jetbrains.com/issue/IDEA-65879
是 - 您可能会找到一些解决方法,至少前面提到的故障单有Mac OS配方(使用AppleScript)或远程呼叫等。
phpstorm://open?file=%f&line=%l
答案 1 :(得分:1)
不是开箱即用,但可以让链接正常工作。我使用Windows 7,Firefox和PhpStorm 10 - 在这个例子中,我使用协议phpstorm://
,但无论名称如何,这都可以。
// note: edit the path, with backslashes escaped
var editor = '"c:\\Program Files (x86)\\JetBrains\\PhpStorm 143.434\\bin\\PhpStorm.exe" nosplash --line %line% "%file%"';
var url = WScript.Arguments(0);
var match = /^phpstorm:\/\/open\/\?file=(.+)&line=(\d+)$/.exec(url);
if (match) {
var file = decodeURIComponent(match[1]).replace(/\+/g, ' ');
var command = editor.replace(/%line%/g, match[2]).replace(/%file%/g, file);
var shell = new ActiveXObject("WScript.Shell");
shell.Exec(command.replace(/\\/g, '\\\\'));
}
editor.reg
并导入到Registry。请注意,您再次需要双向转义上述文件的路径,并将其设置为保存您的文件: REGEDIT4
[HKEY_CLASSES_ROOT\phpstorm]
@="URL:phpstorm Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\phpstorm\shell\open\command]
@="wscript \"C:\\path\\to\\run-editor.js\" \"%1\""
在Firefox中启用协议:
在about:config
中,创建一个"逻辑值"命名
network.protocol-handler.expose.phpstorm
并将其设置为false
在Firefox中打开一个这样的链接,例如phpstorm://open?file=somefile.html&line=123
- 它应该在PhpStorm中打开。
答案 2 :(得分:1)
根据@gapple的评论,这将使Xdebug链接到PhpStorm中的文件/链接:
xdebug.file_link_format = "phpstorm://open?file=%f&line=%l"
我在Mac上的PhpStorm 10中对此进行了测试,效果很好。
答案 3 :(得分:0)
您需要在php.ini
部分的[xdebug]
文件中添加以下行:
xdebug.file_link_format = "phpstorm://open?file=%f&line=%l"
然后重新启动您的Web服务器(在Mac上为我的Apache)
答案 4 :(得分:0)
REST API现在可能是最好的选择:
http://localhost:63342/api/file%f:%l
使用javascript协议和AJAX请求进行包装,可以保存权限批准,因此您不必每次单击都批准:
javascript: var r = new XMLHttpRequest; r.open('get', 'http://localhost:63342/api/file%f:%l');r.send()