zoukankan      html  css  js  c++  java
  • 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
     
    还有种方式:
    从package.el安装好anaconda-mode和company-anaconda就可以了!可以不用装jedi。
    ;; 自动完成
    (require 'company)
    (global-company-mode t); 全局开启
    
    (setq company-idle-delay 0.2;菜单延迟
          company-minimum-prefix-length 1; 开始补全字数
          company-require-match nil
          company-dabbrev-ignore-case nil
          company-dabbrev-downcase nil
          company-show-numbers t; 显示序号
          company-transformers '(company-sort-by-backend-importance)
          company-continue-commands '(not helm-dabbrev)
    )
    ; 补全后端使用anaconda
    (add-to-list 'company-backends '(company-anaconda :with company-yasnippet))
    ; 补全快捷键
    (global-set-key (kbd "<C-tab>") 'company-complete)
    ; 补全菜单选项快捷键
    (define-key company-active-map (kbd "C-n") 'company-select-next)
    (define-key company-active-map (kbd "C-p") 'company-select-previous)
    
    ;; 在python模式中自动启用
    (add-hook 'python-mode-hook 'anaconda-mode)

    然后在虚拟环境总 pip install  jedi==0.8.1 json-rpc==1.8.1 service_factory==0.1.2
     
  • 相关阅读:
    WCF 通讯标准绑定
    FTP FtpWebRequest 异步上传文件
    适用于zTree 、EasyUI tree、EasyUI treegrid
    PropertyInfo 类
    通过类库ChineseChar实现将汉字转化为拼音
    使用内存流导出Excel
    钉钉开发文档示例
    .Net Mail SMTP 发送网络邮件
    C# 解析 Json数据
    Newtonsoft.Json高级用法(转)
  • 原文地址:https://www.cnblogs.com/ibgo/p/4529050.html
Copyright © 2011-2022 走看看