Vim有一个花哨的NetRW插件,让我输入
vim ftp://ftp.example.com/
并获得一个不错的目录列表,我可以通过在它们顶部按CR来编辑文件。
但是,我似乎无法通过目录执行此操作。在我按F1时出现的帮助文件中,它表示我应该能够:
BROWSING netrw-cr {{{2
Browsing is simple: move the cursor onto a file or directory of interest.
Hitting the <cr> (the return key) will select the file or directory.
Directories will themselves be listed, and files will be opened using the
protocol given in the original read request.
但是,当我使用j
/ k
导航到目录并按<cr>
尝试打开它时,我得到:
somedirectory: Not a regular file
Vim尝试访问ftp://ftp.example.com/somedirectory
。请注意,它没有添加斜杠,表示它是一个目录。
我为何会发生这种情况而感到茫然。如何在Vim中输入该目录,而不必退出Vim并重新输入vim ftp://ftp.example.com/somedirectory/
?
我在Ubuntu 14.04上运行Vim 7.4。
答案 0 :(得分:1)
Vim似乎并不知道我的目录确实是一个目录,因为它在目录列表中没有显示/
个符号。
幸运的是,我找到了一种方法来强制NetRW像文件一样充当目录:gd
。
FORCING TREATMENT AS A FILE OR DIRECTORY netrw-gd netrw-gf {{{2
Remote symbolic links (ie. those listed via ssh or ftp) are problematic
in that it is difficult to tell whether they link to a file or to a
directory.
To force treatment as a file: use
gf
To force treatment as a directory: use
gd
因此,只需按gd
而不是<cr>
即可切换到光标下的目录。
我还不确定为什么NetRW认为我的目录是文件。帮助信息仅表示&#34;远程符号链接,&#34;他们不是(我认为)。它可能与我的Web主机(iPage)有关,它可能在任何地方使用符号链接而不是实际目录。或者也许是我刚才采取的措施。