Browse Source

emacs: add ansi-term directory tracking (#9218)

Ivan Dario Piernagorda Peña 4 years ago
parent
commit
fb80eb8e05
1 changed files with 10 additions and 0 deletions
  1. 10 0
      plugins/emacs/emacs.plugin.zsh

+ 10 - 0
plugins/emacs/emacs.plugin.zsh

@@ -26,6 +26,16 @@ if "$ZSH/tools/require_tool.sh" emacsclient 24 2>/dev/null ; then
     # create a new X frame
     alias eframe='emacsclient --alternate-editor "" --create-frame'
 
+    # Emacs ANSI Term tracking
+    if [[ -n "$INSIDE_EMACS" ]]; then
+        chpwd_emacs() { print -P "\033AnSiTc %d"; }
+        print -P "\033AnSiTc %d"    # Track current working directory
+        print -P "\033AnSiTu %n"    # Track username        
+
+        # add chpwd hook
+        autoload -Uz add-zsh-hook
+        add-zsh-hook chpwd chpwd_emacs
+    fi    
 
     # Write to standard output the path to the file
     # opened in the current buffer.