Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Sublime Text plugin : Open the URL under the cursor
import sublime
import sublime_plugin
import webbrowser
class OpenUrlCommand(sublime_plugin.TextCommand):
def run(self, edit):
s = self.view.sel()[0]
# Expand selection to possible URL
start = s.a
end = s.b
view_size = self.view.size()
terminator = ['\t', ' ', '\"', '\'', '(', ')']
while (start > 0
and not self.view.substr(start - 1) in terminator
and self.view.classify(start) & sublime.CLASS_LINE_START == 0):
start -= 1
while (end < view_size
and not self.view.substr(end) in terminator
and self.view.classify(end) & sublime.CLASS_LINE_END == 0):
end += 1
# Check if this is URL
url = self.view.substr(sublime.Region(start, end))
print("URL : " + url)
if url.startswith(('http://', 'https://')):
print("not URL")

This comment has been minimized.

Copy link

@ellocofray ellocofray commented Apr 11, 2013

It is possible to get similar functionality but with files. I mean: From a text containing a path to a file with a line number like 'path/to/a/file.extension line 22' on click goto that file on that line????


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment