在Ubuntu下配置舒服的Python开发环境

Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置。下面的是我们团队开发人员推荐的一个安装和配置步骤,基于 Ubuntu 12.04 桌面版本标准安装。

安装 Python 发布版本和 build 依赖包

建议至少安装 Python 2.7/3.2 版本,毕竟 Python 2.X/3.X 还是有不少区别的。

1
2
3
4
# 安装 Python 发布版本,dev包必须安装,很多用pip安装包都需要编译
sudo apt-get install python2.7 python2.7-dev python3.2 python3.2-dev
# 很多pip安装的包都需要libssl和libevent编译环境
sudo apt-get install build-essential libssl-dev libevent-dev libjpeg-dev libxml2-dev libxslt-dev

安装 pip 和 virtualenv

pip 是 Python 的包管理工具,建议 Python 的包都用 pip 进行管理。virtualenv是 Python 多版本管理的利器,不同版本的开发调试全靠它了。

1
2
3
4
# 安装 pip
sudo apt-get install python-pip
# 安装 virtualenv
sudo pip install virtualenv

配置个人用 virtualenv

尽量在 virtualenv 下进行 Python 包的安装。

1
2
3
4
5
# 安装 python2.7 virtualenv
virtualenv --no-site-packages -p /usr/bin/python2.7 ~/.venv/python2.7 # 安装 python3.2 virtualenv
virtualenv --no-site-packages -p /usr/bin/python3.2 ~/.venv/python3.2

然后将下面的代码增加到~/.bashrc的最后面,缺省使用 virtualenv 来代替系统 Python 环境:

1
2
3
4
# 缺省激活python2.7环境
if [ -f ~/.venv/python2.7/bin/activate ]; then
. ~/.venv/python2.7/bin/activate
fi

安装 git 和 gitflow

git是使用 github 必备,目前最好的版本管理工具。

1
$ sudo apt-get install git

配置 git:

1
2
3
4
5
6
7
8
9
10
11
12
# 常用的命令都设置alias,尽量少敲键盘
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.co checkout
git config --global alias.st status
# 很好看地显示git log
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen (%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --"
# 设置用户信息
git config --global user.name "Your Name"
git config --global user.email you@email.com
# 缺省使用颜色显示
git config --global color.ui true

安装 git-flow,使用标准化 git 分支流程,参见:

1
sudo apt-get install git-flow

安装 bash-it

bash-it可以美化你的 bash 环境,让你更高效地使用控制台终端,详细信息参见bash-it github 网站

1
2
git clone http://github.com/revans/bash-it.git ~/.bash_it
~/.bash_it/install.sh

安装的时候可以选择所有的 alias/plugins/completion,如果自定义选择,一定将virtualenvgit插件选择上。

安装完成后将下面的代码附加到~/.bashrc的后面:

1
2
3
if [ -f ~/.bash_profile ]; then
. ~/.bash_profile
fi

bash-it安装完成后缺省使用 bobby 样式(可以参见~/.bash_profile里定义的环境变量BASH_IT_THEME),编辑~/.bash_it/themes/bobby/bobby.theme.bash,在PS1的定义里增加${green}$(virtualenv_prompt),如下:

1
PS1="\n${yellow}$(ruby_version_prompt)${green}$(virtualenv_prompt) ${purple}\h ${reset_color}in ${green}\w\n${bold_cyan}$(scm_char)${green}$(scm_prompt_info) ${green}→${reset_color} "

注:样式定义参加文件~/.bash_profile里定义的环境变量BASH_IT_THEME,你也将其值更改成其他~/.bash_it/themes里定义的样式。

最后重启终端,你将看到一个不一样的bash,支持显示git分支,virtualenvrvm等。

安装 Sublime Text 2

在浏览器进入 Sublime Text 2 官网,选择适合的版本下载安装。

安装完成后还需要安装Sublime Text 2Package Control。安装细节参见 Sublime Packages 安装

最后,按快捷键Ctrl+Shift+P调出命令窗口,选择Package Control: Install Package,安装 Python 开发常用的插件:

  • Auto Encoding for Python
  • BracketHighlighter
  • Git
  • Markdown Preview
  • Python Auto-Complete
  • SublimeLinter
  • SidebarEnhancements
  • SublimeCondeIntel
  • sublime-github
  • Dayle Rees Color Schemes

这里推荐一下插件 sublime-github,能在 Sublime 里查看,增加,修改GitHub Gist。如果你和团队都使用 Github Gist 来存储自己常用的代码片段,这将非常方便大家去迅速查找和共享解决常见问题的代码片段。

  • 首先进入github 新建一个个人 API 访问 token;
  • 运行 Sublime,选择菜单Preferences–>Package Settings–>GitHub–>Settings-Default,将上面生成的token复制到 github_token字段,保存。

之后你就可以按快捷键Ctrl+Shift+P,选择GitHub: Open Gist in Editor,然后选择你自己的 Gist 即可。

安装并配置 Vim

有了 Sublime Text,大部分情况下都不需要 Vi 了,但的确有些时候进行很小的改动还是用 Vi 最方便。Ubuntu的缺省安装应当已经包括了 Vim,如果没有,运行下面命令安装 Vim。

1
sudo apt-get install vim

然后,参考Amix’s Vimrc来配置 Vim。


至此,所有的基本环境就已经配备完成,希望这些配置能对大家有所帮助,下面是配置好的界面截屏。

转[开发环境配置]在Ubuntu下配置舒服的Python开发环境的更多相关文章

  1. Ubuntu下基于Virtualenv构建Python开发环境

    1.安装virtualenv并建立虚拟环境 1).更新pip版本 sudo pip install --upgrade pip 如果出现如下异常: File , in <module> f ...

  2. Ubuntu下利用vim搭建python开发环境

    1. 安装vim $ sudo apt-get install vim 2. 安装ctags,ctags用于支持taglist,必需! $ sudo apt-get install ctags 3. ...

  3. Ubuntu 下一个 vim 建立python 周围环境 构造

    于Windows通过使用各种现成的工具使用,去Linux下一个,没有一个关于线索--总之google有些人的经验,折腾来折腾,开发环境也算是一个好工作. 1. 安装完成vim # apt-get in ...

  4. Ubuntu下配置C/C++开发环境

    在 Ubuntu 下配置 C/C++ 开发环境 转自:白巴的临时空间 Submitted by 白巴 on 2009-04-27 19:52:12. 学习笔记 虽然 Ubuntu 的版本已经是9.04 ...

  5. (4)Linux(ubuntu)下配置Opencv3.1.0开发环境的详细步骤

    Ubuntu下配置opencv3.1.0开发环境 1.最近工作上用到在Ubuntu下基于QT和opencv库开发应用软件(计算机视觉处理方面),特把opencv的配置过程详细记录,以供分享 2.步骤说 ...

  6. 在Ubuntu下搭建ASP.NET 5开发环境

    在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...

  7. Ubuntu下配置python完成爬虫任务(笔记一)

    Ubuntu下配置python完成爬虫任务(笔记一) 目标: 作为一个.NET汪,是时候去学习一下Linux下的操作了.为此选择了python来边学习Linux,边学python,熟能生巧嘛. 前期目 ...

  8. Ubuntu下配置Nginx HTTPS

    HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版.即HTTP下加入S ...

  9. ubuntu下配置JDK的一些坑点

    ubuntu下配置JDK的一些坑点 在centos下的JDK配置: 在ubuntu下的话,要修改两个地方: 在/etc/enviornment中配置! 在/etc/profile中配置! 写在最后: ...

