From cbba80700cbdc95d294f3ec61075ff2cbdd503e3 Mon Sep 17 00:00:00 2001 From: "bozo.kopic" Date: Thu, 26 May 2022 20:23:02 +0200 Subject: . --- shell/zsh/.zshrc | 2 ++ shell/zsh/broot.zsh | 21 +++++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 shell/zsh/broot.zsh (limited to 'shell/zsh') diff --git a/shell/zsh/.zshrc b/shell/zsh/.zshrc index 1ecf9a2..261b166 100644 --- a/shell/zsh/.zshrc +++ b/shell/zsh/.zshrc @@ -15,6 +15,8 @@ PROMPT='[%F{green}%n%f@%m %F{green}%~%f $(git_super_status)]$ ' . ~/.dotfiles/shell/zsh/fzf/key-bindings.zsh +. ~/.dotfiles/shell/zsh/broot.zsh + . /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh . /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh . /usr/share/zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh diff --git a/shell/zsh/broot.zsh b/shell/zsh/broot.zsh new file mode 100644 index 0000000..44cee96 --- /dev/null +++ b/shell/zsh/broot.zsh @@ -0,0 +1,21 @@ + +# This script was automatically generated by the broot program +# More information can be found in https://github.com/Canop/broot +# This function starts broot and executes the command +# it produces, if any. +# It's needed because some shell commands, like `cd`, +# have no useful effect if executed in a subshell. +function br { + local cmd cmd_file code + cmd_file=$(mktemp) + if broot --outcmd "$cmd_file" "$@"; then + cmd=$(<"$cmd_file") + rm -f "$cmd_file" + eval "$cmd" + else + code=$? + rm -f "$cmd_file" + return "$code" + fi +} + -- cgit v1.2.3-70-g09d2