我正在努力使它能够点击xdebug输出的链接并打开像textmate那样有问题的文件我试图在Windows XP上用ST2做这个。
我尝试使用SublimeProtocol插件来完成此任务,但是打开文件所需的链接格式如下:
sblm:///C/Users/name/AppData/Roaming/Sublime%20Text%202/Packages/
和xdebug.file_link_format是:
xdebug.file_link_format="sblm://%f?%l"
输出此类链接:sblm://C:\wamp\www\busadv\parse3.php?10
所以ST2的控制台表明它无法打开文件。
然后我尝试根据问题Creating Custom Protocol创建自定义协议 因为这似乎与我想要完成的事情一致。我用以下内容创建了一个reg文件:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\sblm]
@="\"URL:sblm Protocol\""
"EditFlags"=hex:02,00,00,00
"URL Protocol"=""
[HKEY_CLASSES_ROOT\sblm\DefaultIcon]
@="\"C:\\Program Files\\Sublime Text 2\\sublime_text.exe\",0"
[HKEY_CLASSES_ROOT\sblm\shell]
[HKEY_CLASSES_ROOT\sblm\shell\open]
[HKEY_CLASSES_ROOT\sblm\shell\open\command]
@="\"C:\\Program Files\\Sublime Text 2\\sublime_text.exe\" -c \"%1\""
问题是,当我点击xdebug的链接输出时,文件 DOES 在ST2中打开只有一个源自浏览器目录的文件,而不是xdebug所说的文件。我尝试用%2替换%1,因此文件会在C:\之前切掉部分,但是当使用替换时文件永远不会打开。那么为了实现这一目标需要的其他参数是什么?
更新
添加了一个包含以下内容的批处理文件:
@echo off
setlocal enableextensions enabledelayedexpansion
set SUBLIME=%1
set FILE=%~2
%SUBLIME% --open "%FILE:~19%"
并更改了注册表以包含。windows and netbeans建议的.bat:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\sblm]
@="URL:sblm Protocol Handler"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\Sublime Text\DefaultIcon]
@="\"C:\\Program Files\\Sublime Text 2\\sublime_text.exe,1\""
[HKEY_CLASSES_ROOT\sblm\shell]
[HKEY_CLASSES_ROOT\sblm\shell\open]
[HKEY_CLASSES_ROOT\sblm\shell\open\command]
@="\"C:\\Windows\\sublime.bat\" \"C:\\Program Files\\Sublime Text 2\\sublime_text.exe\" \%1\""
还将xdebug.file_link_format更改为
xdebug.file_link_format="sblm://open/?f=%f:%l"
现在ST2仍然打开一个文件,但它来自浏览器目录,其中包含的链接差不多但不包括C:\ w。
例如xdebug链接 SBLM://开/ F = C:\瓦帕\ WWW \ busadv \ parse3.php:10
在ST2中打开的文件是 C:\ Program Files \ SRWare Iron \ amp \ www \ busadv \ parse3.php