main dotfiles / dot_config / yash / rc
Eric Bower  ·  2026-09-08
 1if test -e "$HOME/.config/yash/base.sh"; then
 2  . "$HOME/.config/yash/base.sh"
 3fi
 4
 5if test -e "$HOME/.config/yash/local.sh"; then
 6  . "$HOME/.config/yash/local.sh"
 7fi
 8
 9export PATH="$HOME/.local/bin:/usr/local/go/bin:$HOME/.cargo/bin:$HOME/.npm-packages/bin:$HOME/go/bin:$PATH"
10export LANG=en_US.UTF-8
11export EDITOR=kak
12export VISUAL=kak
13export PAGER=less
14export GPG_TTY="$(tty)"
15export XDG_CONFIG_HOME="$HOME/.config"
16export VDIRSYNCER_CONFIG="$HOME/.config/vdirsyncer/config"
17export MDIR="$HOME/mail"
18export PA_LENGTH=20
19export PA_PATTERN="A-Za-z0-9_-"
20export LANG="en_US.UTF-8"
21export LESS="-FRX"
22
23alias pushall='git remote | xargs -I R git push R'
24alias sway='XDG_CURRENT_DESKTOP=sway sway --unsupported-gpu'
25alias tre='tree -CF --dirsfirst -L 2'
26alias pp="PA_DIR=$HOME/dev/pico-pass pa"
27alias logs='ssh pipe sub /pico/log-drain -k | jq -r'
28alias ash='autossh -M 0 -q'
29alias mdfmt='uvx --with=mdformat-gfm --with=mdformat-frontmatter --with=mdformat-gfm-alerts mdformat --wrap no'
30alias cai='claude --dangerously-skip-permissions'
31alias gai='agy --dangerously-skip-permissions'
32
33pw() {
34  tr -dc 'A-Za-z0-9!"#$%&'\''()*+,-./:;<=>?@[\]^_`{|}~' </dev/urandom | head -c 20; echo
35}
36
37fcd() {
38  local dir
39  if command -v fd >/dev/null 2>&1; then
40    dir="$(fd --max-depth 3 --type d --hidden --follow --exclude .git --exclude .jj . "${1:-.}" 2>/dev/null | fzf +m)" || return
41  else
42    dir="$(find "${1:-.}" -mindepth 1 -maxdepth 3 -path '*/.*' -prune -o -type d -print 2>/dev/null | fzf +m)" || return
43  fi
44  test -n "$dir" && cd "$dir"
45}
46
47
48_zmx_env_hook() {
49  if test -n "${ZMX_SESSION:-}"; then
50    eval "$(zmx print-env -s .)"
51  fi
52}
53PROMPT_COMMAND="_zmx_env_hook${PROMPT_COMMAND:+; $PROMPT_COMMAND}"
54
55if test -n "${ZMX_SESSION:-}"; then
56  export YASH_PS1="[$ZMX_SESSION] ${YASH_PS1}"
57fi
58
59# if command -v zmx >/dev/null 2>&1; then
60#   eval "$(zmx completions bash)"
61# fi
62
63# kak: filetype=sh