From 9498650a8932dae0d5891f974b6545e603c54b36 Mon Sep 17 00:00:00 2001 From: zachir Date: Mon, 21 Jul 2025 16:55:37 -0500 Subject: Checkout hyprscrolling --- hypr/hyprland.conf | 51 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 13 deletions(-) diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 48ac312..e359358 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -89,7 +89,7 @@ general { #col.inactive_border = rgba(595959aa) col.active_border = rgba(198844ee) col.inactive_border = rgba(1b1d1cee) - layout = master + layout = scrolling } #}}} @@ -174,6 +174,16 @@ master { } #}}} +#{{{ Hyprscrolling layout options +plugin:hyprscrolling { + fullscreen_on_one_column = true + column_width = 0.5 + explicit_column_widths = 0.333, 0.5, 0.667, 1.0 + focus_fit_method = 1 + follow_focus = true +} +#}}} + #{{{ Gestures options gestures { # See https://wiki.hyprland.org/Configuring/Variables/ for more @@ -210,18 +220,33 @@ $secdMod = ALT #}}} #{{{ Master layout binds -# Master layout binds -bind = $mainMod+SHIFT, Return, layoutmsg, swapwithmaster master #MASTER -bind = $mainMod+SHIFT, J, layoutmsg, swapnext #MASTER -bind = $mainMod+SHIFT, K, layoutmsg, swapprev #MASTER -bind = $mainMod+SHIFT, H, layoutmsg, addmaster #MASTER -bind = $mainMod+SHIFT, L, layoutmsg, removemaster #MASTER -binde = $mainMod, J, layoutmsg, cyclenext #MASTER -binde = $mainMod, K, layoutmsg, cycleprev #MASTER -binde = $mainMod, H, splitratio, -0.01 #MASTER -binde = $mainMod, L, splitratio, +0.01 #MASTER -bind = $mainMod+SHIFT, O, splitratio, exact 0.55 #MASTER -bind = $mainMod, O, splitratio, exact 0.69 #MASTER +## Master layout binds +#bind = $mainMod+SHIFT, Return, layoutmsg, swapwithmaster master #MASTER +#bind = $mainMod+SHIFT, J, layoutmsg, swapnext #MASTER +#bind = $mainMod+SHIFT, K, layoutmsg, swapprev #MASTER +#bind = $mainMod+SHIFT, H, layoutmsg, addmaster #MASTER +#bind = $mainMod+SHIFT, L, layoutmsg, removemaster #MASTER +#binde = $mainMod, J, layoutmsg, cyclenext #MASTER +#binde = $mainMod, K, layoutmsg, cycleprev #MASTER +#binde = $mainMod, H, splitratio, -0.01 #MASTER +#binde = $mainMod, L, splitratio, +0.01 #MASTER +#bind = $mainMod+SHIFT, O, splitratio, exact 0.55 #MASTER +#bind = $mainMod, O, splitratio, exact 0.69 #MASTER +#}}} + +#{{{ hyprscrolling layout binds +# hyprscrolling layout binds +#bind = $mainMod+SHIFT, H, layoutmsg, move -1 #HYPRSCROLLING +#bind = $mainMod+SHIFT, L, layoutmsg, move +1 #HYPRSCROLLING +bind = $mainMod+SHIFT, H, layoutmsg, movewindowto l #HYPRSCROLLING +bind = $mainMod+SHIFT, L, layoutmsg, movewindowto r #HYPRSCROLLING +bind = $mainMod+SHIFT, J, layoutmsg, colresize -conf #HYPRSCROLLING +bind = $mainMod+SHIFT, K, layoutmsg, colresize +conf #HYPRSCROLLING +bind = $mainMod, H, movefocus, l #HYPRSCROLLING +bind = $mainMod, J, movefocus, u #HYPRSCROLLING +bind = $mainMod, K, movefocus, d #HYPRSCROLLING +bind = $mainMod, L, movefocus, r #HYPRSCROLLING +bind = $mainMod+SHIFT, Return, layoutmsg, promote #HYPRSCROLLING #}}} #{{{ Group binds -- cgit v1.2.3 From fc10b3b41be868b9a2999d60d267dec45fe210f2 Mon Sep 17 00:00:00 2001 From: zachir Date: Mon, 21 Jul 2025 16:58:31 -0500 Subject: Make hyprload reload first --- hypr/hyprland.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index e359358..17d19f7 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -8,8 +8,8 @@ monitor = , preferred, auto, 1 #{{{ Autostart # Execute your favorite apps at launch # exec-once = waybar & hyprpaper & firefox -exec-once = xdph exec-once = hyprpm reload -n +exec-once = xdph exec-once = hyprpaper #exec-once = hypridle exec-once = waybar -- cgit v1.2.3 From 4bd035e99f5ba44d0423d472d70ca9fb7ad72d67 Mon Sep 17 00:00:00 2001 From: zachir Date: Mon, 21 Jul 2025 17:10:26 -0500 Subject: Install hyprland plugins in Makefile --- Makefile | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 28bc66e..e40751b 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,18 @@ DCONFS := doas.conf all: -install: install-zshconfigs install-shconfigs vimplug-vim +install: install-hyprplugins install-zshconfigs install-shconfigs vimplug-vim + +install-hyprplugins: + @echo "Installing hyprsplit..." + @hyprpm add https://github.com/shezdy/hyprsplit + @echo "Installing hyprland-plugins..." + @hyprpm add https://github.com/hyprwm/hyprland-plugins + @echo "Enabling hyprsplit..." + @hyprpm enable hyprsplit + @echo "Enabling hyprscrolling..." + @hyprpm enable hyprscrolling + @echo "Done." install-zshconfigs: $(ZCONFS) @echo "Installing zsh conf files..." -- cgit v1.2.3 From 74d02fc247396206e8a3893b2278af8c49e3e7c1 Mon Sep 17 00:00:00 2001 From: zachir Date: Mon, 21 Jul 2025 17:10:42 -0500 Subject: Set Makefile targets as PHONY --- Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile b/Makefile index e40751b..3d220be 100644 --- a/Makefile +++ b/Makefile @@ -45,3 +45,5 @@ doas-conf: $(DCONFS) @echo "doas.conf..." @sudo cp -n doas.conf /etc/doas.conf @echo "Done." + +.PHONY: install-hyprplugins install-zshconfigs install-shconfigs vimplug-vim doas-conf install -- cgit v1.2.3 From ea094c356c47a7cebd693dc13bc28b623af770ea Mon Sep 17 00:00:00 2001 From: zachir Date: Mon, 21 Jul 2025 17:49:38 -0500 Subject: Switch back to kitty --- hypr/hyprland.conf | 10 +++++----- hypr/pyprland.toml | 20 ++++++++++---------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 17d19f7..6c893e8 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -104,7 +104,7 @@ misc { disable_hyprland_logo = true disable_splash_rendering = true enable_swallow = true - swallow_regex = ^(st-256color)$ + swallow_regex = ^(kitty)$ swallow_exception_regex = ^(wev|.*ueberzug|n?vi?m? .*)$ vfr = true vrr = 3 @@ -202,9 +202,9 @@ plugin { #{{{ Windowrules # Example windowrule v1 -# windowrule = float, ^(st)$ +# windowrule = float, ^(kitty)$ # Example windowrule v2 -# windowrule = float, class:^(st)$, title:^(st)$ +# windowrule = float, class:^(kitty)$, title:^(kitty)$ # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more #}}} @@ -383,8 +383,8 @@ bind = $mainMod $secdMod, P, exec, passmenu #}}} #{{{ Misc bindings -bind = $mainMod, Return, exec, st -bind = $mainMod $secdMod, F, exec, st lf +bind = $mainMod, Return, exec, kitty +bind = $mainMod $secdMod, F, exec, kitty -e lf bind = $mainMod, W, exec, pkill -USR1 waybar bind = $mainMod, Q, exec, loginctl lock-session bind = $mainMod $secdMod CONTROL, Q, exec, systemctl suspend diff --git a/hypr/pyprland.toml b/hypr/pyprland.toml index 038e8dc..a0aa176 100644 --- a/hypr/pyprland.toml +++ b/hypr/pyprland.toml @@ -7,7 +7,7 @@ plugins = [ [scratchpads.sphtop] animation = "" -command = "st -c sphtop htop" +command = "kitty --class sphtop htop" class = "sphtop" lazy = true size = "50% 50%" @@ -15,7 +15,7 @@ position = "25% 25%" [scratchpads.spterm] animation = "" -command = "st -c spterm" +command = "kitty --class spterm" class = "spterm" lazy = true size = "50% 50%" @@ -23,7 +23,7 @@ position = "25% 25%" [scratchpads.sppmxr] animation = "" -command = "st -c sppmxr pulsemixer" +command = "kitty --class sppmxr pulsemixer" class = "sppmxr" lazy = true size = "50% 50%" @@ -31,7 +31,7 @@ position = "25% 25%" [scratchpads.spblue] animation = "" -command = "st -c spblue bluetoothctl" +command = "kitty --class spblue bluetoothctl" class = "spblue" lazy = true size = "50% 50%" @@ -39,7 +39,7 @@ position = "25% 25%" [scratchpads.spncmp] animation = "" -command = "st -c spncmp ncmpcpp" +command = "kitty --class spncmp ncmpcpp" class = "spncmp" lazy = true size = "50% 50%" @@ -47,7 +47,7 @@ position = "25% 25%" [scratchpads.spmutt] animation = "" -command = "st -c spmutt neomutt" +command = "kitty --class spmutt neomutt" class = "spmutt" lazy = true size = "50% 50%" @@ -55,7 +55,7 @@ position = "25% 25%" [scratchpads.spprof] animation = "" -command = "st -c spprof profanity" +command = "kitty --class spprof profanity" class = "spprof" lazy = true size = "50% 50%" @@ -63,7 +63,7 @@ position = "25% 25%" [scratchpads.spirss] animation = "" -command = "st -c spirss irssi" +command = "kitty --class spirss irssi" class = "spirss" lazy = true size = "50% 50%" @@ -71,7 +71,7 @@ position = "25% 25%" [scratchpads.sptodo] animation = "" -command = "st -c sptodo todo" +command = "kitty --class sptodo todo" class = "sptodo" lazy = true size = "50% 50%" @@ -79,7 +79,7 @@ position = "25% 25%" [scratchpads.sptrmc] animation = "" -command = "st -c sptrmc tremc" +command = "kitty --class sptrmc tremc" class = "sptremc" lazy = true size = "50% 50%" -- cgit v1.2.3 From 05f6b181dbe26e590a00b911f8f4de20bcd284cf Mon Sep 17 00:00:00 2001 From: zachir Date: Mon, 21 Jul 2025 17:49:56 -0500 Subject: Fix hypr scratchpad name helvum --- hypr/pyprland.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hypr/pyprland.toml b/hypr/pyprland.toml index a0aa176..2ac36a0 100644 --- a/hypr/pyprland.toml +++ b/hypr/pyprland.toml @@ -85,7 +85,7 @@ lazy = true size = "50% 50%" position = "25% 25%" -[scratchpads.qpwgraph] +[scratchpads.helvum] animation = "" command = "helvum" class = "org.pipewire.Helvum" -- cgit v1.2.3 From b12fe55655b081ba56d85ab605fd142dcba69102 Mon Sep 17 00:00:00 2001 From: zachir Date: Mon, 21 Jul 2025 17:53:50 -0500 Subject: Add setting up hyprland with make install --- Makefile | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 3d220be..12854c4 100644 --- a/Makefile +++ b/Makefile @@ -7,13 +7,18 @@ all: install: install-hyprplugins install-zshconfigs install-shconfigs vimplug-vim -install-hyprplugins: +install-hyprplugins: install-hyprsplit install-hyprland-plugins + +install-hyprsplit: @echo "Installing hyprsplit..." - @hyprpm add https://github.com/shezdy/hyprsplit - @echo "Installing hyprland-plugins..." - @hyprpm add https://github.com/hyprwm/hyprland-plugins + @hyprpm add https://github.com/shezdy/hyprsplit || echo "Already installed!" @echo "Enabling hyprsplit..." @hyprpm enable hyprsplit + @echo "Done." + +install-hyprland-plugins: + @echo "Installing hyprland-plugins..." + @hyprpm add https://github.com/hyprwm/hyprland-plugins || echo "Already installed!" @echo "Enabling hyprscrolling..." @hyprpm enable hyprscrolling @echo "Done." -- cgit v1.2.3 From 9b210e8d01027ce84673fe12c933e8d246b2d0da Mon Sep 17 00:00:00 2001 From: zachir Date: Mon, 21 Jul 2025 19:58:08 -0500 Subject: Switch back to st This reverts commit ea094c356c47a7cebd693dc13bc28b623af770ea. --- hypr/hyprland.conf | 10 +++++----- hypr/pyprland.toml | 20 ++++++++++---------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 6c893e8..17d19f7 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -104,7 +104,7 @@ misc { disable_hyprland_logo = true disable_splash_rendering = true enable_swallow = true - swallow_regex = ^(kitty)$ + swallow_regex = ^(st-256color)$ swallow_exception_regex = ^(wev|.*ueberzug|n?vi?m? .*)$ vfr = true vrr = 3 @@ -202,9 +202,9 @@ plugin { #{{{ Windowrules # Example windowrule v1 -# windowrule = float, ^(kitty)$ +# windowrule = float, ^(st)$ # Example windowrule v2 -# windowrule = float, class:^(kitty)$, title:^(kitty)$ +# windowrule = float, class:^(st)$, title:^(st)$ # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more #}}} @@ -383,8 +383,8 @@ bind = $mainMod $secdMod, P, exec, passmenu #}}} #{{{ Misc bindings -bind = $mainMod, Return, exec, kitty -bind = $mainMod $secdMod, F, exec, kitty -e lf +bind = $mainMod, Return, exec, st +bind = $mainMod $secdMod, F, exec, st lf bind = $mainMod, W, exec, pkill -USR1 waybar bind = $mainMod, Q, exec, loginctl lock-session bind = $mainMod $secdMod CONTROL, Q, exec, systemctl suspend diff --git a/hypr/pyprland.toml b/hypr/pyprland.toml index 2ac36a0..5c1d343 100644 --- a/hypr/pyprland.toml +++ b/hypr/pyprland.toml @@ -7,7 +7,7 @@ plugins = [ [scratchpads.sphtop] animation = "" -command = "kitty --class sphtop htop" +command = "st -c sphtop htop" class = "sphtop" lazy = true size = "50% 50%" @@ -15,7 +15,7 @@ position = "25% 25%" [scratchpads.spterm] animation = "" -command = "kitty --class spterm" +command = "st -c spterm" class = "spterm" lazy = true size = "50% 50%" @@ -23,7 +23,7 @@ position = "25% 25%" [scratchpads.sppmxr] animation = "" -command = "kitty --class sppmxr pulsemixer" +command = "st -c sppmxr pulsemixer" class = "sppmxr" lazy = true size = "50% 50%" @@ -31,7 +31,7 @@ position = "25% 25%" [scratchpads.spblue] animation = "" -command = "kitty --class spblue bluetoothctl" +command = "st -c spblue bluetoothctl" class = "spblue" lazy = true size = "50% 50%" @@ -39,7 +39,7 @@ position = "25% 25%" [scratchpads.spncmp] animation = "" -command = "kitty --class spncmp ncmpcpp" +command = "st -c spncmp ncmpcpp" class = "spncmp" lazy = true size = "50% 50%" @@ -47,7 +47,7 @@ position = "25% 25%" [scratchpads.spmutt] animation = "" -command = "kitty --class spmutt neomutt" +command = "st -c spmutt neomutt" class = "spmutt" lazy = true size = "50% 50%" @@ -55,7 +55,7 @@ position = "25% 25%" [scratchpads.spprof] animation = "" -command = "kitty --class spprof profanity" +command = "st -c spprof profanity" class = "spprof" lazy = true size = "50% 50%" @@ -63,7 +63,7 @@ position = "25% 25%" [scratchpads.spirss] animation = "" -command = "kitty --class spirss irssi" +command = "st -c spirss irssi" class = "spirss" lazy = true size = "50% 50%" @@ -71,7 +71,7 @@ position = "25% 25%" [scratchpads.sptodo] animation = "" -command = "kitty --class sptodo todo" +command = "st -c sptodo todo" class = "sptodo" lazy = true size = "50% 50%" @@ -79,7 +79,7 @@ position = "25% 25%" [scratchpads.sptrmc] animation = "" -command = "kitty --class sptrmc tremc" +command = "st -c sptrmc tremc" class = "sptremc" lazy = true size = "50% 50%" -- cgit v1.2.3 From 1f4aad995aff13e53de23f469ae64f14ee66ce70 Mon Sep 17 00:00:00 2001 From: ZachIR Date: Mon, 21 Jul 2025 22:25:55 -0500 Subject: Replace zplug with zinit --- zsh/.zshrc | 86 +++++++++++++++++++++++++++++++++++++++----------------------- 1 file changed, 54 insertions(+), 32 deletions(-) diff --git a/zsh/.zshrc b/zsh/.zshrc index 791b5d1..e08bb20 100644 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -1,16 +1,4 @@ #zmodload zsh/zprof -if [ -n "$ZPLUG_HOME" ]; then - if [ -d "$ZPLUG_HOME" ]; then - export ZPLUG_INSTALLED="y" - source "$ZPLUG_HOME/init.zsh" - fi -elif [ -d "$XDG_DATA_HOME/zplug" ]; then - export ZPLUG_INSTALLED="y" - source "$XDG_DATA_HOME/zplug/init.zsh" -elif [ -d "$HOME/.zplug" ]; then - export ZPLUG_INSTALLED="y" - source "$HOME/.zplug/init.zsh" -fi [ -z "$XDG_CONFIG_HOME" ] && XDG_CONFIG_HOME="$HOME/.config" HISTFILE="$XDG_CONFIG_HOME/zsh/hist" SAVEHIST=1000 @@ -70,31 +58,65 @@ export KEYTIMEOUT=1 #fpath+="$XDG_CONFIG_HOME/zsh/zfunc" -if [ -n "$ZPLUG_INSTALLED" ]; then - # zsh history substring search - zplug "zsh-users/zsh-history-substring-search", as:plugin - - bindkey "${key[Up]}" history-substring-search-up - bindkey "${key[Down]}" history-substring-search-down - bindkey -M vicmd "${key[Up]}" history-substring-search-up - bindkey -M vicmd "${key[Down]}" history-substring-search-down - bindkey -M vicmd "k" history-substring-search-up - bindkey -M vicmd "j" history-substring-search-down - - # zsh syntax highlighting - zplug "zsh-users/zsh-syntax-highlighting", defer:2 - - # load zsh plugins - zplug load -fi - autoload -Uz compinit if [[ -n ${ZDOTDIR}/.zcompdump(#qN.mh+24) ]]; then compinit else - compinit -C; -fi; + compinit -C +fi + +zshcache_time="$(date +%s%N)" + +autoload -Uz add-zsh-hook + +rehash_precmd() { + if [[ -a /var/cache/zsh/pacman ]]; then + local paccache_time="$(date -r /var/cache/zsh/pacman +%s%N)" + if (( zshcache_time < paccache_time )); then + rehash + zshcache_time="$paccache_time" + fi + fi +} + +add-zsh-hook -Uz precmd rehash_precmd zstyle ':completion:*' hosts off +### Added by Zinit's installer +if [[ ! -f $HOME/.local/share/zinit/zinit.git/zinit.zsh ]]; then + print -P "%F{33} %F{220}Installing %F{33}ZDHARMA-CONTINUUM%F{220} Initiative Plugin Manager (%F{33}zdharma-continuum/zinit%F{220})…%f" + command mkdir -p "$HOME/.local/share/zinit" && command chmod g-rwX "$HOME/.local/share/zinit" + command git clone https://github.com/zdharma-continuum/zinit "$HOME/.local/share/zinit/zinit.git" && \ + print -P "%F{33} %F{34}Installation successful.%f%b" || \ + print -P "%F{160} The clone has failed.%f%b" +fi + +source "$HOME/.local/share/zinit/zinit.git/zinit.zsh" +autoload -Uz _zinit +(( ${+_comps} )) && _comps[zinit]=_zinit + +# Load a few important annexes, without Turbo +# (this is currently required for annexes) +zinit light-mode for \ + zdharma-continuum/zinit-annex-as-monitor \ + zdharma-continuum/zinit-annex-bin-gem-node \ + zdharma-continuum/zinit-annex-patch-dl \ + zdharma-continuum/zinit-annex-rust + +### End of Zinit's installer chunk +zinit snippet OMZ::plugins/git/git.plugin.zsh + +zinit load 'zsh-users/zsh-history-substring-search' +zinit ice wait atload'_history_substring_search_config' + +bindkey "${key[Up]}" history-substring-search-up +bindkey "${key[Down]}" history-substring-search-down +bindkey -M vicmd "${key[Up]}" history-substring-search-up +bindkey -M vicmd "${key[Down]}" history-substring-search-down +bindkey -M vicmd "k" history-substring-search-up +bindkey -M vicmd "j" history-substring-search-down + +source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh + #zprof -- cgit v1.2.3