关闭 vim 后 Unix 控制台变为非活动状态

关闭 vim 后 Unix 控制台变为非活动状态
user@laptop:~$ locate file.ext | xargs vim -p
Vim: Warning: Input is not from a terminal
2 files to edit
user@laptop:~$ 

在 vim 中找到文件并修改它们后,我想保存它们并继续在 unix 控制台中工作,但我无法这样做。

关闭 vim 后控制台就停止了。任何按键均无活动。唯一的解决方法是关闭控制台选项卡并创建一个新的。我该如何解决这个问题?

答案1

尝试以不同的方式运行:

vim -p `locate file.ext`

reset或者您可以在 vim 会话后尝试运行命令,将终端选项重置为默认值:

locate file.ext | xargs vim -p; reset

答案2

这是我在通过 Cygwin 上的管道命令退出 vim 后所做的。

stty sane {enter}

当然,你不会看到输入的内容,但按下回车键后,tty 将恢复运行。这很麻烦,但有效。

我不喜欢这里的其他解决方案,因为我经常运行比文件查找更复杂的查找。我可能会这样做:

egrep -ri [pattern] * | sed -e 's:\:.*::g' | grep -v ^Binary | sort | uniq | xargs vim

在我的工作中(有 10 年历史的快速移动代码库),这种搜索非常常见,以至于我将前五个命令放在一个 shell 脚本中,然后通过管道传输到 vim。

答案3

Vim: Warning: Input is not from a terminal

管道本身并不是终端,但是您尝试过吗fg

相关内容