emacs c/c++ 中使用的命令大杂烩

注释,缩进,光标移动等

键盘操作 键盘操作对应函数名 说明
ESC Ctrl \ indent-region 对光标和标记之间的每行文本进行缩进
ESC ; indent-for-comment 如果没有选中任何文本,则在光标所在行的最后加上:/* */;如果选中了文本,则注释掉选中的文本;如果选中的文本已经是被注释的了,则去掉注释。
ESC j /* */里写注释的时候,换行,并自动缩进到和上一行相同的位置。
ctrl x ; 设置控制缩进的变量comment-column。注:具体的缩进值,由变量comment-column,来决定
ctrl u ctrl space 让光标跳回上一个mark
ESC q 把注释整形
ESC ctrl a beginning-of-defun 移动光标到函数的开头
ESC ctrl e end-of-defun 移动光标到函数的末尾
ESC ctrl h c-mark-function 移动光标到函数的开头,并把mark放到函数的末尾,即把整个函数的内容复制了,在按ctrl y时,粘贴的就是整个函数的内容。

在条件编译块间移动

当读开源的源码时,发现为了应对不同的系统,有很多条件编译在里面,有了以条件编译块为单位的移动,简直是一种极大的恩赐。

键盘操作 键盘操作对应函数名 说明
ctrl c ctrl u c-up-conditonal 当光标在条件编译块中时,把光标移动到当前条件编译块的起始位置
ctrl c ctrl p c-backwark-conditonal 当光在条件编译块的起始行时,把光标移动到上一个条件编译块的起始位置
ctrl c ctrl n c-forward-conditonal 当光在条件编译块的起始行时,把光标移动到当前条件编译块的末尾位置

请看下面的例子,假设...处都有上百行的代码。

#ifdef aaa  //-----①
... //-----④
#else
... //-----
#endif
... //-----②
#ifdef bbb//-----③
... //-----
#else
... //-----
#endif

1,当光标在①的行首时,按ctrl c ctrl n,光标移动到②的行首

2, 当光标在②或者③时,按ctrl c ctrl p,光标移动到①的行首

3,当光标在④时,按ctrl c ctrl u,光标移动到①的行首

选择代码的样式(缩进等)(函数名:c-set-style)

自动换行(ctrl c ctrl a)(c-toggle-auto-state)

当输入【;】,【{】, 【}】会自动换行并缩进

饥饿删除(ctrl c ctrl d)(c-toggle-hungry-state)

当按【backspace】键时,如果光标前有多个空格,或者回车,会把他们全部删除

通过一个函数(c-toggle-auto-hungry-state)设置:既能自动换行,也能饥饿删除

c/c++ 学习互助QQ群:877684253

本人微信:xiaoshitou5854

