iTerm2 的 autocomplete 并不让我满意,有谁有比较好的解法吗?

2015-05-21 13:55:07 +08:00
 kamushin
iTerm2里的autocomplete有点像文本编辑器一样的想法,把最近屏幕上显示的、缓存的用来complete。
但是我想要的是,iTerm2缓存统计我输入的语句频率,然后搞个字典树帮我autocomplete.
比如我进数据库的shell后,经常就要执行alter切换用户的语句,那么我希望输入alter能auto complete整句话。
6159 次点击
所在节点    macOS
9 条回复
zhouzm
2015-05-21 15:21:22 +08:00
你需要的是zsh-autosuggestions:

http://img.svbtle.com/ipde0nu3roqcpq.gif
Cee
2015-05-21 15:25:50 +08:00
Oh my fish!
kamushin
2015-05-21 15:33:51 +08:00
@zhouzm
这个不能在非shell下用吧? 比如进入Python交互命令或者数据库交互命令行。
zhouzm
2015-05-21 17:34:42 +08:00
@kamushin python 的话你需要的是 ipython
postpresql 命令行支持历史的查找(ctrl+r)

其他的就不清楚了
kamushin
2015-05-21 17:37:43 +08:00
@zhouzm 恩。这样就是按照各自软件的方式去搞,而我对于各个软件的输入,其实都是走过了terminal,所以更希望在terminal这层帮我做记录。
lancelot9113
2015-05-21 18:48:18 +08:00
@kamushin

“而我对于各个软件的输入,其实都是走过了terminal”

你确定在类似python这样的interactive command interface里,输入的命令有经过terminal么?有根据么?

我不知道事实如何,但是非常怀疑你的这个想法。以下只是臆测:
既然shell本身就是一个这样的环境,那么python的这种环境应该也是类似的,也即进入了子环境。
在子环境下输入的命令在没有特殊调用的情况下会特意跑出python这个环境到shell环境下观光一会儿然后回到python环境?虽然unix的管道设计是为了流互通。但是,应该不会存在没有目的互通。
goldenapp
2015-05-21 21:36:41 +08:00
zsh
twitchgg
2015-05-21 22:08:06 +08:00
oh-my-zsh
lululau
2015-05-21 22:58:25 +08:00
@lancelot9113 LZ 说的没错,所有你从终端输入的数据,肯定是要过终端的,为什么?因为你是从终端输入的啊。。。

LZ 想要的这个功能其实 iTerm 差不多是有的:

echo 'tell app "iTerm" to get text of current session of current terminal' | osascript

结合 Alfred Workflow 完美满足 LZ 的需求

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/192703

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX