]> git.sev.monster Git - dotfiles.git/blobdiff - etc/zsh/.zshrc
zlogout: clean up logic, dont act without data
[dotfiles.git] / etc / zsh / .zshrc
index c0fdef951fe95957bd5b8ee6658aec61e9c5b568..893cac58c9b02faa60c9adc61db9f6614bbbe68b 100644 (file)
@@ -200,9 +200,19 @@ for k v (${(kv)a}) {
 }
 unset a k v
 
-## other binds
+## fzf
 # bash-style reverse-search-history (i.e. reverse-i-search)
-bindkey '^R' history-incremental-pattern-search-backward
+if [[ -v commands[fzf] ]] {
+    function _history-incremental-pattern-search-fzf {
+        l=(${(f)"$(fc -li -1 0 | fzf -e -m -n 1 +s --preview-window=hidden ${BUFFER:+-q $BUFFER})"})
+        l=$(for x ("${l[@]}") { echo ${${=x}:3}; })
+        BUFFER="$l"
+    }
+    zle -N _history-incremental-pattern-search-fzf
+    bindkey '^R' _history-incremental-pattern-search-fzf
+} else {
+    bindkey '^R' history-incremental-pattern-search-backward
+}
 
 ### aliases
 ## builtins
@@ -291,8 +301,9 @@ alias gp='git push'
 alias gu='git pull'
 alias gl='git log'
 alias gt='git tree' # from gitconfig
-alias gs='git show'
-alias gst='git stash'
+alias gsh='git show'
+alias gst='git status'
+alias gs='git stash'
 alias gsp='git stash pop'
 ## cd/zoxide
 function up {
@@ -411,5 +422,8 @@ esac
 autoload -Uz promptinit && promptinit
 prompt arrows
 
+### plugins
+load-plugins zshrc
+
 ### load site-specific
 load-site-dotfile zshrc
This page took 0.032303 seconds and 4 git commands to generate.