summaryrefslogtreecommitdiff
path: root/.config/sway/config
diff options
context:
space:
mode:
authorluxagraf <sng@luxagraf.net>2020-02-16 13:23:56 -0500
committerluxagraf <sng@luxagraf.net>2020-02-16 13:23:56 -0500
commitcd507c92f617d4a8a3f7bb0b43e425491ef7184d (patch)
tree42144ef0f35b91e7955f570c5ecc4bcec3c4d780 /.config/sway/config
initial commit of dotfiles
Diffstat (limited to '.config/sway/config')
-rw-r--r--.config/sway/config219
1 files changed, 219 insertions, 0 deletions
diff --git a/.config/sway/config b/.config/sway/config
new file mode 100644
index 0000000..bcd235f
--- /dev/null
+++ b/.config/sway/config
@@ -0,0 +1,219 @@
+set $mod Mod1
+set $term alacritty
+set $background /mnt/storage/pictures/desktops/aspens1.jpg
+set $screenshot grim ~/pictures/screenshots/scrn-$(date +"%Y-%m-%d-%H-%M-%S").png
+set $screenclip slurp | grim -g - ~/pictures/screenshots/scrn-$(date +"%Y-%m-%d-%H-%M-%S").png
+
+font pango:Inconsolata, Icons 13
+
+# kill focused window
+bindsym $mod+Shift+q kill
+
+# Mouse behaviour wrt windows.
+focus_follows_mouse no
+
+# sleep and lock
+exec swayidle -w \
+ timeout 300 'swaylock -f -c 000000' \
+ timeout 600 'swaymsg "output * dpms off"' \
+ resume 'swaymsg "output * dpms on"' \
+ before-sleep 'swaylock -f -c 000000'
+
+# Shortcuts
+bindsym $mod+Return exec $term
+bindsym $mod+F11 exec $screenshot
+bindsym $mod+F12 exec $screenclip
+
+# background
+output * bg $background fill
+
+input "1739:0:Synaptics_TM3075-002" {
+ natural_scroll enabled
+}
+# change focus
+#bindsym $mod+j focus left
+#bindsym $mod+k focus right
+#bindsym $mod+l focus up
+#bindsym $mod+semicolon focus down
+
+# move focused window
+bindsym $mod+Shift+j move left
+bindsym $mod+Shift+k move right
+bindsym $mod+Shift+l move up
+bindsym $mod+Shift+semicolon move down
+
+# split in horizontal orientation
+bindsym $mod+Shift+h split h
+
+# split in vertical orientation
+bindsym $mod+v split v
+
+# enter fullscreen mode for the focused container
+bindsym $mod+Shift+f fullscreen toggle
+bindsym $mod+f floating toggle
+
+# change container layout (stacked, tabbed, toggle split)
+bindsym $mod+Shift+s layout stacking
+bindsym $mod+w layout tabbed
+bindsym $mod+e layout toggle split
+
+# focus the parent container
+bindsym $mod+a focus parent
+
+# focus the child container
+bindsym $mod+d focus child
+
+set $ws1 "1"
+set $ws2 "2"
+set $ws3 "3"
+set $ws4 "4"
+set $ws5 "5"
+set $ws6 "6"
+set $ws7 "7"
+set $ws8 "8"
+set $ws9 "9"
+
+
+# switch to workspace
+bindsym $mod+1 workspace $ws1
+bindsym $mod+2 workspace $ws2
+bindsym $mod+3 workspace $ws3
+bindsym $mod+4 workspace $ws4
+bindsym $mod+5 workspace $ws5
+bindsym $mod+6 workspace $ws6
+bindsym $mod+7 workspace $ws7
+bindsym $mod+8 workspace $ws8
+bindsym $mod+9 workspace $ws9
+bindsym $mod+0 workspace $ws10
+
+# move focused container to workspace
+bindsym $mod+Shift+1 move container to workspace $ws1
+bindsym $mod+Shift+2 move container to workspace $ws2
+bindsym $mod+Shift+3 move container to workspace $ws3
+bindsym $mod+Shift+4 move container to workspace $ws4
+bindsym $mod+Shift+5 move container to workspace $ws5
+bindsym $mod+Shift+6 move container to workspace $ws6
+bindsym $mod+Shift+7 move container to workspace $ws7
+bindsym $mod+Shift+8 move container to workspace $ws8
+bindsym $mod+Shift+9 move container to workspace $ws9
+bindsym $mod+Shift+0 move container to workspace $ws10
+
+# 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
+
+for_window [class="^Chromium$"] border none
+for_window [title="Oracle VM VirtualBox Manager"] floating enable
+for_window [class="^Pcmanfm"] floating enable
+for_window [class="^lxf$"] floating enable
+for_window [class="^Darktable$"] border none
+for_window [app_id="darktable"] border none
+for_window [app_id="python3"] border none, floating enable
+for_window [app_id="org.qutebrowser.qutebrowser"] border none
+for_window [app_id="kitty"] border none
+for_window [app_id="qutebrowser"] border none
+for_window [class="^URxvt"] border none
+for_window [class="^Firefox Developer"] border none
+for_window [class="^Vivaldi"] border none
+for_window [class="^qutebrowser"] border none
+for_window [app_id="^Alacritty"] border none
+for_window [class="Pavucontrol"] floating enable
+for_window [window_role="pop-up"] floating enable
+for_window [class="Yad"] floating enable
+for_window [class="feh"] floating enable
+for_window [class="QtPass"] floating enable
+for_window [class="hangouts.google.com"] floating disable
+for_window [class="hangouts.google.com"] border normal
+
+assign [class="qutebrowser"] $ws2
+assign [app_id="org.qutebrowser.qutebrowser"] $ws2
+assign [class="Firefox Developer"] $ws4
+assign [class="Slack"] $ws6
+assign [class="Vivaldi"] $ws4
+assign [class="Darktable"] $ws3
+assign [app_id="darktable"] $ws3
+assign [title="Oracle VM VirtualBox Manager"] $ws4
+
+#workspace switching
+bindsym $mod+k workspace next
+bindsym $mod+j workspace prev
+#bindsym $mod+space exec dmenu_run
+
+#Volumn and Brightness
+bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
+bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
+bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
+bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
+bindsym --locked XF86MonBrightnessUp exec --no-startup-id light -A 10
+bindsym --locked XF86MonBrightnessDown exec --no-startup-id light -U 10
+
+set $alsacard 1
+
+bindsym $mod+Shift+c reload
+bindsym $mod+Shift+r restart
+bindsym $mod+Shift+e exit
+# resize window (you can also use the mouse for that)
+mode "resize" {
+ # These bindings trigger as soon as you enter the resize mode
+
+ # Pressing left will shrink the window’s width.
+ # Pressing right will grow the window’s width.
+ # Pressing up will shrink the window’s height.
+ # Pressing down will grow the window’s height.
+ bindsym j resize shrink width 10 px or 10 ppt
+ bindsym k resize grow height 10 px or 10 ppt
+ bindsym l resize shrink height 10 px or 10 ppt
+ bindsym semicolon resize grow width 10 px or 10 ppt
+
+ # same bindings, but for the arrow keys
+ bindsym Left resize shrink width 10 px or 10 ppt
+ bindsym Down resize grow height 10 px or 10 ppt
+ bindsym Up resize shrink height 10 px or 10 ppt
+ bindsym Right resize grow width 10 px or 10 ppt
+
+ # back to normal: Enter or Escape
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+
+bindsym $mod+r mode "resize"
+
+# Input configuration
+input * {
+ xkb_variant nodeadkeys
+ xkb_options ctrl:nocaps
+}
+
+#exec --no-startup-id redshift-gtk -l 35.052234:-118.243685 -m randr -t 5700:3600 &
+exec --no-startup-id qutebrowser &
+exec --no-startup-id alacritty &
+exec --no-startup-id nextcloud &
+#exec --no-startup-id xset r rate 250 25 &
+#exec --no-startup-id xset -b
+#exec --no-startup-id xcape -e 'Control_L=Escape'
+
+# clipboard manager
+exec wl-paste -t text --watch clipman store --max-items=60 --histpath="~/.local/share/clipman-primary.json"
+bindsym $mod+h exec clipman pick --tool="wofi" --max-items=30 --histpath="~/.local/share/clipman-primary.json"
+
+bindsym $mod+Space exec alacritty --class 'launcher' --command bash -c 'compgen -c | sort -u | fzf | xargs -r swaymsg -t command exec'
+
+bindsym $mod+p exec alacritty --class 'launcher' --command bash -c 'pass clip --fzf | xargs -r swaymsg -t command exec'
+
+bindsym $mod+s exec alacritty --class 'launcher' --command bash -c 'pet exec | wl-copy | xargs -r swaymsg -t command exec'
+
+for_window [app_id="^launcher$"] floating enable, border none, resize set width 25 ppt height 20 ppt, move position 0 px 0 px
+
+bindsym $mod+b exec alacritty --class 'qutesearch' --command bash -c 'url=$(cat .config/qutebrowser/bookmarks/urls | fzf | cut -d \" \" -f 1) && qutebrowser "$url" | xargs -r swaymsg -t command exec'
+
+for_window [app_id="^qutesearch$"] floating enable, border none, resize set width 80 ppt height 60 ppt, move position 0 px 0 px
+
+exec_always ~/.config/waybar/waybar.sh