Yup! I'm in the same boat as you - need to switch between light and dark theme due to the switch between outdoor/indoor. I run xterm in openbox, with specific placements (geometry setting) for a specific xterm window session. I ended up writing a script to place the xterm windows exactly where I want them so that I don't have to worry about restarting xterm windows and losing the spatial context. It's a hairy perl script that started life about 8 years ago I think. I have two openbox menu configured to start my xterm windows - one for black and one for white background. It also sets an environment variable there so that vim knows what colorscheme to use when it starts. So everytime I switch between indoor/outdoor I do a ":mksession!|quit", followed by alt+f4 to close the xterm window and then hit the openbox menu to reopen the just closed xterm window with the new background color, and resume my vim session with the color scheme adapted to the current background color. I bet using a modern IDE you can get this done with just one or two keystroke heh.