工具

yafolding

前提: 要打开 yafolding-mode

功能和按键

  • 折叠当前块

    • yafolding-toggle-element
    • C-<return>
  • 折叠所有

    • yafolding-toggle-all
    • C-M-<return>
  • 折叠上一级

    • yafolding-hide-parent-element
    • C-S-<return>
    • 注: 连续使用有问题

      • 使用 C-<return> 打开折叠代码

vimish-fold

前提: 要打开 vimish-fold-mode

特性: 持久化折叠区域

  • 对应 buffer 的折叠区域,不因 buffer 的关闭再次打开而消失

    • 注意:需要启用 (vimish-fold-global-mode 1)

功能和按键

创建 fold

  • vimish-fold

    1. 选择区域 region
    2. 执行 vimish-fold
  • vimish-fold

    1. 选择区域 region
    2. 执行 vimish-fold
  • vimish-fold-avy

    1. 移动到折叠区域的开头 start
    2. 执行 vimish-fold-avy
    3. 根据提示选择折叠区域的结尾 end

      • 到这里就完成创建了,区域(start, end)
      • 命令会自动折叠创建的折叠区域

删除 fold

  • vimish-fold-delete

    1. 移动到要删除的 fold
    2. 执行 vimish-fold-delete
  • vimish-fold-delete-all

执行折叠 toggle 切换

  • C-`

    1. 折叠上打开 之间切换(toggle)

折叠上

  • vimish-fold-refold

    1. 移动到要删除的 fold
    2. 执行 M-x vimish-fold-refold
  • vimish-fold-refold-all

打开折叠

  • vimish-fold-unfold

导航

  • 上一个

    • vimish-fold-previous-fold
  • 下一个

    • vimish-fold-next-fold

origami

功能和按键

toggle 切换折叠状态

  • origami-toggle-node
  • origami-forward-toggle-node

    • 更有好
  • origami-recursively-toggle-node

    • 递归处理

折叠

  • origami-close-node

打开

  • origami-show-node