X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=states%2Fzsh%2Ffiles%2Fzshrc;h=aeed74141217c9de959c79ca4c15f906ba4cffa0;hb=HEAD;hp=f02b7e36e59b5ccb84bd3769ec8ee20dac2d75da;hpb=675a42561b814004255e1198f3f82783237eb4d8;p=max%2Fsaltfiles.git diff --git a/states/zsh/files/zshrc b/states/zsh/files/zshrc index f02b7e3..aeed741 100644 --- a/states/zsh/files/zshrc +++ b/states/zsh/files/zshrc @@ -23,7 +23,7 @@ compinit HISTFILE=~/.histfile HISTSIZE=100000 SAVEHIST=100000 -setopt appendhistory autocd extendedglob nomatch +setopt appendhistory autocd extendedglob nomatch extendedhistory correct unsetopt beep notify bindkey -v # End of lines configured by zsh-newuser-install @@ -39,32 +39,70 @@ p+=":%F{blue}%~%f" p+="${NEWLINE}%(!.#.$) " virtual_env() { - if [ -n "${VIRTUAL_ENV+1}" ]; then - home_rel_path=$(echo ${VIRTUAL_ENV} | sed "s;^${HOME};~;") - echo -n "(${home_rel_path}) " - fi + if [ -n "${VIRTUAL_ENV+1}" ]; then + home_rel_path=$(echo ${VIRTUAL_ENV} | sed "s;^${HOME};~;") + echo -n "(${home_rel_path}) " + fi } source ~/.git-prompt.sh precmd () { - __git_ps1 "" "$(virtual_env)${p}" "${NEWLINE}[%s]${NEWLINE}" + __git_ps1 "" "$(virtual_env)${p}" "${NEWLINE}[%s]${NEWLINE}" } +bindkey '^R' history-incremental-search-backward -if ! pgrep -x -u "${USER}" gpg-agent >/dev/null 2>&1; then - gpg-connect-agent /bye >/dev/null 2>&1 +if [[ -f ~/.shell_aliases ]]; then + source ~/.shell_aliases fi -unset SSH_AGENT_PID -if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then - export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket) -fi +export WORKON_HOME=~/.virtualenvs +source /usr/bin/virtualenvwrapper_lazy.sh +chpwd() { + src_dir="$(readlink -f ~/src/)/" + if [[ $PWD == "$src_dir"* ]]; then + if git status &>/dev/null; then + venv_name=$(basename $(git rev-parse --show-toplevel)) + if [[ -n "$VIRTUAL_ENV" ]]; then + current_venv_name=$(basename "$VIRTUAL_ENV") + if [[ "$current_venv_name" != "$venv_name" ]]; then + deactivate + workon "$venv_name" + fi + else + if workon | grep -q "$venv_name"; then + workon "$venv_name" + fi + fi + else + if [[ -n "$VIRTUAL_ENV" ]]; then + deactivate + fi + fi + else + if [[ -n "$VIRTUAL_ENV" ]]; then + deactivate + fi + fi +} -gpg-connect-agent updatestartuptty /bye > /dev/null +export GPG_TTY=$(tty) +gpg-connect-agent updatestartuptty /bye >/dev/null -bindkey '^R' history-incremental-search-backward +ZSH_AUTOSUGGEST_STRATEGY=(history completion) +ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE=30 -if [[ -f ~/.shell_aliases ]]; then - source ~/.shell_aliases -fi +source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh + +sri() { + base64_hash=$(curl "$1" | shasum -b -a "$2" - | awk '{print $1}' | xxd -r -p | base64) + echo "sha${2}-${base64_hash}" +} + +scrot() { + tmp_file=$(mktemp --tmpdir XXXXXX_scrot.png) + grim -g "$(slurp)" "$tmp_file" + echo "$tmp_file" +}