174 lines
		
	
	
	
		
			5.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			174 lines
		
	
	
	
		
			5.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| # 
 | |
| # ~/.config/sway/commands
 | |
| # Keybinds for sway
 | |
| # 
 | |
| 
 | |
| # Variables
 | |
| set {
 | |
|     $alt    Mod1
 | |
|     $flag   Mod4
 | |
|     $term   alacritty
 | |
|     $notify ~/.scripts/notify.sh
 | |
| }
 | |
| 
 | |
| # Focus
 | |
| bindsym {
 | |
|     $flag+h     focus left
 | |
|     $flag+j     focus down
 | |
|     $flag+k     focus up
 | |
|     $flag+l     focus right
 | |
| 
 | |
|     $flag+Left  focus left
 | |
|     $flag+Down  focus down
 | |
|     $flag+Up    focus up
 | |
|     $flag+Right focus right
 | |
|     
 | |
|     $flag+m     focus mode_toggle
 | |
|     $flag+p     focus parent
 | |
| }
 | |
| 
 | |
| # Move windows
 | |
| bindsym {
 | |
|     $flag+Shift+h       move left
 | |
|     $flag+Shift+j       move down
 | |
|     $flag+Shift+k       move up
 | |
|     $flag+Shift+l       move right
 | |
| 
 | |
|     $flag+Shift+Left    move left
 | |
|     $flag+Shift+Down    move down
 | |
|     $flag+Shift+Up      move up
 | |
|     $flag+Shift+Right   move right
 | |
|     
 | |
|     $flag+Next          move scratchpad
 | |
|     $flag+Prior         scratchpad show
 | |
| }
 | |
| 
 | |
| # Layouts
 | |
| bindsym {
 | |
|     $flag+w layout toggle split
 | |
|     $flag+x layout tabbed
 | |
|     $flag+c split h
 | |
|     $flag+v split v
 | |
| 
 | |
|     $flag+f         floating enable, border normal 1
 | |
|     $flag+Shift+f   floating disable, border pixel 1
 | |
|     
 | |
|     $alt+Next       border pixel 1      # Show window title
 | |
|     $alt+Prior      border normal 1     # Hide window title
 | |
| 
 | |
|     $flag+s         sticky toggle
 | |
| }
 | |
| 
 | |
| # Workspaces
 | |
| set {
 | |
|     $ws1 "1:1"
 | |
|     $ws2 "2:2"
 | |
|     $ws3 "3:3"
 | |
|     $ws4 "4:4"
 | |
|     $ws5 "5:5"
 | |
|     $ws6 "6:6"
 | |
|     $ws7 "7:7"
 | |
|     $ws8 "8:8"
 | |
|     $ws9 "9:9"
 | |
|     $ws10 "10:10"
 | |
|     $ws11 "11:Soc"
 | |
|     $ws12 "12:Ent"
 | |
| }
 | |
| 
 | |
| bindsym {
 | |
|     $flag+ampersand     workspace $ws1
 | |
|     $flag+eacute        workspace $ws2
 | |
|     $flag+quotedbl      workspace $ws3
 | |
|     $flag+apostrophe    workspace $ws4
 | |
|     $flag+parenleft     workspace $ws5
 | |
|     $flag+section       workspace $ws6
 | |
|     $flag+egrave        workspace $ws7
 | |
|     $flag+exclam        workspace $ws8
 | |
|     $flag+ccedilla      workspace $ws9
 | |
|     $flag+agrave        workspace $ws10
 | |
|     $flag+parenright    workspace $ws11
 | |
|     $flag+minus         workspace $ws12
 | |
| 
 | |
|     $flag+Shift+ampersand   move container to workspace $ws1, workspace $ws1
 | |
|     $flag+Shift+eacute      move container to workspace $ws2, workspace $ws2
 | |
|     $flag+Shift+quotedbl    move container to workspace $ws3, workspace $ws3
 | |
|     $flag+Shift+apostrophe  move container to workspace $ws4, workspace $ws4
 | |
|     $flag+Shift+parenleft   move container to workspace $ws5, workspace $ws5
 | |
|     $flag+Shift+section     move container to workspace $ws6, workspace $ws6
 | |
|     $flag+Shift+egrave      move container to workspace $ws7, workspace $ws7
 | |
|     $flag+Shift+exclam      move container to workspace $ws8, workspace $ws8
 | |
|     $flag+Shift+ccedilla    move container to workspace $ws9, workspace $ws9
 | |
|     $flag+Shift+agrave      move container to workspace $ws10, workspace $ws10
 | |
|     $flag+Shift+parenright  move container to workspace $ws11, workspace $ws11
 | |
|     $flag+Shift+minus       move container to workspace $ws0, workspace $ws12
 | |
| 
 | |
|     $flag+Control+j focus output 'eDP-1'
 | |
|     $flag+Control+h workspace prev_on_output
 | |
|     $flag+Control+l workspace next_on_output
 | |
|     $flag+Control+k focus output 'HDMI-A-1'
 | |
| 
 | |
|     $flag+Control+Down  focus output 'eDP-1'
 | |
|     $flag+Control+Left  workspace prev_on_output
 | |
|     $flag+Control+Right workspace next_on_output
 | |
|     $flag+Control+Up    focus output 'HDMI-A-1'
 | |
|    
 | |
|     $flag+Control+Shift+j   \
 | |
|         move container to output 'eDP-1', focus output 'eDP-1'
 | |
|     $flag+Control+Shift+h   \
 | |
|         move container to workspace prev_on_output, workspace prev_on_output
 | |
|     $flag+Control+Shift+l   \
 | |
|         move container to workspace next_on_output, workspace next_on_output
 | |
|     $flag+Control+Shift+k   \
 | |
|         move container to output 'HDMI-A-1', focus output 'HDMI-A-1'
 | |
|     
 | |
|     $flag+Control+Shift+Down    \
 | |
|         move container to output 'eDP-1', focus output 'eDP-1'
 | |
|     $flag+Control+Shift+Left    \
 | |
|         move container to workspace prev_on_output, workspace prev_on_output
 | |
|     $flag+Control+Shift+Right   \
 | |
|         move container to workspace next_on_output, workspace next_on_output
 | |
|     $flag+Control+Shift+Up      \
 | |
|         move container to output 'HDMI-A-1', focus output 'HDMI-A-1'
 | |
| }
 | |
| 
 | |
| # System
 | |
| bindsym --locked {
 | |
|     # Brightness
 | |
|     XF86MonBrightnessDown       exec brightnessctl -e s 5%- && $notify -b
 | |
|     XF86MonBrightnessUp         exec brightnessctl -e s +5% && $notify -b
 | |
| 
 | |
|     # Volume control (Pulsemixer is slow!)
 | |
|     XF86AudioRaiseVolume        exec pamixer -i 2 --set-limit 100 && $notify -v
 | |
|     XF86AudioLowerVolume        exec pamixer -d 2 && $notify -v
 | |
|     XF86AudioMute               exec pamixer -t && $notify -v
 | |
|     XF86AudioMicMute            exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
 | |
| 
 | |
|     # Media control
 | |
|     F7                          exec playerctl play-pause
 | |
|     Shift+XF86AudioLowerVolume  exec playerctl previous
 | |
|     Shift+XF86AudioRaiseVolume  exec playerctl next
 | |
| }
 | |
| 
 | |
| # Special commands
 | |
| set $fzf ~/.scripts/fzf-jump
 | |
| bindsym {
 | |
|     # Reload sway
 | |
|     $alt+Shift+r    reload
 | |
|     # Dialog to exit sway
 | |
|     $alt+Shift+e    exec swaynag -t warning -m 'Do you really want to exit sway?' \
 | |
|         -B 'Yes, exit sway' 'swaymsg exit'  
 | |
| 
 | |
|     $flag+q kill                    # Kill focused window
 | |
|     $flag+Return exec $term -e bash -c "zellij --layout=compact attach || zellij --layout=compact"         # Start a terminal
 | |
|     $flag+Delete exec swaylock      # Lockscreen
 | |
| 
 | |
|     # Start application launcher
 | |
|     $alt+space  exec $term --title 'FZF-Jump' -e $fzf/launcher.sh
 | |
|     # Window switcher
 | |
|     $alt+Tab    exec $term --title 'FZF-Jump' -e $fzf/standalone.sh $fzf/modules/windows.sh $fzf/modules/workspaces.sh
 | |
| 
 | |
|     # File explorer
 | |
|     $flag+e     exec $term -e vifm
 | |
|     # Internet explorer
 | |
|     $flag+i     exec firefox
 | |
| }
 |