在我的 Vimscript 中,我想遍历所有/仅包含磁盘上文件的缓冲区。目前我这样做是为了获取缓冲区 id 数组:
filter(range(1, bufnr('$')), 'buflisted(v:val)')
然后稍后我使用以下命令测试每个缓冲区 ID:
filereadable(fnamemodify(bufname(buffer_id), ':p'))
我已经阅读了关于buflisted、bufloaded 和friends 的文档,但我仍然不清楚它们之间的区别。因此,我不确定我上面的片段是否是最佳的。
此外,这似乎是一项常见的任务,它会有一个内置函数,但我找不到。
这是最好的方法还是有更好的方法?