190 lines
5.2 KiB
Bash
190 lines
5.2 KiB
Bash
# vim: set filetype=zsh:
|
|
# Put this on bottom of ~/.zshrc
|
|
|
|
# https://github.com/ohmyzsh/ohmyzsh/wiki/Settings#automatic-title
|
|
ZSH_THEME_TERM_TITLE_IDLE="%~"
|
|
ZSH_THEME_TERM_TAB_TITLE_IDLE="%~"
|
|
|
|
# https://github.com/romkatv/powerlevel10k#how-do-i-configure-instant-prompt
|
|
typeset -g POWERLEVEL9K_INSTANT_PROMPT=off
|
|
|
|
# https://github.com/romkatv/powerlevel10k#mitigation
|
|
typeset -g POWERLEVEL9K_TERM_SHELL_INTEGRATION=true
|
|
typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=()
|
|
|
|
# Alias
|
|
alias g="git"
|
|
alias moe="make"
|
|
alias meo="make"
|
|
|
|
# https://wiki.archlinux.org/title/XDG_Base_Directory
|
|
export XDG_CONFIG_HOME=~/.config
|
|
export XDG_CACHE_HOME=~/.cache
|
|
export XDG_DATA_HOME=~/.local/share
|
|
|
|
# https://www.topbug.net/blog/2016/09/27/make-gnu-less-more-powerful/
|
|
export LESS="-RF -i -K -s -x2 --wordwrap"
|
|
|
|
# git
|
|
# https://stackoverflow.com/a/43747486
|
|
export GIT_COMPLETION_CHECKOUT_NO_GUESS=1
|
|
|
|
# nvim
|
|
if command -v nvim &>/dev/null; then
|
|
export EDITOR=nvim
|
|
export VISUAL=nvim
|
|
export GIT_EDITOR=nvim
|
|
alias vi="nvim"
|
|
alias vim="nvim"
|
|
fi
|
|
|
|
# go
|
|
export GOPATH=$HOME/go
|
|
export PATH=$PATH:$GOPATH/bin
|
|
# Depend on your company
|
|
# Please copy this manually to ~/.zshrc
|
|
# export GOPRIVATE=example.company.com
|
|
|
|
# fzf
|
|
# https://github.com/junegunn/fzf
|
|
if command -v fzf &>/dev/null; then
|
|
export FZF_COMPLETION_TRIGGER='~~'
|
|
|
|
if command -v fd &>/dev/null; then
|
|
_fzf_compgen_path() {
|
|
fd --type file . "$1"
|
|
}
|
|
|
|
_fzf_compgen_dir() {
|
|
fd --type directory . "$1"
|
|
}
|
|
|
|
export FZF_DEFAULT_COMMAND="fd --type file --color=always"
|
|
export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"
|
|
export FZF_ALT_C_COMMAND="fd --type directory --color=always"
|
|
fi
|
|
|
|
# https://github.com/catppuccin/fzf
|
|
export FZF_DEFAULT_OPTS="\
|
|
--ansi \
|
|
--pointer='🔫' --prompt='🪓 ' \
|
|
--color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 \
|
|
--color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc \
|
|
--color=marker:#f5e0dc,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8"
|
|
|
|
if command -v bat &>/dev/null; then
|
|
export FZF_CTRL_T_OPTS="--preview 'bat --color=always --line-range=:500 {}'"
|
|
fi
|
|
|
|
if command -v eza &>/dev/null; then
|
|
export FZF_ALT_C_OPTS="--preview 'eza --tree --level 1 {}'"
|
|
fi
|
|
fi
|
|
|
|
# https://github.com/BurntSushi/ripgrep
|
|
if command -v rg &>/dev/null; then
|
|
export RIPGREP_CONFIG_PATH="$HOME/.config/ripgrep/ripgreprc"
|
|
fi
|
|
|
|
# https://github.com/eza-community/eza
|
|
if command -v eza &>/dev/null; then
|
|
alias ls="eza"
|
|
alias la="eza -la"
|
|
alias lt="eza --tree"
|
|
fi
|
|
|
|
# https://github.com/kovidgoyal/kitty
|
|
if command -v kitten &>/dev/null; then
|
|
alias kssh="kitten ssh"
|
|
fi
|
|
|
|
# https://github.com/dandavison/delta
|
|
if command -v delta &>/dev/null; then
|
|
alias da="delta"
|
|
eval "$(delta --generate-completion zsh)"
|
|
fi
|
|
|
|
# https://github.com/wilfred/difftastic
|
|
if command -v difft &>/dev/null; then
|
|
export DFT_DISPLAY=inline
|
|
export DFT_TAB_WIDTH=2
|
|
fi
|
|
|
|
# https://restic.readthedocs.io/en/latest/manual_rest.html
|
|
if command -v restic &>/dev/null; then
|
|
export RESTIC_PASSWORD_FILE=$HOME/.restic_password_file
|
|
fi
|
|
|
|
# https://github.com/sharkdp/vivid
|
|
if command -v vivid &>/dev/null; then
|
|
export LS_COLORS="$(vivid generate catppuccin-mocha)"
|
|
fi
|
|
|
|
# https://github.com/ajeetdsouza/zoxide
|
|
if command -v zoxide &>/dev/null; then
|
|
export _ZO_ECHO=1
|
|
eval "$(zoxide init zsh)"
|
|
fi
|
|
|
|
# https://github.com/walles/moar
|
|
if command -v moar &>/dev/null; then
|
|
export MOAR="-no-linenumbers -no-statusbar -quit-if-one-screen -wrap"
|
|
export PAGER=moar
|
|
fi
|
|
|
|
# https://github.com/oven-sh/bun
|
|
# Depend on your settings
|
|
# Please copy this manually to ~/.zshrc
|
|
# export GITHUB_TOKEN=your_github_token
|
|
|
|
# https://github.com/Schniz/fnm
|
|
if command -v fnm &>/dev/null; then
|
|
eval "$(fnm env --use-on-cd)"
|
|
fi
|
|
|
|
# https://github.com/casey/just
|
|
if command -v just &>/dev/null; then
|
|
alias jst="just"
|
|
eval "$(just --completions zsh)"
|
|
fi
|
|
|
|
# https://github.com/crate-ci/typos
|
|
if command -v typos &>/dev/null; then
|
|
alias typo="typos --config ~/.config/typos/typos.toml"
|
|
fi
|
|
|
|
# https://github.com/orhun/daktilo
|
|
if command -v daktilo &>/dev/null; then
|
|
export DAKTILO_CONFIG="$HOME/.config/daktilo/daktilo.toml"
|
|
fi
|
|
|
|
# https://github.com/talwat/pokeget-rs
|
|
rand_poke=$((RANDOM % 13))
|
|
if [[ $rand_poke -eq 0 ]]; then
|
|
cat ~/.config/pokeget/bulbasaur.txt
|
|
elif [[ $rand_poke -eq 1 ]]; then
|
|
cat ~/.config/pokeget/charmeleon.txt
|
|
elif [[ $rand_poke -eq 2 ]]; then
|
|
cat ~/.config/pokeget/chikorita.txt
|
|
elif [[ $rand_poke -eq 3 ]]; then
|
|
cat ~/.config/pokeget/clefairy.txt
|
|
elif [[ $rand_poke -eq 4 ]]; then
|
|
cat ~/.config/pokeget/ditto.txt
|
|
elif [[ $rand_poke -eq 5 ]]; then
|
|
cat ~/.config/pokeget/dratini.txt
|
|
elif [[ $rand_poke -eq 6 ]]; then
|
|
cat ~/.config/pokeget/eevee.txt
|
|
elif [[ $rand_poke -eq 7 ]]; then
|
|
cat ~/.config/pokeget/machoke.txt
|
|
elif [[ $rand_poke -eq 8 ]]; then
|
|
cat ~/.config/pokeget/pikachu-world-cap.txt
|
|
elif [[ $rand_poke -eq 9 ]]; then
|
|
cat ~/.config/pokeget/pikachu.txt
|
|
elif [[ $rand_poke -eq 10 ]]; then
|
|
cat ~/.config/pokeget/psyduck.txt
|
|
elif [[ $rand_poke -eq 11 ]]; then
|
|
cat ~/.config/pokeget/slowpoke.txt
|
|
elif [[ $rand_poke -eq 12 ]]; then
|
|
cat ~/.config/pokeget/squirtle.txt
|
|
fi
|