如何对正在使用的elisp包进行编写调试?

为了验证 helm-swoop 的这个 pr,试了一下 straight.el,然而这个看似简洁的包管理却十分慢,打开下载文件夹我明白为什么了:

157M    ~/.emacs.d/test-helm-swoop-pr124/27.0.50/straight
2.0M                                               |---- /build
155M                                               '---- /repos
416K                                                        |- /emacs-async
 96M                                                        |- /epkgs
 77M                                                        |     |- /.git
                                                            |     '- ...
 30M                                                        |- /helm
 26M                                                        |     |- /.git
                                                            |     '- ...
440K                                                        |- /helm-swoop
 26M                                                        |- /melpa
 11M                                                        |     |- /.git
                                                            |     '- ...
392K                                                        |- /popup-el
1.5M                                                        '- /straight.el

由于不支持 shallow clone,每个 repo 都巨大无比,还好测的不是 org-mode。而 el-get 的情况要好很多:

 21M    ~/.emacs.d/test-helm-swoop-pr124/27.0.50/el-get
 13M                                               |-- /el-get
5.8M                                               |      |-- /.git
188K                                               |      |-- /logo
132K                                               |      |-- /methods
6.6M                                               |      |-- /recipes
312K                                               |      '-- /test
224K                                               |-- /emacs-async
7.0M                                               |-- /helm
2.5M                                               |      |- /.git
                                                   |      '- ...
208K                                               '-- /helm-swoop

配置是一样的:

  • straight

    (straight-use-package
     '(helm-swoop :type git
                  :host github
                  :repo "jguenther/helm-swoop"
                  :branch "fix-helm-display-function"))
    
  • el-get

    (el-get-bundle helm-swoop
     :type git
     :url "https://github.com/jguenther/helm-swoop"
     :branch "fix-helm-display-function")