How to get a hyperlink on a web page to open a file in a text editor (Sublime Text)

耗尽温柔 提交于 2020-06-16 03:32:12

问题


I'm working on a large static website (Jekyll) and would like to be able to click on a link on a page in browser (Chrome) which will open it's corresponding source file on the local machine (Sublime). I can get the absolute link of the file.

From the console (Ubuntu) I can do:

subl path/to/file.txt

to open a file, so perhaps an extension that allows command execution on trusted domains?


回答1:


There's a Chrome extension, that let's you open a link with an external application: Open with external application




回答2:


Ubuntu There is a solution for Ubuntu

Windows Method

You first have to install a Protocol Handler in the Windows registry. (Reference: Custom protocol handler in chrome)

This will get Chrome to run a command when a subl:path/to/file link is clicked. But you can't simply run sublime_text.exe subl:path/to/file, because Sublime doesn't understand the subl:path/to/file parameter. You first have to extract the filename with a script and then call Sublime with a single file parameter.

Solution 1

This is a Solution for Windows, that opens links with the format

subl://open?url=file://<path_to_file>&line=4

It first registers a Script as a Protocol Handler, which in turn calls Sublime

Solution 2

I edited Solution 1 to open links in the format

subl://path/to/file:line

Just follow Solution 1, but change open_file.vbs to:

' path to sublime_text.exe
Dim sublime_path
' CHANGE THIS:
sublime_path = "C:\Programme\Sublime Text 3\sublime_text.exe" 

Dim text, filename
' get first command line argument
text = WScript.Arguments.Item(0)

filename  = Split(text, ":/")(1)

Dim run_command
run_command = """"&sublime_path&""" """&filename&""""

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run(run_command)
Set objShell = Nothing

(You have to change the path to your sublime_text.exe)

Mac https://github.com/corysimmons/subl-handler




回答3:


Old question, but you can try this: subl://path/to/file.txt



来源:https://stackoverflow.com/questions/36001941/how-to-get-a-hyperlink-on-a-web-page-to-open-a-file-in-a-text-editor-sublime-te

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!