Text-only user interface environment
It is probably not an uncommon thing, nor am I the first. However, I might surprise myself that I am working this way now. My environment for spending free time in Geminispace and Gophersphere is text-only environment. Which I've set up from nothing, and without any special experience.
The current state and twenty tools
- I'm using for it SSH connection to my remote shell account, where I had set up `tmux` (1). I'm using about 10 windows. For those unfamiliar with tmux, it allows you to freely juggle multiple windows just like in a graphical interface. I saved tmux configuration file with `tmuxp freeze` (2), and I can restore it after restart of my server. With `tmux` it's possible to copy&paste text between any window or pane.
- The first window is divided into two panes, the first pane for editor; set up on tinylog.gmi in `vi` (3) and the second pane is for `gtl` (4; "A TUI for the tinylogs format on the gemini space").
- The second window is `git` (5) directories for publishing Gemini and Gopher content. I'm sharing them for `vi`, `emacs` (6) and `gitui` (7; "Blazing fast terminal-ui for git written in rust").
- The third one is working directory for all binaries, tools and scripts. There are several scripts, for eg. for refreshing `comitium` (8; "comitium is a Gemini, Gopher, and HTTP feed aggregator") or `feed2toot` (9; "Feed2toot parses a RSS feed, extracts the last entries and sends them to Mastodon").
- The next one is for `toot tui` (10; "Toot is a CLI and TUI tool for interacting with Mastodon instances from the command line."). With special script set up with $BROWSER environment variable I can launch from it: `w3m` (11), `emacs` with `elpher` (12; "a gopher and gemini client for GNU Emacs") and browse WWW, Gopher and Gemini links spotted in `toot`. I'm not using `amfora` (13) from `toot` for Gemini because it has some problem with screen refresh.
- The next one is for `mcabber` (14; "mcabber is a small XMPP (Jabber) console client.").
- The next one is for `amfora` (13; "Amfora aims to be the best looking Gemini client with the most features... all in the terminal."). I'm using it mainly to view my bookmarked Gemini capsules.
- The next one is for sdf.org, inside that there are panes: `mutt` (15; "Mutt is a small but very powerful text-based mail client for Unix operating systems.") with `gpg` (16; "GnuPG allows you to encrypt and sign your data and communications"), `bboard` (17; "threaded multi discussion bulletin board. It goes back when the original SDF was just a BBS") and `slrn` (18; "slrn is a Usenet client, a newsreader that can read and respond to posts on newsgroups."); in such configuration is need to have full screen mode of each tool so I'm using tmux's CTRL-A Z for zoom pane while using one of them.
- The last window is for system's interactions, for eg. `apt` (19; "apt-get is the command-line tool for handling packages") things or `pass` (20; "the standard unix password manager")
And it isn't the last word in the text-ony user interface environment. There are still many possibilities for improvement.
- Include some image to text mechanism, like for eg. `chafa` ("With chafa, you can now view very, very reasonable approximations of pictures and animations in the comfort of your favorite terminal emulator.").
- Do things faster by `fzf` ("fzf is a general-purpose command-line fuzzy finder").
- Explore `emacs` and `org-mode` ("major mode for keeping notes, authoring documents, computational notebooks, literate programming, maintaining to-do lists, planning projects, and more — in a fast and effective plain text system").
And probably more.
szczezuja.space CC BY-SA
@ Thu 07 Apr 2022 08:54:08 PM CEST
tags: #cli, #howto