如何在vimscript中获取缓冲区类型

如何在vimscript中获取缓冲区类型,vim,Vim,给定缓冲区id,如何获取缓冲区的缓冲区类型?我知道我可以切换到该缓冲区并使用:set buftype?获取类型 但是我怎么能不跳到缓冲区呢 (我希望有类似于buftype(id)的东西可以像bufname(id)一样工作)您正在寻找的 如何获取当前缓冲区的缓冲区类型而不知道其bufid?@raining,对于当前缓冲区,您只需使用&buftype :echo getbufvar(bufid, '&buftype', 'ERROR')

给定缓冲区id,如何获取缓冲区的缓冲区类型?我知道我可以切换到该缓冲区并使用
:set buftype?
获取类型

但是我怎么能不跳到缓冲区呢

(我希望有类似于
buftype(id)
的东西可以像
bufname(id)
一样工作)

您正在寻找的


如何获取当前缓冲区的缓冲区类型而不知道其
bufid
?@raining,对于当前缓冲区,您只需使用
&buftype
:echo getbufvar(bufid, '&buftype', 'ERROR')