读书笔记-学习GNU Emacs-1

news2024/11/25 4:39:33

在这里插入图片描述

学习本书目的:

emacs的学习一直是陆陆续续看博客和上手实践,
这次想通过阅读"学习GNU Emacs"这本书好好系统的再复习下emacs。
ps:读技术书应该是带着一定的目的去读的,最简单的目的可能就是为了学好某一项技术或者复习下某一项技术。

基本概念

缓冲区

理解文件与编辑缓冲区:
文件内容放到临时的缓冲区里,对缓冲区进行编辑。
保存,才会更新到文件中。
*scratch*只是一个临时性的辅助性缓冲区,作用类似草稿簿。
*Help*帮助信息显示的缓冲区

编辑模式

文本模式和c语言模式都是主模式。
一个编辑缓冲区每次只能处于一种主模式中,退出一种主模式的方法是进入另一个主模式。

当编辑一个文件的时候,emacs会根据正在进行的编辑工作尝试进入正确的主模式。
如果判断不出,就会转入基本编辑模式。

在主模式之外还有一些副模式。
副模式定义的是emacs某些特定的行为,可以在某个主模式里打开或者关闭。
比如自动换行模式,行号模式。

大纲模式即是一个主模式,也是一个副模式。

退出

C-x C-c 退出Emacs
ps:新手最怕emacs和vim的退出

文件编辑

光标的移动

按键作用按键作用
C-f向前C-b向后
C-p向上C-n向下
ESC-f右移一个单词ESC-b左移一个单词
C-a一行的开始C-e一行的结束
ESC-a上移一个句子ESC-e下移一个句子
ESC-{上移一个段落ESC-e下移一个段落
C-x ]上一页C-x ]下一页 ,没有分页符,分别到开头和末尾。

重新绘制界面

  • C-l重新绘制画面

文件的删除

按键作用
C-x u撤销最近一次的编辑操作。
C-d删除光标上的字符。
ESC-d删除单词
C-k删除一行
ESC-k删除光标后面的句子
C-y恢复已经删除的内容
ESC-y依次恢复

文本块编辑

标记一个文本块:

  1. 把光标移动到开始位置
  2. 按下C-@组合键,Emacs会显示Mark set。
  3. 把光标移动到准备标记的文本块的结束为止。
  4. 可选,C-x C-x检查标记是否正确

复制文本:

  1. ESC w 复制文本 (针对前面的标记文本块)
  2. 把光标移动到待插入位置,按下C-y,把复制内容插入到这里。

交换位置

按键作用
C-t交换字符
ESC-t交换单词
C-x C-t交换句子

改变大小写

按键作用
ESC c单词的首字母改为大写
ESC u单词的字母全部改为大写
ESC l单词转为小写字母

恢复文件内容

修改太多,想全部恢复
输入:
ESC X
revert-buffer RETURN
文件内容全部覆盖缓冲区的。

emacs配置文件

~/.emacs

自动启用文本模式和自动换行模式

