我有alias vif='vim $(fzf)
,~/.zprofile
而且效果很好;但是,即使我单击esc
按钮,它总是会打开 vim 窗口,因为我没有找到我正在寻找的文件。vim
如果按,如何使其无法打开esc
?
问问题
398 次
1 回答
2
使用 shell 函数,这将允许您检查是否fzf
以非零状态退出。(如果被 Esc 或 Ctrl+C 打断,它会以状态 130 退出。)
function vif() {
local fname
fname=$(fzf) || return
vim "$fname"
}
function fcd() {
local dirname
dirname=$(find -type d | fzf) || return
cd "$dirname"
}
当返回码不为零时,该|| return
部分会提前中断,因此只有在成功执行vim
后才会调用。fzf
于 2020-12-19T22:49:18.067 回答