vimrc 通过系统命令引用 python3 路径

时间:2020-12-23 20:44:53

标签: vim

对于YouCompleteMe插件,我想在我的vimrc中设置参数g:ycm_path_to_python_interpreter为系统python3安装的路径。

我正在使用 let g:ycm_path_to_python_interpreter = system('which python3') 但是这是无效的,因为 system(..) 似乎在一个单独的缓冲区中返回 python3 路径的字符串。我的意思是我看到了

/home/ubuntu/anaconda3/bin/python3

Press ENTER or type command to continue

当我:echo g:ycm_path_to_python_interpreter。我只希望路径作为字符串(即 /home/ubuntu/anaconda3/bin/python3)。我该怎么做?

1 个答案:

答案 0 :(得分:0)

您遇到的问题是 system() 将在命令末尾包含换行符。

您可以使用以下命令查看:

:let g:ycm_path_to_python_interpreter

哪个会告诉你:

g:ycm_path_to_python_interpreter     /home/ubuntu/anaconda3/bin/python3^@

(末尾的 ^@ 代表换行符。)

要解决此问题,只需在 trim() 调用周围调用 system()

let g:ycm_path_to_python_interpreter = trim(system('which python3'))