Emacs环境隔离之——maple-env


在使用Emacs时,会有很多依赖,比如:

  • Python依赖于flake8isortpython-language-server

  • Golang依赖于golang.org/x/tools/cmd/goplsgithub.com/haya14busa/gopkgs/cmd/gopkgs

想要安装这些依赖,必须手动进行安装,use-package用户可使用ensure-system-package,但非常不幸的是,这些依赖很大程度上会污染我的电脑环境,毕竟像python-language-serverflake8这类的package,我除了在Emacs里会用到,平时根本用不到(除非同时使用Emacs和其它编辑器或IDE)

所以,我写了一个maple-env用来实现Emacs依赖环境隔离,使用方式:

  • 安装

    git clone https://github.com/honmaple/emacs-maple-env ~/.emacs/site-lisp/maple-env
  • 配置

    (use-package maple-env
      :ensure nil
      :hook (after-init . maple-env-mode)
      :config
      (setq maple-env:python-packages
            '("yapf" "flake8" "isort" "python-language-server")
            maple-env:golang-packages
            '("github.com/rogpeppe/godef"
              "github.com/golang/lint/golint"
              "github.com/haya14busa/gopkgs/cmd/gopkgs"
              "golang.org/x/tools/cmd/gopls")
            maple-env:npm-packages
            '("js-beautify"))
      ;; 手动调用(maple-env:init)以安装依赖环境
      )

更多自定义详见customize-group maple-env

作者: honmaple
链接: https://honmaple.me/articles/2019/07/Emacs环境隔离之——maple-env.html
版权: CC BY-NC-SA 4.0 知识共享署名-非商业性使用-相同方式共享4.0国际许可协议
wechat
alipay

加载评论