3.8 KiB
3.8 KiB
notes regarding my workflow and intended use of workspaces
workspaces layout
idea from the ThePrimeagen: designated workspace/label/desktop per app/purpose
current layout/plan
workspace number | wm layout/mode |
---|---|
1. notes (stack: nvim, obsidian) | stack |
2. music makeing - misc | stack |
3. music making - daw | floating (workaround) |
4. drawing (currently: gimp) | stack |
5. music/audio listening | stack |
6. comms (stack: emails, chats, av/calls) | stack |
7. web browser | stack |
8. terminal (primary; one-offs & tui apps can be anywhere) | stack |
9. programming - misc (whatever is not in terminal) | stack |
0. general - misc (catch-all) | stack |
ideas/guidelines:
- use this consistently accross all machines
- if something not applicable for a given machine, just don't have apps or screens present, but maintain absolute position/numbering of each screen
- structure the above so that programs which i'm likely to use with one hand off of the
keyboard (i.e. to use a trackpad, mouse, stylus, etc) are on the screens that allow
for one hand (i.e. the one still on the keyboard) to navigate those screens
- for me, using peripherals with right hand, so put programs likely to be used with peripherals where my left hand can switch to them single-handedly (screens 1 to 5)
workflow / use notes
- related to the layout above, my approach is to run almost every window in fullscreen
- note: on macOS, this is not mac's notion of fullscreen, which basically moves windows to new workspaces/desktops when going to fullscreen mode; instead, when i say 'fullscreen', the idea is taking up all of the normal screen (excluding the menu bar at the top of the screen)
- key bindings are set for moving window focus up/down (vim style: mod + k/j)
- the mental model here is that every fullscreen window is in a stack, so i can move focus up and down the stack (and i try to maintain consistent order in stacks, e.g. in the comms workspace, email is always on the bottom and chat apps are above)
- for apps with tabs, pair the above mental model of a stack with a mental model of a
circular list being in any position in that stack
- so, keybindings are also set for previous/next tab (vim style: mod + h/l)
- specifically, mod+h is mapped to ctrl+shift+tab and mod+l is mapped to ctrl+tab, so it should work anywhere ctrl+tab and ctrl+shift+tab work
- all this said, it is better to keep things simple when possible and avoid having too many windows and/or tabs open at one time; however, with the designated purpose for each workspace and the mental models above, it rarely takes me long to find what i need
example cases
- if i want a particular browser window, i jump to workspace 9, then move focus up or down until i get to the window i want; if the window is right but i need a different tab, i then just move "right or left" through my tabs
- if i want a particular music-playing app/tui, i jumpt to workspace 4 and move focus up or down as needed to find it
- variation case: if i want a particular terminal workspace, i jump to workspace 8, but then i'm in tmux land and navigate via the methods i've set up for tmux