Update todo items, update workspaces doc, note bug in tmi

This commit is contained in:
2026-01-10 02:08:12 -06:00
parent e64adcdfab
commit b90e18bd2b
4 changed files with 43 additions and 46 deletions

View File

@@ -29,7 +29,7 @@ echo "---- settings vars for system type -----"
case $setup_distro in
(arch | artix)
install_cmd="sudo pacman -S --noconfirm"
update_pkg_manager_and_defs_cmd='' # don't; update system instead?
update_pkg_manager_and_defs_cmd='' # don't; update system instead
update_pkgs_cmd='sudo pacman -Syu'
;;
(debian)

View File

@@ -1,10 +1,23 @@
# TODO items
- config for calcurse (including syncing via caldav, etesync, or similar)
- config for mpd, and client(s), (mpd clients to consider: mpc, ncmpcpp, ncmpc, inori)
- finish hyprland config and installation on linux
## pending to call setup work initially done
- finished dwm config and installation on linux
- add dmenu
- add st
- xresources working? use from/within theme-changing logic?
- finished artix/dinit setup
- include figuring out wiregaurd/vpn stuff
- switch install approach from csv file to:
- checking for custom file for os/distro
- then checking custom file for overall
- then just installing via package manager
- web browsers config and install (primary: qutebrowser, alt1: brave, alt2: tor)
- config for mpd, and client(s), (mpd clients to consider: mpc, ncmpcpp, ncmpc, inori)
- get find, xargs, and awk (use nawk) as unified as i can across system types
## optional
- pick rss reader; newsboat? others? option with inbox and separate queues?
- make all these scripts POSIX-compliant (or at least usable in ksh/oksh)

View File

@@ -1,8 +1,8 @@
# Notes regarding my workflow and system use
# notes regarding my workflow and system use
## workspaces layout
idea from the ThePrimeagen: designated workspace/label/desktop per app/purpose
idea from the ThePrimeagen: designated workspace/tags/desktop per app/purpose
### current layout
@@ -11,53 +11,33 @@ idea from the ThePrimeagen: designated workspace/label/desktop per app/purpose
| 1. | system monitor (htop)
| 2. | music makeing - misc
| 3. | music making - daw
| 4. | stack: drawing (gimp), obsidian
| 4. | drawing (gimp), obsidian
| 5. | listening/wathcing (any music, audio, or video)
| 6. | comms (emails, chats, av/calls)
| 7. | web browser
| 8. | terminal (primary; one-off terminals & tui apps can be anywhere)
| 9. | programming - misc (whatever is not in primary terminal)
| 0. | general - misc (catch-all)
| 8. | primary terminal (with tmux)
| 9. | general - misc (catch-all)
| 0. | games
### guiding ideas
- 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)
- note: programs which i'm likely to use with peripherals (i.e. trackpad, mouse, stylus,
etc) should be where i can navigate those screens with one hand
- for me, my left hand would still be on the keyboard, so: workspaces 1 through 5
### usage 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 any
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
- mental model for navigating windows:
- each window is in a stack
- keybinds: mod + j/k, to move down/up the stack
- each tab is in a circular list (imagine it is horizontal)
- keybinds: mod + h/l, to move left/right in this list
- note: in primary terminal, i'm running tmux, which has its own navigation approach,
refer to the tmux.conf and tmux-session-init scripts
- my default approach is to run windows in fullscreen
- note: on macOS, this is not mac's notion of fullscreen with windows essentially
moved to a new desktop; instead, i just want the windows taking up all of the
normal screen space (excluding any menu bar at the top of the screen)
- for the workspaces where i keep multiple apps, i try to maintain consistent order of
those apps within the stack of each respective workspace
## theme usage

View File

@@ -31,6 +31,10 @@ fi
[[ -z $tmux_target_name ]] && exit 0
# TODO: bug in the check below, matches even when target name is a subset of an existing
# session's name, so a new session is not created in that case even though
# example: existing session with name 'dwm-suckless' will match at be opened even
# when attempting to open a new session with a target name of only 'dwm'
! (echo $tmux_existing_sessions | grep -q "$tmux_target_name") &&
tmux new-session -d -s $tmux_target_name -c $tmux_target_path &&
tmux_hydrate $tmux_target_name $tmux_target_path