diff --git a/zsh/emacs.zsh b/zsh/emacs.zsh index fda71ea..815353d 100644 --- a/zsh/emacs.zsh +++ b/zsh/emacs.zsh @@ -23,3 +23,20 @@ fi # add doom-emacs' bin directory to path if it exists path_prepend "$HOME/.config/doom-emacs/bin" + +# Setup vterm if shell is within vterm inside Emacs. +if [[ "$INSIDE_EMACS" = 'vterm' ]]; then + if [[ -n "${EMACS_VTERM_PATH}" ]] && + [[ -f "${EMACS_VTERM_PATH}/etc/emacs-vterm-zsh.sh" ]]; then + source "${EMACS_VTERM_PATH}/etc/emacs-vterm-zsh.sh" + fi + + # Some commands to invoke emacs functions + find-file() { + vterm_cmd find-file "$(realpath "${@:-.}")" + } + + say() { + vterm_cmd message "%s" "$*" + } +fi diff --git a/zsh/vterm.zsh b/zsh/vterm.zsh deleted file mode 100644 index 38e4b39..0000000 --- a/zsh/vterm.zsh +++ /dev/null @@ -1,17 +0,0 @@ -# -# vterm Integration -# https://github.com/akermu/emacs-libvterm#shell-side-configuration -# - -vterm_printf(){ - if [ -n "$TMUX" ]; then - # Tell tmux to pass the escape sequences through - # (Source: http://permalink.gmane.org/gmane.comp.terminal-emulators.tmux.user/1324) - 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 -} diff --git a/zshrc b/zshrc index 368d00a..676556d 100644 --- a/zshrc +++ b/zshrc @@ -111,7 +111,6 @@ source "$DOTZSH/git.zsh" source "$DOTZSH/less.zsh" source "$DOTZSH/rclone.zsh" source "$DOTZSH/tmux.zsh" -source "$DOTZSH/vterm.zsh" # Development source "$DOTZSH/docker.zsh"