例如,可以使qbittorent打开torrent文件的链接。
给客户发送电子邮件至:
是否可以在将在Intellij中打开给定文件的浏览器中创建链接? (不是完整路径,但可能是整个包)。
想法是,这将为bitbucket创建。
答案 0 :(得分:1)
有一个open feature request要添加idea://
协议处理程序。
目前,它仅适用于macOS。对于其他平台,您可以尝试使用third-party solution或票证注释中的其他解决方法。
还有一个内置的网络服务器提供REST API to open files。
仅当IDE已在运行并且项目处于打开状态时,它才可以使用相对路径:http://localhost:63342/api/file/relative/to/module/root/path/to/file.kt
。
安装了JetBrains Toolbox App的用户将能够使用jetbrains://
协议进行导航,它正在正在进行中,应该在 2019.2 中可用
有关参考,请参见JBProtocolNavigateCommand.kt
// handles URLs of the following types:
// jetbrains://idea/navigate/reference?project=IDEA
// [&reference[X]=com.intellij.navigation.JBProtocolNavigateCommand[.perform][#perform]]+
// [&path[X]=com/intellij/openapi/project/impl/JBProtocolNavigateCommand.kt[:23[:1]]]+
// [&selection[X]=25:5-26:6]+
示例网址:
jetbrains://idea/navigate/reference?project=IDEA&fqn=com.intellij.openapi.application.JetBrainsProtocolHandler#getParameters
工具箱URL与正则表达式匹配:
"${JetBrainsProtocolHandler.PROTOCOL}([\\w\\-]+)/navigate/reference\\?project=(?<project>[\\w]+)(&fqn[\\d]*=(?<fqn>[\\w.\\-#]+))*(&path[\\d]*=(?<path>[\\w-_/\\\\.]+)(:(?<location1>[\\d]+))?(:(?<location2>[\\d]+))?)*(&selection[\\d]*=(?<line1>[\\d]+):(?<column1>[\\d]+)-(?<line2>[\\d]+):(?<column2>[\\d]+))*"
还有一个UI,用于直接从编辑器复制TBX协议URL,类似于上下文菜单中的 Copy Reference 操作。同样适用于IDE设置导航。