diff options
Diffstat (limited to 'dotfiles/system/.profile.d/emacs.sh')
| -rw-r--r-- | dotfiles/system/.profile.d/emacs.sh | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/dotfiles/system/.profile.d/emacs.sh b/dotfiles/system/.profile.d/emacs.sh new file mode 100644 index 0000000..c70d928 --- /dev/null +++ b/dotfiles/system/.profile.d/emacs.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +# emacs.sh +# Craig Jennings <c@cjennings.net> +# Emacs specific settings, sourced by .profile + +### INFO FILES +export INFOPATH="$HOME/.config/emacs/info:/usr/share/info:/usr/local/share/info" + +### WORKAROUND +# https://unix.stackexchange.com/questions/230238/x-applications-warn-couldnt-connect-to-accessibility-bus-on-stderr +# emacs/gtk interaction bug workaround +export NO_AT_BRIDGE=1 + +# WAKE UTILITY +# useful when emacs or elisp doesn't timeout. +alias emacswake='for i in `seq 1 500`; do killall -s USR2 emacs; done' # wake emacs from a freeze + +### VTERM +# Vterm uses some features (e.g., directory-tracking and prompt-tracking or message passing) that require shell-side configurations. +# This functions enables the shell to send information to vterm via properly escaped sequences. + +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 +} |
