实践Vim配置python开发环境


Posted in Python onJuly 02, 2018

这段时间一直在用Python自带的IDLE编辑器、可是这IDLE的代码缩进真的让人很受伤、当你用到if:elif:的时候、后一行的elif:不会自动对齐、这让我经常出现在调试的时候才发现代码缩进出现问题呢、所以这次终于鼓起勇气吧IDLE换成VIM了、但是用VIM也存在一个比较闹心的问题、当你用VIM编写好代码之后想按F5运行下看看效果(很多编辑器都是F5来运行的)在vim下面当然是不行的。

看我对于python编辑器 我的要求很简单

1、 代码自动缩进

2、 代码高亮

3、 运行调试

Python自带的IDLE代码缩进真的是很坑爹,而VIM有没有Python的运行调试

下面为了让VIM作为Python的编辑器我们需要做一些设置。

打开vim安装目录编辑_vimrc文件

1、 让vim显示代码的行号(IDLE就不显示)

set nu

2、 设置文件编码

set fileencodings=utf-8,ucd-bom,gb18030,gbk,gb2312,cp936

3、 设置缩进、(建议设置4个空格作为缩进)

set tabstop=4

set sts=4
set expandtab
set softtabstop=4
set shiftwidth=4
set autoindent
set cindent
set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s

4、 修改下字体颜色、VIM默认的白底黑字真不咋滴

colorscheme desert

5、 取消VIM的自动备份功能(自动生成的~文件其实很不待见)

在behave mswin下面添加一行

set nobackup

6、 我刚刚开始用vim写python代码的时候会经常无意按下F5、所以为vim配置python的调试是相当的有必要的。

map <F5> :! d:\python32\python.exe %

添加map之后当我们写完代码之后按esc、然后按在F5+Enter的时候就调用python来运行代码

到此我们对vim的配置就完成了,你可以用vim来完成IDLE所有的功能了

Python 相关文章推荐
在Python中的Django框架中进行字符串翻译
Jul 27 Python
TensorFLow用Saver保存和恢复变量
Mar 10 Python
Python解决八皇后问题示例
Apr 22 Python
Python实现的读取电脑硬件信息功能示例
May 30 Python
python爬虫获取小区经纬度以及结构化地址
Dec 30 Python
python opencv将图片转为灰度图的方法示例
Jul 31 Python
python 创建一维的0向量实例
Dec 02 Python
python 图像的离散傅立叶变换实例
Jan 02 Python
Python实现鼠标自动在屏幕上随机移动功能
Mar 14 Python
Python实现初始化不同的变量类型为空值
Jun 02 Python
Selenium alert 弹窗处理的示例代码
Aug 06 Python
Python Map 函数的使用
Aug 28 Python
用python实现将数组元素按从小到大的顺序排列方法
Jul 02 #Python
Django实现分页功能
Jul 02 #Python
详解python单元测试框架unittest
Jul 02 #Python
python中多层嵌套列表的拆分方法
Jul 02 #Python
python中int与str互转方法
Jul 02 #Python
用Python将一个列表分割成小列表的实例讲解
Jul 02 #Python
python绘制圆柱体的方法
Jul 02 #Python
You might like
PHP正则表达式 /i, /is, /s, /isU等介绍
2014/10/23 PHP
PHP中一个有趣的preg_replace函数详解
2018/08/15 PHP
Laravel 微信小程序后端搭建步骤详解
2019/11/26 PHP
php设计模式之迭代器模式实例分析【星际争霸游戏案例】
2020/04/07 PHP
添加到收藏夹代码(兼容几乎所有的浏览器)
2007/01/09 Javascript
checkbox设置复选框的只读效果不让用户勾选
2013/08/12 Javascript
通过url查找a元素应用案例
2014/04/29 Javascript
javascript中caller和callee详解
2015/08/10 Javascript
js clearInterval()方法的定义和用法
2015/11/11 Javascript
js弹出对话框方式小结
2015/11/17 Javascript
基于javascript实现动态显示当前系统时间
2016/01/28 Javascript
js实现密码强度检测【附示例】
2016/03/30 Javascript
文件上传,iframe跨域数据提交的实现
2016/11/18 Javascript
微信小程序中的swiper组件详解
2017/04/14 Javascript
基于IView中on-change属性的使用详解
2018/03/15 Javascript
Vue SSR 组件加载问题
2018/05/02 Javascript
react 国际化的实现代码示例
2018/09/14 Javascript
vuex页面刷新后数据丢失的方法
2019/01/17 Javascript
简单了解JavaScript异步
2019/05/23 Javascript
VUE实现移动端列表筛选功能
2019/08/23 Javascript
基于PHP pthreads实现多线程代码实例
2020/06/24 Javascript
Ant Design Vue table中列超长显示...并加提示语的实例
2020/10/31 Javascript
python通过自定义isnumber函数判断字符串是否为数字的方法
2015/04/23 Python
python安装mysql-python简明笔记(ubuntu环境)
2016/06/25 Python
python常用函数详解
2016/09/13 Python
利用Python脚本实现ping百度和google的方法
2017/01/24 Python
python+numpy+matplotalib实现梯度下降法
2018/08/31 Python
Python 实现一行输入多个数字(用空格隔开)
2020/04/29 Python
PyTorch 中的傅里叶卷积实现示例
2020/12/11 Python
CSS3属性box-sizing使用指南
2014/12/09 HTML / CSS
纪念九一八事变演讲稿:忘记意味着背叛
2014/09/14 职场文书
交通事故和解协议书
2014/09/25 职场文书
医院护士工作检讨书
2014/10/26 职场文书
致创业您:正能量激励人心句子(48条)
2019/08/15 职场文书
mysq启动失败问题及场景分析
2021/07/15 MySQL
Fluentd搭建日志收集服务
2022/09/23 Servers