是否有支持emacs风格的ido查找文件的命令行shell或shell自定义?在emacs中,我可以使用C-x C-f
和(ido-mode t)
极其快速地导航到目录。Emacs ido风格的外壳
理想情况下,我正在寻找一种可以在emacs之外使用的解决方案。虽然我会开放一种方法来快速更改eshell缓冲区内的目录。
是否有支持emacs风格的ido查找文件的命令行shell或shell自定义?在emacs中,我可以使用C-x C-f
和(ido-mode t)
极其快速地导航到目录。Emacs ido风格的外壳
理想情况下,我正在寻找一种可以在emacs之外使用的解决方案。虽然我会开放一种方法来快速更改eshell缓冲区内的目录。
因为我也想这样的事情,我试图实现它作为bash完成 函数。显然这意味着。你必须使用bash。
它只是轻微测试,所以请随时尝试和报告错误/评论。
我知道某些终端仿真器支持扩展,例如rxvt-unicode可以用Perl脚本扩展。我不确定,因为我从来没有写过扩展名,但也许你想要的是可以这样做的。
如果您想查看urxvt的某些Perl脚本,可以在/ usr/lib/urxvt/perl中找到一些示例,并在Debian上安装默认的urxvt。
Bash有一个名为CDPATH的环境变量,它可以包含使用cd命令时要搜索的目录列表。另外,请查看Bash手册的“可编程完成”和“READLINE”部分。你应该能够凑齐一些适合你的东西。
尝试Z-shell。它比bash有更好的完成。我必须承认我已经有一段时间没有使用它了,因为它始终可用,所以我坚持使用bash。
如果你想在eshell或类似的目录中完成ido完成,最好编写一个使用ido读取目录的函数,然后将cd命令插入到shell缓冲区中。我不使用eshell,所以我不能评论如何实际编写这个函数,但这是一个想法。
到目前为止我所能想出的最好的是autojump。仍在寻找更接近ido的解决方案,但autojump是一个很棒的小应用程序。
我常常希望表现得像个IDO模式更多的应用。 – 2009-07-11 03:00:37
为什么要离开emacs? :) eshell? – seth 2009-07-11 07:12:58
他说他使用eshell。我阅读了ido源代码,并且它不太适合从eshell轻松使用。所以,他需要重构ido,然后将其绑定到eshell,如果他选择了这条路线。 – jrockway 2009-07-12 02:46:48