skorokithakis / tbvaccine

A small utility to pretty-print Python tracebacks. ⛺
MIT License
377 stars 14 forks source link

Add hyperlinks to source files in traceback #37

Open stuaxo opened 4 years ago

stuaxo commented 4 years ago

There is a specification for hyperlinks in terminals

https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda

It would be good if TBVacine could link to the python files mentioned.

Currently there isn't a way of linking to particular lines, but being able to open a file from the terminal is a nice improvement.

This may be worth gating behind config or envvar in case a terminal doesn't support it (though most should display nothing where the link will be anyway)

skorokithakis commented 4 years ago

Hmm, that's interesting, but that's for HTTP hyperlinks, how can we link to something in the FS (and what happens when you click on that)?

stuaxo commented 4 years ago

You make a link like file:///path/to/file

try ls --hyper to see it in action, here's is what it looks like for me in Tilix, I can right click and open files:

image

skorokithakis commented 4 years ago

Oh huh, I see, thanks. My terminal doesn't support it, but I'll try it on some other one.

stuaxo commented 4 years ago

There's a list of terminals and versions that currently support it at the top of the gist :)

egmontkob commented 4 years ago

You make a link like file:///path/to/file

Note: See the terminal hyperlink spec why the hostname component really should not be omitted, i.e. use file://hostname/path/to/file.