Sublime for Python

  • 部分转载自:将Sublime Text 3设置为Python全栈开发环境

相关配置

安装Python

  • 环境变量设置为 C:\Python34 即可
  • 在cmd中输入 python 测试是否配置正确环境变量

在两个版本的Python之间切换

  • cmd中输入 py -2 web2py 就是用Python 2运行的
  • cmd中输入 py -3 web2py 就是用Python 3运行的
  • 在Sublime和环境下只要把环境变量里的Python 3的路径删了就是Python 2的解释器的路径了
  • 添加一个Python27.sublime_build,就可以执行Python27的程序,同理可以添加Python34
{
    "cmd" :["C:\\Python27\\python.exe","$file"],
}

SyntaxError: Non-ASCII character ‘\xe5’ in file 错误提示

  • 现象:最近需要抓取一些网页的信息,但发现Python的乱码问题相对Java来说,不太一样。按照以往Java解决中文乱码问题的思路去解决Python乱码,貌似行不通,报错信息:
  • SyntaxError: Non-ASCII character ‘\xe5’ in file
  • 原因:Python默认是以ASCII作为编码方式的,如果在自己的Python源码中包含了中文(或者其他的语言,比如小日本的日语……),此时即使你把自己编写的Python源文件以UTF-8格式保存了;但实际上,这依然是不行的。
  • 解决方法:在源码的第一行添加以下语句:
  • # -- coding: UTF-8 --
  • 或者
  • # coding=utf-8
  • (注:此语句一定要添加在源代码的第一行)

写代码时出现了好多白色的框框

  • 如果是因为使用anaconda插件而出现这些框框,可以在可以在 Sublime > Preferences > Package Settings > Anaconda > Settings Default 中设置关闭: {“anaconda_linting”: false}
  • 或者 是不是安装了 SublimeLinter
  • 这是用来在写代码时做代码检查的。可以在包管理器中安装。写Python程序的话,它还会帮你查代码是否符合PEP8的要求。有问题有代码会出现白框,点击时底下的状态栏会提示出什么问题。
  • 建议再装一个 Python PEP8 Autoformat

Python PEP8 Autoformat

  • 这是用来按PEP8自动格式化代码的。可以在包管理器中安装。如果以前写程序不留意的话,用SublimeLinter一查,满屏都是白框框,只要装上这个包,按ctrl+shift+r,代码就会按PEP8要求自动格式化了,一屏的白框几乎都消失了。
  • 另外建议装 Flake8Lint 这个插件,感觉还是蛮不错的

Python Flake8Lint

  • 代码不规范时会在前面显示一个红色的小灯笼,每次运行会提示你怎么修改
  • 保存代码的时候也会提示不规范的地方
  • Ctrl + Alt + Shift + 8 提示修改
  • Ctrl + Alt + Shift + 9 提示修改下一个错
  • 当一行代码太长时,会提示,所以修改一下默认的代码行长度就行了Preferences -> Package Settings -> Flake8Lint -> Settings-Default

Code Snippets

  • 允许你通过一两个简单的关键字就能写出一段常用的代码片(Snippets),从而增加你的生产效率。比如,你只需要打开一个文件,输入 “lorem” 然后敲击 tab 键,就会自动生成一段乱数假文(译者注: 一种用于测试文章或文字在不同字型、版型下看起来的效果等的文字)。又比如在 Python 代码中,你可以输入 “defs” 然后敲击 tab 键,你就能得到一段通用的函数定义。
  • 同时,你还可以点击 Tools > New Snippet 来创建属于你自己的代码片。请参照这个 文档 来获取帮助,也可以在 这里 查看我个人用到的一些 snippets。

Git

  • 版本库是软件开发中不可缺少的工具,该插件把Git常用命令加入了Command Palette,让开发人员进行代码管理方便不少。

GitGutter

  • 这个小插件是在修改后的文件行号前增加一些标识图片,方便与版本库对比,修改内容一目了然。

