注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

My Unix World

不要迷恋Unix,Unix只是计算世界很小的一部分!

 
 
 

日志

 
 

【Copy】Emacs Outline Mode 示例  

2008-12-28 22:20:18|  分类: L-Emacs |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Outline mode 是 Emacs 的一个强有力的模式。它可以使你轻松的操纵结构化的文档。它可以让你只显示文档的某一个分支,只显示主干,只显示一个子树。

下 面就是一个 LaTeX 文档的各种 outline 操作的结果示范。由于 outline-minor-mode 的键绑定前缀 C-c @ 过于复杂,大部分经常使用 outline 的人想把它设置为另一个键,所以以后我在叙述时直接称呼函数名字和简化前缀的键绑定。具体的键绑定请用 C-h w 查询。

更改前缀可以在启动 outline-minor-mode 之前,用改变 outline-minor-mode-prefix 变量的办法一次完成。比如:

(setq outline-minor-mode-prefix [(control o)])
就可以把前缀改成 C-o. 以后我们实例中的键绑定都使用 C-o.

 我们来把文档的各部分术语解释一下。

  1. heading: 是指文档里的标题,比如 Chapter 1, Chapter 2, Section 1, ... 的那些行。
  2. branch: 是指一颗子树下所有 heading 的集合。想一想“树干”。
  3. entry: 是指文档里不是 heading 的那些内容。比如,"Entry for topmost level", "Entry for Chapter 1", "Entry for Chapter 2", ... 这些才是文档的主要内容。
  4. leaves: 是指一棵子树里的所有 entry。
  5. body: 是指文档里所有 entry 的集合。注意这个概念跟 leaves 的区别是范围上的区别。

启动 Outline

M-x outline-minor-mode 就可以启动 Outline。还有一个 outline-mode 是一个 major mode,一般都不用它。

全局隐藏操作

光标在任何位置,只要执行这些操作,文档的显示就会变化成需要的样子。

hide-sublevels(C-o C-q)

这个操作如果不带参数,隐藏所有文档子结构,只剩最上层。

 

M-4 hide-sublevels(M-4 C-o C-q)

这是参数为4的操作,显示至文档第4层子结构。

 

hide-body(C-o C-t)

文档的所有 Entry 都被隐藏。只显示主干。

 

对一个子树(Chapter 1)的隐藏操作

hide-subtree(C-o C-d)

所有文档部分展开时,光标移动到 Chapter 1,执行 hide-subtree。整个 Chapter 1 的子树被折叠起来。

 

hide-other(C-o C-o)

所有文档部分展开时,光标移动到 Chapter 1,执行 hide-other。除了 Chapter 1,其它子树全部被折叠起来。这个操作正好与 hide-subtree 互补。

 

hide-leaves(C-o C-l)

所有文档部分展开时,光标移动到 Chapter 1,执行 hide-leaves。所有 Chapter 1 子树下的所有级别的 entry 被隐藏。也就是说,Chapter 1 下,只显示 branch.

 

hide-entry(C-o C-c)

所有文档部分展开时,光标移动到 Chapter 1,执行 hide-entry。Chapter 1 的 Entry 被隐藏,但是所有子树都不动。

 

全局显示操作

show-all(C-o C-a)

显示所有文档。

对一个子树的显示操作

为了演示,我们从全部隐藏的情况开始:

 

show-children(C-o C-i)

show-children 只显示直接的下一代子树,而不显示间接的下一代。这里, \begin{document} 的直接的下一代就是 \chapter{...}。

 

show-entry(C-o C-e)

把光标移动到 Chapter 1,执行 show-entry。Chapter 1 的 Entry 被显示,但是所有子结构还是保持隐藏。 

show-branches(C-o C-k)

把光标移动到 Chapter 1,执行 show-branches。Chapter 1 这棵子树之下的各级“树干”被显示,但是各级 entry 还是保持隐藏。Chapter 1 自己的 entry,由于我们上一步已经显示,所以保持不变。

show-subtree(C-o C-s)

把光标移动到 Chapter 1,执行 show-subtree。Chapter 1 及其所有子结构全部被扩展。

Outline mode 下的移动操作

在 outline 模式下,有几种特殊方便的移动方式。

  1. C-o C-n (outline-next-visible-heading) 移动到下一个可见标题。
  2. C-o C-p (outline-previous-visible-heading) 移动到上一个可见标题。
  3. C-o C-f (outline-forward-same-level) 移动到下一个同级可见标题。
  4. C-o C-b (outline-backward-same-level) 移动到上一个同级可见标题。
  5. C-o C-u (outline-up-heading) 到上一级标题。
  评论这张
 
阅读(369)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017