我有以下设置:
mkdir /1 mkdir /1/2 mkdir /1/2/3 ln -s /1/2/3 /1/3
如果我做cd / 1/3,然后pwd,我得/ 1/3.如果我使用pwd -P,我可以得到/ 1/2/3,或者pwd -L来强制/ 1/3.
在VIM中,我正在寻找获得1/3的方法.
如果我在/1/3/foo.txt中打开一个文件,并使用类似fnamemodify(bufname(winbufnr(0)),’:p:h’)的内容,则返回/ 1/2/3.
我怎么能告诉它给我一个pwd给出的目录?
看来你不能通过系统(‘pwd -L’).根据
vim_use mailing list Vim现在自动解析符号链接.
参见文本:h E773的基本原理;如果Vim通过符号链接而不是已解析的文件名,则可以在两个不同名称下的两个缓冲区中打开相同的文件,并且Vim会因为想出交换文件应该在哪里而感到困惑.另见:h version7.txt:
Unix: When editing a file through a symlink the swap file would use the name of the symlink. Now use the name of the actual file,so that editing the same file twice is detected.