Master Emacs in 21 Days,笔记01

Master-Emacs-From-Scratch-with-Solid-Procedures:帮你精通Emacs 掌握Emacs的可靠程序 0.前奏 偏见说:“ Emacs很难学习”。 这种偏见破坏了Emacs的知名度。 这个小项目试图打破偏见,并表明如何才能花费最少的精力和痛苦来学习Emacs。 该系列博客最初是用中文编写的,因此翻译可能需要花费很多时间。 Emacs很简单,它的宇宙从Mx爆炸而来。 1,如此简单的Emacs:Meta Key 简而言之,Emacs的优雅和简单仅仅是Meta键。 元是键盘上的选项或变更键。 在词源方面,Meta的意思是“更高,更高”。 因此,当弹簧从较高的源头流出时,我们可以将Meta理解为Source,并将其与源代码相关联。 在源代码中,功能是一等公民。 Emacs的简单策略是将Meta键(在词源上具有源含义)绑定到源代码或功能。 然后,我们可以触发键Mx(执行用x)来调用该函数。 从Mx表格开始,您可以做任何您想做的事情,例如插入当前日期: 到目前为 立即下载


作者:子龙山人,学习的课程地址。


第一天:准备开始

说在最前面

第一次知道Emacs ,大概是因为她被称之为神的编辑器,会有一丝丝的想要渴望学会她的冲动,至于用她来干嘛就没想过,坦白来说,对于当时的我来说,用她当编辑器都觉得各种别扭,不自然。结果可想而知,背着各种快捷键,组合键和命令痛不欲生。然后还没有真正入门,就放弃了。抱着敬而远之的心态,再没有多去了解她。如此,就是我第一次学习Emacs 从入门到放弃。。

现在嘛,纯粹是因为工作之余,太清闲。。然后又恰逢遇到ManateeLazyCat,下图就是他的个人博客,自称是一位技术手艺人,同时他的名字还跟Deepin 深度操作系统密不可分,虽然,现在没什么关系了。

他让我知道Deepin (Linux) 比Ubuntu 对新手还有友好。请看知乎回答选择ubuntu还是支持deepin?

同时,他又让我燃起了再一次学习Emacs 的Hacking 斗志,起码,这次要能搞定基本的配置,先要会抄高手的配置,再试着用Elisp 瞎改,改崩了再继续学习Elisp 手册。
Emacs 传道士
Emacs 的安装和修改键位,参考我另一篇博文,成为Emacs高手02-实践记录01

基础操作

参考Emacs 自带快速指南

学习基础Elisp

学习Elisp 路线就比较长,Elisp , Scheme , Common Lisp等都属于Lisp 语言的方言。我在用Deepin (Linux)练习SICP的一些准备工作中归纳了一下,学习路线,由浅入深。。

暂时先学一点够用就行,慢慢深入。学习基础Elisp

开始 Hacking !

Emacs 的配置文件默认保存在 ~/.emacs.d/init.el 文件中。(如果其不存在可自行创建, 配置文件也可保存在 ~/.emacs 文件中,他们之间的区别我们会在后面做讨论)


我迫不及待指出它们的区别。。坑啊,如果不删除到~/.emacs文件,你在抄完高手的配置后,也就是保存~/.emacs.d/init.el文件中,只能使用 A-x eval-buffer 去执行当前缓冲区的所有 Lisp 命令。在你享受完高手的配置方案,字体,背景,代码高亮,显示行号,界面清爽,深色主题等等特殊服务后,关闭软件。。在下一次打开时,你又会看到自带着主题丑陋的Emacs,毫不夸张形容就是如花和秋香的视觉既视感。然后,要想对着秋香撸代码,你又要重新 。。使用 A-x eval-buffer 去执行当前缓冲区的所有 Lisp 命令。。。周而复始。直到有一天。你一个手贱手工删除 ~/.emacs 文件。恭喜你,你随时可以对着秋香撸代码。


注意: 如果希望把配置放在 ~/.emacs.d/init.el 文件中,那么需要手工删除 ~/.emacs 文件。

在开始配置之前让我们先来区别 Emacs 中 Major Mode 与 Minor Mode 的区别。