随机推荐

  1. 第一个 Asp.Net vNext 应用程序

    要说免费的虚拟主机的话,最好的服务商应该就是Microsoft Azure(不是Windows Azure由世纪互联运营),提供免费的1GB .NET/Java/Python/Php空间,日流量有限制 ...

  2. Linux文件系统应用---系统数据备份和迁移(用户角度)

    1   前言 首先承诺:对于从Windows系统迁移过来的用户,困扰大家的  “Linux系统下是否可以把系统文件和用户文件分开到C盘和D盘中” 的问题也可以得到完满解决. 之前的文章对Linux的文 ...

  3. kafka的一些认识

    原创文章转载请注明出处:@协思, http://zeeman.cnblogs.com   近来无事研究了一下kafka,并且用golang连接kafka做了producer和consumer的简单测试 ...

  4. Spring Trasnaction管理(2)- 事务AOP

    问题导读 spring AOP是在如何进行的 spring 用cglib和jdkProxy管理的事务有何区别 Spring AOP管理 Spring主要的两个核心功能IOC与AOP.IOC的代码解析可 ...

  5. WebApi系列~在WebApi中实现Cors访问

    回到目录 说在前 Cors是个比较热的技术,这在蒋金楠的博客里也有体现,Cors简单来说就是“跨域资源访问”的意思,这种访问我们指的是Ajax实现的异步访问,形象点说就是,一个A网站公开一些接口方法, ...

  6. 《CDN技术详解》 - CDN知多少?

    开发时间久了,就会接触到性能和并发方面的问题,如果说,在自己还是菜鸟的时候完全不用理会这种问题或者说有其他的高手去处理这类问题,那么,随着经验的丰富起来,自己必须要独立去处理了.或者,知道思路也行,毕 ...

  7. fir.im Weekly - Mobile developer 利器分享

    工欲善其事,必先利其器.本期 fir.im Weekly 推荐了很多优秀的 Github 项目.iOS/Android 开发工具利器,比如墨__守独立开发的macOS App -- Repo, 帮助 ...

  8. YaHoo 前端优化军规

    1.Minimize HTTP Requests 减少HTTP请求 图片.css.script.flash等等这些都会增加http请求数,减少这些元素的数量就能减少响应时间.把多个JS.CSS在可能的 ...

  9. KnockoutJS 3.X API 第四章 表单绑定(8) submit、enable、disable绑定

    submit绑定目的 submit绑定即为提交绑定,通常用于form元素.这种绑定方式会打断默认的提交至服务器的操作.转而提交到你设定好的提交绑定回调函数中.如果要打破这个默认规则,只需要在回调函数中 ...

  10. [转]Java并发编程:Lock

    链接: http://www.cnblogs.com/dolphin0520/p/3923167.html