Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: towards detecting arbitrary URLs and make them clickable #1079

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

christianparpart
Copy link
Member

@christianparpart christianparpart commented Apr 10, 2023

Closes #1078
Closes #421

this PR is of course not even remotely usable yet, but it's here to track the progress.

Checklist

Checklist for implementing this could look like:

  • regex_dfa: integrate DFA regular expression engine from klex project
  • regex_dfa: adapt to get all compiler diagnostics green
  • regex_dfa: integrate tests
  • auto-detect URL patterns in the grid buffer
  • vim mode: gx to open the URI (or file) underneath the cursor position
  • vim mode: ]x to jump to next and [x to jump to previous URI (or file) in screen's grid buffer
  • allow customising how to detect what an URI is via a regex through the config file (profile).
  • visually differentiate matches (just like search/click matches) to make cycling through them and quickly identifying them visually more appealing
  • support matching URLs as well as local filepaths, into a single DFA
  • support caching the compiled DFA onto disk (with a checksum to ensure it wasn't tempered with) and reload that on next startup to avoid slowing down startup-times.

@github-actions github-actions bot added frontend Contour Terminal Emulator (GUI frontend) test Unit tests VT: Backend Virtual Terminal Backend (libterminal API) labels Apr 10, 2023
@christianparpart christianparpart force-pushed the feature/url-detect branch 2 times, most recently from 190941c to b714e2c Compare April 11, 2023 22:09
@github-actions github-actions bot added the CI GitHub Actions & CI label Apr 11, 2023
@christianparpart christianparpart force-pushed the feature/url-detect branch 5 times, most recently from 36c4a81 to 79feccd Compare April 12, 2023 20:09
@christianparpart christianparpart force-pushed the feature/url-detect branch 3 times, most recently from 90756b4 to 60cce4e Compare June 3, 2023 20:32
@christianparpart christianparpart force-pushed the feature/url-detect branch 4 times, most recently from eff4d78 to f048cf5 Compare August 13, 2023 09:50
Signed-off-by: Christian Parpart <christian@parpart.family>
Signed-off-by: Christian Parpart <christian@parpart.family>
Signed-off-by: Christian Parpart <christian@parpart.family>
Signed-off-by: Christian Parpart <christian@parpart.family>
Signed-off-by: Christian Parpart <christian@parpart.family>
@github-actions github-actions bot added the CMake label Aug 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI GitHub Actions & CI CMake frontend Contour Terminal Emulator (GUI frontend) test Unit tests VT: Backend Virtual Terminal Backend (libterminal API)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Keyboard shortcuts for opening links, copying file paths or hashes. automatic hyperlink detection
1 participant