首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Emacs lisp中数据类型的摘要

在Emacs Lisp中,数据类型是一种用于存储和操作数据的方式。Emacs Lisp是一种Lisp方言,它是Emacs文本编辑器的主要编程语言。以下是Emacs Lisp中常用的数据类型的摘要:

1. 数字

数字是Emacs Lisp中的基本数据类型,包括整数和浮点数。Emacs Lisp支持任意大小的整数和浮点数,并且可以进行基本的算术运算,如加、减、乘、除等。

2. 字符串

字符串是一系列字符的集合,用于表示文本信息。Emacs Lisp中的字符串可以是双引号或单引号括起来的,例如:"Hello, World!" 或 'Hello, World!'。字符串可以进行基本的文本操作,如连接、截取、搜索等。

3. 符号

符号是Emacs Lisp中的一种特殊数据类型,用于表示标识符或命名。符号可以用作变量名、函数名、关键字等。在Emacs Lisp中,符号是一种不可变的数据类型,一旦创建就不能更改。

4. 列表

列表是Emacs Lisp中最常用的数据类型之一,它是一种有序的元素集合。列表可以包含任意类型的数据,例如数字、字符串、符号、甚至其他列表。列表可以进行基本的操作,如添加、删除、截取、搜索等。

5. 向量

向量是Emacs Lisp中的另一种有序的元素集合,与列表类似。向量与列表的主要区别在于它是不可变的,一旦创建就不能更改。向量通常用于表示不需要修改的数据集合。

6. 哈希表

哈希表是Emacs Lisp中的一种数据结构,用于存储键值对。哈希表可以通过键快速查找、添加和删除值。哈希表在Emacs Lisp中广泛应用于缓存、配置选项等。

7. 函数

函数是Emacs Lisp中的一种特殊数据类型,用于执行特定的操作。Emacs Lisp中的函数可以是内置的,也可以是用户自定义的。函数可以接受参数,并返回值。

8. 文件

Emacs Lisp中的文件是一种特殊的数据类型,用于表示文件系统中的文件。Emacs Lisp提供了基本的文件操作,如打开、读取、写入、删除等。

9. 缓冲区

缓冲区是Emacs Lisp中的一种特殊数据类型,用于表示Emacs文本编辑器中的缓冲区。缓冲区是一个包含文本信息的内存区域,可以用于编辑、查看文件。Emacs Lisp提供了基本的缓冲区操作,如创建、删除、保存等。

10. 窗口

窗口是Emacs Lisp中的一种特殊数据类型,用于表示Emacs文本编辑器中的窗口。窗口是一个显示缓冲区内容的区域,可以用于查看和编辑文件。Emacs Lisp提供了基本的窗口操作,如创建、删除、移动等。

以上是Emacs Lisp中常用的数据类型的摘要。Emacs Lisp提供了丰富的函数和操作,可以用于各种应用场景,如文本编辑、代码编辑、脚本编写等。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用 Emacs 收听 elfeed 中的播客

Elfeed[1] 是 Emacs 中一个非常好用的 RSS 客户端,之前笔者也写过相关文章[2]进行介绍,强烈建议读者尝试一下跨平台的 RSS 客户端。...对于播客,主要的分发形式就是基于 RSS,所以用 elfeed 来听是在自然不过的事情,只需要一个支持命令行启动的音乐播放器即可,常见的有:vlc[3]、mpv[4],而且它们都支持直接播放网络流,这样我们就省去了下载音频文件的步骤...GitHub 上的 elcast[5] 已经解决这个问题,但是过于定制,因此笔者 fork 过来修改了一版,修改后的代码在: ;;; elcast.el --- Play podcast within...elcast-player-params '("--socks" "127.0.0.1:1080" "--verbose" "2" "--no-color"))) 以后,在 *elfeed-entry* 中浏览某个播客时...参考资料 [1] Elfeed: https://github.com/skeeto/elfeed [2] 相关文章: https://liujiacai.net/blog/2021/03/05/emacs-love-mail-feed

