#!/bin/sh # emacs.sh # Craig Jennings # 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 }