vim-projectionist插件
来源:互联网 发布:重庆cnc编程最新招聘 编辑:程序博客网 时间:2024/06/05 20:28
今天给大家推荐一下 vim-projectionist 插件,它可以封装一些开发过程中常用的操作,提升工作效率.
这个插件配置很简单,大家可以先简单看一下 官方教程,然后看我写的python项目配置.
依赖
后面的功能依赖 vim-dispatch 插件,以后会写文章来讲解(强烈推荐).
项目结构
.├── .projections.json├── Makefile├── py_projectionist│ ├── __init__.py│ ├── mod_a│ │ └── __init__.py│ └── mod_b│ └── __init__.py└── tests ├── __init__.py └── mod_a └── __init__.py
.projectionist.json
:vim-projectionist
针对当前项目的配置文件Makefile
: 里面封装了单元测试、代码风格检查等py_projectionist
: 项目源码tests
: 单元测试
.projectionist.json
{ "py_projectionist/*.py": { "dispatch": "PYTHONPATH={project} python tests/{dirname}/test_{basename}.py", "alternate": "tests/{dirname}/test_{basename}.py", "make": "make -f Makefile" }, "tests/*.py": { "dispatch": "PYTHONPATH={project} python {file}", "make": "make -f Makefile", "template": [ "#!/usr/bin/env python", "# -*- coding: utf-8 -*-", "# {}测试代码模板..." ] }}
解释一下
py_projectionist/*.py
和tests/*.py
定义源文件和单元测试文件的行为dispatch
为vim-dispatch
插件设置默认操作,上面的两个dispatch
都被配置成运行相应文件的单元测试alternate
配置与当前文件关联的文件(例如.c
和.h
,源文件与单元测试等)make
执行我们Makefile
中定义的功能template
创建文件时,自动插入的模板
开发演示
cd py_projectionist/mod_avim mod_a.py
文件内容如下:
#!/usr/bin/env python# -*- coding: utf-8 -*-def add(x, y): return x + y
命令模式下输入: :A
,创建/切换到对应的单元测试文件:
单元测试代码如下:
#!/usr/bin/env python# -*- coding: utf-8 -*-from py_projectionist.mod_a import mod_aimport unittestclass ModATest(unittest.TestCase): def test_add_int(self): self.assertEqual(mod_a.add(1, 2), 3) def test_add_float(self): self.assertEqual(mod_a.add(1.0, 2), 3.0)if __name__ == '__main__': unittest.main()
在命令模式下输入 :Dispatch
,运行单个文件的单元测试(在源文件或者测试文件执行均可):
运行 Makefile
中的命令:
参考资料
- FILE TEMPLATES WITH ULTISNIPS AND PROJECTIONIST
- VIC RAMON’S EMBER TUTORIAL
- chantastic/.projections.json
- vicramon/projections.json
前往独立博客阅读
0 0
- vim-projectionist插件
- vim 插件
- vim插件
- vim插件
- vim插件
- vim 插件
- vim插件
- Vim插件
- vim 插件
- vim插件
- VIM插件
- vim插件
- vim 插件
- vim 插件
- vim插件
- vim 插件
- vim 插件
- VIM插件
- A child container failed during start
- eclipse导入web项目之后会报一大堆错误
- 设置背景
- 关于ServletOutputStream源代码引发的探究
- warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失.
- vim-projectionist插件
- 树莓派2B + Windows IoT
- DirectX11 XNA数学库之向量
- 利用VS生成静态库
- hdu5478Can you find it
- ThinkPHP--控制器调用模板
- 用Wget下载整个网站
- 分月饼(hdu1722)
- 黑马程序员-----c学习中的小程序