zsh: vterm and misc changes
parent
debc8fe7db
commit
c23353c14c
41
zsh/.zshrc
41
zsh/.zshrc
|
@ -57,20 +57,43 @@ alias czh="echo 'Fully clearing history, then exiting...' && cat /dev/null > ${H
|
|||
# Completion
|
||||
_comp_options+=(globdots) # include hidden files
|
||||
|
||||
# reload the zsh session. From OMZ:plugins/zsh_reload
|
||||
# reload the zsh session. Changed from OMZ:plugins/zsh_reload
|
||||
zreload() {
|
||||
local cache="$ZSH_CACHE_DIR"
|
||||
autoload -U compinit zrecompile
|
||||
compinit -i -d "$cache/zcomp-$HOST"
|
||||
|
||||
for f in ${ZDOTDIR:-~}/.zshrc "$cache/zcomp-$HOST"; do
|
||||
zrecompile -p $f && command rm -f $f.zwc.old
|
||||
done
|
||||
|
||||
# Use $SHELL if available; remove leading dash if login shell
|
||||
[[ -n "$SHELL" ]] && exec ${SHELL#-} || exec zsh
|
||||
}
|
||||
|
||||
# Emacs/ vterm
|
||||
vterm_printf(){
|
||||
if [ -n "$TMUX" ] && ([ "${TERM%%-*}" = "tmux" ] || [ "${TERM%%-*}" = "screen" ] ); then
|
||||
# Tell tmux to pass the escape sequences through
|
||||
printf "\ePtmux;\e\e]%s\007\e\\" "$1"
|
||||
elif [ "${TERM%%-*}" = "screen" ]; then
|
||||
# GNU screen (screen, screen-256color, screen-256color-bce)
|
||||
printf "\eP\e]%s\007\e\\" "$1"
|
||||
else
|
||||
printf "\e]%s\e\\" "$1"
|
||||
fi
|
||||
}
|
||||
|
||||
if [[ "$INSIDE_EMACS" = 'vterm' ]]; then
|
||||
alias clear='vterm_printf "51;Evterm-clear-scrollback";tput clear'
|
||||
fi
|
||||
|
||||
vterm_cmd() {
|
||||
local vterm_elisp
|
||||
vterm_elisp=""
|
||||
while [ $# -gt 0 ]; do
|
||||
vterm_elisp="$vterm_elisp""$(printf '"%s" ' "$(printf "%s" "$1" | sed -e 's|\\|\\\\|g' -e 's|"|\\"|g')")"
|
||||
shift
|
||||
done
|
||||
vterm_printf "51;E$vterm_elisp"
|
||||
}
|
||||
|
||||
find_file() {
|
||||
vterm_cmd find-file "$(realpath "${@:-.}")"
|
||||
}
|
||||
|
||||
# PLUGINS!
|
||||
# `miniplug update`
|
||||
|
||||
|
|
Loading…
Reference in New Issue