浏览代码

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

Ivan Dario Piernagorda Peña 3 年之前
父节点
当前提交
fb80eb8e05
共有 1 个文件被更改,包括 10 次插入0 次删除
  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.