24610
  • Emacs Tree-sitter 初体验

    Tree-sitter 简介 Emacs 29 的一大亮点就是原生支持了 tree-sitter[1](后文简称 ts),它的官网是这么定义的: Tree-sitter is a parser generator...在 Emacs 中,之前都是采用正则的方式去解析语言的语法结构,这种方式虽然大多数情况是没有问题的,但主要有以下几个问题: 正则比较消耗 CPU,导致对大文件进行高亮时容易导致 Emacs 卡主,参见:...Regexp Problems (GNU Emacs Lisp Reference Manual)[2] 对于有些语法结构,正则并不能很好的工作,参见:The true power of regular.../releases Emacs 默认从 treesit-extra-load-path 指定的路径去加载动态链接库,如果这个值是 nil ,它默认会从 user-emacs-directory 下的 tree-sitter...,需要开启 Emacs 对应的 mode 来使用,比如 c-mode 对应的 c-ts-mode ,Emacs 为不同的语言重新实现了一个以 ts-mode 结尾的新 mode,在 29 版本中,主要有如下

    1.4K10

    Emacs 折腾记

    我工作中倒并没有用得到 Lisp 的地方,但是最近眼前晃过的一些书,比如《计算机程序的构造和解释》、《码农》杂志第 13 期,都对这门古老的语言推崇备至,历数现代 Lisp 方言的先进性,再者我也一直有学习一门函数式编程语言的想法...在搜索网友们对此的经验之谈的时候,自然而然地,目光逐渐聚集到 Emacs 这个使用 Emacs Lisp 作为扩展语言的神的编辑器上。...Common Lisp 开发环境 学习 Common Lisp 是使用 Emacs 最主要的任务,配好了文本编辑,当然得先把 Common Lisp 开发环境配置好了。...本来什么也不用配置的情况下 M-x ielm 就能进入一个 Emacs Lisp 的 REPL,但是它与 Common Lisp 毕竟还是有区别,所以还是另配置一个。...在 ~/.emacs 文件中添加 这个 3 表示在距离屏幕上下边缘还有 3 行的时候再移动光标即自动滚屏,方便随时能看到当前编辑行的上下文,可以根据自己的使用习惯调整。

    1.3K20

    Emacs 折腾记

    我工作中倒并没有用得到 Lisp 的地方,但是最近眼前晃过的一些书,比如《计算机程序的构造和解释》、《码农》杂志第 13 期,都对这门古老的语言推崇备至,还有垠神也撰文《Lisp 已死,Lisp 万岁!...历数现代 Lisp 方言的先进性,再者我也一直有学习一门函数式编程语言的想法,看起来,Lisp 是不二之选。...在搜索网友们对此的经验之谈的时候,自然而然地,目光逐渐聚集到 Emacs 这个使用 Emacs Lisp 作为扩展语言的神的编辑器上。...Common Lisp 开发环境 学习 Common Lisp 是使用 Emacs 最主要的任务,配好了文本编辑,当然得先把 Common Lisp 开发环境配置好了。...本来什么也不用配置的情况下 M-x ielm 就能进入一个 Emacs Lisp 的 REPL,但是它与 Common Lisp 毕竟还是有区别,所以还是另配置一个。

    1.9K10

    一名Clojurian的Emacs配置

    这就不得不提起Clojure这门lisp方言,出于对lisp和函数式编程的痴迷,我选择了基于JVM的Clojure作为自己的偏好语言,而emacs天生为lisp而生。...由于emacs对lisp的亲和性,我几乎没花多少时间就掌握住了常用的操作技巧。 不过,emacs最负盛名的学习曲线确实让学习者绕过圈子,只要一段时间不用,就会忘记很多基本操作。..."http://melpa.org/packages/")中的点号(dot)表示法也比较奇怪,其实这是lisp中的Dotted pair表示法,用法和普通的列表类似,但因为是pair的缘故,你可以使用(...按照惯例,我在~/.emacs.d目录下建立一个lisp目录用于存放所有自定义的模块文件,随后在init.el中加入下面这句代码,意在把lisp目录加到emacs的加载路径列表里。...(add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory)) 看似,接下来就可以在每个独立的模块文件中编写各种功能的配置

    2.8K20

    通过函数调用进行字符串替换

    在 Emacs 中,有如下几种文本替换的函数: • replace-string 字面量替换 • replace-regexp[1] 正则表达式替换 静态替换是最常见的,比如将 foobar 替换成 FOObar...) 需要注意一点的时,在写 Lisp 代码时,转义字符需要有两个反斜线,比如 [0-9]\\{3,\\} ,这时因为: 反斜线不仅在 regexp 中是特殊字符,在 lisp 这门语言中,也是特殊字符。...比如,在 Lisp 中需要用 "\\" 表示一个反斜线字面量,如果直接写 [0-9]\{3,\} 那么在经过 lisp 的 parser 后, 得到的是 [0-9]{3} ,而这个正则并不是说匹配一个数字三次...这是在 Lisp 中写正则比较容易出错的一点,Manual 中的相关资料: • Syntax for Strings (GNU Emacs Lisp Reference Manual)[2] • Regexps...(GNU Emacs Manual)[3] • Regexp Backslash (GNU Emacs Manual)[4] 最后,比如有如下文本,需要把其中的 unix 时间戳替换为可读的时间,lisp

    7510

    Emacs Lisp

    ,LISP 编程语族已经演变出许多种方言,现代最著名的通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKI Emacs Lisp 是 Lisp 的一个分支 Emacs Lisp...,一种直译式的脚本语言,为LISP的方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展它们的功能,它的直译器是以C语言来实作的,它受到Maclisp的影响很大,但是跟Common...; 第一步首先启动Emacs: (在windows中可以双击emacs图标,在Linux中可以输入% emacs & ), ;; 然后在键盘上键入q 跳过系统欢迎的信息, ;; 先观察在Emacs屏幕的底部...;; 缓冲区也叫做工作区,在Emacs中打开一个文件,实际只是在Emacs中构造该文件的一个副本,放到缓冲区中, ;; 在Emacs中对该文件的编辑也是针对该副本的编辑,唯有保存改动时,Emacs才会把缓冲区中的内容在复制到原文件中去...;; 为了实验本教程中的lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下, ;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果

    2.3K40

    MySQL中的数据类型_js中的数据类型

    MySQL数据类型精讲 1.MySQL中的数据类型 常见数据类型的属性,如下: 2.整数类型 2.1 类型介绍 整数类型一共有 5 种,包括 TINYINT、SMALLINT、MEDIUMINT、INT...从MySQL 8.0.17开始,整数数据类型不推荐使用显示宽度属性。整型数据类型可以在定义表结构时指定所需要的显示宽度,如果不指定,则系统为每一种类型指定默认的宽度值。...、月、日、时、分、秒 可以看到,不同数据类型表示的时间内容不同、取值范围不同,而且占用的字节数也不一样,你要根据实际需要灵活选取。...在某些环境中,如果把这些数据列移动到第二张数据表中,可以让你把原数据表中的数据列转换为固定长度的数据行格式,那么它就是有意义的。这会 减少主表中的 碎片 ,使你得到固定长度数据行的性能优势。...在MySQL 5.7中,就已经支持JSON数据类型。

    6.7K20

    Emacs Lisp2

    Emacs: (在windows中可以双击emacs图标,在Linux中可以输入% emacs & ),;; 然后在键盘上键入q 跳过系统欢迎的信息,;; 先观察在Emacs屏幕的底部,会给出一堆关于当前的工作情况的信息...;; 缓冲区也叫做工作区,在Emacs中打开一个文件,实际只是在Emacs中构造该文件的一个副本,放到缓冲区中,;; 在Emacs中对该文件的编辑也是针对该副本的编辑,唯有保存改动时,Emacs才会把缓冲区中的内容在复制到原文件中去...;; 为了实验本教程中的lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下,;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果...2 2);; Elisp中表达式可以通过括号来嵌套(+ 2 (+ 1 1));; 在lisp-interaction-mode模式中,我们可以直接计算一个表达式,计算的方法是(+ 3 (+ 1 2));...----原文地址http://soft.dog/2018/07/23/emacs-lisp/

    98740

    Emacs Lisp

    ,LISP 编程语族已经演变出许多种方言,现代最著名的通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKI Emacs Lisp 是 Lisp 的一个分支 Emacs Lisp...,一种直译式的脚本语言,为LISP的方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展它们的功能,它的直译器是以C语言来实作的,它受到Maclisp的影响很大,但是跟Common...; 第一步首先启动Emacs: (在windows中可以双击emacs图标,在Linux中可以输入% emacs & ), ;; 然后在键盘上键入q 跳过系统欢迎的信息, ;; 先观察在Emacs屏幕的底部...;; 缓冲区也叫做工作区,在Emacs中打开一个文件,实际只是在Emacs中构造该文件的一个副本,放到缓冲区中, ;; 在Emacs中对该文件的编辑也是针对该副本的编辑,唯有保存改动时,Emacs才会把缓冲区中的内容在复制到原文件中去...;; 为了实验本教程中的lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下, ;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果

    2.2K30

    Emacs Lisp

    前言Lisp 是一门很古老的语言LISP 是具有悠久历史的计算机编程语言家族,有独特和完全括号的前缀符号表示法,起源于1958年,是现今第二悠久而仍广泛使用的高级编程语言,只有 FORTRAN 编程语言比它更早一年...,LISP 编程语族已经演变出许多种方言,现代最著名的通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKIEmacs Lisp 是 Lisp 的一个分支Emacs Lisp...,一种直译式的脚本语言,为LISP的方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展它们的功能,它的直译器是以C语言来实作的,它受到Maclisp的影响很大,但是跟Common...Lisp与Scheme有所不同最近我迷上了 Emacs所以顺藤摸瓜,竟然搭进去了一门语言万万没想到,为了了解一个编辑器,竟然搭进去了一门语言好在这门语言结构比较简单清晰以致于可以用 15 分钟入个门Tip...: 这一篇纯属于摘抄,不是原创,只是好东西忍不住拿出来分享,如果原作者有意见,可以随时联系我,下线此文章,我完全尊重原作者的意见原文,请参考 Emacs Lisp 15 分钟入门

    62140

    Clojure 开发那些事

    除了最基本的圆括号()外,方括号[]与花括号{}在 Clojure 用的也比其他 Lisp 方言中多。...使用比较简单,通过 Intellj 插件管理器安装后即可使用,第一次使用时需要设置下快捷键类型 Emacs + Cider 作为一门 Lisp 方言,怎么能没有一个好的 Emacs mode 呢?...Cider 全称 The Clojure Interactive Development Environment that Rocks for Emacs 而且 Emacs 本身就是个用 Lisp 方言写的...Emacs + Cider 的组合相比 Intellj + Cursive 最大的优势就是对宏的支持,Cider 提供了对宏展开的快捷键,但在 Cursive 中我没找到,不过宏也是比较高级的功能,初学者应用用不到...nrepl Clojure 的 REPL 可以连接到远程服务器上的进程中,直接对进程中的函数或变量进行修改,这是非常便利的,对于很多运行时的错误可以采用这种方式解决,Emacs 与 Intellj 里面都提供了连接远程

    1.6K20

    Emacs 之光的成长历程

    与大多数用户不同,嘉宾在接触 Emacs 不久即开始尝试攒写自己的配置,并陆陆续续发布了几个比较实用的包,比如 valign[1],嘉宾是如何做到的?...更令人好奇的是,嘉宾如何在短期内熟悉 Emacs 源码并为之贡献多个 patch,相信通过嘉宾的学习、贡献经历,可以给听众打开 Emacs 源码的神秘面纱,让更多用户参与到 Emacs 的贡献中,一个多小时的分享...,句号后两个空格 • 注释用的是 C 风格的 /* */ ,而不是 C++ 的 // • 函数名后面跟一个空格,再是括号 •读 Emacs 源码技巧 • lisp.h[12] 里面有 C 如何调用 ELisp...buffer: https://github.com/emacs-mirror/emacs/commit/7c83e605ab84e8b62254c55f347abc8aa9c6057b [12] lisp.h...: https://github.com/emacs-mirror/emacs/blob/master/src/lisp.h [13] devel: https://lists.gnu.org/archive

    41410

    Clojure与LispClojure与Lisp

    Clojure 高速、干净、具有优先能力和优雅的特征. 但是没有改变lisp中 "代码也是数据" 的哲学. Clojure 语言在直觉和观感上比历史上的lisp更易于阅读....自稳定运行的Common Lisp出现起,再有各机构按各自所需而开展后续Lisp,包括1990年来自欧洲用户的EuLisp、运行于Java虚拟机的Clojure、受到Maclisp影响而创的Emacs...2 函数也是一种数据类型 在Lisp语言中,函数与整数或字符串一样,也属于数据类型的一种。它有自己的字面表示形式(literal representation),能够储存在变量中,也能当作参数传递。...一种数据类型应该有的功能,它都有。 3 递归 Lisp是第一种支持递归函数的高级语言。 4 变量的动态类型 在Lisp语言中,所有变量实际上都是指针,所指向的值有类型之分,而变量本身没有。...在读取期运行代码,使得用户可以重新调整(reprogram)Lisp的语法; 在编译期运行代码,则是Lisp宏的工作基础; 在运行期编译代码,使得Lisp可以在Emacs这样的程序中,充当扩展语言(extension

    1.9K30

    Elasticsearch 在网页摘要计算中的优化实践

    用户在输入框输入的关键词命中相关网页(ES 中的文档)后,需要根据关键词以及打分模型从网页内容筛选出 top N 的语句组成短文返回给前端手机用户,关键词红色高亮。...笔者小组负责网页摘要高亮计算,本文将从模型优化及工程演变角度,还原 ES 在网页摘要技术中的应用实践。文章作者:魏征,CSIG 智慧零售数据中心大数据工程师。...网页查询属于上图中的在线模块,上下流程分为:①网页基础召回,即粗排,用户输入关键词从 ES 索引中命中大量的基于 scorer 基础排序后的网页 doc IDs;②网页精排,算法团队根据网页的实时属性库再次排序取出...TOP 10 的网页/文档 ID(即上图中的 Ten Blue Links);③网页摘要高亮计算,根据 TOP 10 的网页 ID,在 ES 中查询出网页内容源数据和分词数据,使用Lucene/ES...用户在输入框输入的关键词命中相关网页(ES 中的文档)后,需要根据关键词以及打分模型从网页内容筛选出 top N 的语句组成短文返回给前端手机用户,关键词红色高亮。

    69420

    与宇宙学博士后聊 Emacs

    概要 本期嘉宾是一个研究宇宙学的博士后:管轶伦。嘉宾根据自身的学术工作需求,将 Emacs 打造成辅助他高效工作的利器,对于正在求学的听众,会比较有参考价值。...image.png 时间线 •00:00:49 嘉宾自我介绍 •00:01:24 Emacs 初印象 •00:06:20 为什么喜欢 Lisp •00:12:04 Emacs 除了写代码外的主要用途...•00:19:50 Emacs 在大学老师中的使用情况 •00:26:06 嘉宾学习物理学的历程 •00:28:18 宇宙学对现实生活的意义 •00:32:09 宇宙学的研究方式 •00:38:32 宇宙学对嘉宾的影响...[1] •使用 Emacs 登录超级计算中心来进行代码编写与调试 •吸引嘉宾喜欢 Lisp 的文章:How To Become A Hacker[2] •用 Lisp 方式写 Python 的库:HPy...in org-mode[6] •Centaur Emacs - A Fancy and Fast Emacs Configuration[7] •“电脑这东西,不就是用来开 Emacs 的嘛” •观测宇宙背景辐射的天文台

    41710
    领券