当我有绝对路径时,如何在 vimscript 中查找缓冲区,并且您知道 vim 缓冲区名称可以是相对路径?有这样的函数吗?
答案1
该bufnr()
函数可以查找缓冲区(并返回其编号)。与 类似bufname()
,这可以采用多种形式获取查询的缓冲区名称(参见:help bufname()
):
A full match is preferred, otherwise a match at the start, end or middle of the buffer name is accepted. If you only want a full match then put "^" at the start and "$" at the end of the pattern.
举个例子
:echo bufnr('^C:\path\to\file.txt$')
另外,您可以通过该函数在相对路径和绝对路径之间进行转换fnamemodify()
。