读取vim状态行

读取vim状态行,vim,Vim,是否有办法从my vimrc中的函数中读取用户在状态行中看到的内容 我试图查看&stl的内容,但它包含我之前设置的状态行的“公式”,而不是实际计算的内容。在Vim 7.4版本之后引入了screenchar()函数。它主要用于测试,对非ASCII字符有一些限制,但可用于直接访问Vim用户界面中的任何位置。基本上,您只需找出感兴趣的状态行占用的屏幕行号: :let lnum = screenrow() - 1 " Status line directly above the command-line

是否有办法从my vimrc中的函数中读取用户在状态行中看到的内容

我试图查看&stl的内容,但它包含我之前设置的状态行的“公式”,而不是实际计算的内容。

在Vim 7.4版本之后引入了
screenchar()
函数。它主要用于测试,对非ASCII字符有一些限制,但可用于直接访问Vim用户界面中的任何位置。基本上,您只需找出感兴趣的状态行占用的屏幕行号:

:let lnum = screenrow() - 1 " Status line directly above the command-line.
:echo join(map(range(1, winwidth(0)), 'nr2char(screenchar(lnum, v:val))'), '')
Vim 7.4版本之后引入了
screenchar()
功能。它主要用于测试,对非ASCII字符有一些限制,但可用于直接访问Vim用户界面中的任何位置。基本上,您只需找出感兴趣的状态行占用的屏幕行号:

:let lnum = screenrow() - 1 " Status line directly above the command-line.
:echo join(map(range(1, winwidth(0)), 'nr2char(screenchar(lnum, v:val))'), '')

我不认为你可以直接从中阅读,但你可以阅读“公式”来解释它,并为自己获取值。也许有一点背景知识,你真正想做的会有所帮助;你的最终目标是什么?当一个问题只涉及一个小的技术步骤时,很难给出一个好的答案。如果你不告诉我们你为什么想要这个,你很容易屈服于这个。我不认为你可以直接从中阅读,但你可以阅读“公式”来解释它,然后自己获得值。也许有一点背景知识,你真正想做的会有所帮助;你的最终目标是什么?当一个问题只涉及一个小的技术步骤时,很难给出一个好的答案。如果你不告诉我们你为什么想要这个,很容易屈服于现实。