python用vim做ide的语法检查

来源:互联网 发布:数据格式化后怎么恢复 编辑:程序博客网 时间:2024/06/09 04:57

http://linux-wiki.cn/wiki/zh-hans/%E9%85%8D%E7%BD%AE%E5%9F%BA%E4%BA%8EVim%E7%9A%84Python%E7%BC%96%E7%A8%8B%E7%8E%AF%E5%A2%83

http://nvie.com/posts/vim-flake8-flake8-for-vim/

http://www.malike.net.cn/blog/2013/10/23/flake8-tutorial/



网上建议python用flake8



1,安装flake8

pip install flake8



2,安装pythogen


mkdir -p ~/.vim/autoload ~/.vim/bundlecurl -Sso ~/.vim/autoload/pathogen.vim \    https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim


vimrc设置

execute pathogen#infect()syntax onfiletype plugin indent on




3,安装vim-flake8

cd ~/.vim/bundlegit clone git://github.com/nvie/vim-flake8.git





按F7就会执行Flake8对当前文件进行检查。







附php的语法检查

http://0x3f.org/blog/syntax-checking-and-code-executing-in-vim/


vimrc


" Check the syntax of a PHP filefunction! CheckPHPSyntax()    if &filetype != 'php'        echohl WarningMsg | echo 'This is not a PHP file !' | echohl None        return    endif    setlocal makeprg=php\ -l\ -n\ -d\ html_errors=off\ %    setlocal errorformat=%m\ in\ %f\ on\ line\ %l    echohl WarningMsg | echo 'Syntax checking output:' | echohl None    if &modified == 1        silent write    endif    silent make    clistendfunctionau filetype php map <F5> :call CheckPHPSyntax()<CR>au filetype php imap <F5> <ESC>:call CheckPHPSyntax()<CR>

此后可按F5键即时检查当前Buffer中的PHP当面的语法






附:

折叠:

http://scmbob.org/vim_fdm.html

set foldmethod=indent"默认展开所有代码set foldlevel=99

用法:

zc      折叠
zC     对所在范围内所有嵌套的折叠点进行折叠
zo      展开折叠
zO     对所在范围内所有嵌套的折叠点展开
[z       到当前打开的折叠的开始处。
]z       到当前打开的折叠的末尾处。
zj       向下移动。到达下一个折叠的开始处。关闭的折叠也被计入。
zk      向上移动到前一折叠的结束处。关闭的折叠也被计入。



设置:

http://hi.baidu.com/lane727/item/ad4bf2bfe0e6174b2bebe323


.vimrc文件中添加如下命令,配置自动保存折叠状态

au BufWinLeave * silent mkview
au BufWinEnter * silent loadview

如果使用:mkview命令保存view失败,

则在用户根目录下创建目录:mkdir -p .vim/view即可。





附2:

单步调试:

http://www.the5fire.com/python-pdb-the-debugger.html


import pdb;pdb.set_trace()

你help一下,会有一个简单的提示,目前我只用到n(下一步)和s(步入)




或者:

http://blog.csdn.net/keyoflov/article/details/6865651



python -m pdb myscript.py

其中:-m (mod)----- run library module as a script (terminates option list)

pdb-----The Python Debugger





0 0