Commit graph

62 commits

Author SHA1 Message Date
Daniel Eklöf
6726494f4c
url-mode: store absolute row numbers in start/end coordinates
This allows us to update the jump label positions when the viewport
changes.

This in turn allows us to stay in URL mode while the user is using the
mouse to scroll in the scrollback history.

Scrolling with the keyboard is currently not possible, since input
handling in URL mode does not recognize “regular” key bindings. We
_could_ add scrollback up/down bindings to URL mode too, but lets not,
for the time being.

(Note: an alternative to this patch is to disallow mouse scrolling
too. Then we could have kept the URL start/end as viewport local
coordinates).
2021-02-07 16:33:34 +01:00
Daniel Eklöf
a578faf494
url-mode: make the end coordinate *inclusive* 2021-02-07 16:33:33 +01:00
Daniel Eklöf
ef3ce530ba
url-mode: refactor: break out URL activation to a separate function 2021-02-07 16:33:33 +01:00
Daniel Eklöf
607ee63b77
url-mode: auto-detect: use wcsncasecmp() instead of towlower()
When matching the URI scheme, use wcsncasecmp() when comparing the
strings, instead of calling towlower() on each cell.
2021-02-07 16:33:33 +01:00
Daniel Eklöf
6b7003bcc3
url-mode: auto-detect: don’t store the lower-cased URL; use original casing 2021-02-07 16:33:33 +01:00
Daniel Eklöf
93181649b3
config: add show-urls-copy action
This works just like show-urls-launch, except that instead of opening
the URL (typically using xdg-open), it is placed in the clipboard when
activated.
2021-02-07 16:33:32 +01:00
Daniel Eklöf
65caa33084
url-mode: auto-detect: don’t line-wrap URL is row isn’t line-wrapped 2021-02-07 16:33:32 +01:00
Daniel Eklöf
f61f7c131f
url-mode: auto-detect: heuristics for parenthesis and brackets
While parenthesis and brackets _are_ valid URL characters, there are
many times when we do *not* want them to be part of the URL.

For example, in markdown we write “[text](url)”, or even
“[![alt-text](url-1)](url-2)”.

Here, the URLs are clearly *not* “url)” or “url-1)](url2)”.
2021-02-07 16:33:32 +01:00
Daniel Eklöf
9d8ec857ce
url-mode: use ‘url-launch’ from config to open URLs 2021-02-07 16:33:32 +01:00
Daniel Eklöf
2315aba458
url-mode: urls_reset() do an early return if we don’t have any URLs 2021-02-07 16:33:31 +01:00
Daniel Eklöf
d75688b0bd
url-mode: fix ‘n’ parameter to wcstombs() 2021-02-07 16:33:31 +01:00
Daniel Eklöf
2cc84db979
urls: initial support for detecting URLs and rendering jump-labels
The jump labels work, but is currently hardcoded to use xdg-open
2021-02-07 16:33:31 +01:00