-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.zshrc
93 lines (79 loc) · 2.9 KB
/
.zshrc
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
# Initialization code that may require console input (password prompts, [y/n]
# confirmations, etc.) must go above this block; everything else may go below.
#if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
# source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
#fi
# echo "hello from zshrc"
# profiler
# export DISABLE_AUTO_UPDATE=true
autoload -Uz compinit
if [ $(date +'%j') != $(stat -f '%Sm' -t '%j' ~/.zcompdump) ]; then
compinit
else
compinit -C
fi
#ZSH_THEME="powerlevel10k/powerlevel10k"
export ZSH=$HOME/.oh-my-zsh
plugins=(vi-mode autojump)
ZSH_THEME="robbyrussell"
source $ZSH/oh-my-zsh.sh
# export SSH_KEY_PATH="~/.ssh/rsa_id"
# Auto add keys?
[ -z "$SSH_AUTH_SOCK" ] && eval "$(ssh-agent -s)"
# ssh-add -A
# use vim
set -o vi
# export GOBIN=$HOME/go/bin
export GOPATH=$HOME/go
# test
export PATH=$PATH:$GOPATH/bin
export PATH=$PATH:$GOROOT/bin
# pretty man
export MANPAGER='nvim +Man!'
export EDITOR=nvim
### git aliases
alias st='git status '
alias ga='git add '
alias br='git branch '
alias ci='git commit '
alias dt='git difftool'
alias co='git checkout '
alias pu='git push '
alias last='git log -1'
alias re='git fetch origin master;git rebase origin/master'
alias g='git '
alias gwip='git add -a; git rm $(git ls-files --deleted) 2> /dev/null; git commit -m "--wip--"'
alias gunwip='git log -n 1 | grep -q -c "\-\-wip\-\-" && git reset head~1'
alias orig="find . -name '*.orig' -delete"
alias removemerge='git branch --merged | grep -v "\*" | grep -v master | grep -v dev | xargs -n 1 git branch -d'
alias vim='/usr/bin/vim'
alias v='nvim'
alias vrc='nvim ~/.config/nvim/init.lua'
alias ll='ls -la'
alias ghc='/usr/local/bin/gh'
alias b='git branch | grep -v "^\*" | fzf --height=20% --reverse --info=inline | xargs git checkout'
alias d='git branch | grep -v "^\*" | fzf --height=20% --reverse --info=inline | xargs git branch -D'
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
mkcd ()
{
mkdir -p -- "$1" &&
cd -P -- "$1"
}
fzf-history-widget() {
local selected
selected=$(fc -rl 1 | fzf +s --query "$LBUFFER" \
--height=10 \
--preview 'printf "%b" "$(echo {} | awk '\''{ $1=""; sub(/^ +/,""); print }'\'' | sed -e "s/^'\''//" -e "s/'\''\$//")"' \
--preview-window=right:wrap) || return
BUFFER=$(echo "$selected" | awk '{ $1=""; sub(/^ +/,""); print }' | sed -e "s/^'//" -e "s/'\$//")
CURSOR=${#BUFFER}
zle reset-prompt
}
zle -N fzf-history-widget
bindkey '^R' fzf-history-widget
export FZF_CTRL_R_OPTS='--preview-window=up:10:wrap --preview="echo {}" --height 100%'
export FZF_CTRL_R_OPTS="--height 50% --preview 'echo {2..} | bat --color=always -pl sh' --preview-window 'wrap,down,5'"
#source /usr/local/share/powerlevel10k/powerlevel10k.zsh-theme
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
#[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh