Sublime Text 3搭建全栈式Python开发环境(上)

Python部落(www.freelycode.com)组织翻译, 禁止转载


Sublime Text 3(ST3)是一个以速度、易用性和强大的社区支持而闻名的轻量级跨平台代码编辑器,它是一个极好的开箱即用的编辑器,但其真正强大之处在于可以使用Package Control来增强功能并创建自定义的配置文件。


本文将介绍如何利用Sublime Text 3搭建全栈式的python开发环境(从前端到后台),使用自定义主题和包增强基本功能,并用许多令ST3如此强大的命令、特性和键盘快捷键。


本教程假设读者使用的是Mac电脑并熟悉终端,如果你使用的是Windows或Linux,许多命令会不同,但是你可以通过Google来解决。


首先,­我们来解释一下我说的“全栈式”到底是个什么意思:


在如今的HTML5和移动开发的世界,Javascript可以说是无处不在,“无处不在”!(译者注:重要的事情说两遍),Python加上一个像Django和Flask这样的框架已经不够了,想要真正从头到尾开发一个网站,你必须熟悉Javascript(以及许多Javascript框架)、REST APIs、响应式设计和HTML/CSS等。面对现实吧!就像工匠一样,为了成为你所能做到的最好的程序员,你的工具必须足够“锋利”。你的开发环境必须是“全栈式”的开发环境——这就是我们将要做的事情…


特性


我们从Sublime Text 3的一些基本特性开始…

     1. 布局分割 让你可以在多个分屏中组织文件。适用于测试驱动的开发方法(Python代码占一屏,测试脚本占另一屏)或前端开发(HTML代码占一屏,CSS和/或Javascript代码占另一屏)。


     2. 怀旧模式 是你可以在ST3中使用vi命令

3. 类Chrome标签 使导航和编辑多个文件更简单

4. 自动加载上一次会话 自动打开上一次关闭编辑器时所打开的文件,我始终保持ST开着几个工程,这样就算电脑重启了,ST3也会在下次打开时自动打开文件和文件夹

5. 代码片段 通过创建一个关键字来标识常用代码段,可以有效提高生产力。ST3中有许多默认代码片段,如:打开一个新文件并输入“lorem”然后按下tab键,你可以得到一段假文,此外,在Python文件中输入“defs”并按下tab键,则可以创建一个普通函数。你还可以在创建你自己的代码片段:Tools > New Snippet。参考文档,并从这里下载一些我的代码片段。


自定义Sublime Text 3


在下载ST3之后…


安装subl命令行工具


就像TextMate的mate命令一样,Sublime Text含有一个叫subl的命令行工具,允许你从终端打开文件或包含所有文件和文件夹的目录。


为了启用这个命令,为subl库创建一个符号链接:

$ sudo ln -s /Applications/Sublime\

Text.app/Contents/SharedSupport/bin/subl /usr/bin/subl


通过打开Sublime来测试一下链接是否可用:

$ subl


如果上述命令不可用,你可能需要把/bin加入你的PATH环境变量中:

$ echo "export PATH=~/bin:$PATH" >> ~/.profile


然后再重复第一步


现在你可以通过下面命令来打开一个文件或目录:

# 打开当前目录

$ subl .


# 打开test目录

$ subl ~/Documents/test


# 打开test.txt文件

$ subl test.txt


如果在路径中含有空格,则整个路径必须置于双引号之中:

$ subl "~/Documents/test/my test file.txt"


要查看所有命令,打开帮助文件:

$ subl --help


安装Package Control


为了使用Sublime各种软件包带来的强大功能,需要安装包管理工具Package Control,不过必须要手动安装它。一旦安装完成,你就可以使用Package Control来安装/删除/升级所有其他的ST3 软件包。

1. 拷贝这里的Python代码来为Sublime Text 3 安装Package Control,单击View > Show Console来打开ST3的控制台,把上面的代码粘贴到控制台中,按下Enter,然后重启ST3;

2. 现在可以使用键盘快捷键cmd+shift+P来安装软件包,输入install直到Package Controll: Install Package出现,然后按下enter来搜索可用的软件包;

3. 一些相关的命令如下:

List Packages 罗列出已安装的软件包

Remove Packages 卸载指定软件包

Upgrade Package 升级指定软件包

Upgrade/Overwrite All Packages 升级所有已安装的软件包


可以翻阅官方文档来查看更多命令



创建自定义配置文件


你可以全部使用JSON格式的配置文件来设置Sublime Text,让它变得容易迁移或同步,你可以将配置迁移到另一个系统中。首先,我们需要创建我们自己的配置,最好创建一个用于所有环境的基文件,再为不同语言制定配置文件。


单击Sublime Text > Preferences > Settings – User来创建一个基文件,添加一个空JSON对象并像如下加入你的配置:

