Emacs shell 模式选项卡补全 ( comint-dynamic-complete
) 适用于 linux 内置的命令,但它似乎没有检测到我的原始命令,其路径在~/.bashrc
. 我怎样才能comint-dynamic-complete
寻找这样的命令?我使用 emacs 23.3。
问问题
341 次
2 回答
2
在 shell 模式下,它会查找 中指定的目录,该目录是在 Emacs 启动时exec-path
根据环境变量初始化的。您可以覆盖( ref )PATH
中的一个或两个。此页面向您展示如何覆盖这两个变量中的任何一个:.emacs
(setenv "PATH" (concat (getenv "PATH") ":/sw/bin"))
(setq exec-path (append exec-path '("/sw/bin")))
编辑:
Powershell.el
可能是comint.el
. 在源代码注释中,它声称要搜索exec-path
其中一个功能,恕我直言,应该在comint.el
:
;; (defun powershell-dynamic-complete-command ()
;; "Dynamically complete the command at point.
;; This function is similar to `comint-dynamic-complete-filename', except that it
;; searches the commands from powershell and then the `exec-path' (minus the
;; trailing Emacs library path) for completion
;; candidates.
阅读以“完成 TAB 的注释”开头的源代码注释。
于 2011-06-27T13:00:14.613 回答
1
(require 'shell-command)
(shell-command-completion-mode)
于 2011-07-25T12:19:15.047 回答