10.Emacs进阶之图片模式
Posted 艾特 数据
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了10.Emacs进阶之图片模式相关的知识,希望对你有一定的参考价值。
为了简便期间,对文中命令进行了缩写,其中:
·C代表CTRL键
·M代表ALT键。
Emacs提供了一种叫做图片的模式,英文是“Picture Mode”。这里的图片并不是我们所常见的png、bmp等二维图片,而是特指的ASCII图片,常见于命令行程序中,通过字符的堆叠而产生图片的形式。相信这样的图片对技术宅更有吸引力。
一、与文本模式的区别和联系
Emacs本质上是处理文本和字符的。ASCII图片虽然是一种图片形式,但在Emacs看来,还是字符的堆积。也就是说,图片模式和文本模式一样都是用来处理字符的。
从大的方面二者本质相同,但在处理细节上又有着非常大的差异。最简单的一点,图片模式中就没有行尾的概念。可以这样理解,Emacs进入图片模式之后,就将工作区看成了一张画布,并且这张画布理论上无穷大,可以任意发挥。既然无穷大,也就没有了“行尾”这个概念,只有一行的最后一个可见字符。这是第一个大的区别。
再有一个区别,就是字符的书写方向。在文本模式中,字符是从左到右、从上到下依次书写的,符合人们的常规阅读顺序。在图片模式就不是这样了,出了从左到右、从上到下外,还有左上、左下、右上、右下,还要从下往上、从右往左,这样一共八个方向。
第三个我理解的区别,就是字符的更新方式,就像我们使用其他画图软件一样,后画的内容永远在上层。在图片模式中,出现字符的重叠时,执行的是字符的替换。即:在画布的同一位置,后出现的字符将覆盖原来的字符。
二、光标移动命令
在图片模式下,光标移动的快捷键与文本模式相同,但是都绑定了不同的后台命令,在实际执行效果上也略有差异。
C-f |
向前移动光标。由于没有行尾,光标会一直向前移动。 |
C-b |
向后移动光标。 |
C-n |
向下移动光标。移动光标位置在上一位置的正下方。 |
C-p |
向上移动光标。移动光标位置在上一位置的正上方。 |
C-a |
将光标移动到行首。 |
C-e |
将光标移动到本行最后一个非空字符位置。 |
三、字符的插入
在图片模式下,字符的插入与文本模式具有较大的差异。仍然是按照替换的理念,插入的字符会直接替换光标位置的原字符。
四、画线相关命令
画线是作图的基本操作,Emacs在图片模式下提供了八个方向画线的命令:
C-c < |
向左画线。 |
C-c > |
向右画线。 |
C-c ` |
向左上画线。(键盘左上角的按键) |
C-c ‘ |
向右上画线。(键盘上引号”所对应的按键) |
C-c / |
向左下画线。 |
C-c \ |
向右下画线。 |
C-c ↑ |
向上画线。(小键盘向上按键) |
C-c ↓ |
向下画线。(小键盘向下按键) |
关于上面命令,在使用中要注意:
画线命令可以看作是一个动作的开始。也就说执行了一个命令后,在执行下一个命令之前,对文本和字符的插入都沿用上一个动作。
以上是关于10.Emacs进阶之图片模式的主要内容,如果未能解决你的问题,请参考以下文章
Java进阶篇设计模式之八 ----- 责任链模式和命令模式