我使用oh my zsh进行自定义,提示看起来像这个
┌─[naveen@bblpt005] - [~] - [Wed Jan 11, 03:16]
└─[$] <>
我在我的.zshrc中定义了一个函数来查找文件并在Vim中打开它们。
vf() {
find . -name "$*" | xargs vi;
}
该功能按预期工作,但当我退出Vim时,提示被搞砸了,显示为
┌─[naveen@bblpt005] - [~] - [Wed Jan 11, 03:20]
└─[$] <>
Ctrl-D和其他Ctrl键组合也停止工作。我必须使用reset
命令修复它。
如何修改函数以避免这种情况发生?
在xargs
下运行命令时,其stdin连接到/dev/null
。vi
可能没有预料到这一点。文本编辑器通常应在没有I/O重定向的情况下运行。试试这个,看看它是否对你的终端有同样的效果。我敢打赌:
vi somefile </dev/null
您将希望通过使用除xargs之外的其他方法来解决此问题。可能是这样的:
vi $(find . -name "$*")