Tiling window manager users: how exactly do you use yours?
Do you have advanced keybindings for bringing up frequently used programs?
Are there less common layouts you use frequently?
Do you use any advanced or fancy features?
Tiling window manager users: how exactly do you use yours?
Do you have advanced keybindings for bringing up frequently used programs?
Are there less common layouts you use frequently?
Do you use any advanced or fancy features?
i3 here, mine is very different from the usual, I made it to use the left hand as much as possible:
How I launch commonly used programs:
bindsym $mod+F1 exec --no-startup-id pgrep librewolf && i3-msg "[class=LibreWolf] focus" && dunstify -r 34 -t 1500 "LibreWolf" || librewolf | dunstify -r 34 -t 2000 "Launching non-XDG Compliant Software: LibreWolf" bindsym $mod+Shift+F1 exec --no-startup-id librewolf | dunstify -r 35 -t 1000 "New LibreWolf Window" bindsym $mod+F2 exec --no-startup-id thunar bindsym $mod+F3 exec --no-startup-id pgrep deadbeef && i3-msg "[class=Deadbeef] focus" && dunstify -r 36 -t 1500 "DeaDBeef" || deadbeef | dunstify -r 36 -t 2000 "Launching DeaDBeef" bindsym $mod+F4 exec --no-startup-id pgrep ferdium && i3-msg "[class=Ferdium] focus" && dunstify -r 37 -t 1500 "Ferdium" || ferdium | dunstify -r 37 -t 2000 "Launching Ferdium" bindsym $mod+F5 exec --no-startup-id pgrep freetube && i3-msg "[class=FreeTube] focus" && dunstify -r 38 -t 1500 "FreeTube" || freetube | dunstify -r 38 -t 2000 "Launching Freetube" bindsym $mod+F6 exec --no-startup-id pgrep steam && i3-msg "[class=steam] focus" && dunstify -r 39 -t 1500 "Steam" || exec steam | dunstify -r 39 -t 2000 "Launching Ruthless non-XDG Compliant Software: Steam" "(Also *removed*s your screensaver lol)" bindsym $mod+F7 exec --no-startup-id pgrep yuzu && i3-msg "[class=yuzu] focus" && dunstify -r 40 -t 1500 "yuzu" || gamemoderun yuzu | dunstify -r 40 -t 2000 "Launching yuzu"
If the program is already opened and I press the key it will focus on it instead of opening another window, to open another window for the browser I need to press Shift. (And yes I have some beef against programs that don’t follow xdg base directory specs lol)
For navigation keys, I use esdf instead of wasd, I can also use the arrow keys:
bindsym $mod+Shift+r layout toggle splitv tabbed splith bindsym $mod+r layout toggle splith tabbed splitv bindsym $mod+q kill bindsym $mod+z split toggle bindsym $mod+g fullscreen toggle bindsym $mod+Shift+space floating toggle, resize set 710 400, move position center bindsym $mod+Mod1+space floating toggle bindsym $mod+space focus mode_toggle bindsym $mod+Shift+x move scratchpad, exec --no-startup-id dunstify -r 33 -t 1500 "Window Moved to Scratchpad" bindsym $mod+x scratchpad show, exec --no-startup-id dunstify -r 33 -t 1500 "Scratchpad Show" bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right bindsym $mod+a exec --no-startup-id ~/.local/bin/scripts/togglefocus.sh bindsym $mod+s focus left bindsym $mod+d focus down bindsym $mod+e focus up bindsym $mod+f focus right bindsym $mod+Ctrl+Left resize shrink width 100 px or 15 ppt bindsym $mod+Ctrl+Down resize shrink height 100 px or 15 ppt bindsym $mod+Ctrl+Up resize grow height 100 px or 15 ppt bindsym $mod+Ctrl+Right resize grow width 100 px or 15 ppt bindsym $mod+Ctrl+s resize shrink width 100 px or 15 ppt bindsym $mod+Ctrl+d resize shrink height 100 px or 15 ppt bindsym $mod+Ctrl+e resize grow height 100 px or 15 ppt bindsym $mod+Ctrl+f resize grow width 100 px or 15 ppt
I had to use an script for mod+a because i3 can’t use the same keybind to focus parent and focus child (I use it like select all thing).
The default config of i3 has a resize mode, I got rid of all of that, it is much better to use mod+control to resize lol.
I also have the mouse side buttons to control media playback as well as making the window float with middleclick:
bindsym --whole-window $mod+button2 floating toggle, resize set 710 400, move position center bindsym --whole-window $mod+button9 exec --no-startup-id playerctl next bindsym --whole-window $mod+button8 exec --no-startup-id playerctl previous bindsym --whole-window $mod+Shift+button8 exec --no-startup-id playerctl play-pause && sleep 0.2 && playerctl metadata --format '{{ status }}: {{ title }} by {{ artist }}' | xargs -0 -I {} dunstify -r 11 -t 2000 "Playback" "{}"
edit: lemmy can’t display && when I paste it as code lol