Major Mode 通常是定义对于一种文件类型编辑的核心规则,

  • 例如语法高亮、缩进、快捷键绑定等。

而 Minor Mode 是除去 Major Mode 所提供的核心功能以外的额外编辑功能(辅助功能)。

  • 例如在下面的配置文件中 tool-bar-mode 与 linum-mode 等均为 Minor Mode*。

简单来说就是,一种文件类型同时只能存在一种 Major Mode 但是它可以同时激活一种或多 种 Minor Mode。如果你希望知道当前的模式信息,可以使用 C-h m 来显示当前所有开启 的全部 Minor Mode 的信息。

简单的编辑器自定义

高手的配置方案如下

;; 关闭工具栏,tool-bar-mode 即为一个 Minor Mode
(tool-bar-mode -1)

;; 关闭文件滑动控件
(scroll-bar-mode -1)

;; 显示行号
(global-linum-mode 1)

;; 更改光标的样式(不能生效,解决方案见第二集)
(setq cursor-type 'bar)

;; 关闭启动帮助画面
(setq inhibit-splash-screen 1)

;; 关闭缩进 (第二天中被去除)
;; (electric-indent-mode -1)

;; 更改显示字体大小 16pt
;; http://stackoverflow.com/questions/294664/how-to-set-the-font-size-in-emacs
(set-face-attribute 'default nil :height 160)

;; 快速打开配置文件
(defun open-init-file()
  (interactive)
  (find-file "~/.emacs.d/init.el"))

;; 这一行代码,将函数 open-init-file 绑定到 <f2> 键上
(global-set-key (kbd "<f2>") 'open-init-file)

很遗憾,,暂时还没有瞎改配置的水平。先抄下来,用着爽几天!!

再次感谢,子龙山人

在每次编辑配置文件后,刚刚做的修改并不会立刻生效。这时你需要重启编辑器或者重新加 载配置文件。

  • 重新加载配置文件你需要在当前配置文件中使用 A-x load-file 双击两次 回车确认默认文件名,
  • 或者使用 A-x eval-buffer 去执行当前缓冲区的所有 Lisp 命令。 你也可以使用 C-x C-e 来执行某一行的 Lisp 代码。这些可使刚刚修改的配置文件生效。 当然你也可以将这些函数绑定为快捷键。(这两个命令,我曾输到吐血。。)

插件管理

  • 使用默认的插件管理系统(可在菜单栏 Options > Manage Emacs Packages 中找到)安 装 Company 插件,他是一个用于代码补全的插件。它的名字代表补全一切的意思( Comp lete Any thing)。因为默认的插件管理系统提供的插件十分有限,所以我们会在之后的 几天中继续将其强化。

  • 在进行美化之前我们需要配置插件的源(默认的源非常有限),最常使用的是 MELPA (Milkypostman’s Emacs Lisp Package Archive)。它有非常多的插件(3000 多个插件)。 一个插件下载的次数多并不能说明它非常有用,也许这个插件是其他的插件的依赖。在这里 你可以找到其安装使用方法。添加源后,我们就可以使用 A-x package-list-packages 来查看所有 MELPA 上的插件了。在表单中可以使用 I 来标记安装 D 来标记删除, U 来更新,并用 X 来确认。

你可以直接将下面的代码复制到你的配置文件顶端,从而直接使用 Melpa 作为插件的源。


下面这个,还看不太明白。。我敢看定中间是漏看了那句话


你可以将你需要的插件名字写在 my/packages 中,Emacs 在启动时会自动下载未被安装 的插件。

如有错误,欢迎评论指出。感谢!

linux-用21天学习Emacs以及Spacemacs的使用 用 21 天学习 Emacs 以及 Spacemacs 的使用 立即下载

相关推荐

工业互联网工控安全与工业质检AI大模型建设方案.pptx

工业互联网工控安全与工业质检AI大模型建设方案.pptx

Learn Emacs in 21 Days: day 1 学习笔记

1. Install emacs 2. turoial 3. build-in function 4. learn some elisp 5. start to hack emacs 6. pakage system 7.other 8.configuration

killerpro的博客 1337

通信行业CentOS 7内核网络栈优化:高并发连接下UDP/TCP性能调优与系统资源管理

内容概要:本文聚焦于CentOS 7系统在通信行业高并发场景下的性能调优实践,重点围绕内核网络栈优化展开,涵盖UDP/TCP缓冲区调整、文件句柄与连接跟踪表扩容、TIME_WAIT状态复用、软中断分布优化及tuned工具的自动化调优。通过具体配置参数和实际案例(如VoIP软交换系统)深入解析各项调优措施的设计原理与实施效果,有效解决高CPS下丢包、连接失败等问题,并展望了向云化、eBPF等动态智能调优方向的发展趋势。; 适合人群:从事通信系统运维、网络开发或Linux系统性能优化的技术人员,具备一定操作系统和网络基础知识,工作经验1年以上的中初级工程师。; 使用场景及目标:①应用于软交换、媒体网关、信令网关等高并发通信设备的系统调优;②解决UDP丢包、conntrack表满、TCP连接队列溢出等典型性能瓶颈;③提升系统在小包高频、低时延要求场景下的稳定性和吞吐能力。; 阅读建议:建议结合实际生产环境或测试平台同步验证文中配置,重点关注参数背后的物理意义(如BDP、softirq、conntrack机制),并配合ss、conntrack、dmesg等命令进行调优前后对比分析,确保安全可控地实施变更。

emacs快键和emacs配置

(global-set-key "/C-x/C-m" 'execute-extended-command)(global-set-key "/C-c/C-m" 'execute-extended-command)(global-set-key "/C-w" 'backward-kill-word)(global-set-key "/C-x/C-k" 'kill-region)(global-set...

Do What U Like~ 675

2024 《计算机网络》实验教学指导书.doc

2024 《计算机网络》实验教学指导书.doc

不平衡电网下自抗扰顺序模型预测PWM整流器控制仿真模型(Simulink仿真实现)

内容概要:本文围绕面向城市空中交通的多无人机路径规划问题展开研究,提出了一套融合全局规划、动态避障与局部协同调整的综合路径规划方法。研究内容涵盖基于改进RRT算法与图论的全局路径规划、基于动态风险场和动态窗口法(DWA)的模型预测控制实现动态避障,以及基于分布式协同控制的多无人机局部路径协同策略。通过Matlab平台构建仿真环境,在多种典型城市交通场景下对所提方法进行了系统性验证,结果表明该方法在路径安全性、编队稳定性与任务效率方面表现优异。文章还深入探讨了算法的创新点与未来研究方向,为复杂城市环境下多无人机系统的自主协同提供了理论支撑与技术路径。; 适合人群:具备自动化、控制理论、计算机科学或相关领域基础知识,从事无人机系统、智能交通、路径规划、多智能体协同控制等方向研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①为城市空中交通系统中的多无人机安全、高效飞行提供可靠的路径规划解决方案;②支持在复杂、动态的城市场景中开展无人机自主导航、编队飞行与协同控制的技术研究与仿真验证。; 阅读建议:建议结合提供的Matlab代码进行实践操作,重点关注算法的具体实现细节、参数配置对性能的影响以及不同仿真场景下的实验设计,以深入理解各模块的集成逻辑与实际应用效果。

emacs官网、安装、基本命令:移动、复制、黏贴、删除、查找

安装 使用

zhayushui的专栏 3812

建议收藏:华为海思IC设计笔试题,含解析(附下载)

接触过的部门有麒麟芯片、CPU/GPU,总体面试感觉非常好,规范且认真,第一轮手撕代码状态机+复盘机考题+瞄准几个知识点深挖,时间1hour+;一二轮面试是连着的,所以很累。但是岗位就那么多,在面试的时候,很多同学因为准备不充分,与岗位失之交臂,无缘进入该公司。时序电路有记忆功能,不会产生锁存器,锁存器一般在组合逻辑中case写不全,else写不全,或者敏感列表写不全。

nuoweishizi的博客 3285

Docker 镜像完全指南:从最小镜像到企业级私有仓库 Harbor

创建dockerfileEXPOSE 80构建镜像查看现象测试#基于刚才dockerfile创建的镜像httpd:centos创建容器myweb#创建出来的容器#访问测试项目背景:java工程师需要我们给他发个带JAVA的centos要求CentOS8镜像具备vim+ifconfig+jdk8JDK的下载地址:https://www.oracle.com/java/technologies/downloads/#java8编写Dockerfile文件#配置yum源#安装vim编辑器。

2403_88632628的博客 263

小新学习K8s第一天之K8s基础概念

kubernetes是一个可移植,可扩展的开源平台,用于管理容器化工作负载和服务,有助于声明式配置和自动化。它拥有庞大且快速发展的生态系统。kubernetes服务,支持和工具随处可见。作用:用于自动部署,扩展和管理“容器化应用程序”的开源系统。可以理解成k8s是负责自动化运维管理多个容器化程序(比如docker)的集群,是一个生态及其丰富的容器编排框架工具。

pangdongqiqi的博客 1226

TSMC 40nm LP工艺下,新手画版图最容易踩的5个坑(附Cadence避坑指南)

本文详细解析了TSMC 40nm LP工艺下版图设计的5个常见陷阱,包括MOS管尺寸转换、DNW隔离、Guard Ring设计、金属布线和DRC检查。通过Cadence实战技巧和设计规则优化,帮助新手工程师规避典型错误,提升版图设计效率和质量。

weixin_26800111的博客 455

emacs21天学会

视屏 https://www.bilibili.com/video/av12050822/ 文本 http://book.emacs-china.org/ eelpa melpa.org/#/ emacs从高手到精通 http://blog.c...

chuchenqiu4433的博客 1035

k8s 100个高频面试题

以下是 100 个 Kubernetes(k8s)高频面试题及其答案,涵盖了 Kubernetes 的核心概念、架构、组件、工作原理以及实际应用。答案:Master 节点组件:API Server:提供 RESTful API 接口,用于与集群交互。etcd:分布式键值存储,用于存储集群的配置数据和状态信息。Controller Manager:运行各种控制器进程,负责维护集群的状态。Scheduler:负责将 Pod 调度到合适的节点上运行。Worker 节点组件:Kubelet:运行在每个节点上的代理,

wankll的专栏 2773

Learn Emacs in 21 Days: day 2 学习笔记

配置emacs 优化emacs 改进package 系统 js 编程支持 其它

killerpro的博客 985

看不懂分子动力学模拟的结果?一文读懂RMSD曲线

随后,将每一帧结构与初始模板进行叠合,计算对应原子的平均偏移量,即RMSD。总之,掌握 RMSD 的解读方法,就等于抓住了评估分子动力学模拟成败与质量的“总开关”。①在模拟初始阶段,RMSD会从0迅速上升,这是蛋白质从静态晶体或模型结构释放到溶液环境中并逐渐适应的正常过程。②经过一段时间后,曲线不再系统性上升或下降,而是围绕一个平均值,小幅度地上下波动,形成一个稳定的“平台”。这种情况下,RMSD 在初始快速上升后,并未进入平台,而是持续甚至加速上升,始终未见收敛。🔍 如何解读不同趋势的RMSD曲线。

weixin_46587777的博客 4884

WSL2迁移后用户名不见了?一招教你快速恢复Ubuntu22.04默认用户

本文针对WSL2迁移后Ubuntu 22.04默认用户名丢失的常见问题,提供了详细的诊断与修复方案。通过分析迁移底层逻辑,指导用户使用`ubuntu2204.exe config --default-user`命令或配置`/etc/wsl.conf`文件快速恢复用户身份,并涵盖权限修复、冲突解决及自动化迁移脚本等进阶内容,确保子系统迁移后环境完整可用。

web39explorer的博客 555

GNU Emacs | (一)概述

文章目录介绍学习理由安装启动学习资源书本网络 介绍   有一种说法是“vim是编辑器之神,而Emacs是神的编辑器。”   原因就在于vim是一个开发效率很高的编辑器,但是Emacs不仅仅是是一个编辑器。事实上,你可以用Emacs做任何事情。可以一大早坐在电脑面前用Emacs完成一天的工作。   Emacs有很多的版本,版本之间也有差异,但是GNU Emacs可以算是一个很成功和流行的版本。所以就...

小小酥梨的博客 1178

QGis二次开发 —— 5、基于qgis开发多种在线地图预览,并加入经纬度坐标显示等(附:源码)

QGis二次开发 —— 5、基于qgis开发多种在线地图预览,并加入经纬度坐标显示等(附:源码

368

“21天教你学会C++”,不要太在意~

下面是一个《Teach Yourself  C++ in 21 Days》的流程图,请各位程序员同仁认真领会。如果有必要,你可以查看这个图书以作参照:http://www.china-pub.com/27043看完上面这个图片,我在想,我学习C++有6年了,好像C++也没有学得特别懂,看到STL和泛型,还是很头大。不过,我应该去考虑研究量子物理和生物化学,这样,我才能重返08年杀掉还在大学的我,然...

stone15165的博客 2521

最新Python爬虫实战(入门爬虫篇)——案例13:某乎热榜数据采集(详细爬虫思路截图+抓包动图演示+完整爬虫代码+详细注释)

本次案例通过Python爬虫技术,成功实现了基于Cookies认证的某乎热榜数据爬取与Excel保存。代码采用模块化设计,包含Cookies解析、HTML请求、结构化解析、Excel持久化等完整流程;通过配置浏览器请求头+Cookies认证,有效突破某乎基础反爬策略,保证请求稳定性。整个爬虫逻辑遵循“Cookies认证 → 页面请求 → HTML解析 → 数据清洗 → 保存到Excel”的标准流程,与需要会话验证的网站爬取范式高度一致。Cookies解析与认证。

努力让自己发光,对的人才能迎着光而来 33万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

emacs 使用笔记

1、Emacs24智能自动补全括号 代码: ;;使用易码肆24内嵌的功能: (require 'electric) ;;编辑时智能缩进,类似于C-j的效果——这个C-j中,zencoding和electric-pair-mode冲突 (electric-indent-mode t) ;;系统本身内置的智能自动补全括号 (electric-pair-mode t) ;;特定条件下插入

BlackStone的博客 1182

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Learn Emacs in 21 Days: day 5 学习笔记

子龙山人Learn Emacs in 21 Days: day 5 学习笔记 继续上一回 occur-mode expand-region and iedit mode bonus

killerpro的博客 633

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Learn Emacs in 21 Days: day 3 学习笔记

子龙山人Learn Emacs in 21 Days: day 3 学习笔记 init-packages.el init-ui.el init-better-defaults.el init-keybindings.el custom.el init-org.el init.el

killerpro的博客 1031

Emacs学习笔记(7):简单的配置

继续Emacs学习计划。这是“初学者”阶段的最后一篇。完成本节的内容,就可以向“中级计划”进军了 : ) 经过一段时间的使用,已经大体适应了Emacs的快捷键,不过还是要参考命令备忘表。 Emacser通常要对Emacs进行定制,使用起来才会爽。据说Vimer嘲笑Emacser的一个理由就是: Emacser如果丢了配置文件就什么都干不了。 好吧好吧,这些争论和我没什么关系,我只是...

weixin_33781606的博客 273

emacs24 颜色主题设置

Emacs24 颜色主题设置在Linux上写程序,永远绕不过的2个东西就是vi和emacs。emacs是早晚要接触的东西。本文就从配置颜色主题(color-theme)开始。用命令:$ sudo apt-get install emacs24,可以很快把emacs安装上。但是默认是白色的主题,我们一般都采用黑色背景的主题。黑色是极客们最爱的颜色。试想在夜半三更时分,一台散发着阴森森的黑色的15.6

恒 6633

emacs插件以及配置 转

<!-- p {margin-bottom:0.21cm} td p {margin-bottom:0cm} pre.western {font-family:"DejaVu Sans Mono",monospace} pre.cjk {font-family:"DejaVu Sans",monospace} pre.ctl {font-family:"DejaVu

专注的力量 1万+
上一篇: 学习基础Elisp
下一篇: The Little Schemer Fourth Edition,笔记01
FunLab
博客等级 码龄7年 4粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值