diff options
author | Guangxiong Lin <[email protected]> | 2022-01-22 21:11:52 +0800 |
---|---|---|
committer | Guangxiong Lin <[email protected]> | 2022-01-22 21:11:52 +0800 |
commit | 843b8510acd58fa9c1d1df6d8837d0406392e1b2 (patch) | |
tree | 1a4cf0c23b8100dad12a822238f8e4ee4a0fc7d2 /.functions | |
parent | 2a73c0e9167373828763e1965fc6fedda9431509 (diff) | |
download | dotfiles-843b8510acd58fa9c1d1df6d8837d0406392e1b2.tar.gz dotfiles-843b8510acd58fa9c1d1df6d8837d0406392e1b2.tar.bz2 dotfiles-843b8510acd58fa9c1d1df6d8837d0406392e1b2.zip |
Add fzf config
The fzf config is splited into .env and .functions before. It will be
hard to remove the config of fzf when I want to replace fzf with other
finder (e.g. skim). I place all config related to .fzfrc now.
Besides, I add the config to load fzf completion and key bindings.
Diffstat (limited to '.functions')
-rw-r--r-- | .functions | 32 |
1 files changed, 0 insertions, 32 deletions
@@ -1,37 +1,5 @@ #!/usr/bin/env bash -fco () { - local tags branches target - branches=$( - git --no-pager branch --all \ - --format="%(if)%(HEAD)%(then)%(else)%(if:equals=HEAD)%(refname:strip=3)%(then)%(else)%1B[0;34;1mbranch%09%1B[m%(refname:short)%(end)%(end)" \ - | sed '/^$/d' - ) || return - tags=$( - git --no-pager tag | awk '{print "\x1b[35;1mtag\x1b[m\t" $1}' - ) || return - target=$( - (echo $branches; echo $tags) \ - | fzf --no-hscroll --no-multi -n 2 --ansi - ) || return - git checkout $(awk '{print $2}' <<<$target) -} - -fs () { - local session - session=$(tmux list-sessions -F "#{session_name}" \ - | fzf --query=$1 --select-1 --exit-0) \ - && tmux switch-client -t $session -} - -tm() { - [[ -n "$TMUX" ]] && change="switch-client" || change="attach-session" - if [ $1 ]; then - tmux $change -t "$1" 2>/dev/null || (tmux new-session -d -s $1 && tmux $change -t "$1"); return - fi - session=$(tmux list-sessions -F "#{session_name}" 2>/dev/null | fzf --exit-0) && tmux $change -t "$session" || echo "No sessions found." -} - open () { if [ -f /usr/bin/xdg-open ]; then nohup xdg-open "$*" > /dev/null 2>&1 & |