sublime2下配置python环境

来源:互联网 发布:instantiates java 编辑:程序博客网 时间:2024/05/01 12:48

一.设置 Sublime Text 的 Python 开发环境

最近,当我主要使用Python开发环境编辑的时候,我开始越来越多地用到Sublinme Text 2.这篇文章主要说明了能让Python的编程者使用更方便的一些设置和调整。

My Sublime Text setup

李林峄
李林峄
翻译于 2年前

1人顶

翻译的不错哦!

为何选择Sublime Text?

我以前一直是TextMate的忠实用户。这是一个轻量级的、开源的软件,作为OS X的本地应用,具有很好的Mac风格。不过,虽然TextMate是一个很棒的编辑器,有时候还是显得功能不够。

我用过一些功能更强的软件,例如 加上Python插件的IntelliJ IDEA。 我特别喜欢它的debugger和test runner。不过,一个像IntelliJ这样的全功能的IDE对于中小项目来说还是显得过于庞大。

最近几周我开始越来越多的使用 Sublime Text。当我将它安装好之后,感觉非常不错。它确实非常快,自动定期的更新,以及更棒的是完全支持跨平台。对我来说,它最终胜过TextMate的地方是Sublime强大的插件子系统。对于Python开发,有不少插件可以让你开发起来更流畅、更有乐趣。

我现在仍然在不同的项目之间切换编辑器。不过我发现对应Python开发,Sublime在轻量级的编辑器和全功能的IDE之间有着很好的平衡。

LinuxQueen
LinuxQueen
翻译于 2年前

1人顶

翻译的不错哦!

字体的选择

Ubuntu Mono 是非常非常不错的字体。前些天我刚从Menlo 切换过来,这绝对不让人后悔。

在我的15寸的MacBook上,Ubuntu Mono的16号字非常适合。1680 × 1050的分辨率对于一个边栏加两个编辑器窗口(自动调整到80个字符宽)刚好合适。

如果你打算认真的挑选一下字体, slant.co的这篇文章 写的不错。它包含了大部分流行的编程方面的字体的截图及下载链接。

LinuxQueen
LinuxQueen
翻译于 2年前

2人顶

翻译的不错哦!

安装插件

正如之前提到的, Sublime 有一个非常丰富的插件系统。而我当前使用的插件如下:
  • Package Control 在 Sublime 里直接安装附加插件的包管理器。这是唯一一个你必须手动安装的插件。这边列出的其他所有插件都可以通过 Package Control 来安装。也可以通过它来更新已安装过的插件。简单得想做是 Sublime packages 的 apt-get 就行了。
  • Color Scheme - Tomorrow NightColor schemes 决定了编辑器界面语法高亮的字体颜色。这是一个非常酷的暗黑系样式。
  • Theme - Soda DarkThemes 影响 Sublime 界面元素的颜色和风格。这个非常适合 Tomorrow Night 的配色方案。
  • SideBarEnhancements 这个插件提供了侧边栏附加的上下文菜单选项,例如"New file","New Floder"等。这些本应当默认就该有的,却没有。
  • All Autocomplete Sublime 默认的自动完成只关注当前文件的单词。这个插件扩展了其自动完成的单词列表到所有打开的文件。
  • SublimeCodeIntel 为部分语言增强自动完成功能,包括了 Python 。这个插件同时也可以让你跳转到符号定义的地方,通过按住 alt 并点击符号。非常方便。
  • SublimeREPL 允许你在编辑界面直接运行 Python 解释器。我倾向于在单独的终端窗口用bpython 来运行,但有时 SublimeREPL 是很有帮助的。
  • GitGutter 在编辑器的凹槽区,依照 Git ,增加小图标来标识一行是否被插入、修改或删除。在 GitGutter 的 readme 中有说明如何更改颜色图标来更新你的配色方案文件。
  • Pylinter 这个插件提供了目前我所见到的最好的pylint 编辑器整合。它自动检查 .py 文件,无论其何时被保存,并且会直接在编辑界面显示 pylint 违规。它还有一个快捷方式来禁用局部的 pylint 检查,通过插入一个 #pylint: 禁用注释。这个插件对于我确实非常有用。
加壹
加壹
翻译于 2年前

2人顶

翻译的不错哦!

配置文件

Sublime Text 的一个优点就是它的所有配置都是简单的基于 JSON 的配置文件。这使得你可以很容易的将配置转到另一个系统中。我也见过一些人使用 Dropbox 自动同步他们所有电脑上的配置。

Preferences.sublime-settings 配置了 Sublimede 的显示和行为.你可以在sublime 中通过Preferences > Settings — User 打开并编辑此文件。我使用如下配置:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
{
// Colors
"color_scheme":"Packages/Tomorrow Color Schemes/Tomorrow-Night.tmTheme",
"theme":"Soda Dark.sublime-theme",
// Font
"font_face":"Ubuntu Mono",
"font_size": 16.0,
"font_options": ["subpixel_antialias","no_bold"],
"line_padding_bottom": 0,
"line_padding_top": 0,
// Cursor style - no blinking and slightly wider than default
"caret_style":"solid",
"wide_caret":true,
// Editor view look-and-feel
"draw_white_space":"all",
"fold_buttons":false,
"highlight_line":true,
"auto_complete":false,
"show_minimap":false,
// Editor behavior
"scroll_past_end":false,
"highlight_modified_tabs":true,
"find_selected_text":true,
// Word wrapping - follow PEP 8 recommendations
"rulers": [ 72, 79 ],
"word_wrap":true,
"wrap_width": 80,
// Whitespace - no tabs, trimming, end files with \n
"tab_size": 4,
"translate_tabs_to_spaces":true,
"trim_trailing_white_space_on_save":true,
"ensure_newline_at_eof_on_save":true,
// Sidebar - exclude distracting files and folders
"file_exclude_patterns":
[
".DS_Store",
"*.pid",
"*.pyc"
],
"folder_exclude_patterns":
[
".git",
"__pycache__",
"env",
"env3"
]
}

