如何在VIM中清除函数调用的输出?
我知道我的问题标题不够解释,所以让我试着解释一下 我创建了一个显示当前电池状态的如何在VIM中清除函数调用的输出?,vim,Vim,我知道我的问题标题不够解释,所以让我试着解释一下 我创建了一个显示当前电池状态的vim功能。我的职能如下: function! BatteryStatus() let l:status = system("~/battery_status.sh") echo join(split(l:status)) endfunction 我已将上述函数映射为nnoremap:callbatterystatus()。现在,当我按下F3时,它显示我的电池状态为放电,56%,05:01:
vim功能
。我的职能如下:
function! BatteryStatus()
let l:status = system("~/battery_status.sh")
echo join(split(l:status))
endfunction
我已将上述函数映射为nnoremap:callbatterystatus()
。现在,当我按下F3时,它显示我的电池状态为放电,56%,05:01:42剩余,这是我所需的输出,但我的问题是如何使上述输出消失
当前发生的情况是在函数调用之后,它会连续显示输出,我必须手动使用:echo
清除命令窗口(:
)
那么,在我的功能中需要做哪些必要的更改,以便实现类似切换的行为
电池状态。sh
acpi | awk -F ": " '{print $2}'
附:这是学习练习的一部分。因此,请不要建议选择
vim脚本
您可以定义autocmd
:
:au CursorHold * redraw!
Vim在空闲后4秒重绘自身(由
updatetime
选项设置)。切换输出的简单直接方法:
let s:battery_status_output_flag = "show"
function! BatteryStatus()
if s:battery_status_output_flag == "show"
let l:status = system("~/battery_status.sh")
echo join(split(l:status))
let s:battery_status_output_flag = "clear"
else
echo ""
let s:battery_status_output_flag = "show"
endif
endfunction
注意s:
前缀,请参见:帮助脚本变量
您只需按住Ctrl+L键即可清除状态信息
vim
function! pseudocl#render#clear()
echon "\r\r"
echon ''
endfunction
行。您可以使用echon“\r\r”echon'',谢谢这太完美了。重画!对我来说是如此的忽隐忽现。我很惊讶,除了这样,他们没有办法清除命令行。