Add hotkeys and window management to sway.
This commit is contained in:
parent
a76bd4ebd3
commit
7e768022e7
@ -34,8 +34,112 @@ bindsym $mod+grave exec $term
|
||||
|
||||
exec ${pkgs.alacritty}/bin/alacritty
|
||||
|
||||
include ${base-hotkeys}
|
||||
include ${display-configs}
|
||||
include ${window-management}
|
||||
include ~/.config/sway/config.d/*.conf
|
||||
include /etc/sway/config.d/*
|
||||
'';
|
||||
};
|
||||
base-hotkeys = pkgs.writeTextFile {
|
||||
name = "base-hotkeys.conf";
|
||||
text = ''
|
||||
### Key bindings
|
||||
#
|
||||
# Basics:
|
||||
#
|
||||
# kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# start your launcher
|
||||
bindsym $mod+Return exec $menu
|
||||
|
||||
# Drag floating windows by holding down $mod and left mouse button.
|
||||
# Resize them with right mouse button + $mod.
|
||||
# Despite the name, also works for non-floating windows.
|
||||
# Change normal to inverse to use left mouse button for resizing and right
|
||||
# mouse button for dragging.
|
||||
floating_modifier $mod normal
|
||||
|
||||
# reload the configuration file
|
||||
bindsym $mod+Shift+c reload
|
||||
|
||||
# exit sway (logs you out of your Wayland session)
|
||||
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
|
||||
'';
|
||||
};
|
||||
display-configs = pkgs.writeTextFile {
|
||||
name = "display-configs.conf";
|
||||
text = ''
|
||||
output 'Unknown 0x095F 0x00000000' scale 1.5
|
||||
output 'BOE 0x095F Unknown' scale 1.5
|
||||
output 'BOE 0x0BCA Unknown' scale 1.5
|
||||
'';
|
||||
};
|
||||
window-management = pkgs.writeTextFile {
|
||||
name = "window-management.conf";
|
||||
text = ''
|
||||
#
|
||||
# Layout stuff:
|
||||
#
|
||||
# You can "split" the current object of your focus with
|
||||
# $mod+b or $mod+v, for horizontal and vertical splits
|
||||
# respectively.
|
||||
bindsym $mod+h splith
|
||||
bindsym $mod+v splitv
|
||||
|
||||
# Switch the current container between different layout styles
|
||||
bindsym $mod+s layout stacking
|
||||
bindsym $mod+w layout tabbed
|
||||
bindsym $mod+e layout toggle split
|
||||
|
||||
# Make the current focus fullscreen
|
||||
bindsym $mod+f fullscreen
|
||||
|
||||
# Toggle the current focus between tiling and floating mode
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
|
||||
# Swap focus between the tiling area and the floating area
|
||||
bindsym $mod+space focus mode_toggle
|
||||
|
||||
# move focus to the parent container
|
||||
bindsym $mod+a focus parent
|
||||
#
|
||||
# Scratchpad:
|
||||
#
|
||||
# Sway has a "scratchpad", which is a bag of holding for windows.
|
||||
# You can send windows there and get them back later.
|
||||
|
||||
# Move the currently focused window to the scratchpad
|
||||
bindsym $mod+Shift+minus move scratchpad
|
||||
|
||||
# Show the next scratchpad window or hide the focused scratchpad window.
|
||||
# If there are multiple scratchpad windows, this command cycles through them.
|
||||
bindsym $mod+minus scratchpad show
|
||||
#
|
||||
# Resizing containers:
|
||||
#
|
||||
mode "resize" {
|
||||
# left will shrink the containers width
|
||||
# right will grow the containers width
|
||||
# up will shrink the containers height
|
||||
# down will grow the containers height
|
||||
bindsym $left resize shrink width 10px
|
||||
bindsym $down resize grow height 10px
|
||||
bindsym $up resize shrink height 10px
|
||||
bindsym $right resize grow width 10px
|
||||
|
||||
# ditto, with arrow keys
|
||||
bindsym Left resize shrink width 10px
|
||||
bindsym Down resize grow height 10px
|
||||
bindsym Up resize shrink height 10px
|
||||
bindsym Right resize grow width 10px
|
||||
|
||||
# return to default mode
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
bindsym $mod+r mode "resize"
|
||||
'';
|
||||
};
|
||||
in
|
||||
|
Loading…
x
Reference in New Issue
Block a user