Back to Silas S. Brown's home page

Low-vision X11 configuration

I use one of two approaches, depending on the circumstances:
  1. Low-resolution scrollable desktop
    • Works well if you have older software that uses bitmap fonts, or if you have a Mac
    • You can set the window you're working in to fit the "viewport", and quickly pan the viewport to see other windows
    • May not work so well with desktop environments like GNOME; simple window managers are best
    • Can be more trouble to set up on modern graphics hardware and/or laptops
  2. High-resolution non-scrollable desktop with larger fonts
    • Needs newer software that does not use bitmap fonts
    • You can work full-screen and use Alt-Tab or other mechanisms to switch windows (can be slightly more fiddly than panning, but not too much if you have tabbed terminals, editors and browsers)
      • GNOME 3 and Unity introduced a different behaviour: Alt-Tab switches between applications, and Alt-` switches between windows within an application---a bit like Command-Tab and Command-` on the Mac
    • Works well with modern "desktop environments" and laptops


If you run Windows programs using WINE, you can change the overall size by adjusting the DPI setting LogPixels in .wine/system.reg (its value is hex). In newer versions you can also use the winecfg program's "Graphics" tab to set DPI.

If some characters in menus etc don't display, then you might also need to set IconFont in .wine/user.reg.

If you need a dark background in WINE apps you can try appending this dark background registry snippet to .wine/user.reg (here's a Unicode .reg version in case you want that scheme on real Windows: works on XP but a restart might be required). If you want anti-aliasing (and don't already have it), try this antialiasing registry snippet also (this sets greyscale anti-aliasing; ClearType is not recommended unless you can calibrate the gamma setting to your monitor).

If you use the "Wineskin Winery" wrapper on an old Mac, the .reg files will be located in your application's Contents/Resources directory.

If those colour changes cause unreadable text in printouts, you might need to delete the relevant colour commands from the PostScript, e.g. if you're using a machine behind a firewall that runs CUPS and you have administrator access then go to http://localhost:631 and Add Printer, device LPD/LPR printer, URI socket://localhost:12000, make Generic / Generic PostScript printer; before printing to this printer do

nc -l -p 12000 | grep -v "^1.00 1.00 0.00 setrgbcolor$" | grep -v "^0.89 setgray$" | ps2pdf - output.pdf

(may need adjusting for some CUPS/Wine versions). Alternatively if you don't have root access but have compiled your own WINE, you can temporarily disable accidental printing by moving wineps* out of lib/wine.
All material © Silas S. Brown unless otherwise stated.