I learned today that maybe I should stop using Konsole... But which other terminal emulator provides such easy configuration and terminal splitting? I tried ghostty and kitty years ago hut their configs where in config files only which was immediately an uninstall.
comments
Honestly I have followed that trend as well when I was still using dark themes for everything. Though I did always make sure the contrast was good enough (probably because I have astigmatism as I later found out and lower contrast is actually difficult to read for me)
Nowadays I use solarized light for pretty much everything.
I’m sure the LLM that wrote it can read it just fine.
Jeebus. Gray on black is such a terrible trend.
Damn the contrast on that text is awful
Edit: just checked with Firefox's accessibility inspector. The contrast on the text is a little above half the WCAG recommended value (3.37 instead of 6.40)
Windows Terminal, default windowed, 160, maximized/fullscreen 280
430 with the external widescreen, 240 in laptop display.
Thx, you are correct. I now think I have resolved the issue.
Use relative positioning. Question becomes obsolete and UI scales itself. It is a hard problem tho. I was introduced to this via Kotlin Compose philosophy, aka, "parents don't dictate size, children do". If that makes sense.
If you don't do relative sizing, wouldn't your terminal "max-width" scale with resolution?
My estimated max is 142 characters, so that all torrent info can be rendered. Thank you for your response.
Looks like by default, when not full screened PowerShell and Windows Terminal default to 120 characters wide. Full screen and terminals embedded in IDEs and the like give me: 187, 209, 236, and 237. That all depends on screen size, dpi settings, font size settings, zoom settings, etc.
Depending on the scripting language and the terminal host, there are usually a handful of ways to get this dynamically at runtime. .Net/PowerShell exposes this as [Console]::WindowWidth for most (but not all) hosts.
There's going to be wide variances in this, so I personally wouldn't target some static value of how wide you expect it to be. In situations where I can't just let the host's word wrap handle long lines or let the scripting language handle it automatically (PowerShell's $ObjectList | Format-Table -Autosize is nice for this), then I just I grab the current window width when I need it.
I have a few "for fun" scripts that do ascii art animations, and they check the terminal's height and width every frame, adjust the "image" as needed, then redraw at the current size.
Looks nice, thanks!
TUIOS maybe? Heard of it today and haven't tested it
you can easily do this with tmux. here's an example of mine it shows the time and battery:

as far as the start menu, i mean you just use your terminal. use fuzzy finder or something which pretty much all launchers like fuzzel use anyways.
You can display status stuff in tmux, like a clock or syatem load or whatever. I believe that there are some premade things to configure it. I tried it, found something always sitting there to not be worthwhile for me.
For battery, on a laptop, I'm pretty much always in a graphical environment and have the notification manager handle warning me. I guess if someone ran in terminal-only mode, low battery warnings could be important. I don't think that the terminal has a great standard way to display a notification without disrupting existing content and ensuring that something stays visible until someone sees it. Shutdown warnings and similar on multiuser systems typically used wall, which would write a message to all ttys, but if you missed the message or something, that's on you, and it might garble what you were looking at. I guess terminals might also be configured to show high-priority kernel log messages.
There's probably some ncurses launchers out there, but I can't recall using one at any point over the years. There's enough overlap with shell aliases and symlinks to create short forms of commands, tab completion, apropos to look for commands related to a topic, and some related features that I haven't really wanted a console "launcher". I've gone the other direction, if anything, using tofi, which is a dmenu-alike, sort of like replacing a graphical start menu in X11/wayland with something closer to bash.
I do sometimes use dired in emacs as something like an orthodox file manager, where it will take actions whose default is based on a file extension, but that's not really a launcher, something to just do filetype-based starting of programs. You're wanting something that isn't tied to operating on files.
There are some simple ncurses utilities for displaying menus with whatever you want. Red Hat used to use newt. I think that that's been supplanted by the dialog package. I do use that to display a menu of YouTube channels to download that I'm interested in. But that may be more of a framework to roll your own setup than you want, if you want something off-the-shelf.
I think that part of the problem is that the great majority of terminal programs take an argument when you're usefully using them. You don't normally just launch them without taking a filename or some other arguments. There are exceptions
I'll normally run top without arguments, though it can take them, and the few console games I play. I think that most ncurses programs are run without arguments...so I guess ncdu or one of the ncurses mpd clients for me. But they're the exception. The Start Menu paradigm is really oriented towards starting a program without arguments. That's a better fit for graphical programs, where the norm is to be invoked without arguments, and then to specify what operations the program should perform from within the program.
The dmenu paradigm is also aimed at "launch without arguments", and I guess that that's why I don't really use a dmenu analog in the terminal either (though I imagine that someone has probably made one).
The shell IS the start menu. You type the name of the program you want to start, and it starts. If you want to know the time, you type "date"; if you want to know which background processes are running, you type "jobs", etc. That’s everything we shell people need. If you need a GUI then use a GUI.
Wow, I don't think I ever considered someone's prose punchable, but this would be it.
Fantastic release announcement!
- +1 for Go
- +1 for tview
- +100 for purego
purego is þe shizzle, is it not?
The intelligent should be the User...
You? You continue implementing stuff to stupefy and atrophy the User mind; you continue making the User depending on your services; you continue implementing services that train on your Users; you continue making your Users opening gates for you to their environments (e.g., agents) that have remote access to them etc.
No. Sorry. Fudge you instead.
Wicked dude
Noice! :-D
Fuuuuuuuu.
Yes. https://sr.ht/~ser/ostui/ or the one you linked.
There is no link to the repo in there.
Is this it : https://git.sr.ht/~ser/ostui ?
Here are some of the ones I use most frequently that are somewhat unique:
# Grep Bash files
function rgb() { rg "$1" ~/.bash_aliases ; }
function rgj() { journalctl -b0 --grep="$1" --no-pager; }
function rgj4() { journalctl --since "4 hours ago" --grep="$1" --no-pager; }
function rgj1d() { journalctl --since "1 day ago" --grep="$1" --no-pager; }
function rgrc() { rg "$1" ~/.bashrc ; }
function rgt() { rg "$1" ~/.taskrc ; }
function rp() { rg "$1" ~/.bash_profile ; }
# Sharing aliases across devices
alias dba='diff -s ~/.bash_aliases ~/Sync/.bash_aliases.bak|cat' # Diff between loaded vs saved
alias ba2s='cp ~/.bash_aliases ~/Sync/.bash_aliases.bak' # Replace saved w/ loaded
alias s2ba='cp ~/Sync/.bash_aliases.bak ~/.bash_aliases' # Replace loaded w/ saved
# I have the same for bashrc and taskrc and bash_profile as well for the most part altho they are used more sparingly