{

 // 基本配置

 "auto_complete": false,

 "sublimelinter": false,

 "tab_size": 2,

 "word_wrap": true

}

1. 每种语言定制配置则单击Sublime Text > Preferences > Settings – More > Syntax Specific – User,然后以LANGUAGE.sublime-settings的形式保存文件,比如,为Python定制的配置文件保存为Python.sublime-settings;

2. 你可以随心所欲的设置你的配置文件,但是我强烈推荐你先使用我的基文件和Python定制配置,而后再根据自身情况修改;

3. 另外,你可以使用Dropbox来同步你的所有配置,只要将你的配置文件上传到Dropbox然后在所有你要配置Sublime环境的机器上下载这些文件就可以了;

4. 一些较好的配置可以参考Sublime Text非官方文档


主题


ST3还允许根据个人喜好来改变编辑器的整体主题,设计属于自己的主题,当然,如果你没什么艺术倾向,你可以通过Package Control来从Sublime社区人员设计的众多主题中下载一个使用,可以在安装主题之前使用ColorSublime预览一下主题。


一直流行的Soda Dark主题和小巧的FlatLand是我个人最喜爱的两个主题。

主题安装完成之后,确保升级你的基本配置,Sublime Text > Preferences > Settings –User:

{

 "theme": "Flatland Dark.sublime-theme",

 "color_scheme": "Packages/Theme - Flatland/Flatland Dark.tmTheme"

}


软件包


除了主题之外,我使用以下软件包来加速工作流程


SideBarEnhancements


SideBarEnhancements扩展了侧边栏的菜单选项,整体加速你的工作流程,像“New File”和“Duplicate”这样的必须选项应该成为ST3开箱即用的一部分,仅仅是“Delete”选项就是它很值得一用,这个功能只是简单的将文件移到回收站,这可能看起来很平凡,但是如果你不是使用它来删除文件,恢复文件将变得十分困难,除非你使用版本控制系统。


现在就去下载吧!


Anaconda


Anaconda是一个终极Python包;它包含了一系列的类IDE的功能,包括:

  • 自动补全默认启用,但是这儿还有许多配置选项

  • 代码检查使用符合pep8标准的PyLint或PyFlakes,我个人使用另一个代码检查包,我稍后会做解释,所以我在Anaconda配置文件中禁用了代码检查功能,通过文件菜单Sublime > Preferences > Package Settings > Anaconda > Settings –User打开Anaconda.sublime-settings文件添加{"anaconda_linting": false};

  • 麦凯布代码复杂度检查器根据指定文件运行麦凯布复杂度检查工具,如果你不熟悉复杂度检查,可以通过上述连接来了解;

  • 跳到定义功能在整个工程之中查找并跳转到变量、函数或类的定义

  • 查找引用快速查找变量、函数或类被引用的地方

  • 显示文档:显示函数和类的文档字符串(当然是在定义了文档字符串时)


你可以在这里查看所有功能,或者在ST3软件包配置的README中查看:Sublime Text > Preferences > Package Settings > Anaconda > README.


SublimeCodeIntel 是另一个与Anaconda有相同功能的流行的软件包,我建议可以两种软件包都尝试一下。


Djaneiro


Djaneiro 支持Django模板和关键字高亮,并且在Sublime Text中提供有用的代码段(tab自动补全),代码段系统可以极大的节省时间,你只需简单的敲几个键就可以创建一些常见的Django代码段,如模板,模型,表单和视图,可以在官方文档中查看代码段列表。


我个人喜欢的模板如:var创建{{ }},tag 创建 {% %}


requirementstxt


Requirementstxt提供自动补全、语法高亮以及一个很好的requirements.txt文件版本管理系统


SublimeLinter


SublimeLinter是一个ST3代码检查框架,这个软件包本身并不包含任何检查规则;而需要单独通过Package Control安装形如SublimeLinter-[linter_name]的安装包,你可以在这里查看官方的代码检查包。你还可以在Package Control中查找到很多第三方的代码检查包,在这里查看安装指南。


对于Python代码检查,我推荐使用SublimeLinter-pyflakes和SublimeLinter-pep8。同时我还使用 SublimeLinter-jshint,SublimeLinter-pyyaml,SublimeLinter-csslint,SublimeLinter-html-tidy 和SublimeLinter-json。


许多代码检查包需要很多依赖包,所以在安装之前请仔细阅读安装指南


你可以使用用户自定义的SublimeLinter.sublime-settings文件来自定义每种代码检查包:Sublime Text > Preferences > Package Control > SublimeLinter > Settings – User,如:忽略如下的pep8错误和警告:

"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": ""

},


英文原文: https://realpython.com/blog/python/setting-up-sublime-text-3-for-full-stack-python-development/

译者: baiyangcao



 

2月15日11:00到13:00网站停机维护,13:00前恢复