在使用 YouCompleteMe(显然是 Jedi)的(优秀)Python 自动完成功能时,有时我突然无法保存,因为 vim 认为我当前文件的路径发生了变化。当我使用 vim bpython/curtsiesfrontend/repl.py
打开文件时,运行
:echo expand('%:p')
给我
/Users/tomb/Dropbox/code/bpython/bpython/curtsiesfrontend/repl.py
但是在我使用完成之后,相同的命令给出了
bpython/curtsiesfrontend/repl.py
我无法再保存该文件,因为该路径不存在。 :pwd
在之前和之后给出 /Users/tomb/Dropbox/code/bpython
- 所以等式中必须有其他部分“这个的完整目录路径是什么”文件。”
我想知道我应该查看哪些 vim 命令或概念来确定问题。必须有一些关于正在更改的文件的当前目录的概念(但是 vim 计算 expand('%:p')
的值),但我不知道该怎么调用它。当前正在改变的目录是什么概念?
最佳答案
当前文件位置相对于 Vim 当前路径,可以使用 :cd
或 :lcd
来设置。
为了确定更改的位置,您可以在 :redir
命令中使用 'verbose'
选项:
redir @a
set verbose=9
<execute the steps to reproduce the issue>
redir end
set verbose&
new
put a
然后搜索“chdir”。增加 'verbose'
的值会显示更多信息,但也会使执行每个步骤来重现问题变得更加困难。确定较小的测试过程后,您可以使用较高的 'verbose'
值重复这些步骤。
关于python - vim中如何计算当前文件位置? (扩展值 ('%:p' )),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25145847/