Emacs 配置 Python 编程环境

python编程环境设置涉及到:自动完成、语法检查、虚拟环境。

为了不把系统搞乱,在python的虚拟环境中安装相关的插件。

一、安装python虚拟环境 virtualenvwrapper

sudo apt-get virtualenvwrapper

然后创建一个虚拟环境:

$ mkvirtualenv -p /usr/bin/python3 test

下面开始在test这个虚拟环境中操作:
先看看有哪些包:

$ pip list
pip (1.5.6)
setuptools (5.5.1)

可以看到只有2个包。

以下开始在虚拟环境中安装!

二、在虚拟环境中安装相关包 jedi、pylint

(test)a@pc:$ pip install jedi pylint 

说明:
jedi ---------  python的自动补全;
pylint ------- python的语法检查;

安装完后看看装了哪些东西:  

$ pip list
astroid (1.3.6)
jedi (0.9.0)
logilab-common (0.63.2)
pip (1.5.6)
pylint (1.4.3)
setuptools (5.5.1)
six (1.9.0)

三、在 emacs 中安装相关插件 elpy、flycheck、company-jedi、virtualenvwrapper

M-x package-list-packages

安装

  1. elpy
  2. flycheck
  3. company-jedi
  4. virtualenvwrapper

四、修改emacs配置文件

;; 添加仓库
(require package)
(setq package-archives (
             ("gnu" . "http://elpa.gnu.org/packages/")
             ("melpa" . "http://melpa.milkbox.net/packages/")
))
(package-initialize)
;; 自动完成:company (require
company) (add-hook after-init-hook global-company-mode); 全局开启 (setq company-show-numbers t); 显示序号 (setq company-idle-delay 0.2); 菜单延迟 (setq company-minimum-prefix-length 1); 开始补全字数 ;; elpy---主角 (require elpy) (elpy-enable) ;; 语法检查:flycheck (add-hook after-init-hook #global-flycheck-mode);全局开启 ; 关闭flymake,使用flycheck (when (require flycheck nil t) (setq elpy-modules(delq elpy-module-flymake elpy-modules)) (add-hook elpy-mode-hook flycheck-mode)) ;; 虚拟环境: virtualenvwrapper (require virtualenvwrapper) (venv-initialize-interactive-shells) (venv-initialize-eshell) (setq venv-location "~/pyvirtualenv/");设置虚拟环境目录 ;; 如果有多个目录: ;; (setq venv-location ("~/myvenv-1/" ;; "~/myvenv-2/")) ;; M-x venv-workon 打开虚拟环境

这样一个最简单的python编程环境就配置好了。

 

 注:在家目录下的.bashrc文件中加入以下2行
#tells virtualenvwrapper where to store the virtualenvs that will be created and used. 
export WORKON_HOME=~/pyvirtualenv

#runs the shell script to set up the virtualenvwrapper commands and should point to the location where virtualenvwrapper was installed.
source /usr/share/virtualenvwrapper/virtualenvwrapper.sh

pyvirtualenv是放置虚拟环境的目录,可以改成自己想要的名字。这样virtualenvwrapper用起来更灵活些。

 

相关链接:
https://github.com/jorgenschaefer/elpy
http://www.pylint.org/#myCarousel

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。