maple-imenu——类似tagbar的emacs插件


这几天参考imenu-list重写了一个类似 vim 中tagbar的插件 maple-imenu, 其实之前我一直在使用另一个类似的插件—— imenu-list, 虽然imenu-list已经足够使用了, 但它和golden-ratio搭配起来很难受, golden-ratio 我是常开的, 但imenu-list也会偶尔使用(浏览及讲解代码必备,否则查找某个函数和变量时很难受的)

原本我想要自定义一下imenu-list,但看了源码之后, 发现很多地方都不符合我的需求, 而且需要改动的地方越来越多,最后不如自己重写

  • 如何使用 下载文件复制到 $HOME/.emacs.d/site-lisp/maple-imenu 目录, 然后

    (use-package maple-imenu
      :load-path "site-lisp/maple-imenu"
      :commands (maple-imenu)
      :config
      (with-eval-after-load 'evil
        (evil-make-overriding-map maple-imenu-mode-map 'normal)))
    M-x maple-imenu
  • 相关变量

    • maple-imenu-buffer maple-imenu buffer name, default *maple-imenu*

    • maple-imenu-displayed-buffer displayed buffer name, default nil

    • maple-imenu-overlays save overlay info, toggle open or close entry

    • maple-imenu-width maple-imenu window size, default 25

    • maple-imenu-padding maple-imenu prefix padding, default 2

    • maple-imenu-position maple-imenu window display position, default 'right, or 'left

    • maple-imenu-arrow open or close arrow, default ("▾" . "▸")

    • maple-imenu-auto-update auto update when t, after save every time

  • 相比较imenu-list ➊ 代码和逻辑我认为与 imenu-list 比起来更加通俗易懂

    ➋ window fixed, 至少与golden-ratio搭配不那么难受

    ➌ 更多我可以控制和自定义的地方

作者: honmaple
链接: https://honmaple.me/articles/2018/10/maple-imenu——类似tagbar的emacs插件.html
版权: CC BY-NC-SA 4.0 知识共享署名-非商业性使用-相同方式共享4.0国际许可协议
wechat
alipay

加载评论