Pylinter.sublime-settings配置了pylinter 插件。我使用下面的配置让 Pyhton 在保存时自动规范,并对违反规范显示图标。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
{
// Configure pylint's behavior
"pylint_rc":"/Users/daniel/dev/pylintrc",
// Show different icons for errors, warnings, etc.
"use_icons":true,
// Automatically run Pylinter when saving a Python document
"run_on_save":true,
// Don't hide pylint messages when moving the cursor
"message_stay":true
}
Khiyuan
Khiyuan
翻译于 2年前

0人顶

翻译的不错哦!

按键绑定

Sublime 的按键绑定也是全部可配置的基于JSON的 sublime-keymap 配置文件。我修改了一些默认配置以更好的配合我的 TextMate / IntelliJ 肌肉记忆。你可以完全不修改。如果你想,修改很简单,并可以跨平台使用。我使用如下的绑定:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[
// Rebind "go to file" to cmd+shift+O
{"keys": ["super+shift+o"],"command": "show_overlay","args": {
"overlay":"goto",
"show_files":true
}},
// Rebind swap line up/down to cmd+shift+up/down
{"keys": ["super+shift+up"],"command": "swap_line_up"},
{"keys": ["super+shift+down"],"command": "swap_line_down"},
// Delete a line with cmd+delete
{"keys": ["super+backspace"],"command": "run_macro_file","args": {
"file":"Packages/Default/Delete Line.sublime-macro"
}},
// Reindent selection with cmd+alt+L
{"keys": ["super+alt+l"],"command": "reindent"}
]
Khiyuan
Khiyuan
翻译于 2年前

1人顶

翻译的不错哦!

命令行工具

同 TextMate 的 mate 类似,Sublime Text 包含了一个命令行工具,允许你通过 shell 打开编辑器。工具名为 sublis,默认不可用。要使之生效,在任一 shell 中运行下面:

?
1
ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl/usr/local/bin/subl

要将 Sublime 作为 git 互动命令的默认编辑器使用——举例,撰写提交信息——只需添加下面一行到你的 ~/.profile 文件:

?
1
exportGIT_EDITOR="subl --wait --new-window"
Khiyuan
Khiyuan
翻译于 2年前

1人顶

翻译的不错哦!

更多灵感

我希望这篇安装指南能够帮到你。如果你有任何建议或意见,敬请 Twitter 我一行或给我发邮件。另外,感谢下面的作者及其关于配置 sublime 的作品。它们启发了我很多:

  • Kenneth Reitz: Sublime Text 2 Love
  • Drew Barontini: Sublime (2)
  • Filippo Pacifici: Python development with Sublime Text 2 tips and tricks
  • opensourcehacker.org: Sublime Text 2 tips for Python and web developers


二.SublimeREPL配置python交互式终端快捷键

最近了解到一款编辑器Sublime Text 2,上手后发现这个编辑器非常强大,据百度百科说有超越Vim的趋势,虽然Vim用的不咋滴,但是就界面上来看,ST2显然高了不止一个档次。
学习ST2是因为想找一个比python自带编译器IDLE更好用的编辑器,毕竟IDLE在自动补全上还不是很强大,ST2支持很多插件可以实现自动补全,写起来方便很多。
SublimeREPL,REPL就是read-evaluation-print-loop,解释型语言编译运行的过程)。装了SublimeREPL插件后也支持了编辑器上直接的编译运行和交互,但还是有一些不满的地方。
SublimeREPL提供的功能当中有两个我比较常用的是运行python交互环境和直接运行当前文件,而python自带的IDLE跟人性化的做法是把这两者结合起来,所以我想实现的是对当前的文件运行python的交互环境。
步骤一,让SublimeREPL支持这个功能。
windows下打开C:\Documents and Settings\Administrator\Application Data\Sublime Text 2\Packages\SublimeREPL\config\Python\Main.sublime-menu文件,不同环境可能路径不同,一般就是Administrator文件名的区别,找到"id": "repl_python"所在行,将这个JSON对象中args属性下cmd属性值改为["python", "-i", "-u", "$file_basename"],如图,

这样相当于将SublimeREPL的python交互环境的命令改为运行当前文件的交互环境,如果还想保留以前的功能,可以自己添加一个这样的节点,注意id值要取名为唯一的id值。
步骤二,点击Perferences-Key Bindings-Users,设置快捷键。
如图,

其中id值为刚刚修改的JSON对象中的id值,keys自己选择,我喜欢F5,和IDLE保持统一。
这样在编写python文件的时候就可以随时编译运行了非常方便,单单从这个例子就可以看出ST2的强大,以后也许还能发掘更多用法。



0 0
原创粉丝点击