#terminal #terminal-emulator

supports-hyperlinks

Detects whether a terminal supports rendering hyperlinks

5 stable releases

2.1.0 Apr 18, 2023
2.0.0 Mar 13, 2023
1.2.0 Sep 16, 2021
1.1.0 Sep 11, 2021
1.0.0 Sep 11, 2021

#99 in Command-line interface

Download history 39056/week @ 2023-06-06 37820/week @ 2023-06-13 44719/week @ 2023-06-20 41737/week @ 2023-06-27 43967/week @ 2023-07-04 37228/week @ 2023-07-11 44002/week @ 2023-07-18 41341/week @ 2023-07-25 49232/week @ 2023-08-01 59260/week @ 2023-08-08 57897/week @ 2023-08-15 64371/week @ 2023-08-22 57821/week @ 2023-08-29 41572/week @ 2023-09-05 48017/week @ 2023-09-12 37739/week @ 2023-09-19

195,880 downloads per month
Used in 75 crates (4 directly)

Apache-2.0

9KB

Detects whether the current terminal supports hyperlinks in terminal emulators.

It tries to detect and support all known terminals and terminal families that support this. If a declaration is wrong, missing, or could be improved, please send a PR!

Example

The API is super simple!

use supports_hyperlinks::Stream;

if supports_hyperlinks::on(Stream::Stdout) {
    println!("This terminal supports hyperlinks on stdout");
} else {
    println!("No hyperlinks, please");
}

And that's it!

You may set the FORCE_HYPERLINK environment variable to force supports-hyperlinks to return true for its checks. If the value is 0, this will force it to be false, instead.

Dependencies

~0–10MB
~90K SLoC