GTL: Gemini Tiny Logs
Goal: A TUI for the tinylogs format on the gemini space.
Installation
gtl requires go ≥ 1.16
From Source
git clone http://git.bacardi55.io/bacardi55/gtl.git
cd gtl
make dependencies
make build
Put the binary in a directory available in your $PATH if you don’t want to type the full path to the program.
From Binaries
You can download binaries for linux here. Binaries are only available for linux 386, amd64, arm and arm64 for now.
PS: I don’t have a Mac or Windows box easily accessible, so any help/patch on this is appreciated :).
Usage
Quick start:
Assuming you put the binary in ~/bin:
~/bin/gtl # will create the configuration and subscription files in ~/.config/gtl/ and a subscription path.
[~/bin/gtl add --url gemini://capsule.tld/tinylog.gmi # Adding other entries than just my default one.
[# Repeat add command for all the feeds.]
~/bin/gtl --mode cli --limit 10
# Or use the TUI mode:
~/bin/gtl --mode tui
You can still use gtl “continuously”:
while true; do clear && ~/bin/gtl --mode cli --limit 10 && sleep 1800; done;
Or use the TUI and refresh the timeline when you want.
Global commands:
gtl --help
gtl --version
Use gtl TUI
gtl --mode tui
or configure the gtl.toml
to set mode = tui
(see config below).
PS: TUI is the default mode since v0.4.8
TUI Shortcuts:
?: Display help
r: Refresh timeline (refresh all tinylogs)
t: Display timeline (remove all filters like highlights of specific tinylog)
h: Toggle Highligts only / all entries (keep tinylog filter).
s: Toggle hide/show subscription sidebar (left).
Tab: Switch between timeline and subscription list.
Arrow keys up/down or j/k: navigate
ctrl+n: Open tinylog in $EDITOR. (See configuration below.)
q or Ctrl-C: Quit
You can navigate on the subscription list and:
- left click or press enter: Will filter only entries from this tinylog and hide all entries from other tinylogs. A Status
F
or?
is indicated. - right click or press alt+enter: Will open a menu to mute / unmute a tinylog. A tinylog muted means no entry from this tinylog are displayed. A Status
M
or?
is displayed.
TUI Emoji Status:
If tui_status_emoji
is set to true in the configuration file (see below), emoji will be used for the status. Otherwise, simple ASCII characters will be used.
V
or✔
: All good ?X
or❌
: Indicates that the feed format is wrong or that no entries has been found.D
or☠️
: Indicates that the capsule/page is unreachable.S
or?
: Indicates an error with the SSL certificate.F
or?
: Indicates that the feed is selected. It means only entries from this tinylog are displayed.M
or?
: Indicates that the feed is muted. It means no entry of this tinylog will be displayed.
Use gtl CLI
Usage:
--config configFile Indicate a specific config file.
--mode {cli,tui} Select the cli or tui mode.
--limit X When using cli mode, display only X item.
--help Display this help message.
Example:
gtl --mode cli --limit 10
gtl --limit 10 # cli mode is default, so this is the same as above.
gtl --mode cli --limit 10 --config path/to/config/file # with specific path for config file.
If you don’t provide a config file path, gtl will look for it in {homepath}/.config/gtl/gtl.toml
You need a subscription file though with the list of tinylogs to follow. For easier migration, the format is the same as lace:
<div class="snippet-clipboard-content position-relative" data-snippet-clipboard-copy-content=" nameOfTinyLog
nameOfTinyLog2
…
“>
nameOfTinyLog
nameOfTinyLog2
…