[profiles/base] modify zsh config

This commit is contained in:
2026-02-21 06:02:35 +01:00
parent 4192eb836c
commit 3eaf30494f
11 changed files with 127 additions and 114 deletions

View File

@@ -1,11 +1,18 @@
# Set PATH environment variable # Set PATH environment variable
typeset -U path PATH typeset -U path PATH
path=("${HOME}/.local/bin" /usr/local/sbin /usr/local/bin /usr/sbin /sbin "${path[@]}") path=(
"${HOME}/.local/bin"
"/usr/local/sbin"
"/usr/local/bin"
"/usr/sbin"
"/sbin"
"${path[@]}"
)
export PATH export PATH
# Configure shell history behavior # Configure shell history behavior
HISTFILE=${HOME}/.zsh_history HISTFILE="${HOME}/.zsh_history"
HISTSIZE=10000 HISTSIZE="10000"
SAVEHIST=10000 SAVEHIST="10000"
setopt appendhistory setopt appendhistory
setopt HIST_IGNORE_SPACE setopt HIST_IGNORE_SPACE

View File

@@ -1,6 +1,6 @@
# Enable vi keybindings # Enable vi keybindings
bindkey -v bindkey -v
export KEYTIMEOUT=1 export KEYTIMEOUT="1"
autoload -z edit-command-line autoload -z edit-command-line
zle -N edit-command-line zle -N edit-command-line
bindkey '^e' edit-command-line bindkey '^e' edit-command-line
@@ -13,14 +13,14 @@ bindkey '^U' backward-kill-line
# Change cursor shape for different vi modes # Change cursor shape for different vi modes
zle-keymap-select() { zle-keymap-select() {
if [[ ${KEYMAP} == vicmd ]] || if [[ "${KEYMAP}" == "vicmd" ]] ||
[[ $1 == block ]]; then [[ "$1" == "block" ]]; then
echo -ne '\e[2 q' echo -ne '\e[2 q'
psvar[1]="(cmd) " psvar[1]="(cmd) "
elif [[ ${KEYMAP} == main ]] || elif [[ "${KEYMAP}" == "main" ]] ||
[[ ${KEYMAP} == viins ]] || [[ "${KEYMAP}" == "viins" ]] ||
[[ -z ${KEYMAP} ]] || [[ -z "${KEYMAP}" ]] ||
[[ $1 == beam ]]; then [[ "$1" == "beam" ]]; then
echo -ne '\e[6 q' echo -ne '\e[6 q'
psvar[1]="(ins) " psvar[1]="(ins) "
fi fi

View File

@@ -1,8 +1,8 @@
if [[ -z ${TMUX} ]]; then if [[ -z "${TMUX}" ]]; then
export REAL_TERM=${TERM} export REAL_TERM="${TERM}"
fi fi
if [[ ${REAL_TERM} != "linux" ]]; then if [[ "${REAL_TERM}" != "linux" ]]; then
# To customize prompt, run `p10k configure` or edit ~/.zsh/prompt/p10k.zsh. # To customize prompt, run `p10k configure` or edit ~/.zsh/prompt/p10k.zsh.
. "${HOME}/.zsh/plugins/powerlevel10k/powerlevel10k.zsh-theme" . "${HOME}/.zsh/plugins/powerlevel10k/powerlevel10k.zsh-theme"
@@ -13,7 +13,7 @@ if [[ ${REAL_TERM} != "linux" ]]; then
. "${XDG_CACHE_HOME:-${HOME}/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" . "${XDG_CACHE_HOME:-${HOME}/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi fi
[[ -f ${HOME}/.zsh/prompt/p10k.zsh ]] && . "${HOME}/.zsh/prompt/p10k.zsh" [[ -f "${HOME}/.zsh/prompt/p10k.zsh" ]] && . "${HOME}/.zsh/prompt/p10k.zsh"
else else
. "${HOME}/.zsh/prompt/fallback.zsh" . "${HOME}/.zsh/prompt/fallback.zsh"
fi fi

View File

@@ -8,7 +8,7 @@ fpath=("${HOME}/.zsh/plugins/zsh-completions/src" "${fpath[@]}")
autoload -U compinit promptinit autoload -U compinit promptinit
compinit compinit
promptinit promptinit
[[ -f /etc/gentoo-release ]] && prompt gentoo [[ -f "/etc/gentoo-release" ]] && prompt gentoo
# Enable cache for completions # Enable cache for completions
zstyle ":completion::complete:*" use-cache 1 zstyle ":completion::complete:*" use-cache 1

View File

@@ -1,2 +1,3 @@
# emacs specific stuff # emacs specific stuff
[[ ${EAT_SHELL_INTEGRATION_DIR} ]] && . "${EAT_SHELL_INTEGRATION_DIR}/zsh" [[ -n "${EAT_SHELL_INTEGRATION_DIR}" ]] &&
. "${EAT_SHELL_INTEGRATION_DIR}/zsh"

View File

@@ -22,5 +22,5 @@ export GPGKEY="4A45503BBE575E3D4DAF28E27264AFFDC98D52BB"
# gpg-agent # gpg-agent
unset SSH_AGENT_PID unset SSH_AGENT_PID
if [[ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]]; then if [[ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]]; then
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket 2>/dev/null) export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket 2>/dev/null)"
fi fi

