打开emacs开始一个程序最基本操作:

1.打开Emacs,执行

$ emacs

2.建立一个新的程序文件. 按C-x C-f
然后在屏幕的底部出现minibuffer,光标提示你输入文件名称,
文件名称要带上后缀名,如hello.cpp。回车,然后开始编辑源代码。

3.编译代码。按Esc-x  
输入:compile,出现minibuffer,提示你输入编译命令。
默认情况下,有个make -k出现在minibuffer中,删除即可
用命令g++ -o hello hello.cpp,回车后,出现一个编译结果窗口。

4.执行生成的结果文件。按Esc-x   
输入:shell,回车后出现一个命令行窗口。
在其中执行命令 $ ./hello。

5.回到源码窗口。按 C-x
输入:b,出现minibuffer,提示你输入要换到哪个缓冲。
输入缓冲名称即可。若她提示的却生缓冲就是你要去的窗口,直接回车即可。

6.不想在minibuffer中输入任何东西,执行C-g,就离开了这个minibuffer。

7.杀死某个缓冲。按 C-x 
输入:k,出现minibuffer,提示你输入是哪个缓冲。
输入名称,回车即可。

8.只保留当前光标所在的窗口,其他窗口关闭。按 C-x

输入1 
(注意是数字1),相反,Ctrl+x  
2,将打开两个窗口。

9.屏幕上出现多个窗口时,从一个窗口跳到另一个窗口,按 C-x o(字母O)。

快捷键:

emacs 的键盘命令通常包括control键(C)和shift键(M)

退出emacs :①使用组合键  C-x C-c   ②使用快捷键 M-x 后  输入kill-emacs

C-g  退出一个正在运行的命令  或者  取消数字参数和值输入到一半的命令

C-z  最小化

C-v   移动到下一屏

M-v  退回至上一屏

C-l   重绘屏幕,并将光标所在行置于屏幕中央 (第二次使用该键 光标所在行移置屏幕顶端,第三次移置底端)

PS: Pageup Pagedown 也用来滚屏

C-f  向右移动一个字符

C-b 向左移动一个字符

C-n 移动到下一行

C-p 移动到上一行

M-f  一个词一个词的向前移动光标

M-b 一个词一个词的向后移动光标

C-a 将光标移至一行的首部

C-e 将光标移至一行的尾部

M-a 将光标移至一句话的首部

M-e 将光标移至一句话的尾部

M-< 将光标移至所有文字最开头

M-> 将光标移至所有文字最末尾、

C-u  先输入该快捷键再输入一个数字 再输入一个命令 执行该命令这个数字次

被禁用的命令  执行这些命令时,emacs会告诉你这个命令的功能,再询问你是否确定执行,确定按 “n”

—————————————————————————————————————————————

插入与删除

C-u 8 *   插入8个字符“*”

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

M-backspace 删除光标前的一个词

M-d 删除光标后的一个词

C-k 移除光标到“行尾”间的字符

M-k 移除光标到“句尾”间的字符

C-y 将删除的文字重新召回(最近一次删除的文字)

M-y 找回再前一次删除的文字,再按再前

C-/  撤销

C-x u 撤销

—————————————————————————————————————————————

文件

C-x C-f   寻找一个文件

C-x C-s   储存这个文件

缓冲区

C-x C-f 找到并打开第二个文件,但第一个文件仍然在 Emacs 中。要切回第一个文件,一种办法是再用一次 C-x C-f。这样,你就可以在 Emacs 中同时打开多个文件

C-x C-b   列出所有缓冲区

C-x s   保存多个缓冲区

—————————————————————————————————————————————

主模式

输入 M-x text-mode     Text 模式

lisp    编辑程序代码模式

C-h m 可以查看当前主模式的文档

用 C-l C-l 将本行带到屏幕的最上方

M-x auto-fill-mode  启动自动折行模式,打字超界时自动换行

输入 C-x f 并传递参数 20: C-u 20 C-x f   设定行边界

M-q 自动折行

——————————————————————————————————————————————

搜索

C-s 输入字符 向前搜索

C-r 输入字符 向后搜索

——————————————————————————————————————————————

多窗格

C-x 2 将屏幕划分为两个窗格,都显示同一文档

C-M-v 滚动下方的窗格

输入 C-x o(“o”指的是“其它(other)”)将光标转移到下方的窗格

(在上方窗格里)输入 C-x 1 关掉下方窗格。

C-x 1 只保留一个窗格

C-h k C-f 新建一个窗格

用下面的方法可以在一个新开窗格里打开文件:

--输入 C-x 4 C-f,紧跟着输入一个文件名,再用 <Return> 结束

可以看到你指定的文件出现在下方的窗格中,同时光标也跳到了那里

--输入 C-x o 回到上方的窗格,然后再用 C-x 1 关掉下方窗格

窗口管理

C-x 2           split-window-vertically           水平分割
C-x 3           split-window-horizontally       竖直分割
C-x 1           delete-other-window             只保留当前窗格
C-x 0           delete-window                      关闭当前窗格
C-x o           other-window                        切换窗格
C-M-v           scroll-other-window             滚动下一个窗格

—————————————————————————————————————————————

多窗口

M-x make-frame  新建窗口

M-x delete-frame  关闭选中的窗口

—————————————————————————————————————————————

帮助

C-h c 再输入一个快捷键  就会给出这个快捷键的说明

C-h f        解释一个函数。需要输入函数名

显示行号

m-x  global-linum-mode

Emacs入门快捷键的更多相关文章

  1. emacs 入门第一课:Emacs里的基本概念

    Table of Contents 无聊的开场白 buffer(缓冲区) window(窗口)与frame Emacs的mode Emacs Lisp 函数function.命令command.键绑定 ...

  2. eclipse下的emacs风格快捷键

    Ieclipse emacs类快捷键 win + shift + b 切换设置断点 win + shift + f 格式化代码 win + shift + l 显示绑定的快捷键 win + shift ...

  3. emacs入门

    emacs入门 复制: 用Ctrl-@ 设置起点, 然后移动光标到终点, 为了确认你的起点和终点,可以用 C-x C-x 将光标在起点和终点间切换,如果没问题了,可以用 Alt-w 来复制. 再找一个 ...

  4. [Emacs] 常用快捷键-- 生存指南

    Emacs 常用快捷键--生存指南 主要用来记录自己常用到的快捷键,记住这些快捷键可以保证你在Emacs中生存. 有可能不全,但是够用了(简单写文本). 保存和退出 使用 C-x C-s 保存文件. ...

  5. emacs 入门教程,菜单汉化,配置文件等杂乱文章

    首先来一发ArchWiki的Emacs简体中文的入门教程 https://wiki.archlinux.org/index.php/Emacs_(%E7%AE%80%E4%BD%93%E4%B8%AD ...

  6. Emacs学习阶段小结-Emacs常用快捷键总结

    首先推荐一下Emacs自带的Emacs Tutorial,跟着这个做一边,两三个小时,基本的使用就能掌握了.之后的神教程就有很多了,比如<Sams.Teach.Yourself.Emacs.in ...

  7. [efficiency] emacs入门

    一. 没记错的话,这可能是第三次读emacs tutorial了.前两次读的非常慢,也不记得有没有读完了.总之最后都忘光了. 这次读的很顺畅,利用工作的空闲时间加上今天晚上(周日).总算是读完了. 没 ...

  8. Vim 使用入门快捷键

    Vim 和 Emac 都是利器啊,前段时间决定熟悉一套跨平台的编辑器,以便在 Win,Mac,Ubuntu 下都有相同的编辑体验. 于是尝试了一下 Vim,使用了一段时间,确实比 UE 之类的要高效. ...

  9. Emacs 入门(https://www.zybuluo.com/eqyun/note/40788)

    下载地址 基本操作(C=Ctrl, M=Alt) C-f 向右移动一个字符 C-b 向左移动一个字符 C-n 移动到下一行 C-p 移动到上一行 M-f 向右移动一个词[对中文是移动到下一个标点符号] ...

随机推荐

  1. HEAP[xxx.exe]:Invalid Address specified to RtlValidateHeap 错误的解决方法总结

    一.情况 抽象出问题是这样的: class DLL_API1 A { func() { vector vec; B b; b.func(vec); return TRUE; } } 其中B是另一个导出 ...

  2. Nutch+Hadoop集群搭建

    转载自:http://www.open-open.com/lib/view/open1328670771405.html 1.Apache Nutch    Apache Nutch是一个用于网络搜索 ...

  3. Handlebars expressions

    Basic Usage 1,最简单的handlebars 表达式 <h1>{{title}}</h1> 使用时,会在当前context里找名为title的property,替换 ...

  4. web api 返回数据XML JSON

    WEBAPI返回的数据格式一般是XML和JSON.能根据请求的要求返回.经过试验如下: public object Get(string uid) { return new {msg="成功 ...

  5. 如何利用putty的密钥登陆

    1.登陆主机,输入:mkdir /root/.ssh(创建SSH密钥目录) touch /root/.ssh/authorized_keys (创建SSH密钥文件):   2.输入:vi /root/ ...

  6. C语言预处理指令的初步了解

    所谓预处理是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作.预处理是C语言的一个重要功能,它由预处理程序负责完成.当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分 ...

  7. DataTable中数据针对某列数据去重

    //针对这些数据进行去重,取某一列就用这一列字段,把重复的去掉 DataSet ds = dao.get(); DataTable dt = ds.Table[0] DataView dv = dt. ...

  8. .NET抽象工厂模式微理解--教你在项目中实现抽象工厂

    .NET抽象工厂模式微理解--教你在项目中实现抽象工厂 最近在学习MVC,对于MVC里面的一些项目上的东西都和抽象模式有关,今天就微说明一下个人对于抽象工厂模式的理解,以方便学习MVC及工厂模式相关的 ...

  9. hdu 1546 Idiomatic Phrases Game

    http://acm.hdu.edu.cn/showproblem.php?pid=1546 #include <cstdio> #include <iostream> #in ...

  10. jquery第六期:位置选择器

    <html> <head> <script type="text/javascript" src="jquery-1.10.1.js&quo ...