(setq default-major-mode 'text-mode) 
(add-hook 'text-mode-hook 'turn-on-auto-fill)

读书总结

初始两个章节的阅读还是很有收获,虽然一直用evil,但是还是想对emacs的文本操作摘记下。
恢复文件内容这个函数就一直没用过,因为自己一直喜欢用git恢复,但是revert-buffer看起来会更方便。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/13501.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Java+JSP+MySQL共享单车管理系统的设计与实现-计算机毕业设计

项目介绍 随着时代的发展,我国的国民经济一直在稳步的提升,共享单车的是用来一直在不断的攀升,为了能够更加方便快捷的管理共享单车,需要开发一套利用计算机进行管理的JSP共享单车管理系统。 本项目利用软件工程原理&#xff0c…

最新出炉!开源 API 网关的性能对比:APISIX 3.0 和 Kong 3.0

背景 云原生时代下,企业逐渐向云上迁移,越来越多的应用和服务都在进行容器化改造,服务之间的流量也开始爆发性的增长。为了能高效地管理这些规模庞大的 API,API 网关开始在技术领域大展身手。 用户除了需要 API 网关提供请求代理…

springcloud集成Seata AT 模式

注意: 1.seata版本1.4.1 2.使用db配置,mysql 3.nacos版本2.2.3.RELEASE 4.spring-boot-starter-parent版本2.3.1.RELEASE 版本匹配很关键,否则报奇奇怪怪的错!!!! seata库必要的表 -- -------…

微服务拆分技巧

微服务架构整体思路 常见场景实施建议 拆分方式基础设施要求服务拆分落地方式从0开始构建业务系统按业务拆分微服务搭建完善基础设施,按照微服务基础设施优先级逐步落地一步到位单体架构微服务化按业务拆分微服务,先从非核心业务开始拆分搭建完善基础设…

【python初学者日记】用PIL批量给HEIC格式的照片,添加拍摄日期、拍摄地点的水印戳

【python初学者日记】用PIL批量给HEIC格式的照片,添加拍摄日期、拍摄地点的水印戳问题合集1、读取 HEIC 格式照片的拍摄信息2、将已知坐标转码成具体省市地址的文字信息3、将文字添加到HEIC格式的照片上问题解决一、问题分析二、代码实现最近在整理手机相册&#xf…

网站SEO优化有哪些要点?

1、网站关键词优化 对于网站关键词,每一个站长朋友应该很熟悉了,所谓的关键词就是对网站的一种简单而又综合性的描述,网站关键词分析也叫做关键词定位。seo教程认为网站关键词分析是进行SEO优化的最重要的一环。关键词分析首先要做的就是根据…

Go语言入门【6】切片

切片 在go语言中,切片是对数组的抽象,数组在声明时指定了长度之后就不可再进行改变,在特定场景下数组就不适用,所以就有了切片类型,切片就是“动态数组”,和数组相比,切片的长度是不固定的&…

mybatis逆向工程的实现

在本地创建一个test数据库,并在test数据库中创建一个student表;表中的数据如下: 创建表: DROP TABLE IF EXISTS student; CREATE TABLE student ( studentID int NOT NULL AUTO_INCREMENT, StudnetName varchar(20) CHARACTER SET…

Linux 之 Ubuntu 下安装配置ARM交叉编译器(工具链)的简单整理

Linux 之 Ubuntu 下安装配置ARM交叉编译器(工具链)的简单整理 目录 Linux 之 Ubuntu 下安装配置ARM交叉编译器(工具链)的简单整理 一、简单介绍 二、下载 arm 交叉编译安装工具包,并安装到虚拟机中 一、简单介绍 Linux/Ubuntu 开发的一些知识整理,方…

微服务基础设施选型

微服务基础设施架构 全貌 优先级 微服务框架模式 核心 服务注册、服务发现、服务路由 模式1-嵌入SDK 优点 架构简单,天然支持高性能、高可用维护简答,无需维护独立的Proxy节点 缺点 应用侵入,需要集成SDK,并联动升级多语言重…

强化学习 Lesson2 学习笔记

Lesson2-1 MDP、Q表格 一、强化学习MDP四元组<S,A,P,R> S:state 状态A:action 动作R:reward 奖励 r[st,at]P:probability 状态转移概率 p[st1,rt|st,at] 强化学习是一系列决策的过程,通过当前的环境状态和收到的奖励来决定下一次执行的动作 ​ Model-based: P函数和R函…

零售业迎来全新发展,这个技术少不了

零售业在创新方面比较频繁&#xff0c;创新是推动零售业发展的动力&#xff0c;这可以让零售业具有了外在的生命力和内在的动力。创新要求零售商从内部建立机制&#xff0c;以创新的心态经营管理。 现在&#xff0c;零售商陷入泥潭。其中一个原因是&#xff0c;他们失去了创新能…

Docker详解(一)

文章目录参考资料一、Docker基本概念二、Docker安装1. 卸载旧版本2. 使用 Docker 仓库进行安装设置仓库安装 Docker Engine-Community卸载 Docker安装Docker CE 环境三、Docker命令1. Docker容器运行流程2. 镜像命令docker images 查看所有本地主机上的镜像docker search 搜索镜…

后端自学两个小时前端,究竟能做出什么东西?

又来给大家更文了&#xff0c;今天是微服务网关实战的第六篇。 今天的内容比较偏前端一点&#xff0c;主要是给大家换换口味&#xff0c;毕竟学一个东西学久了就想学点新东西休息一点&#xff0c;俗称换换脑子。 其实早就想学学前端看了&#xff0c;不过碍于工作繁忙&#xf…

冒泡排序和数据结构和算法可视化网站(及其一点小优化)

目录 一、冒泡排序的原理 二、动图演示原理 三、代码实现&#xff1a; 四、优化后的冒泡排序 五、算法演示网站 一、冒泡排序的原理 冒泡排序就是两两交换&#xff0c;第一趟排序可以得到最大值&#xff0c;那么第二趟排序就不用再比较最大值了&#xff0c;同样是两两交换…

电商后台管理系统(基于SSM + Vue + Restful + jquery + axios)

1.项目架构 2.config配置 JdbcConfig public class JdbcConfig {Value("${jdbc.driver}")private String driver;Value("${jdbc.url}")private String url;Value("${jdbc.username}")private String username;Value("${jdbc.password}&qu…

Spring——五大类注解和方法注解详解

文章目录1.Spring的创建2.Spring对象的存储3.将 Bean 对象通过配置文件注册到 Spring 当中4.从 Spring 中将 bean 对象读取出来并使用4.1 先得到 Spring 上下文对象4.2 再通过上下文对象提供的方法获取需要使用的baen对象4.3 使用bean对象[可选步骤]4.4 获取 getBean 的更多方法…

易基因技术推介|m1A RNA甲基化测序(MeRIP-seq/m1A-seq)

N1-甲基腺苷&#xff08;N1-methyladenosine&#xff0c;m1A&#xff09;是一种普遍存在于真核生物tRNA、rRNA和mRNA且可逆的转录后RNA修饰。基于高通量测序技术最新研究揭示m1A RNA修饰在基因调控和生物过程中的关键作用&#xff1a;对RNA稳定性和翻译起始等过程有着重要调节作…

Mybatis+Spring+SpringMVC及SSM整合

文章目录一、Mybatis&#xff08;一&#xff09;Mybatis简介1、Mybatis历史2、Mybatis特性3、Mybatis下载4、和其它持久化层技术对比&#xff08;二&#xff09;搭建Mybatis1、MySQL不同版本的注意事项2、创建Maven工程1、引入依赖3、创建MyBatis的核心配置文件3.1、核心配置文…

WRF进阶:WRF中Noah-MP地面方案中雪反照率的计算

Noah-MP简介 Noah-MP是以Noah-LSM为基础发展的一种多层模型&#xff0c;相对于Noah-LSM&#xff0c;它对于下垫面的冠层、土壤、积雪有了更多的拓展。 Noah-MP允许3层雪&#xff0c;对于雪的模拟有了极大的提升&#xff0c;同时&#xff0c;Polar-WRF中对Noah LSM和Noah MP中海…