summaryrefslogtreecommitdiff
path: root/.zsh/zsh-functions
blob: f9f387d9174413e46f604bcb78d02806a83c248f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function colo {

    # Change colors for current session
    $HOME/.bin/recolor.sh < ~/.Xresources/Xresources.$1

    # Load Xresources file for future sessions
    xrdb ~/.Xresources/Xresources.$1

    # Change environment variable
    export COLORSCHEME=$1

    # Change default environment variable for future sessions
    sed -i --follow-symlinks "s/^export COLORSCHEME=.*$/export COLORSCHEME=$1/g" ~/dotfiles/zshrc
}

z() {
    if [[ -z "$*" ]]; then
        cd "$(_z -l 2>&1 | fzf-tmux +s --tac | sed 's/^[0-9,.]* *//')"
    else
        _z "$@"
    fi
}

fshow() {
    git log --graph --color=always \
        --format="%C(auto)%h%d %s %C(black)%C(bold)%cr" "$@" |
    fzf --ansi --no-sort --reverse --tiebreak=index --toggle-sort=\` \
        --bind 'ctrl-m:execute:
    echo {} | grep -o "[a-f0-9]\{7\}" |
    xargs -I % sh -c "git show --color=always % | less -R"'
}