原文连接: 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-savetrue

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

交互式编程

启动 pythonipython 交互进程,快捷键为: 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的更多相关文章

  1. SpaceVim 语言模块 erlang

    原文连接: https://spacevim.org/cn/layers/lang/erlang/ 模块简介 功能特性 启用模块 快捷键 语言专属快捷键 交互式编程 模块简介 这一模块为 SpaceV ...

  2. SpaceVim 语言模块 elixir

    原文连接: https://spacevim.org/cn/layers/lang/elixir/ 模块简介 功能特性 启用模块 快捷键 语言专属快捷键 交互式编程 运行当前脚本 模块简介 这一模块为 ...

  3. SpaceVim 语言模块 elm

    原文连接: https://spacevim.org/cn/layers/lang/elm/ 模块简介 功能特性 依赖安装及启用模块 依赖安装 启用模块 快捷键 语言专属快捷键 交互式编程 模块简介 ...

  4. SpaceVim 语言模块 lua

    原文连接: https://spacevim.org/cn/layers/lang/lua/ 模块简介 启用模块 快捷键 交互式编程 运行当前脚本 模块简介 这一模块为在 SpaceVim 中进行 l ...

  5. SpaceVim 语言模块 dart

    原文连接: https://spacevim.org/cn/layers/lang/dart/ 模块简介 功能特性 依赖安装及启用模块 启用模块 语法检查及代码格式化 安装 dart-repl 快捷键 ...

  6. C语言扩展Python模块

    1. 先创建一个PythonDemo.cpp文件: //c/c++中调用python脚本,配置步骤参见上一篇:C/C++与python交互 \  C/C++中调用python文件. #include ...

  7. windows 下 使用codeblocks 实现C语言对python的扩展

    本人比较懒就粘一下别人的配置方案了 从这开始到代码 摘自http://blog.csdn.net/yueguanghaidao/article/details/11538433 一直对Python扩展 ...

  8. python为什么叫胶水语言?python为什么是系统脚本?

    python为什么叫胶水语言?python为什么是系统脚本?   特点是什么? python现在最广为闻名的形容大概有这些: 他是很好的胶水语言.什么是胶水语言?反正当时的我不知道. 他是新一代的系统 ...

  9. 小C和小派的缠绵爱情——C语言调用Python代码

    我妒忌你的开源,你眼红我的速度,不如我们就在一起吧! --------SJ2050 2019.4.9号更新:实现在未安装python环境的机子上运行调用了python程序的C语言代码! 文章目录 环境 ...

随机推荐

  1. ssh配置调试的必杀技

    我们知道,ssh客户端的文件及文件夹的权限会影响到身份验证是否通过,可能又不告诉我们为什么,这真是件烦心了事 所以,服务器调试执行就可以看到很多错误信息了 /usr/sbin/sshd -d -p 2 ...

  2. Ios国际化翻译工具

    IOS Translation Tool(IOS国际化翻译工具) 介绍 当IOS项目国际化的时候,手工去翻译每一个字符串是一件非常痛苦的事情.尤其是当项目中存在N多种语言.而且又很难保证,手工翻译的准 ...

  3. mongodb 副本集+分片集群搭建

    数据分片节点#192.168.114.26mongod --shardsvr --replSet rsguo --port 2011 --dbpath=/data/mongodb/guo --logp ...

  4. mongodb启动和关闭

    mongodb的启动 mongod --dbpath=/data/mongodb/data --logpath=/data/mongodb/log/33988.log --port 33988 --f ...

  5. Jenkins报错Caused: java.io.IOException: Cannot run program "sh" (in directory "D:\Jenkins\Jenkins_home\workspace\jmeter_test"): CreateProcess error=2, 系统找不到指定的文件。

    想在本地执行我的python文件,我本地搭建了一个Jenkins,使用了execute shell来运行我的脚本,发现报错 [jmeter_test] $ sh -xe D:\tomcat\apach ...

  6. bzoj 2111: [ZJOI2010]Perm 排列计数 (dp+卢卡斯定理)

    bzoj 2111: [ZJOI2010]Perm 排列计数 1 ≤ N ≤ 10^6, P≤ 10^9 题意:求1~N的排列有多少种小根堆 1: #include<cstdio> 2: ...

  7. bzoj4600 [Sdoi2016]硬币游戏

    Description Alice和Bob现在在玩的游戏,主角是依次编号为1到n的n枚硬币.每一枚硬币都有两面,我们分别称之为正面和反面.一开始的时候,有些硬币是正面向上的,有些是反面朝上的.Alic ...

  8. 2019.1.10 Mac安装Nginx服务器

    1.安装Homebrew ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/in ...

  9. Jmeter实例计划(查询天气)

    查询计划(天气查询) 这是一个入门计划,仅使用jmeter进行查询功能的计划,可参考http://www.cnblogs.com/TankXiao/p/4045439.html有代码可下载.不过我还是 ...

  10. 使用Nginx 做负载均衡

    Nginx可以作为一个非常高效的负载均衡系统,通过分发HTTP请求到多个应用服务器来提高整个系统的吞吐量,性能和可用性. 负载均衡的算法/机制 下面是Nginx支持的机制 轮询机制 轮询算法 最少连接 ...