-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdot_zshrc
75 lines (68 loc) · 2.84 KB
/
dot_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
timezsh() {
shell=${1-$SHELL}
for i in $(seq 1 10); do /usr/bin/time $shell -i -c exit; done
}
# Powerlevel10k
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
# 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
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
# I put local programs in .local/bin
local_bin=~/.local/bin
export PATH=${local_bin}:$PATH
# Check if apps are found in non-standard directories
if command -v ${local_bin}/homebrew/bin/brew &> /dev/null; then
export PATH=${local_bin}/homebrew/bin:$PATH
fi
if command -v ${local_bin}/homebrew/bin/byobu &> /dev/null; then
export BYOBU_PREFIX=${local_bin}/homebrew
fi
if command -v ${local_bin}/homebrew/opt/nvm/nvm-exec &> /dev/null; then
export NVM_DIR="$HOME/.nvm"
export NVM_LAZY_LOAD=true
export NVM_LAZY_LOAD_EXTRA_COMMANDS=('vim' 'neovim')
export NVM_COMPLETION=true
## nvm is lazy-loaded by zsh-nvm, no need for the following:
# [ -s "${local_bin}/homebrew/opt/nvm/nvm.sh" ] && \. "${local_bin}/homebrew/opt/nvm/nvm.sh" # load nvm
# [ -s "${local_bin}/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "${local_bin}/homebrew/opt/nvm/etc/bash_completion.d/nvm" # load nvm bash_completion
fi
if command -v nvim &> /dev/null; then
alias vim="nvim"
alias vimdiff="nvim -d"
elif command -v neovim &> /dev/null; then
alias vim="neovim"
alias vimdiff="neovim -d"
fi
# Load the oh-my-zsh's library.
source ${local_bin}/antigen.zsh
antigen use oh-my-zsh
# Bundles from the default repo (robbyrussell's oh-my-zsh).
antigen bundle command-not-found
antigen bundle git
# antigen bundle python
# antigen bundle pip
# antigen bundle npm
if command -v ${local_bin}/homebrew/bin/fzf &> /dev/null; then
export FZF_BASE=${local_bin}/homebrew/opt/fzf
# ${FZF_BASE}/install # To install useful key bindings and fuzzy completion for FZF, run once
fi
antigen bundle fzf
if [[ `uname` == "Darwin" ]]; then
antigen bundle macos
fi
# Bundles from other repos
antigen bundle mroth/evalcache # Speeds up evals
antigen bundle lukechilds/zsh-nvm # Lazy-loads nvm
antigen bundle zsh-users/zsh-syntax-highlighting
antigen theme romkatv/powerlevel10k # Load the theme.
antigen apply # Tell Antigen that you're done.
_evalcache zoxide init zsh # eval "$(zoxide init zsh)"
alias ..="z .."
alias ll="lsd -lhat"
alias dif="delta -ns"
alias updateAll="brew update ; brew upgrade ; .tmux/plugins/tpm/bin/update_plugins all ; vim +PlugUpgrade +PlugUpdate +PlugInstall +PlugClean +CocInstall +CocUpdateSync +qall"
alias readerPandoc="pandoc -f html -t plain"