安装和配置
-
安装 Python 包
pip3 install flake8 jedi importmagic autopep8 yapf rope -
安装 Emacs 包
better-defaults
elpy
auto-complete
py-autopep8
flycheck
material-theme -
~/.emacs.d/init.el 设置
(set-language-environment 'UTF-8)
(set-default-coding-systems 'utf-8)
(set-file-name-coding-system 'gb2312)
(setq
auto-save-visited-file-name t
backup-by-copying t ; don't clobber symlinks
backup-directory-alist
'(("." . "~/.saves")) ; don't litter my fs tree
delete-old-versions nil
kept-new-versions 6
kept-old-versions 2
version-control nil) ; don't use versioned backups
(custom-set-variables
'(indent-tabs-mode nil)
'(inhibit-startup-screen t)
'(package-selected-packages
(quote
(markdown-mode elpy python py-autopep8 mocha material-theme flycheck-pycheckers better-defaults auto-complete angular-mode)))
'(scroll-bar-mode nil)
'(show-paren-mode t)
'(tool-bar-mode nil))
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://stable.melpa.org/packages/") t)
(package-initialize)
(require 'elpy)
(setq elpy-rpc-python-command "c:/Python37/python")
(setq python-shell-interpreter "c:/Python37/python")
(elpy-enable)
(ac-config-default)
;; No eldoc mode, always prompt error
(global-eldoc-mode 0)
(global-linum-mode t) ;;display line number
(load-theme 'material t) ;; load material theme
(when (require 'flycheck nil t)
(setq elpy-modules (delq 'elpy-module-flymake elpy-modules))
(add-hook 'elpy-mode-hook 'flycheck-mode))
;; enable autopep8 formatting on save
(require 'py-autopep8)
(add-hook 'elpy-mode-hook 'py-autopep8-enable-on-save)
- 字体设置
首先toggle-menu-bar-mode-from-frame
, 然后在菜单options
中点击set default fonts
, 选择字体,最后在点击菜单中save options
- elpy 设置
运行 M-xelpy-config
,修改group elpy
中option elpy modules
去掉Display indentation markers (highlight-indentation)
,这样在缓冲区就不会显示缩进的那个方块了。 - flake8 配置
如果找不到 flake8, 那么 M-xcustomize-group
输入Flycheck
, 设置Flycheck Python Flake8 Executable
为C:/PythonXY/scripts/flake8.exe
或者 M-xelpy-config
在elpy
下面,设置Elpy Syntax Check Command
为C:/PythonXY/scripts/flake8.exe
基本使用方法
- 执行脚本
执行缓冲区C-c C-c
执行当前语句C-RET
- 重新格式代码
C-c C-r f