mjb*_*jb4 39 python vim syntastic
是否可以更改syntastic用于语法检查的python版本?
问题 https://github.com/scrooloose/syntastic/issues/385表明我可以使用virtual-env.但它是否也可以使用syntastic或vim命令?
Rap*_* D. 25
考虑到这个问题是在Google搜索" Syntastic python3 " 时出现的第一个结果,我的印象是大多数答案对于匆忙的人来说太复杂了,我觉得有必要添加一个新问题.切换到python3的直接解决方案是放
let g:syntastic_python_python_exec = 'python3'
let g:syntastic_python_checkers = ['python']
Run Code Online (Sandbox Code Playgroud)
在你的__CODE__.有人可能会说这不是最好的解决方案,但问题是如此模糊,似乎有必要从简单的事情开始.
nau*_*101 21
下面不再需要了,如果你被迫使用严格的python 2.x脚本,可能会搞砸.
最好的选择是单独保留Syntastic默认值,并使用conda管理python 3和2的单独环境(每个环境都有自己特定于版本的flake8,pyflakes等安装),并切换到适当的环境进行编辑每个文件.然后,Syntastic将根据激活环境中设置的路径调用python/flake8 /其他任何内容.
问:python检查器抱怨语法上有效的Python 3结构......
A.配置python检查器来调用Python 3解释器而不是Python 2,例如:
let g:syntastic_python_python_exec = '/path/to/python3'
将该行添加到.vimrc - 这应该可以解决您的问题.
Bru*_*sky 14
尽管这里有所有答案,我仍然发现常见问题解答中的建议是最好的.我已经添加了这个,.vimrc以便我可以轻松地在python版本之间切换.
function Py2()
let g:syntastic_python_python_exec = '/usr/local/bin/python2.7'
endfunction
function Py3()
let g:syntastic_python_python_exec = '/usr/local/bin/python3.6'
endfunction
call Py3() " default to Py3 because I try to use it when possible
Run Code Online (Sandbox Code Playgroud)
安装这些功能后,很容易在vim中使用:call Py2()或:call Py3()取决于我现在需要的内容切换python版本.无需退出vim并激活不同的virtualenv,因为流行的答案会让你这样做.
我设法说服Syntastic处理Python 3语法
pip3 install --user flake8
Run Code Online (Sandbox Code Playgroud)
(python3 -m flake8 *.py做工)然后,在vim中:
let g:syntastic_python_flake8_exec = 'python3'
let g:syntastic_python_flake8_args = ['-m', 'flake8']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15637 次 |
| 最近记录: |