SpaceVim 语言模块 python
原文连接: https://spacevim.org/cn/layers/lang/python/
模块简介
这一模块为在 SpaceVim 中进行 python 开发提供了支持,包括代码补全、语法检查、代码格式化、交互式编程以及调试等特性。
功能特性
- 代码补全
- 文档查阅
- 语法检查
- 代码格式化
- 交互式编程
- 代码调试
依赖安装及启用模块
启用模块
可通过在配置文件内加入如下配置来启用该模块:
[[layers]]
name = "lang#python"
语法检查
checkers 模块提供了代码检查功能, 此外需要安装 flake8 包:
pip install --user flake8
代码格式化
默认的代码格式化快捷键为 SPC b f, 需要安装 yapf。若需要在保存文件是自动格式化该 python 文件,需要设置 format-on-save 为 true。
pip install --user yapf
格式化 imports
若需要更便捷地删除未使用的 imports,需要安装 autoflake:
pip install --user autoflake
通过安装 isort 可快速对 imports 进行排序:
pip install --user isort
快捷键
跳至定义处
| 模式 | 按键 | 描述 |
|---|---|---|
| Normal | g d |
跳至光标函数的定义处 |
代码生成
| 模式 | 快捷键 | 按键描述 |
|---|---|---|
| Normal | SPC l g d |
生成 docstring |
交互式编程
启动 python 或 ipython 交互进程,快捷键为: SPC l s i。如果存在可执行命令 ipython,
则使用该命令为默认的交互式命令;否则则使用默认的 python 命令。可通过设置虚拟环境来修改可执行命令。
将代码传输给 REPL 进程执行:
| 快捷键 | 描述 |
|---|---|
SPC l s b |
发送整个文件内容至 REPL |
SPC l s l |
发送当前行内容至 REPL |
SPC l s s |
发送已选中的内容至 REPL |
运行当前脚本
在编辑 python 文件是,可通过快捷键 SPC l r 快速异步运行当前文件,运行结果会展示在一个独立的执行窗口内。
整理 Imports
| 快捷键 | 按键描述 |
|---|---|
SPC l i r |
使用 autoflake 移除未使用的导包 |
SPC l i s |
使用 isort 对导包进行排序 |
SpaceVim 语言模块 python的更多相关文章
- SpaceVim 语言模块 erlang
原文连接: https://spacevim.org/cn/layers/lang/erlang/ 模块简介 功能特性 启用模块 快捷键 语言专属快捷键 交互式编程 模块简介 这一模块为 SpaceV ...
- SpaceVim 语言模块 elixir
原文连接: https://spacevim.org/cn/layers/lang/elixir/ 模块简介 功能特性 启用模块 快捷键 语言专属快捷键 交互式编程 运行当前脚本 模块简介 这一模块为 ...
- SpaceVim 语言模块 elm
原文连接: https://spacevim.org/cn/layers/lang/elm/ 模块简介 功能特性 依赖安装及启用模块 依赖安装 启用模块 快捷键 语言专属快捷键 交互式编程 模块简介 ...
- SpaceVim 语言模块 lua
原文连接: https://spacevim.org/cn/layers/lang/lua/ 模块简介 启用模块 快捷键 交互式编程 运行当前脚本 模块简介 这一模块为在 SpaceVim 中进行 l ...
- SpaceVim 语言模块 dart
原文连接: https://spacevim.org/cn/layers/lang/dart/ 模块简介 功能特性 依赖安装及启用模块 启用模块 语法检查及代码格式化 安装 dart-repl 快捷键 ...
- C语言扩展Python模块
1. 先创建一个PythonDemo.cpp文件: //c/c++中调用python脚本,配置步骤参见上一篇:C/C++与python交互 \ C/C++中调用python文件. #include ...
- windows 下 使用codeblocks 实现C语言对python的扩展
本人比较懒就粘一下别人的配置方案了 从这开始到代码 摘自http://blog.csdn.net/yueguanghaidao/article/details/11538433 一直对Python扩展 ...
- python为什么叫胶水语言?python为什么是系统脚本?
python为什么叫胶水语言?python为什么是系统脚本? 特点是什么? python现在最广为闻名的形容大概有这些: 他是很好的胶水语言.什么是胶水语言?反正当时的我不知道. 他是新一代的系统 ...
- 小C和小派的缠绵爱情——C语言调用Python代码
我妒忌你的开源,你眼红我的速度,不如我们就在一起吧! --------SJ2050 2019.4.9号更新:实现在未安装python环境的机子上运行调用了python程序的C语言代码! 文章目录 环境 ...
随机推荐
- yii2.0 Activeform表单部分组件使用方法 [ 2.0 版本 ]
文本框:textInput(); 密码框:passwordInput(); 单选框:radio(),radioList(); 复选框:checkbox(),checkboxList(); 下拉框:dr ...
- CentOS 系统新装每次必看,直到背下。。
1.CentOS7 mini 修改网卡信息: vi /etc/sysconfig/network-scripts/ifcfg-ens192 ONBOOT = yes vi /etc/resolv.co ...
- selenium 滑动解锁(drag_and_drop_by_offset)
from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains from ...
- 使用MongoDB血泪般的经验教训
故事背景,天书世界,现在项目已经属于成熟维护期,是时候总结一下当时的想法 第一个问题,为什么使用mongodb? 数据库对于游戏项目本身的要求与传统业务系统差异较大,所以nosql的弱结构性对于我那是 ...
- 如何理解 Learning to rank
转:http://hi.baidu.com/christole/item/23215e364d8418f896f88deb What is Rank? rank就是排序.IR中需要排序的问题很多,最常 ...
- 022configparser模块
#配置模块 #创建import configparser config = configparser.ConfigParser() #添加config["DEFAULT"] ...
- [原]零基础学习SDL开发之在Android使用SDL2.0加载字体
在上一篇文章我们知道了如何在android使用SDL2.0来渲染显示一张png图,而且在上上一篇我们知道如何使用sdl来渲染输出bmp图,那么sdl是否可以渲染输出自己喜爱的字体库的字体呢?答案是当然 ...
- 解决hash冲突方法
转自:https://www.cnblogs.com/wuchaodzxx/p/7396599.html 目录 开放定址法 线性探测再散列 二次探测再散列 伪随机探测再散列 再哈希法 链地址法 建立公 ...
- table中实现数据上移下移效果
html 由于vue+Element项目中的table,没有开放的上移下移的api,但是能对数据操作,故思路为数组中的一条数据,再重新添加一条数据,办法有点笨,但是好歹也是实现了,望有好的办法的,请留 ...
- Spring(二十)之使用Log4j记录日志
日志记录,也是常用的,比如异常信息记录或者其他相关信息记录,良好的日志记录有助于当系统出现某些不是特别大的问题时,可及时通过日志信息,捕捉到异常,从而确定是那段代码的问题,避免影响其他的代码. 关于m ...