skyjake / lagrange

A Beautiful Gemini Client
https://gmi.skyjake.fi/lagrange/
BSD 2-Clause "Simplified" License
1.19k stars 62 forks source link

TUI: how to open link in a new tab / bugs: resize, search widget on 80x25 in split view mode #536

Open jakobi opened 2 years ago

jakobi commented 2 years ago

clagrange built via build-tui.sh from dev branch as of 2022aug13 on debian-testing.

It looks quite usable, but as a convicted mutli-tabber I found a blocker for me...

Questions:

Observations (possibly to document for TUI-mode in about:help):

Bugs:

skyjake commented 2 years ago

Please note that clagrange remains somewhat experimental, which is why it's manual-build only. The Help page for TUI mode has not been written since the behavior of the TUI is not set in stone.

How do I open a link in a new background tab?

Adding a binding specifically for this would make sense but currently there isn't one. Instead, one can do this:

What was the reason for dropping CONTROL?

This is due to the Curses library that handles keyboard input in the terminal. Many ASCII control codes are actually typed as Ctrl+something, so Ctrl is not always available for custom bindings. Also, Ctrl+4 sends a quit signal to the application, bypassing normal event processing. AFAIK, that is done by the terminal emulator itself so Curses and Lagrange need to respect it like any other terminal program.

mouse seems unsupported

Correct, mouse events are not being handled currently.

resize bug: resize window leads to ~5 sec of blinking, then to a crash

Is this something that happens to you in every terminal emulator and or window system, or is it specific to some? It sounds like an event overflow, possibly because when you resize the window, the system is sending excessive window events. In any case, I need to add protection in SEALCurses against these situations.

jakobi commented 2 years ago

Thx for the tip with the hover mode, slightly cumbersome, but does the trick :).

resize bug: speed seems to vary depending on terminal emulator, but crashing it does in the tested ones: xterm, kitty, konsole, even in tmux. Thankfully, I've not yet switched to tiling window managers...

another missing doc: clagrange seems to consider about the end of the first third to be the top of the active section, as I never saw link letters (pressing F) being activate in the top third. This notion and the lack of a kind of visible cursor were a bit confusing for me (as I've yet to switch to keyboard nav in the X version).