Anaconda

  • Anaconda是一个终极的Python扩展包,他为ST3增加了很多IDE类的特性,包括:
  • 自动补全
  • 代码风格提示(基于PEP8),如果你不想使用这个功能,比如说你更愿意使用下文会提到的Sublime Linter,可以在 Sublime > Preferences > Package Settings > Anaconda > Settings User 中设置关闭: {“anaconda_linting”: false}
  • McCabe代码复杂性检测
  • Goto Definition / 跳转到定义
  • Find Usage / 查找引用
  • 显示文档说明
  • 所有这些功能都在鼠标右键中得Anaconda选项下可以调出。
  • 需要留意的是,Anaconda安装好后是需要做一些配置的,如果你英文够好,建议阅读Readme文档,但你至少需要做下面的操作:
  • 打开 Sublime Text > Preferences > Package Settings > Anaconda > Settings - User, 输入
  • 这个不配置也没问题
{
    "python_interpreter": "C:\\Python34\\python.exe",  // 这里输入你的python程序路径
    "auto_python_builder_enabled": false,
}

  • Anaconda绝对是换到Sublime Text 3后最令我兴奋的插件,没有之一。在Sublime Text 2的时代,为配置一个好用的python开发环境,
  • 我们需要分别安装All Autocomplete,SublimeREPL,Pylinter和PEP8等诸多插件。
  • Geek就是让一切变得更简单,该插件作者就为了简便,把这些功能集中起来了。
  • Anaconda把PyFlakes, pep8 和 McCabe以插件的方式集成起来。安装Anaconda后,通过配置即可完成一个良好的Python开发环境。
  • Anaconda is a python development suite that includes autocompletion, IDE features, linting with PyLint or PyFlakes + pep8, AutoPEP8 , Vagrant and more for Sublime Text 3.
  • 安装时可以通过Package Control安装,也可以使用Git追踪最新版本。GitHub地址
  • 安装成功后在插件配置内打开Anaconda的REAMME,可以参考进行个性配置。我这里做了如下的修改:

增加对象的点操作符时的自动提示

  • 这个装上会提示代码解释错误,还是别装了
  • 在Packages/User目录下创建Python.sublime-settings文件,增加如下内容
{
    "auto_complete_triggers": [{"selector": "source.python - string - comment - constant.numeric", "characters": "."}]
}

增加括号操作符后的参数自动完成

  • 在Preference -> Package Setting -> Anaconda -> Setting-Defualt 中设置
  • 下面两个设置以后代码提示让人受不了,还是别加了
  • 在Anaconda Setting中修改complete_parameters参数的值为true。
  • 这里还有一个参数为complete_all_parameters,设置其为true后,则带默认值的参数也会自动完成。

忽略AutoFormat PEP8中E501的提示

    "pep8_ignore":["E501"]

SublimeTmpl

  • Sublime Text 新建文件的模板插件。模板支持自定义 attr(在settings-user里设置)。
  • 去官网学习吧github

SublimeCodeIntel 这个特别重要,自动提示补全代码和前面输入过的

  • 为部分语言增强自动完成+成员/方法提示功能,包括了 Python 。这个插件同时也可以让你跳转到符号定义的地方,通过按住 alt 并点击符号。非常方便。支持所有Komodo Editor 支持的语言类型(需要自行配制)JavaScript, Mason, XBL, XUL, RHTML, SCSS, Python, HTML, Ruby, Python3, XML, Sass, XSLT, Django, HTML5, Perl, CSS, Twig, Less, Smarty, Node.js, Tcl, TemplateToolkit, PHP.此处仅介绍配置python.
  • 选择Preferences -> Browser Packages… -> SublimeCodeIntel.codeintel 找到 config 修改配置文件config。添加:
  • 好吧,我也没找到,自己去官网看看吧github

Djaneiro

  • Djaneiro为Django的模板提供了很好地支持,并且提供了一些不错的代码补全,能够极大地节省你的时间,你可以在这里查阅代码补全的文档。例如,你可以用var创建 {{ }}, 用tag创建{% %}

SublimeLinter

  • SublimeLinter是一个ST3 提示器框架,这个包本身不包含任何预设的提示器,你必须用Package Control安装提示包(SublimeLinter-[linter_name])。你可以在这里找到一些官方提供的提示,实际上也存在大量第三方的提示器,查看这里。
  • 就Python而言,我推荐使用 SublimeLinter-pyflakes 和 SublimeLinter-pep8
  • 我也同时使用了:
  • SublimeLinter-jshint
  • SublimeLinter-pyyaml
  • SublimeLinter-csslint
  • SublimeLinter-html-tidy
  • SublimeLinter-json
  • 所有的提示器可能都会有依赖关系,所以安装后请阅读安装文档。
  • 你可以为每一个提示器创建配置,编辑 Sublime Text > Preferences > Package Settings > SublimeLinter > Settings User 即可,例如:
{
    "pep8": {
        "@disable": false,
        "args": [],
        "excludes": [],
        "ignore": "E501,C0301,W0142,W0402,R0201,E1101,E1102,C0103,R0901,R0903,R0904,C1001,W0223,W0232,W0201,E1103,R0801,C0111",
        "max-line-length": 100,
        "select": ""
    },
}

推荐网站

  • Package Contorl网站
  • Theme - Soda Dark
  • Color Scheme - (morrow Night
  • Anaconda
  • Git
  • GitGutter
  • Gist
  • ConvertToUTF8
  • GBK Encoding Support
  • Codecs33

你可能感兴趣的:(Sublime)