5 ms·
I don’t see anything suggesting it is a standard. It seems like it is an enhancement that some terminals support. It isn’t like this feature degrades support f
by cowsandmilk 7y ago
I don’t see anything suggesting it is a standard. It seems like it is an enhancement that some terminals support.
It isn’t like this feature degrades support for any other terminal, just improves life for some users. Why complain?
- jchw 7y agoBecause it can break terminals that don’t. Nothing forces you to put enough context in your link to be able to recover the URL. Unsuspecting developers who only target iTerm2 will put a link in for “Click here to complete OAuth2 flow” or something and it will be broken... In this case it isn’t the worst problem ever. but i think support for this should probably be removed from terminal emulators unless a quorum of popular terminal emulators support it. (Addendum: do developers actually do things that only work in virtually a single terminal emulator? Yeah. A lot of Node.JS software printed status using emoji that broke horridly on everything but macOS. It mostly works elsewhere now, and it was purely a visual problem, but I would assume many didn’t even realize what their app would’ve done in most terminal emulators. The same with hyperlinks would be a disaster.)
- pwdisswordfish2 7y agoSomeone should create a database of various terminal emulators and the features they support, so that applications would be able to look up what features are available. We shall call it the ‘terminal capabilities library’.
- jchw 7y agoI dislike this strategy because then everyone pretends to be xterm and we’re back to square one.
- yjftsjthsd-h 7y agoYeah, it feels like we're just doing user agent vs feature detection all over again. And the xterm thing is a real concern, since I've read that lots of terminals have indeed pretended to be xterm, leading to programs having to try to detect the real terminal identity because they set TERM=xterm but don't have 100% of xterm's features...
- jchw 7y agoYep... this is exactly the problem. In fact sometimes you are recommended to go and override $TERM in order to fix a bug. Worse, is apps that do “work” but miss features. Like it is often recommended to set your term to xterm-256color to get high color in terminal apps. It’s not a huge deal, but it is simultaneously not a situation I like or think should be encouraged. FWIW I am quite confident you can do better progressive feature detection in terminals, but until that somehow gains traction we’re going to get a lot of “hey, how come i cant click the link?” and the answer is they are using KDE or Windows.
- yjftsjthsd-h 7y agoYup. I use alacritty, but if I SSH I frequently have to force TERM=xterm or something because nothing knows about that. But it's fine when I SSH from in tmux... because I have tmux force TERM=screen-256color to get better color support:)
- markrages 7y ago> We shall call it the ‘terminal capabilities library’. Naw, that's too long, call it something short and snappy like "termcap".
- saagarjha 7y agoDon’t those terminals have hyperlink detection anyways? What’s the need to use special escape sequences in this case?
- jchw 7y agoI dunno, but people are getting quite mad about me suggesting this feature should be removed, so I guess it is truly mandatory that our terminal emulators do this. Shortlinks are not good enough, phishing be damned?
- jhasse 7y agoI don't understand it either. Would https://gcc.gnu.org/cwe/123 https://gcc.gnu.org/cwe/123 really hurt so much?
- ziotom78 7y agoProbably because some URLs are really too long and would risk to fill the screen with too many characters. This particular instance implemented by GCC10 seems the perfect example: if your terminal has no support, you get a short string like CWE-415, which is probably enough for Google; but if your terminal does support this feature, clicking on it will immediately bring you to the right page.