From 4d563be7a4d689cbdca3501c44453816c19b6f2d Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Sat, 11 Dec 2021 11:13:45 +0100 Subject: [PATCH 1/4] river: Add dunst key mappings Added notification dismissal and recovery key binds to river key bindings. This is necessary since in wayland dunst can't just receive key presses anymore. The new key binds are: ``` Mod+N - dismiss 1 notification Mod+Shift+N - dismiss all notifications Mod+Control+N - display last dismissed notification(s) again ``` --- wayland/.config/river/init | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/wayland/.config/river/init b/wayland/.config/river/init index 853b532..d6e214d 100755 --- a/wayland/.config/river/init +++ b/wayland/.config/river/init @@ -48,16 +48,20 @@ riverctl map normal $mod backspace spawn "powermenu" # Open Bookmark search riverctl map normal None XF86Search spawn "qutedmenu" +riverctl map normal $mod+Shift O spawn "qutedmenu" # Open clipboard history riverctl map normal $mod+Shift Space spawn "clipman pick --tool=bemenu" -# Open floting calculator +# Open floating calculator riverctl map normal $mod+Shift R spawn "$term --class float -e qalc" +# Open emoji picker +riverctl map normal $mod+Shift E spawn "bemoji -t" + # Desktop theming # shellcheck disable=SC2016 -riverctl map normal $mod F8 spawn 'styler set $(styler list themes | bemenu)' +riverctl map normal $mod+Shift S spawn 'styler set $(styler list themes | bemenu)' # Password dropdown frontend riverctl map normal $mod+Shift P spawn "pass-pick" @@ -71,6 +75,11 @@ riverctl map normal Shift Print spawn "screenshot | sharefile -" riverctl map normal $mod Print spawn "screenshot region" riverctl map normal $mod+Shift Print spawn "screenshot region | sharefile -" +# control dunst notification daemon +riverctl map normal $mod N spawn "dunstctl close" +riverctl map normal $mod+Shift N spawn "dunstctl close-all" +riverctl map normal $mod+Control N spawn "dunstctl history-pop" + # # Clear clipboard # riverctl map normal $mod BackSpace spawn 'wl-copy -c && printf ''|xclip -selection c' From 60ae4057900936c9160e581c4423ece7b12c897c Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Sat, 11 Dec 2021 11:17:58 +0100 Subject: [PATCH 2/4] scripts: Add custom ytdl options for vidl Allow setting custom ytdl options for the vidl video downloader. Can be set through $YT_DL_OPTS environment option. --- scripts/.local/bin/vidl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/.local/bin/vidl b/scripts/.local/bin/vidl index 9d4dab3..f5b4e36 100755 --- a/scripts/.local/bin/vidl +++ b/scripts/.local/bin/vidl @@ -5,6 +5,8 @@ DL_FOLDER="${DL_FOLDER:-${XDG_VIDEOS_DIR:-$HOME/videos}}/inbox" ARCHIVE_FOLDER="${ARCHIVE_FOLDER:-${XDG_VIDEOS_DIR:-$HOME/videos}}/archive" YT_DL_CMD="${YT_DL_CMD:-yt-dlp}" +yt_default_opts=(-f "best[height\<=1080]" --retries 15 --embed-subs --sub-lang "en,de,es,fr") +declare -a YT_DL_OPTS=${YT_DL_OPTS:-( "${yt_default_opts[@]}" )} YT_DL_TITLE="""${YT_DL_TITLE:-%(channel)s_%(title)s_%(id)s}""" show_help() { @@ -71,10 +73,8 @@ _findfile() { YT_DL_TITLE="%(channel)s_%(title)s_%(id)s" _download() { "$YT_DL_CMD" \ - -f 'best[height<=1080]' \ -o "$DL_FOLDER/$YT_DL_TITLE.%(ext)s" \ - --write-sub --write-auto-sub --embed-subs --sub-lang en,de,es,fr \ - --retries 15 \ + "${YT_DL_OPTS[@]}" \ "$url" } From 8113508e6d5878295a05d139a96c76d59086954e Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Tue, 14 Dec 2021 14:28:08 +0100 Subject: [PATCH 3/4] pass: Add wtype typer tool to pass-pick Added wtype as the preferred alternative to ydotool for wayland setups to the pass picking sript. Still supports xdotool and ydotool. --- bootstrap/packages.txt | 2 +- pass/.local/bin/pass-pick | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/bootstrap/packages.txt b/bootstrap/packages.txt index a0f0eb5..674b898 100644 --- a/bootstrap/packages.txt +++ b/bootstrap/packages.txt @@ -256,7 +256,7 @@ waylock wl-clipboard clipman libqalculate -ydotool brightnessctl grim slurp +wtype diff --git a/pass/.local/bin/pass-pick b/pass/.local/bin/pass-pick index 02ccfe2..d494fdf 100755 --- a/pass/.local/bin/pass-pick +++ b/pass/.local/bin/pass-pick @@ -105,7 +105,7 @@ set_defaults() { KEY_ENTRYMENU_SHOWFIELD="${KEY_ENTRYMENU_SHOWFIELD:-$(get_config KEY_ENTRYMENU_SHOWFIELD Alt+s)}" KEY_ENTRYMENU_QUIT="${PP_KEY_ENTRYMENU_QUIT:-$(get_config KEY_ENTRYMENU_QUIT Alt+BackSpace)}" - AUTOFILL_BACKEND="${PP_AUTOFILL_BACKEND:-$(get_config AUTOFILL_BACKEND ydotool)}" + AUTOFILL_BACKEND="${PP_AUTOFILL_BACKEND:-$(get_config AUTOFILL_BACKEND wtype)}" AUTOFILL_CHAIN="${PP_AUTOENTRY_CHAIN:-$(get_config AUTOFILL_CHAIN 'username :tab password')}" AUTOFILL_DELAY="${PP_AUTOENTRY_DELAY:-$(get_config AUTOFILL_DELAY 30)}" PASS_USERNAME_FIELD="${PP_PASS_USERNAME_FIELD:-$(get_config PASS_USERNAME_FIELD 'username user login')}" @@ -213,7 +213,13 @@ _type() { local toolmode="$1" local key="$2" - if [ "$tool" = "xdotool" ]; then + if [ "$tool" = "wtype" ]; then + if [ "$toolmode" = "type" ]; then + "$tool" -s "${AUTOFILL_DELAY}" -- "$key" + elif [ "$toolmode" = "key" ]; then + "$tool" -s "${AUTOFILL_DELAY}" -k "$key" + fi + elif [ "$tool" = "xdotool" ]; then "$tool" "$toolmode" --delay "${AUTOFILL_DELAY}" "$key" elif [ "$tool" = "ydotool" ]; then "$tool" "$toolmode" --key-delay "${AUTOFILL_DELAY}" "$key" From 65be7e8eac9135c22af4a37cc5a05392c1cc8fc4 Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Tue, 14 Dec 2021 15:31:10 +0100 Subject: [PATCH 4/4] river: Move often used keybinds around Moved border snapping/aligning to a quicker key combination (mod+ctrl+hjkl) and instead move rivercarro layout changes t the more inaccessible extra moving mode (alt+r). --- wayland/.config/river/init | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/wayland/.config/river/init b/wayland/.config/river/init index d6e214d..2327311 100755 --- a/wayland/.config/river/init +++ b/wayland/.config/river/init @@ -98,20 +98,18 @@ riverctl map normal $mod+Shift K swap previous # bump the focused view to the top of the layout stack riverctl map normal $mod+Shift Return zoom -# decrease/increase the main ratio of layout -riverctl map normal $mod+Shift H send-layout-cmd rivercarro "main-ratio -0.05" -riverctl map normal $mod+Shift L send-layout-cmd rivercarro "main-ratio +0.05" - -# increment/decrement the main count of layout -riverctl map normal $mod+Control H send-layout-cmd rivercarro "main-count +1" -riverctl map normal $mod+Control L send-layout-cmd rivercarro "main-count -1" - # change layout orientation riverctl map normal $mod Up send-layout-cmd rivercarro "main-location top" riverctl map normal $mod Right send-layout-cmd rivercarro "main-location right" riverctl map normal $mod Down send-layout-cmd rivercarro "main-location bottom" riverctl map normal $mod Left send-layout-cmd rivercarro "main-location left" +# snap views to screen edges +riverctl map normal $mod+Control H snap left +riverctl map normal $mod+Control J snap down +riverctl map normal $mod+Control K snap up +riverctl map normal $mod+Control L snap right + # Mod+F to toggle fullscreen riverctl map normal $mod F toggle-fullscreen @@ -126,24 +124,22 @@ riverctl map-pointer normal $mod BTN_RIGHT resize-view riverctl declare-mode interact_float riverctl map normal $modemod R enter-mode interact_float riverctl map interact_float $modemod R enter-mode normal - # resize views on screen riverctl map interact_float $mod H resize horizontal -100 riverctl map interact_float $mod J resize vertical 100 riverctl map interact_float $mod K resize vertical -100 riverctl map interact_float $mod L resize horizontal 100 - # move views around screen -riverctl map interact_float None H move left 100 -riverctl map interact_float None J move down 100 -riverctl map interact_float None K move up 100 -riverctl map interact_float None L move right 100 - -# snap views to screen edges -riverctl map interact_float $mod+Shift H snap left -riverctl map interact_float $mod+Shift J snap down -riverctl map interact_float $mod+Shift K snap up -riverctl map interact_float $mod+Shift L snap right +riverctl map interact_float $mod+Shift H move left 100 +riverctl map interact_float $mod+Shift J move down 100 +riverctl map interact_float $mod+Shift K move up 100 +riverctl map interact_float $mod+Shift L move right 100 +# decrease/increase the main ratio of layout +riverctl map interact_float None H send-layout-cmd rivercarro "main-ratio -0.05" +riverctl map interact_float None L send-layout-cmd rivercarro "main-ratio +0.05" +# increment/decrement the main layout +riverctl map interact_float None J send-layout-cmd rivercarro "main-count +1" +riverctl map interact_float None K send-layout-cmd rivercarro "main-count -1" ### End resize and moving mode # focus the next/previous output