Work Desktop Setup

December 1st, 2016
tech
I spend most of my day standing in front of my work desktop, doing some combination of programming, code review, documentation, and email. Over the years I've figured out a relatively productive setup:

  • browser on one monitor
  • tile the rest of the space with tall terminals
  • put some extra terminals for starting jobs etc off on the side

This looks like:

(This is divided over two monitors, with the browser and the first vertical terminal on the left-hand monitor.)

I spent an embarrassingly long time having to hand-configure this each time I had to restart my computer, and avoiding restarting as much as possible to keep from having to do this, so I eventually learned how to use -geometry arguments to set this up:

# Make the background black.  Not that
# the background should ever be visible
# or anything.
fbsetroot -solid black

# Start and place terminals.  81 columns
# because code here is limited to 80
# columns and emacs reserves a column for
# the wrapping indicator.
uxterm -geometry 81x90+1428+0 &
uxterm -geometry 81x90+1920+0 &
uxterm -geometry 81x90+2412+0 &
uxterm -geometry 81x90+2904+0 &
uxterm -geometry 73x22+3396+0 &
uxterm -geometry 73x22+3396+310 &
uxterm -geometry 73x22+3396+620 &
uxterm -geometry 73x19+3396+930 &

google-chrome &

# Start the window manager last, and
# don't run it in the background.
fluxbox

Update 2018-02-08: I just got new monitors, both 2560x1440, so I now have 5120x1440 of space to work with. I'm not sure exactly how I want to set it up, but for now I have:

uxterm -geometry 81x109+2560+0 &
uxterm -geometry 81x109+3052+0 &
uxterm -geometry 81x109+3544+0 &
uxterm -geometry 81x109+4036+0 &
uxterm -geometry 79x8+4528+0 &
xclock -geometry 108x108+5010+0 &
uxterm -geometry 97x25+4528+128 &
uxterm -geometry 97x25+4528+476 &
uxterm -geometry 97x25+4528+824 &
uxterm -geometry 97x19+4528+1172 &

I also used to manually adjust the settings on xterms each time I started them up, but then I learned how to use xrdb. I put xrdb -l ~/.Xdefaults in my .xsession, which contains:

xterm*metaSendsEscape: true
xterm*reverseVideo: on
xterm*visualBell: False

I also have pretty strong preferences about how fonts should look. Specifically, unless I'm in a hidpi environment, I don't want the modern thing where you use a vector-graphics based (true type) font and then through some combination of hinting and antialiasing you fit it to the screen. Instead I want precisely pixel-aligned bitmap fonts, which happens to be exactly what xterm uses by default.

What am I talking about? Here's a zoomed-in view comparing xterm with its default font to gnome-terminal with its default one:

The gnome-terminal rendering isn't terrible, especially when you're at a normal zoom level, but it's much less crisp than the xterm rendering.

(This is one of the things that makes ssh-from-a-browsers annoying: I don't believe there's any way to get text to render device-pixel-perfect, so until hidpi displays are everywhere you can't get away from the blurry fonts there. This is much less of an issue for ordinary web text than terminal text, because I run my terminals at a much smaller font size to get as much as possible on the screen at once.)

Referenced in: Terminal Preferences

Comment via: google plus, facebook

Recent posts on blogs I like:

Animal Welfare and Capabilitarianism

All ethics is a special case of animal welfare science

via Thing of Things December 18, 2024

Developing the middle ground on polarized topics

Avoiding false dichotomies The post Developing the middle ground on polarized topics appeared first on Otherwise.

via Otherwise November 25, 2024

How to eat vegan on Icon of the Seas

Royal Caribbean has a new giant cruise ship, Icon of the Seas, which has a large selection of food options.

via Home November 21, 2024

more     (via openring)