问题标签 [eshell]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
emacs - 从 elisp 调用 Emacs 的 Eshell 的 eshell-previous-matching-input-from-input
我想让我在 eshell 中的向上箭头键是 eshell-previous-matching-input-from-input,因为它是,当点位于点最大时,否则是上一行。我写过
但这不对,因为 eshell-previous-matching-input-from-input 需要一个参数。我可以将其硬编码为 0,但这适用于单次按下向上箭头键(在最大点时)。我希望它在最高点时像开箱即用一样工作。我给论点什么?
python - Emacs 无法找到 python
我正在尝试在 Doom Emacs 中启用 python 开发环境(我是新手);我安装了elpy;并尝试启动显示“找不到python但可以从Microsoft安装...”的shell。
然后我将它添加到我的 config.el 中:
又试了一次;在迷你缓冲区中显示:
但这就是我的 python 二进制文件所在的位置。我在“执行路径”中添加了相同的路径;仍然无法在 eshell 中运行 python。
colors - 外壳和颜色输出
在使用 eshell 时,我面临一个关于 shell 输出颜色实现的奇怪行为。这是我的 .emacs 的内容:
奇怪的是,在 emacs 初始化后,eshell 无法正确显示输出(例如 git 或 pytest)的颜色。但是它不会引发任何错误,并且在它被初始化之后,我使用 Cx Ce 评估我的 init 文件的这一部分,并且在我这样做并重新启动 eshell 之后,它可以按预期正常工作。
我不明白为什么只有在初始化 emacs 之后执行它才会起作用,但不会对 .emacs 产生预期的影响。
我的 .emacs 上确实有 (setq initial-buffer-choice 'eshell) 行,但仅在上述部分之后。
关于为什么会发生这种情况的任何见解都会有所帮助。谢谢,
编辑 1
我将问题缩小到setenv
语句和initial-buffer-choice
. 出于某种原因,当我没有initial-buffer-choice
注释时,TERM
变量设置为dumb
. 另一方面,如果我initial-buffer-choice
在启动后评论并打开 eshell,那么一切都按预期工作。
我尝试将setenv
执行添加为 eshell-mode 和 emacs-startup 的钩子,以查看是否可以在启动期间强制执行它,但没有任何效果。
emacs - 在 Dired 中,如何将文件路径添加到相关字符转义的杀戮环?
正如这个答案所解释的,Dired 函数dired-copy-filename-as-kill
( 0 w
) 允许将文件的路径添加到终止环。但是,我想在 Eshell 上使用此路径,其中需要对 SPC 等字符进行转义。有没有办法复制相关角色逃脱的杀戮环的路径,或者转换以前的杀戮以逃脱这些角色?
powershell - 在启动时制作不可见的 eShell(kiosk) 窗口
我希望我的文件在最小化甚至更好地隐藏的 eShell 上启动。
这是我此时的代码:
我找不到任何解决方案。
编辑:
好的,所以经过一点研究。这个 powershell 只是在启动我的 run.bat 的窗口中添加并启用 eShell(Kiosk) 功能。因此,如果我将 -WindowStyle Hidden 添加到 powershell 中,它只会隐藏 powershell。我需要的主要是这个启动的 run.bat 将在启动时最小化或隐藏
windows - Windows 上的 Emacs shell:“/c:找不到命令”
Windows 10 上的 Emacs(本机,不是来自 Cygwin)。从 Emacs shell 我试图调用几个.bat
脚本,但我得到了这个错误:
我从eshell检查了PATH环境变量,这些脚本的目录都包含在内;which [***scriptname***]
实际上,它们的目录是由Emacs shell 中的 a 正确给出的。这些脚本也可以从 Git bash 中正确调用(在完全不同的目录中打开)。问题可能是什么?我看到 PATH 环境变量中的目录不在引号内并且包含空格。这可能是问题吗?如何解决?谢谢!
emacs - How to make eshell-autojump case insensitive under Linux
Under Linux, eshell-autojump will do case sensitive matching which I just find a nuisance. I've tried to circumvent this by advising eshell/j with a eshell-under-windows-p that always returns t but to my chagrin eshell-under-windows-p invoked in eshell/j is unaffected by cl-letf. I've modified my eshell/j a bit to give me some debug info:
My init.el adds the advice to attempt to make eshell/j caseless by trying to trick it to think we are on Windows:
But all I get in Messages buffer when I try to jump in eshell is:
My rookie knowledge of elisp is not enough to wrestle with probable scoping issues here. Can anyone decode why eshell-under-window-p is unaffected when called from eshell/j here?