- vim windows (Ctrl+W{w, W, h, j, k, l, ...})
- vim tabs (gt, gT, :tab, ...)
- screen session (Ctrl+Z ...) [because I liked Ctrl+A as beginning-of-line]
- terminal window tabs (Ctrl+{PageUp, PageDown, Shift+PageUp, Shift+PageDown, ...})
- application windows, e.g. other terminals (Alt+`, Alt+Shift+`) [a distinction newly required in Unity and Gnome-Shell’s defaults]
- other applications (Alt+Tab, Alt+Shift+Tab) [may include all workspaces]
- other workspaces (Ctrl+Alt+{↑, ↓} for gnome-shell and Unity, additionally Ctrl+Alt+{←, →} for Unity; also with Shift to drag a window with you)
I get layers 2 and 3 mixed up so frequently that I typically only have tabs open in vim for a wide-ranging interface change inside my code, where I need to update model, validation, and view/controller all at once. Each of those scopes gets a tab, and the tab is split into windows for each affected file of that particular scope. If I have to muck around in more than two different layers at once, it gets extremely error-prone.
I think this is the reason people try to do everything inside emacs: if it’s run within a single frame, which I boldly claim is the common case, it combines layers 1 through 4 into a common framework, and leaves only layer 6 as important on the desktop. You don’t need workspaces to tame a sprawling collection of windows anymore, because most of them are inside emacs.
Subscribe to my feed for the firehose, or check @sapphirepaw_org on twitter for stuff I deem important enough to bother telling the world about.
No comments:
Post a Comment