emacs c/c++ 中使用的命令大杂烩的更多相关文章

  1. linux shell 中的sleep命令

    开始还以为是这样的语法: sleep(1), 后面发现是: linux shell 中的sleep命令 分类: LINUX 在有的shell(比如linux中的bash)中sleep还支持睡眠(分,小 ...

  2. 在脚本中使用sudo命令,将密码保存在脚本中,不需要手动输入密码

    在脚本中使用sudo命令,将密码保存在脚本中,不需要手动输入密码. #!/bin/bash echo 'xxx密码xxx'|sudo -S service mysql start echo 'xxx密 ...

  3. 在程序中执行shell命令

    在linux系统下的操作中我们会经常用到shell命令来进行,一开始学习进程的时候对于shell命令也进行了思考,认为shell命令就是一个进程的外壳,经过了后来的学习对于这一点也有了更多的认识. 用 ...

  4. 常见linux命令释义(第九天)—— Bash Shell 的操作环境Shell 中的管道命令一些管道命令

    最近好懒好懒.连写文章都写不好了.于是只能写读一点书,记一点读书笔记了.太懒了,没办法.慢慢恢复自己的状态吧. 管道命令仅会处理strandard output 的内容,对于strandard err ...

  5. 在Emacs 24.4中使用在线字典

    使用Emacs时经常需要查英语字典怎么办?切到浏览器查?太慢.我想到一个高效的解决方案,利用新发布的Emacs 24.4中的Web浏览器eww,在Emacs中集成一个在线字典,查询光标处的字,一键搞定 ...

  6. Linux中的历史命令

    Linux中的历史命令一般保存在用户    /root/.bash_history history 选项 历史命令保存文件夹 选项     -c:清空历史命令     -w :把缓存中的历史命令写入历 ...

  7. emacs: 文本输入中文件目录自动补全

    emacs: 文本输入中文件目录自动补全 // */ // ]]> UP | HOME   emacs: 文本输入中文件目录自动补全 Table of Contents 1 引言 2 补全过程演 ...

  8. Google Chrome浏览器中如何使用命令

    Google Chrome浏览器中如何使用命令 | 浏览:2974 | 更新:2014-02-23 23:12 | 标签:chrome 1 2 3 分步阅读 Google Chrome浏览器有很多的特 ...

  9. QT中QProcess调用命令行的痛苦经历

    在QT程序中需要将某些目录和文件压缩为一个rar的压缩包,于是想到了在QT中通过QProcess类调用命令行的rar.exe来达到效果,但是没想到QProcess类用起来很麻烦,而且达不到效果,折腾了 ...

随机推荐

  1. iOS11自定义tabBar重影问题

    转载自:(主链接)https://www.jianshu.com/p/1be90349fdb4 https://www.cnblogs.com/coderYu/p/5859638.html 很实用,有 ...

  2. Android 多选列表对话框 setMultiChoiceItems

    private Button button; private final CharSequence items[] = { "北京", "上海", " ...

  3. retrying failed action with response code: 403

    0x00 Event [2019-09-24T19:22:31,655][INFO ][logstash.outputs.elasticsearch] retrying failed action w ...

  4. Linux:LNMP环境的搭建

    LNMP环境的搭建 安装DNS服务器 安装DNS服务 yum install bind -y DNS的配置 创建正向解析 以创建一个名为"lsy.com"的正向查找区域为例: 第一 ...

  5. 浅谈浏览器解析 URL+DNS 域名解析+TCP 三次握手与四次挥手+浏览器渲染页面

    (1)浏览器解析 URL 为了能让我们的知识层面看起来更有深度,我们应该考虑下面两个问题了: 从浏览器输入 URL 到渲染成功的过程中,究竟发生了什么? 浏览器渲染过程中,发生了什么,是不是也有重绘与 ...

  6. npm --save-dev 和 --save 的区别

    转载 >>> 1. npm install 在安装 npm 包时,有两种命令参数可以把它们的信息写入 package.json 文件, 一个是npm install--save    ...

  7. Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

    docker pull nginx 遇到这个问题 Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: ...

  8. USACO Max Flow

    洛谷 P3128 [USACO15DEC]最大流Max Flow 洛谷传送门 JDOJ 3027: USACO 2015 Dec Platinum 1.Max Flow JDOJ传送门 Descrip ...

  9. LG4158 「SCOI2009」粉刷匠 线性DP

    问题描述 LG4158 题解 设\(opt[i][j][k]\)代表到\((i,k)\)刷了\(j\)次的方案数. 一开始DP顺序有点问题,调了很长时间. 务必考虑清楚DP顺序问题 \(\mathrm ...

  10. Linux学习笔记-第19天 结束了。突然感觉配置一个服务好简单的样子

    课程结束了,这本书又过了一遍,感觉学习到了不少的新知识.虽然整个过程老师讲的有点仓促,但回头想想身处于这个知识大爆炸的时代,学习不单要追求知识面宽广,更需要注重学习的效率,某种角度来讲,这也是一种鞭策 ...