Add zsh config
This commit is contained in:
commit
f42c2e1954
2 changed files with 144 additions and 0 deletions
36
dot_zshenv
Normal file
36
dot_zshenv
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
typeset -U path
|
||||
path=(~/.local/bin ~/.cargo/bin $path[@])
|
||||
|
||||
if [[ $XDG_SESSION_TYPE == "wayland" ]]; then
|
||||
export QT_QPA_PLATFORM=wayland-egl
|
||||
export MOZ_ENABLE_WAYLAND=1
|
||||
fi
|
||||
|
||||
# make less more friendly for non-text input files, see lesspipe(1)
|
||||
if [ -x /usr/bin/lesspipe ]; then
|
||||
export LESSOPEN="|lesspipe %s"
|
||||
elif [ -x /usr/bin/lesspipe.sh ]; then
|
||||
export LESSOPEN="|lesspipe.sh %s"
|
||||
fi
|
||||
|
||||
# colored GCC warnings and errors
|
||||
export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
|
||||
export EDITOR="nvim"
|
||||
export TMPDIR="/tmp/${USER}"
|
||||
|
||||
export GIT_PS1_SHOWDIRTYSTATE=true
|
||||
export GIT_PS1_SHOWSTASHSTATE=true
|
||||
export GIT_PS1_SHOWUNTRACKEDFILEDS=true
|
||||
export GIT_PS1_SHOWUPSTREAM="verbose"
|
||||
export GIT_PS1_DESCRIBE_STYLE="branch"
|
||||
export GIT_PS1_SHOWCOLORHINTS="color"
|
||||
|
||||
eval $(dircolors ~/.dir_colors)
|
||||
|
||||
export GPG_TTY=$(tty)
|
||||
|
||||
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||
|
||||
export DOCKER_HOST=unix://$XDG_RUNTIME_DIR/docker.sock
|
||||
|
||||
export SSH_AUTH_SOCK=$XDG_RUNTIME_DIR/ssh-agent.socket
|
||||
108
dot_zshrc
Normal file
108
dot_zshrc
Normal file
|
|
@ -0,0 +1,108 @@
|
|||
# The following lines were added by compinstall
|
||||
|
||||
zstyle ':completion:*' completer _expand _complete _ignored _correct _approximate
|
||||
zstyle ':completion:*' completions 1
|
||||
zstyle ':completion:*' expand suffix
|
||||
zstyle ':completion:*' glob 1
|
||||
zstyle ':completion:*' ignore-parents parent pwd
|
||||
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
|
||||
zstyle ':completion:*' list-prompt %SAt %p: Hit TAB for more, or the character to insert%s
|
||||
zstyle ':completion:*' list-suffixes true
|
||||
zstyle ':completion:*' max-errors 1
|
||||
zstyle ':completion:*' menu select=1
|
||||
zstyle ':completion:*' preserve-prefix '//[^/]##/'
|
||||
zstyle ':completion:*' prompt 'Corrections with %e differences:'
|
||||
zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s
|
||||
zstyle ':completion:*' substitute 1
|
||||
zstyle :compinstall filename '/home/max/.zshrc'
|
||||
|
||||
autoload -Uz compinit
|
||||
compinit
|
||||
# End of lines added by compinstall
|
||||
# Lines configured by zsh-newuser-install
|
||||
HISTFILE=~/.histfile
|
||||
HISTSIZE=100000
|
||||
SAVEHIST=100000
|
||||
setopt appendhistory autocd extendedglob nomatch extendedhistory correct
|
||||
unsetopt beep notify
|
||||
bindkey -v
|
||||
# End of lines configured by zsh-newuser-install
|
||||
|
||||
# Prompt
|
||||
NEWLINE=$'\n'
|
||||
setopt prompt_subst
|
||||
|
||||
|
||||
p="%(?;%F{green};%F{red})[%h]%f "
|
||||
p+="%F{red}%B%n%b%f@%F{red}%B%m%b%f"
|
||||
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
|
||||
}
|
||||
|
||||
source ~/.git-prompt.sh
|
||||
precmd () {
|
||||
__git_ps1 "" "$(virtual_env)${p}" "${NEWLINE}[%s]${NEWLINE}"
|
||||
}
|
||||
|
||||
bindkey '^R' history-incremental-search-backward
|
||||
|
||||
if [[ -f ~/.shell_aliases ]]; then
|
||||
source ~/.shell_aliases
|
||||
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
|
||||
}
|
||||
|
||||
export GPG_TTY=$(tty)
|
||||
gpg-connect-agent updatestartuptty /bye >/dev/null
|
||||
|
||||
ZSH_AUTOSUGGEST_STRATEGY=(history completion)
|
||||
ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE=30
|
||||
|
||||
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=$(shasum -b -a 384 "$1" | awk '{print $1}' | xxd -r -p | base64)
|
||||
echo "sha384-${base64_hash}"
|
||||
}
|
||||
|
||||
scrot() {
|
||||
tmp_file=$(mktemp --tmpdir XXXXXX_scrot.png)
|
||||
grim -g "$(slurp)" "$tmp_file"
|
||||
echo "$tmp_file"
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue