Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1657526
  • 博文数量: 292
  • 博客积分: 10791
  • 博客等级: 上将
  • 技术积分: 2479
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-20 21:06
文章分类

全部博文(292)

文章存档

2011年(31)

2010年(261)

分类: LINUX

2010-04-19 13:29:19

Emacs 命令通常包含有 CONTROL 键(有时候以 CTRL 或 CTL 来标示)或是META 键(有时候以 EDIT 或 ALT 来标示)。为了避免每一次都要写出其全名,我们将会使用下述的缩写:

C- 表示按住 CONTROL 键的同时键入字符 。例如 C-f 就是:按住 CONTROL 键再键入 f 。

M- 表示按住 META 键再键入字符 。 如果没有 META 键时,可以用「按一下 ESC 键」来替代 META。我们以 来表示 ESC 键。


* SUMMARY
-----------------

        C-v           向前移动一个屏幕/窗格 = PageUp
        M-v           向后移动一个屏幕/窗格 = PageDn

        C-l            清除屏幕/窗格,再重新显示所有文字,光标所在位置显示於屏幕/窗格的中央。
                       (是 CONTROL-L 而不是 CONTROL-1)

* BASIC CURSOR CONTROL
----------------------------------------

       META 用作与「以语言定义出的单位(字、句子、段落)」有关的操作CONTROL 用作「与您所编辑无关的『基本』单位(字符或行等)」上。

        C-f           往前移动一个字符
        C-b          往回移动一个字符

        M-f           往前移动一个字【中文是移动到下一个标点符号】
        M-b          往回移动一个字【中文是移动到上一个标点符号】

        C-n          移动到下一行(往下移)
        C-p          移动到上一行(往上移)

        C-a          移动到行首
        C-e          移动到行尾

        M-a          移回句首
        M-e          移到句尾

        M-<         (META Less-than),移动到文字的最开始,
        M->         (META Greater-than),移动到文字的最后。

    P 表示 previous
    N 表示 next
    B 表示 backward
    F 表示 forward

        C-u          数字参数其它命令
        M            数字参数其它命令
大部份的 Emacs 命令接受数字参数;对大部份的命令而言,它的作用是指定重复次数。

        C-g         停止当前命令,或取消操作

* INSERTING AND DELETING
--------------------------------------

                            carriage-return
        C-u          重复数字符 重复输入N个字符


                  删除光标 前一个字符
        C-d          删除光标 后一个字符

        M-      删除光标 前一个字
        M-d           删除光标 后一个字

        C-k           删除从光标到「行尾」的字符
        M-k           删除从光标到「句尾」的字符

        C-@
        C-SPC       设置Mark Set(任一个即可)。

        C-w            杀掉选中文字(剪切)
        C-y            拉回(yanking)(粘贴)
        M-y            拉回上次、上上次……的内容

    「拉回(yanking)」: 即“粘贴”
    「杀掉(killing)」:     即“剪切”,可以yanking
    「删除(deleting)」: 不能yanking

        C-x u
        C-/
        C-_          Undo

        C-x C-f        打开文件(visiting file,find file)
        C-x C-s       保存文件

       注意:在某些系统中,键入 C-x C-s 将会把屏幕冻结,您将看不到从 Emacs 来的任何输出。这表示操作系统一个称为「流程控制」的「功能」将 C-s 命令拦截住,并且不让它传到 Emacs。要取消屏幕的冻结,请键入 C-q。然后到 Emacs使用手册中看看对於「渐进式搜寻的同时进入(Spontaneous Entry to Incremental Search)」这个主题,以取得处理这个「功能」的建议。


        Emacs 将每个文件的文字在「缓冲区(buffer)」中。打开一个文件会在 Emacs 内部建立一个缓冲区。

        C-x C-b      列出缓冲区
        C-x b          编辑某个缓冲区(要求输入缓冲区名)
        C-x s          询问是否要保存所有修改过的缓冲区。


* EXTENDING THE COMMAND SET
-----------------------------------------

        C-x             字符扩充。后面跟著一个字符。
        M-x             有名称的命令扩充。后面跟著一个长的名称。
                           键入 M-x 时,Emacs 会询问您命令的名称。

        C-z             是 *暂时* 退出 Emacs 的命令
        C-x C-c       退出

其它 C-x 命令。

        C-x C-f          找文件。
        C-x C-s         储存文件。
        C-x C-b         列出缓冲区。
        C-x C-c         退出 Emacs。
        C-x 1             除了一个外,删去其它所有的窗格。
        C-x u             取消动作。

        M-x replace-string schangedaltered

* AUTO SAVE
-----------------------

        M-x recover file 从自动保存文件中恢复


* MODE LINE
---------------------
--:** TUTORIAL.cn       (Fundamental)--L670--58%----------------

    -- 就是您找的文件。
    -NN%-- 有 NN 百分比的文字位在窗格的上面。
    如果文件的顶端就位在窗格中,那么它就会显示 --Top--
    如果文件的底部就位在窗格中,那么它是显示 --Bot--
    如果在窗格中足以看到全部的内容,那么状态行就会显示 --All--

    L 目前所在的行数(Line)。

编辑模式

如 Lisp 模式、 Text 模式,C/C++模式……

主要(major)、次模式(minormode)
       次要的模式不是主模式的后选,而是次要的更改每个次模式可以自身启用或停止,和所有其它的次模式无关可以组合任何数量的次模式

      M-x fundamental-mode       Fundamental 模式
      M-x text mode                        Text模式

      M-x auto fill mode                 Auto Fill 模式(自动换行,即所谓的fill)
                                                                        Auto Fill 只在空白处断行。
      M-q                                                           Auto Fill re-fill
      C-x f                                                          Auto Fill 改变每行的长度(连界)
      C-u 2 0 C-x f                                            以 20 个字符,进行 fill

      C-h m                                                       列出所有模式

* SEARCHING
-------------------

Emacs 搜寻命令与大部分编辑器的搜寻命令不同的地方在於,它是「渐进的(incremental)」。这表示搜寻发生在您键入想要搜寻的文字串后。

「I-search」:「渐进式搜寻」

      C-s 往前搜寻
      C-r   往回搜寻
      C-g 也可以用来结束搜寻。
      结束搜寻。

* MULTIPLE WINDOWS
------------------------------

      C-u 0 C-l      移动光标到当前行
      C-u XXX C-l 移动到XXX行
      C-x 1          仅保留当前窗格(光标所在的窗格)
      C-x 2           水平拆分当前窗格
      C-x 3           垂直拆分当前窗格
      C-M-v           卷动下方的窗格。(键入 ESC C-v 亦可。)
      C-x o          (o是other的意思),将光标移动到下方的窗格。
      C-x 4 C-f     在新窗格中打开文件,并编辑之
      C-x 5 C-f       新启动一个的Emacs,在之中打开文件


* RECURSIVE EDITING LEVELS
------------------------------------------

有时候您会进入所谓的「递归编辑阶层」。它是由位在状态行的方括弧所指明,并且包含住以小括弧来指明的模式名称。举例来说,您可能会看到 [(Fundamental)],而不是 (Fundamental)。

              全功能命令,退出递归编辑
   也可以用来关闭多余的窗格,并且退出小缓冲区。

* GETTING MORE HELP
-------------------------------------

   C-h                         查询需要帮助的字元
   C-h ?                      Emacs 将会告诉您它能够提供的帮助。
   M-x help   
         
   C-h c                      查看简要说明
   C-h k                      查看详细说明
   C-h f                       解释一个函数。您要键入此函数的名称。
   C-h f previous-line

   C-h v                    「您可以用来定制 Emacs 行为的变数」的文档。
   C-h a                     命令相关查找(Command Apropos)。
         键入一个关键字然后 Emacs 会列出所有「在其名称中含有此关键字」的全部命令。这些命令全部都可以经由 META-x 来启动。对於一些命令而言,命令相关查找也会列出「可以执行相同命令」的一个或两个字符的串列。

   C-h i                      阅读在线使用手册(a.k.a. Info)。
        这个命令将您带到了称为「*info*」的特殊缓冲区,在那,您可以阅读安装在您的系统里的软件包的在线使用手册。键入m emacs 以阅读 Emacs 使用手册。如果您在此之前未曾使用过 Info 系统,请键入『?』。 Emacs 将会带您进入Info 模式功能的导览指南。一旦完成了本快速指南的研读,您应该查阅 Emacs Info 使用手册,以作为主要的参考文档。

阅读(745) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~