My zsh configuration
git clone https://github.com/m-col/zshrc
Files | Refs | Readme

Commit 93897239f7f931ad2633cd5d17c2075e2cc41e08
Parent: e3d6600c1a6fd95c18c9d5d88caac15362da6be6
Author: Matt Colligan <matthewcolligan@improbable.io>
Date: 2024-10-12 23:01:09 +0100
Committer: Matt Colligan <matthewcolligan@improbable.io>
Committed: 2024-10-12 23:01:09 +0100

vim -> nvim

zshrc Modified

@@ -59,8 +59,8 @@
 bindkey '^A' autosuggest-execute
 
 export \
-    SUDO_EDITOR=vim \
-    EDITOR=vim \
+    SUDO_EDITOR=nvim \
+    EDITOR=nvim \
     AUR_PAGER=ranger \
     TERM=xterm \
     LANG=en_US.UTF-8 \

fzf.zsh Added

@@ -0,0 +1,19 @@
+#
+# fzf settings
+#
+
+if type fzf > /dev/null
+then
+    # I considered disabling ctrl-t to set it to type out fz, but the default
+    # ctrl-t can be helpful for e.g. pytest, selecting and pasting paths.
+    #bindkey -s '^t' "fv\n"
+    #export FZF_CTRL_T_COMMAND=""
+
+    export FZF_DEFAULT_OPTS="
+	--preview 'bat -n --color=always {}'
+	--bind 'ctrl-/:change-preview-window(down|hidden|)'
+	--tmux
+	--walker-skip .git,node_modules,target,.mypy_cache,.venv,__pycache__,.DS_Store
+	"
+    source <(fzf --zsh)
+fi

aliases Modified

@@ -14,10 +14,12 @@
 alias import='echo you forgot to enter python'
 alias rg='grep -r'
 alias pth='echo "${PATH//:/\n}"'
-vgr() { vim `grep -lr "$@"`; }
+vgr() { nvim `grep -lr "$@"`; }
 alias va="source venv/bin/activate"
 alias vd="deactivate"
 alias dc=docker-compose
+alias vim=nvim
+alias fv="fzf --print0 | xargs -0 -o nvim"
 
 if [[ -n "$WAYLAND_DISPLAY" ]]
 then
@@ -61,7 +63,7 @@
 
 # launchers
 alias ra='ranger'
-alias v='vim'
+alias v='nvim'
 alias tmux='tmux -u'
 alias ta='tmux attach'
 
@@ -97,6 +99,8 @@
 alias cl='git clone'
 alias chp='git cherry-pick'
 alias rs='git restore'
+alias rsp='git restore --patch'
+alias rss='git restore --staged'
 alias st='git stash'
 alias stl='git stash list'
 alias stp='git stash pop'
@@ -108,7 +112,7 @@
 pdif() {
     git diff --name-only --diff-filter=${1:-M}
 }
-alias vimd='vim `pdif`'
+alias vimd='nvim `pdif`'
 
 # tools
 alias usync='rsync -avPzh --delete'
@@ -119,11 +123,10 @@
 alias mc='make clean'
 
 # quick edits
-alias modalia='vim $HOME/.config/aliases && source $HOME/.config/aliases'
-alias modaliaz='vim $ZSH/aliases && source $ZSH/aliases'
-alias vimrc='vim $HOME/.vim/bundle/vim-misc/vimrc'
-alias zshrc='vim $HOME/.zsh/zshrc'
-alias modrc='vim $HOME/.config/ranger/rc.conf'
+alias modalia='nvim $HOME/.config/aliases && source $HOME/.config/aliases'
+alias modaliaz='nvim $ZSH/aliases && source $ZSH/aliases'
+alias zshrc='nvim $HOME/.zsh/zshrc'
+alias modrc='nvim $HOME/.config/ranger/rc.conf'
 
 # shortcuts
 alias gc='cd $HOME/.config'