-- Leo's gemini proxy

-- Connecting to tilde.pink:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini;

Low-vision configuration for terminal applications

I usually find that Unix terminal applications work reasonably well in large print as long as the terminal itself can.  However, increasing the print size usually means that fewer rows and columns are available, and some applications don’t work very well on terminals with fewer than normal rows and columns.  This can sometimes be fixed by configuring the application.  Here are some of my dot-files for this and related fixes:

.muttrc is used to configure the terminal-based email client mutt. This dot file works better if you add .message-formatter (requires Python, tested in both 2 and 3), and check the comments at the start of the .muttrc for what to do if messages are not displayed on your system.

.muttrc

.message-formatter

If you use Alpine (e.g. for IMAP over a slow connection if the system’s version of Mutt doesn’t handle it efficiently), see alpine.txt.

alpine.txt

.jedrc and .nanorc are used to configure the jed and nano editors (you might also want my emacs configuration); jmacs is also useful but I do not have configuration files for it

.jedrc

.nanorc

.lynx.cfg and .lynxrc are used to configure the terminal-based Web browser lynx. This works only if you put export LYNX_CFG=$HOME/.lynx.cfg in your .bash_profile/.bashrc. (See also TermLayout)

.lynx.cfg

.lynxrc

.tmux.conf configures the terminal multiplexer tmux (which is like screen but might handle UTF-8 better)

.tmux.conf

For curl, put -sS into .curlrc to stop problems with the progress bar on small terminals (also helps with programs that use curl, such as HomeBrew)

For GNU/Linux top, try pressing f and turn off columns you don’t really need, e.g. turn off priority (h on older versions of top), nice (i), RSS (q), etc and perhaps turn off username (e) and turn on uid (d) on single-user systems, press c to toggle extended commandline and press W to write to .toprc or .config/procps/toprc. Mac/BSD top is less flexible.

Console

On modern GNU/Linux distributions the console font size is quite small. You might be able to go some way toward enlarging it by using this .console-setup and putting setupcon in your .bash_profile, or if you don’t have setupcon then try setfont /path/to/TerminusBold32x16.psf.gz.

.console-setup

TerminusBold32x16.psf.gz

On FreeBSD the command is vidcontrol -f /usr/share/vt/fonts/terminus-b32.fnt but to make this work in FreeBSD 11 and above you also need to put hw.vga.textmode=0 into /boot/loader.conf (although at least text-mode on means the starting size is not quite as miniscule as became popular on GNU/Linux).

For fonts larger than 32px (and for CJK), on GNU/Linux you might be able to install fbterm—here’s an example .fbtermrc, and if you want to turn off anti-aliasing you can try this non-antialiasing .fonts.conf (on some systems it needs to be saved as .config/fontconfig/fonts.conf) but some versions of fbterm corrupt the display when anti-aliasing is turned off.

example .fbtermrc

non-antialiasing .fonts.conf

If the machine has sufficient resources, you could just use X11 with a terminal program set for large fonts.

Legal

All material © Silas S. Brown unless otherwise stated. FreeBSD is a registered trademark of the FreeBSD Foundation. Linux is the registered trademark of Linus Torvalds in the U.S. and other countries. Mac is a trademark of Apple Inc. Python is a trademark of the Python Software Foundation. Unix is a trademark of The Open Group. Any other trademarks I mentioned without realising are trademarks of their respective holders.

-- Response ended

-- Page fetched on Mon May 6 00:00:42 2024