emacs

aluluka2 天前
emacs·lisp·elisp
《elisp 每日一练》—— syntax table 与 font lock在前面一节的练习,我们做了一个简单的c 语言语法着色的效果。我们再回看一下代码发现,在设置关联的时候我们实际上没有设置 syntax-table,纯粹靠着正则表达式匹配特定字符和文本结构就完成了着色。这么做也有一个问题,就是它会遇到关键字、就着色,不管它出现的位置。读者可以使用下面的代码来测试一下
Masimaro3 天前
emacs
《elisp 每日一练》—— 基于treesitter 的语法高亮在前面的一系列文章中,我们拆解了Emacs基于 syntax-table + 正则表达式 + font lock 的传统语法高亮的着色方案。虽然这套经典方案应对常规语言游刃有余,但一旦面对现代编程语言复杂的嵌套语法、泛型、模板字符串、异步闭包,单纯依靠上下文正则表达式就会力不从心。好在我们现在有基于 treesitter 语法解析树的新方案,而且Emacs从29开始也有了对treesitter 的支持。所以本节我们来讨论一下基于 treesitter 的现代语法高亮方式
智购科技自动售货机工厂15 天前
python·面试·架构·eclipse·emacs
数字人民币硬钱包支付失败,排查发现是NFC读卡器功率不足~YH排查后发现,问题在NFC读卡器功率不足上。硬钱包支付成功率约70%,失败表现为“读卡超时”或“卡片未识别”。普通手机NFC支付正常。
Masimaro17 天前
emacs
《elisp 每日一练》—— define-derived-mode 管理 syntax-table在前面的文章中,我们了解了,实际在通过 define-derived-mode 定义自己的Major Mode 的时候,在处理 syntax-table 时主要通过继承的方式继承父类中内容,然后通过 modify-syntax-entry 修改不符合当前语境下的项目。或者使用 syntax-propertize-function 通过正则表达式处理一些复杂的情况。今天我们深入探讨 define-derived-mode 宏是如何管理 syntax-table 以及如何通过继承机制获得父类的 syntax-
Masimaro24 天前
emacs
《elisp 每日一练》—— Major Mode 管理 abbrev-table在前一篇博文中,我们讨论了Emacs中 abbrev-table 的基础用法,现在我们来看看 define-derived-mode 是如何管理 abbrev-table 资源的
AI情绪识别开源1 个月前
emacs
检信AI学业生涯智选系统技术方案概述检信AI选课系统是湖南检信智能科技有限公司面向中小学研发的智能选科产品,以“AI情绪检测+心理测评+大数据分析”为核心,通过摄像头非接触式检测,自动生成个性化心理素质报告与选科建议报告,含AI检测、四类报告、管理平台、会员服务四大板块。
Masimaro1 个月前
emacs
《elisp 每日一练》—— Minor Mode 回顾与综合练习到此,我们关于 Minor Mode 的介绍差不多就完结了,按照惯例,我们先回顾一下之前的内容,然后展开今天的练习
aluluka1 个月前
emacs·lisp·elisp
《elisp 每日一练》——状态栏显示管理与modeline 动态更新前面几篇我们陆陆续续的分析了 define-mode-line 中管理开关变量、快捷键相关的内容。我们可以通过 init-value、global来设置开关变量的初始值和是否定义为全局启动。通过 keymap 可以定义快捷键的keymap。现在我们来讨论 lighter 关键字的相关内容
aluluka1 个月前
emacs·lisp·elisp
《elisp 每日一练》——minor mode 快捷键管理在之前,我们定义的 windows-notepad-mode 通过使用 :keymap 关键字绑定了快捷键,今天我们来讨论它具体做了什么
Masimaro1 个月前
emacs
《elisp 每日一练》——状态栏显示管理与modeline 动态更新前面几篇我们陆陆续续的分析了 define-mode-line 中管理开关变量、快捷键相关的内容。我们可以通过 init-value、global来设置开关变量的初始值和是否定义为全局启动。通过 keymap 可以定义快捷键的keymap。现在我们来讨论 lighter 关键字的相关内容
Masimaro1 个月前
emacs
《elisp 每日一练》——minor mode 开关变量的管理上一节我们将定义 minor mode 的宏 define-minor-mode 展开并分析了它的作用。它主要是定义用于切换mode启用开关的变量和函数,以及在切换时进行模式的管理和hook的切换。默认ninor mode 创建时处于管理状态,而且minor mode启动时只对当前buffer生效。本节我们来讨论如何通过控制开关变量来改变这两点。
Masimaro1 个月前
emacs
《elisp 每日一练》—— Minor Mode 变量生成机制与状态控制前面我们以一个简单的 dired-mode 实战案例结束了关于文件和目录专题的学习。现在开始进入Emacs中的Minor Mode 和 Major Mode的学习。
Masimaro1 个月前
emacs
《elisp 每日一练》——文件与目录的回顾与综合练习到此为止,我们关于文件和目录的内容就介绍完了,Emacs中的文件与目录操作和其他编程语言相比唯一可能需要注意的是emacs 中的普通的文件读写操作与buffer和一些hook相关,读写也是基于buffer在进行的。
Masimaro1 个月前
emacs
《elisp 每日一练》——minibuffer输入读取和set-transient-map 临时热键状态机我们在前面介绍了 completing-read 给用户提供选项,让用户输入,但是如何处理这种需要用户主动输入的情况呢?本节我们将介绍一些主动读取用户输入的接口,然后补充一个我们在前面练习中涉及到的函数 set-transient-map
Masimaro1 个月前
emacs
《elisp 每日一练》——Window 树与布局状态恢复前面的文章中,我们介绍了可以通过 split-window 来创建窗口,也介绍了通过 walk-windows 遍历窗口并且通过 overlay 机制实现了一个简单、直观的快速跳转窗口的功能。今天我们来深入了解背后的原理
典典分享指南2 个月前
python·intellij-idea·pyqt·emacs·visual studio
Windows 自动化踩坑实录Windows 自动化开发中,脚本在开发环境跑得好好的,换一台机器或换一个用户就莫名失败,这类问题往往不是代码逻辑错误,而是环境、权限、路径或编码等细节埋下的坑。本文记录我在 Windows 自动化实践中遇到的典型问题与解决思路,供读者参考。
辰辉创聚2 个月前
人工智能·eclipse·emacs·白细胞介素·重组蛋白·重组细胞因子
重组细胞因子全解析:定义、分类与应用指南在生命科学研究的广阔领域中,重组细胞因子作为一类至关重要的科研试剂,为基础研究和药物研发提供了强大的工具。它们不仅在免疫学、细胞生物学、发育生物学等学科中扮演着核心角色,更是现代生物技术产业化应用中的关键元件。
Masimaro2 个月前
emacs
《elisp 每日一练》—— 前缀按键上一节我们提到Emacs中keymap上某个键可以绑定一个具体的函数,也可以绑定另一个keymap,如果绑定另一个keymap,它就变成了一个前缀键,本篇我们来讨论前缀和自建keymap
带娃的IT创业者2 个月前
编辑器·文本编辑器·开源软件·emacs·lisp·软件架构
Emacs 31:一场静默而深刻的范式演进👋 Hi,我热衷于 (AI 大模型应用落地、Python 实战进阶与 AI 开发工具链)。代表专栏:《AI大模型应知应会短平快系列100篇》《解密OpenClaw》《解码意识NCTransformer》《WeClaw Agent实战》> 💡 创业路上,用技术换时间;欢迎 关注我,一起把 AI 变成生产力 🚀 >
Masimaro2 个月前
emacs
《elisp 每日一练》——syntax-table前面我们都是将buffer中的文本作为一个普通的字符串进行处理,讨论的是普通字符串的固有操作方式。但是我们还有另一类特殊文本,编程语言和配置文件的文本。那么在这个领域Emacs又该如何处理它们呢?