From 862488f597f48f0cd13ae64ce7df01323388f107 Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Thu, 5 Jun 2025 22:25:25 -0700 Subject: [PATCH 1/2] Disable C-hjkl navigator mappings to avoid nano and other shortcut collisions --- .config/tmux/tmux.conf | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.config/tmux/tmux.conf b/.config/tmux/tmux.conf index 31b3653..61199ad 100644 --- a/.config/tmux/tmux.conf +++ b/.config/tmux/tmux.conf @@ -1,3 +1,6 @@ +# Allow cursor passthrough +set -g allow-passthrough on + # Custom Prefix set -g prefix C-space bind-key C-space send-prefix @@ -65,10 +68,10 @@ set -g @open-S 'https://search.brave.com/search?q=' # Integrate with nvim navigation set -g @plugin 'christoomey/vim-tmux-navigator' -set -g @vim_navigator_mapping_left "C-Left C-h" -set -g @vim_navigator_mapping_right "C-Right C-l" -set -g @vim_navigator_mapping_up "C-Up C-k" -set -g @vim_navigator_mapping_down "C-Down C-j" +set -g @vim_navigator_mapping_left "C-Left" # C-h" +set -g @vim_navigator_mapping_right "C-Right" # C-l" +set -g @vim_navigator_mapping_up "C-Up" # C-k" +set -g @vim_navigator_mapping_down "C-Down" # C-j" # Load Plugins run '~/.tmux/plugins/tpm/tpm' From 3d90957006c8c215d355b2592e36dc4968a04d53 Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Thu, 5 Jun 2025 22:38:04 -0700 Subject: [PATCH 2/2] Enable nvim-style cursors in zsh by mode Update bashrc to enforce cursor style --- .bashrc | 2 +- .zshrc | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/.bashrc b/.bashrc index 06376d4..528d9f8 100644 --- a/.bashrc +++ b/.bashrc @@ -80,7 +80,7 @@ if [ "$color_prompt" = yes ]; then prompt_symbol=πŸ’€ fi PROMPT_COMMAND='if [[ $? != 0 && $? != 130 ]];then echo -e "⚠️\a";else echo -e "\a";fi' - PS1="$chrome_colorβ”Œβ”€β”€"'${debian_chroot:+('${path_color}'$debian_chroot'${chrome_color}')─}${VIRTUAL_ENV:+('${path_color}'$(realpath $VIRTUAL_ENV --relative-to $PWD --relative-base /home)'${chrome_color}')─}'"[${context_color}\u${chrome_color}${prompt_symbol}${context_color}\h${chrome_color}]─(${path_color}\w${chrome_color})\n${chrome_color}β””${context_color}${prompt}${color_off} " + PS1="$chrome_colorβ”Œβ”€β”€"'${debian_chroot:+('${path_color}'$debian_chroot'${chrome_color}')─}${VIRTUAL_ENV:+('${path_color}'$(realpath $VIRTUAL_ENV --relative-to $PWD --relative-base /home)'${chrome_color}')─}'"[${context_color}\u${chrome_color}${prompt_symbol}${context_color}\h${chrome_color}]─(${path_color}\w${chrome_color})\n${chrome_color}β””${context_color}${prompt}${color_off} \e[1 q" PS2="$chrome_colorβ””>$color_off " export VIRTUAL_ENV_DISABLE_PROMPT=1 diff --git a/.zshrc b/.zshrc index 9251aa9..a51ea3c 100644 --- a/.zshrc +++ b/.zshrc @@ -7,6 +7,41 @@ unsetopt beep bindkey -v # End of lines configured by zsh-newuser-install +# Configure cursor +function zle-keymap-select { + #RPS1="${${KEYMAP/vicmd/-- NORMAL --}/(main|viins)/-- INSERT --}" + #RPS2=$RPS1 + zle reset-prompt + + case $KEYMAP in + vicmd) + # vim Normal mode + echo -ne '\e[1 q' + ;; + viins) + # vim Insert mode + echo -ne '\e[3 q' + ;; + *) + # Default mode + echo -ne '\e[3 q' + ;; + esac +} +zle -N zle-keymap-select + +function zle-line-init { + # New prompt. Reset cursor to underline + echo -ne '\e[3 q' +} +zle -N zle-line-init + +function zle-line-finish { + # Prompt complete. Reset cursor to underline + echo -ne '\e[3 q' +} +zle -N zle-line-finish + # SSH completion zstyle ':completion:*:(ssh|scp|ftp|sftp|rsync):*' hosts $hosts