vim 通过绝对路径查找缓冲区

vim 通过绝对路径查找缓冲区

当我有绝对路径时,如何在 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()

相关内容