我有一段vimscript代码需要切换到特定的缓冲区,该缓冲区可以通过全路径、部分路径或仅名称来指定。
例如:
我在目录/home/user/code
中,并且已经打开了3个vim缓冲区foo.py
、src/foo.py
和src/bar.py
。
如果脚本被告知要切换到缓冲区
/home/user/code/foo.py
,它将切换到缓冲区foo.py
。如果被告知要切换到
user/code/src/foo.py
,它将切换到缓冲区src/foo.py
如果被告知要切换到
foo.py
,它将切换到缓冲区foo.py
如果被告知要切换到
bar.py
,它将切换到缓冲区src/bar.py
我能想到的最简单的解决方案是以某种方式获取存储在变量中的缓冲区列表并使用试错法。
如果该解决方案能够跨平台实现就更好了,但至少需要在Linux上运行。