Skip to content

Instantly share code, notes, and snippets.

@palaniraja
Last active March 21, 2023 17:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save palaniraja/5fdd32252f109318dff9f853bd908e0b to your computer and use it in GitHub Desktop.
Save palaniraja/5fdd32252f109318dff9f853bd908e0b to your computer and use it in GitHub Desktop.
customization on ~/.zshrc
ZSH_THEME="af-magic" # ref: https://gist.github.com/palaniraja/e12ff78d71c58a0f24d8660c3c09fb2e
# plantuml local web for VSCode on port 8000
alias plantuml="cd ~/Desktop/Data/tools/plantuml && java -jar plantuml.jar -picoweb:8000"
# history
fh() {
print -z $( ([ -n "$ZSH_NAME" ] && fc -l 1 || history) | fzf +s --tac --height "40%" | sed -E 's/ *[0-9]*\*? *//' | sed -E 's/\\/\\\\/g')
}
# bat for viewing man pages
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
# bat for diff
batdiff() {
git diff --name-only --diff-filter=d | xargs bat --diff
}
# diff so fancy
fancydiff() {
git diff | diff-so-fancy
}
# fzf
rga-fzf() {
RG_PREFIX="rga --files-with-matches"
local file
file="$(
FZF_DEFAULT_COMMAND="$RG_PREFIX '$1'" \
fzf --sort --preview="[[ ! -z {} ]] && rga --pretty --context 5 {q} {}" \
--phony -q "$1" \
--bind "change:reload:$RG_PREFIX {q}" \
--preview-window="70%:wrap"
)" &&
echo "opening $file" &&
open "$file"
}
# turn on alias / hidden by default for faster zsh start
aliasOn() {
# custom git aliases
alias agmerged="git branch -a --merged develop | pbcopy"
# ...
}
# timing ohmyzsh startup
timezsh() {
shell=${1-$SHELL}
for i in $(seq 1 10); do /usr/bin/time $shell -i -c exit; done
}
# rbenv
rbenvOn() {
eval "$(rbenv init - zsh)"
}
# NVM
nvmOn() {
export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh" # This loads nvm
# [ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion
}
# Python env
pyenvOn() {
export PYENV_ROOT="$HOME/.pyenv"
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment