沉浸在org-mode之中阅读或者写作的时候,常常需要参阅文章的大纲结构,以获悉当前坐标在宏观视图中的位置,更好地把握阅读进度,整体理解,以及备忘提醒等。
Org-mode似乎对此提供了完美的解决方法,就是轮巡。
C-n S(shift)-tab 展示不同深度的目录
S-tab或者C-u Tab轮巡
长期以来,也始终坚持上述的解决方案,比如 C-2 S tab展示当前文章的2级深度的目录。
然而,该方法的弊端也显著,明显的干扰到当前的焦点和注意力。就类似于,在乡间开车迷路之际,司机一跃飞到万米高空,俯瞰地形地势。不幸的是,虽然有了大局图,司机可能再也找不到停在地面上的车辆了。上述轮巡的方法,展开整体树形结构的同时,也令用户失去当前的焦点,不得不用set-mark等方法再回去。但是,即使顺利回到原点,它在整个窗口中的位置也会变更,倘若原先在上半部分,再回来很可能到了下半部分。
如此跳来跳去,徒然增加大脑负担。因而,不得不尽量不去查看大纲视图,并且慢慢养成习惯。
打破既定习惯的冲动产生于重新使用typora之后,它的大纲视图,好像突然释放了大脑刻意记忆负担,用起来轻松惬意,激发熊熊的阅读和写作欲望。
如此看来,大纲视图必不可少,只是org-mode的轮巡方法并非良策。
发帖求助后, Kinney 给了imenu-list的好建议。
org文件怎样在侧边栏展示大纲? 如果能与右侧的阅读进度同步就太好了,像typora那样。 [image] 搜到这个包 是正确的解决方案吗? 它依赖super-agenda(没敢试,担心弄乱绑定键)
imenu-list 正能解决我的需求,几乎完美的解决方案,比之前尝试的org-sidebar更合适。
imenu-list 内使用Space和Enter键自由自在的阅读文章
: goto entry under cursor, or toggle case-folding. : display entry under cursor, but *Ilist* buffer remains current
还是有些不能满足需求的地方:
但是这三点并不影响imenu-list的使用。
保持文章的完整,介绍较差的方案 org-sidebar
该方案把主buffer作为indirect-subtreebuffer,仅仅展示从大纲中点选的部分内容,读完之后,还要回到大纲中导航。
这不是我想要的,因此马上就删掉了。
Occur命令:
大纲视图能用occur命令展示,调用occur之后,输入^*+,就看到了展示在底部的大纲视图:
不足之处较多,比如将窗口占去一半。
agenda-capture-refile的跳转
或者使用capture-refile的跳转命令:
(C-u C-c C-w) 跳转到特定的heading
似乎好一点,因为是动态的。
底部的imenu-buffer
从imenu-buffer文档中看到,也能展示在底部,仅需要调整参数 imenu-list-position`。
imenu-list-position: should beleft,right,aboveorbelow` , to display the window at the left, right, top or bottom of the frame.
此时此刻,我终于有点开窍了,既然大纲结构展示在底部,大脑似乎并不方案,那么大纲结构就不要安装任何新的包,实现起来一点也不难。
一番折腾之后,大概明白了“潜意识”内对大纲结构的需求:
最终的解决方案是最高频的按键C-s (swiper-search)
一级目录深度: Swiper+ ^*
二级目录深度: Swiper + ^*{1,2}
三级目录深度: Swiper + ^*{1,3}
展示全部深度的目录:Swiper + ^*+
由此,Swiper的regex搜索查询模式,足够满足对outline的四点需求,并帮助思维拓展到更广阔之处。比如用rg查看整个项目的一级目录结构。
Windows系统上安装Emacs请参阅文章:
Windows上畅行无碍玩转Emacs27.1的11个步骤
页面更新:2024-05-20
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号