View File

@@ -1,13 +1,13 @@
# HSTR configuration - add this to ~/.zshrc # HSTR configuration - add this to ~/.zshrc
if command -v hstr >/dev/null 2>&1; then if command -v hstr >/dev/null 2>&1; then
alias hh=hstr # hh to be alias for hstr alias hh="hstr" # hh to be alias for hstr
setopt histignorespace # skip cmds w/ leading space from history setopt histignorespace # skip cmds w/ leading space from history
export HSTR_CONFIG=hicolor # get more colors export HSTR_CONFIG="hicolor" # get more colors
hstr_no_tiocsti() { hstr_no_tiocsti() {
zle -I zle -I
{ HSTR_OUT="$( { </dev/tty hstr ${BUFFER}; } 2>&1 1>&3 3>&- )"; } 3>&1; { HSTR_OUT="$( { </dev/tty hstr ${BUFFER}; } 2>&1 1>&3 3>&- )"; } 3>&1;
BUFFER=${HSTR_OUT} BUFFER="${HSTR_OUT}"
CURSOR=${#BUFFER} CURSOR="${#BUFFER}"
zle redisplay zle redisplay
} }
zle -N hstr_no_tiocsti zle -N hstr_no_tiocsti
@@ -33,22 +33,22 @@ fi
ranger_cd() { ranger_cd() {
temp_file=$(mktemp -t "ranger_cd.XXXXXXXXXX") temp_file=$(mktemp -t "ranger_cd.XXXXXXXXXX")
ranger --choosedir="${temp_file}" -- "${@:-${PWD}}" ranger --choosedir="${temp_file}" -- "${@:-${PWD}}"
if chosen_dir=$(cat -- "${temp_file}") && [ -n ${chosen_dir} ] && [ ${chosen_dir} != "${PWD}" ]; then if chosen_dir=$(cat -- "${temp_file}") &&
[ -n "${chosen_dir}" ] &&
[ "${chosen_dir}" != "${PWD}" ]; then
cd -- "${chosen_dir}" cd -- "${chosen_dir}"
fi fi
rm -f -- "${temp_file}" rm -f -- "${temp_file}"
} }
alias ranger=ranger_cd alias ranger="ranger_cd"
# mc # mc
if [[ -f /usr/libexec/mc/mc.sh ]]; then [[ -f "/usr/libexec/mc/mc.sh" ]] && . "/usr/libexec/mc/mc.sh"
. /usr/libexec/mc/mc.sh [[ -f "/usr/lib/mc/mc.sh" ]] && . "/usr/lib/mc/mc.sh"
fi
# nix package manager # nix package manager
if [[ -e "${HOME}/.nix-profile/etc/profile.d/nix.sh" ]]; then [[ -e "${HOME}/.nix-profile/etc/profile.d/nix.sh" ]] &&
. "${HOME}/.nix-profile/etc/profile.d/nix.sh" . "${HOME}/.nix-profile/etc/profile.d/nix.sh"
fi
# nix shell # nix shell
if command -v nix-your-shell >/dev/null 2>&1; then if command -v nix-your-shell >/dev/null 2>&1; then
@@ -57,15 +57,17 @@ fi
# node.js # node.js
export NVM_DIR="${HOME}/.nvm" export NVM_DIR="${HOME}/.nvm"
[[ -s ${NVM_DIR}/nvm.sh ]] && . "${NVM_DIR}/nvm.sh" # This loads nvm [[ -s "${NVM_DIR}/nvm.sh" ]] &&
[[ -s ${NVM_DIR}/bash_completion ]] && . "${NVM_DIR}/bash_completion" # This loads nvm bash_completion . "${NVM_DIR}/nvm.sh" # This loads nvm
[[ -s "${NVM_DIR}/bash_completion" ]] &&
. "${NVM_DIR}/bash_completion" # This loads nvm bash_completion
# rvm # rvm
[[ -s ${HOME}/.rvm/scripts/rvm ]] && . "${HOME}/.rvm/scripts/rvm" [[ -s "${HOME}/.rvm/scripts/rvm" ]] && . "${HOME}/.rvm/scripts/rvm"
# pyenv # pyenv
export PYENV_ROOT=${HOME}/.pyenv export PYENV_ROOT="${HOME}/.pyenv"
if [[ -d ${PYENV_ROOT}/bin ]]; then if [[ -d "${PYENV_ROOT}/bin" ]]; then
path=("${PYENV_ROOT}/bin" "${path[@]}") path=("${PYENV_ROOT}/bin" "${path[@]}")
export PATH export PATH
eval "$(pyenv init - zsh)" eval "$(pyenv init - zsh)"
@@ -75,7 +77,8 @@ fi
# inside tmux, we don't know if Sway got restarted # inside tmux, we don't know if Sway got restarted
if [[ -v TMUX ]]; then if [[ -v TMUX ]]; then
swaymsg() { swaymsg() {
export SWAYSOCK="${XDG_RUNTIME_DIR}/sway-ipc.${UID}.$(pgrep -x sway).sock" SWAYSOCK="${XDG_RUNTIME_DIR}/sway-ipc.${UID}.$(pgrep -x sway).sock"
export SWAYSOCK
command swaymsg "$@" command swaymsg "$@"
} }
fi fi

View File

@@ -6,12 +6,14 @@ alias tq="tmuxinator start quake"
alias sudo="sudo " alias sudo="sudo "
alias rsync_copy="rsync -aAXUHvh --partial-dir=.rsync-partial --progress" alias rsync_copy="rsync -aAXUHvh --partial-dir=.rsync-partial --progress"
alias rsync_copy_ssh="rsync_copy -e ssh" alias rsync_copy_ssh="rsync_copy -e ssh"
alias rsync_backup="rsync_copy --numeric-ids --delete --exclude={'/dev/*','/proc/*','/sys/*','/tmp/*','/run/*','/mnt/*','/media/*','/lost+found'}" alias rsync_backup="rsync_copy --numeric-ids --delete --exclude={'/dev/*', \
'/proc/*','/sys/*','/tmp/*','/run/*','/mnt/*','/media/*','/lost+found'}"
alias rsync_backup_ssh="rsync_backup -e ssh" alias rsync_backup_ssh="rsync_backup -e ssh"
alias rsync_restore="rsync_copy --numeric-ids --delete --exclude='lost+found'" alias rsync_restore="rsync_copy --numeric-ids --delete --exclude='lost+found'"
alias rsync_restore_ssh="rsync_restore -e ssh" alias rsync_restore_ssh="rsync_restore -e ssh"
alias glog="git log --oneline" alias glog="git log --oneline"
alias emerge_world="emerge --ask --verbose --deep --newuse --update @world" alias emerge_world="emerge --ask --verbose --deep --newuse --update @world"
alias sync_repo="rsync_copy_ssh --delete ~/arch_paczuchy/* vps.paraboletancza.org:/srv/http/repo.paraboletancza.org/arch" alias sync_repo="rsync_copy_ssh --delete ~/arch_paczuchy/* \
vps.paraboletancza.org:/srv/http/repo.paraboletancza.org/arch"
alias aur_sync="aur sync --sign --chroot" alias aur_sync="aur sync --sign --chroot"
alias aur_build="aur build --sign --chroot" alias aur_build="aur build --sign --chroot"

View File

@@ -1,7 +1,7 @@
take() { take() {
local -r directory=$1 local -r directory="$1"
mkdir -p "${directory}" mkdir -p "${directory}"
cd "${directory}" cd "${directory}" || exit 1
} }
# downloading from youtube # downloading from youtube