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

Emacs可以像Elisp函数一样在回声区域显示Erlang函数吗?

Emacs是一款功能强大的文本编辑器,它支持通过Elisp编程语言进行扩展和定制。Elisp是Emacs的内置脚本语言,可以用于编写各种功能和扩展。

回答问题,Emacs可以通过使用Elisp函数来在回声区域显示Erlang函数。回声区域是Emacs中用于显示临时消息和输出结果的区域。要实现这个功能,可以使用Emacs的内置函数eval-expression,它可以执行Elisp代码并将结果显示在回声区域。

以下是一个示例代码,演示如何在回声区域显示Erlang函数:

代码语言:txt
复制
(defun display-erlang-function (erlang-function)
  "Display Erlang function in the echo area."
  (let ((result (shell-command-to-string (concat "erl -noshell -eval '" erlang-function "' -s erlang halt"))))
    (message result)))

(display-erlang-function "io:format(\"Hello, World!\").").

在上面的代码中,display-erlang-function函数接受一个Erlang函数作为参数,并使用shell-command-to-string函数在命令行中执行Erlang函数。执行结果将作为消息传递给message函数,最终显示在回声区域中。

这是一个简单的示例,你可以根据实际需求进行扩展和定制。如果你想了解更多关于Emacs和Elisp的信息,可以参考Emacs官方文档和Elisp编程指南。

推荐的腾讯云相关产品和产品介绍链接地址:

请注意,以上推荐的产品和链接仅供参考,具体选择应根据实际需求和情况进行。

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

相关·内容

Emacs Lisp

; 第一步首先启动Emacs: (windows中可以双击emacs图标,Linux中可以输入% emacs & ), ;; 然后键盘上键入q 跳过系统欢迎的信息, ;; 先观察Emacs屏幕的底部...(+ 2 2) ;; Elisp中表达式可以通过括号来嵌套 (+ 2 (+ 1 1)) ;; lisp-interaction-mode模式中,我们可以直接计算一个表达式,计算的方法是 (+ 3...缓冲区中插入计算结果,我们还可以表达式的末尾使用C-x C-e组合键 ;; C-x C-e的意思是: 先按下Ctrl-x 再按下Ctrl-e ;; 这个命令会让Emacs辅助缓冲区,也就是Emacs...窗口的最底部那行显示计算结果 ;; ELisp中的赋值函数是是setq,下面的表达式给变量my-name赋值"Bastien" (setq my-name "Bastien") ;; ^ 把光标停在这里...,知道你退出Emacs或者改变hello的定义 ;; 从下面开始,我们将不再提醒读者使用C-x C-e来定义函数和执行ELisp指令 ;; Elisp中直接输入函数的名称就是调用该函数

2.2K30

Emacs Lisp2

Emacs: (windows中可以双击emacs图标,Linux中可以输入% emacs & ),;; 然后键盘上键入q 跳过系统欢迎的信息,;; 先观察Emacs屏幕的底部,会给出一堆关于当前的工作情况的信息...;; 为了实验本教程中的lisp命令,我们要让Emacs工作lisp-interaction-mode工作模式下,;; 这个模式可以让我们缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果...2 2);; Elisp中表达式可以通过括号来嵌套(+ 2 (+ 1 1));; lisp-interaction-mode模式中,我们可以直接计算一个表达式,计算的方法是(+ 3 (+ 1 2));...,我们还可以表达式的末尾使用C-x C-e组合键;; C-x C-e的意思是: 先按下Ctrl-x 再按下Ctrl-e ;; 这个命令会让Emacs辅助缓冲区,也就是Emacs窗口的最底部那行显示计算结果...或者改变hello的定义;; 从下面开始,我们将不再提醒读者使用C-x C-e来定义函数和执行ELisp指令;; Elisp中直接输入函数的名称就是调用该函数

95240

使用 RustC 开发 Emacs 插件

Emacs 25 版本后,支持了动态模块(dynamic modules),这为 Emacs 插件的开发打开了新的一扇大门,任何能够编译生成符合 Emacs ABI 要求的语言都可以使用。...动态链接库后缀名不同平台是不一样的,Linux 下是 so, Windows 下是 dll。...为了简化数据类型 C 与 ELisp 之间的转化,Emacs 提供了一系列函数,比如: Elisp–>C 更多类型转化可参考官方文档: •Conversion Between Lisp and Module...Values 这里着重介绍下如何将 C 里面的函数导出到 ELisp 中: emacs_value c_add(emacs_env *env, ptrdiff_t nargs, emacs_value...(env, "defalias"), 2, args); } emacs_module_init 中调用 define_elisp_function 即可将 c-add 导出到 ELisp 中,使用示例

77620

30岁文转码:我用了三年时间从哲学家变成知名软件项目核心开发

Emacs 的核心就是读取和运行 Elisp 的能力,这被称为评估「evaluation」。评估 Elisp 时,Emacs 环境可以轻松使用与之对应的返回值。...Emacs 通过自身及第三方包 / 自定义代码全面满足了我的一切需求。如果大家愿意稍微学学 Elisp,那 Emacs 可以说是蕴藏着无穷无尽的可能。...任务还可包含一条返回原始消息的链接,并能够议程当中显示相应的预定日期与截止日期。 Dired 中标记某些文件,再将它们添加到正在撰写的电子邮件当中。...除此之外,底层配置也全部 Elisp 中完成,这又进一步简化了整体效果。使用 Emacs 之前,我往往得为每个应用程序使用不同的范式和 / 或语言。...Emacs可以实时评估代码,而且开放完整的源代码及相关说明文档。正是有了这样的开放性,我才能了解如何定义函数,再通过反复试验编写出人生中第一条自定义 Elisp

35430

Emacs Lisp

; 第一步首先启动Emacs: (windows中可以双击emacs图标,Linux中可以输入% emacs & ), ;; 然后键盘上键入q 跳过系统欢迎的信息, ;; 先观察Emacs屏幕的底部...(+ 2 2) ;; Elisp中表达式可以通过括号来嵌套 (+ 2 (+ 1 1)) ;; lisp-interaction-mode模式中,我们可以直接计算一个表达式,计算的方法是 (+ 3...缓冲区中插入计算结果,我们还可以表达式的末尾使用C-x C-e组合键 ;; C-x C-e的意思是: 先按下Ctrl-x 再按下Ctrl-e ;; 这个命令会让Emacs辅助缓冲区,也就是Emacs...窗口的最底部那行显示计算结果 ;; ELisp中的赋值函数是是setq,下面的表达式给变量my-name赋值"Bastien" (setq my-name "Bastien") ;; ^ 把光标停在这里...,知道你退出Emacs或者改变hello的定义 ;; 从下面开始,我们将不再提醒读者使用C-x C-e来定义函数和执行ELisp指令 ;; Elisp中直接输入函数的名称就是调用该函数

2.3K40

Emacs001学用Emacs之入门:关于配置文件

这种方法把所有初始化函数放在一个文件里,设置起来简单,但是一旦插件多了这个文件就会变得很长很乱。 2. 使用目录: ~/.emacs.d/ 。...虽说只有一个文件会被自动执行,但可以 init.el 里执行其它的函数,所以 init.el 可以变得很简洁;使用Emacs的 Feature 机制(???)...window下的目录(我的): D:\Users\Frank\AppData\Roaming\.emacs.d D:\Users\Frank\.emacs.d emacs的配置语言elisp 配置emacs...Emacs的配置文档是用elisp语言写的。elisp是lisp的一种方言。至于lisp语言,有人说它是黑客的语言。...(那传说中的lisp作为配置语言,这也是emacs吸引我的去学的一点,想象学配置的时候还可以顺便学一门语言...

2.9K40

如何快速使用 ELisp 进行插件编写

故事写到这里就差不多了,最终我 李杀的网站上找到了答案,直接调用 (point) 即可获得当前位置的 position。...要知道 Lisp 的一重要提高生产效率的工具是 REPL,没有 demo 让我复制,我怎么 REPL 里测试?...而且程序员都很懒、很忙,去仔细看 manual 不现实,而且 Emacs 的 manual 我感觉有些“重”了,文字太多了,看的累,我需要的仅仅是个很 copy 的示例,然后再根据我的需求改改就好了,就行...clojuredocs 那样,比如 reduce[2] 页面: 幸好在 Emacs China TG 组交流“心得”后,发现了 elisp-demos[3] 插件,可以 helpful 页面中展示函数的用法...• https://github.com/chrisdone/elisp-guide 引用链接 [1] feature: https://github.com/clojure-emacs/cider/pull

74620

一名Clojurian的Emacs配置

转向emacs之前,是一名忠实的vim党,从大学开始就不断折腾vim的配置,还花过一段时间专门学习了vimscript,曾经惊叹于vimscript的动态函数式风格的优美和强大。...接下来,只需要使用c-h v和c-h f查看elisp中定义的变量函数就能很快上手自行配置。...(add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory)) 看似,接下来就可以每个独立的模块文件中编写各种功能的配置...初次看到compile time,心中难免会有疑问:lisp不是动态语言,怎么还需要编译?这种时候,我们就要求助于elisp的文档了。...emacs中按下c-h i获取主话题(topic)的菜单,然后点击Elisp进入它的操作指南。重点查看Evaluation和Byte Compilation两个章节。

2.7K20

Emacs 之光的成长历程

与大多数用户不同,嘉宾接触 Emacs 不久即开始尝试攒写自己的配置,并陆陆续续发布了几个比较实用的包,比如 valign[1],嘉宾是如何做到的?...更令人好奇的是,嘉宾如何在短期内熟悉 Emacs 源码并为之贡献多个 patch,相信通过嘉宾的学习、贡献经历,可以给听众打开 Emacs 源码的神秘面纱,让更多用户参与到 Emacs 的贡献中,一个多小时的分享...时间线 • 00:00:56 嘉宾自我介绍 • 00:02:20 Emacs 初相识 • 00:10:08 ELisp 学习经历 • 00:15:45 Emacs 的可发现性 Discoverability...,句号后两个空格 • 注释用的是 C 风格的 /* */ ,而不是 C++ 的 // • 函数名后面跟一个空格,再是括号 •读 Emacs 源码技巧 • lisp.h[12] 里面有 C 如何调用 ELisp...的示例 • 去 devel[13] 邮件列表咨询,还可以练习英文表达能力 • ccls[14] + grep + ctags • 通过搜索相关功能来探究其个函数的用法 •嘉宾的分享 • aggressive-indent-mode

35910

10 个让你进入 Emacs 世界的技巧

使用它的菜单,用鼠标选择区域,点击缓冲区内的按钮,不要让陌生感阻碍你的工作效率。 image.png 这些功能被内置到 Emacs 中,是因为用户使用它们。...例如,C-x C-f 的意思是往常一样按 Ctrl+X,然后再按 Ctrl+C。 有时,一个键盘快捷键有混合的键型。组合键 C-x 3 意味着往常一样按 Ctrl+X,然后按数字 3 键。...启用后,C-c 复制高亮显示的文本,C-x 剪切高亮显示的文本,C-v 粘贴文本。这个模式只有在你选择了文本之后才会实际激活,所以你仍然可以学习 Emacs 通常使用的 C-x 和 C-c 绑定。...探索新功能 Emacs 所做的大部分工作都是一个 elisp 函数,它可以从菜单选择和键盘快捷键调用,或者某些情况下从特定事件中调用。...某种程度上,Emacs 就是自己的 API。 你可以通过社区博客上阅读有关 Emacs 的资料来了解新函数,或者你可以采取更直接的方法,使用描述函数(describe-function)。

78420

Emacs 29快到了!我们能期待什么

除了 Elisp 开发,我编写的大部分代码现在都是 LSP 服务器的帮助下完成的,它与 Emacs 一起运行并分析我的代码,为我建议和执行更改和操作。...从那里,不仅可以高速完成语法高亮显示,而且可以对代码进行更深入的分析,并且还可以实现语法操作等操作,因为语法树本身可以作为可以操作的对象使用!...可以使用 new 函数来完成package-vc-install,并且可以使用package-vc-update或更新以这种方式安装的包package-vc-update-all。...Windows 的一些新闻 尽管从 Emacs 26.1 开始,Linux 用户就可以使用它,但 Windows 终于可以使用双缓冲来减少显示闪烁。...随着 Emacs 29 分支被创建出来,master 分支上的开发现在将转向 Emacs 30。有什么我们可以期待的

2.4K20

Emacs 29.1 版本发布了

delete-process: 变成了交互式命令 restart-emacs: 与 save-buffers-kill-emacs 类似,只是关闭 emacs 后,会重新用同样的启动参数再次启动 scratch-buffer...package-vc-install: 从制定仓库安装包 split-root-window-below split-root-window-right: 把 root 窗口分成 2 个,窗口相关的命令可以...C-x w 内找到 elisp-eval-region-or-buffer: 如果有 region,执行 region 内的 elisp 代码,否则就是整个 buffer recentf-open:...show-paren-context-when-offscreen: 当光标右括号时,如果左括号不在屏幕时,会在 echo area 中展示相关信息, GUI 中,可以设置成 overlay 或 child-frame...EIEIO 相关 compat 函数默认已经不再加载,最主要的就是 defmethod defgeneric 函数,如果之前配置中有用到,可以直接加上前缀 cl- 即可,比如下面这个 PR:Fix defmethod

44220

我的笔记系统

得益于Emacs强大的定制开发能力,几乎你的一切需求都可以通过编写一些函数去扩展,这种扩展能力比VSCode/Vim/Sublime Text的插件系统等要强大的多。...可以说,除了学习难度高,几乎没啥缺点了。它有以下特点: 17 years old。时间的长河中,orgmode已经证明了自己。 定制能力强大。通过elisp去开发,几乎无所不能。 纯文本。...当然你能力强,可以用它来实现各种功能,但是这样挺累的。 技术迁移度差。elisp太古老了,emacs太独特了,这种上古技术,就像一把绝世好剑,注定能用好它的人会很少。...因为tiddlywiki本质是个网页,无法OneNote一样可以直接复制一篇文章到里面去,而且这种复制手法会导致你的笔记越来越大,找寻有效信息变得越来越难。...这是一个非商业的项目,创立目的就是给整个互联网的网站做不停的备份,目前已经有4500多亿的缓存页面了,在这个网站你可以看到很多网站的历史,时光机一样穿梭在网站的不同历史版本中去。

1.5K10

如何在 Emacs 进行文学编程

笔者自使用 Emacs 以来,最离不开的功能就是 org mode 中进行文学编程,来做快速的数据分析以及文档撰写。.... t) (emacs-lisp . t) (shell . t) (ditaa . t)) 这一串字符, 有一定 elisp 经验的读者可以知道,这正是前面 (setq org-babel-load-languages...默认情况下,RESULTS 显示的是代码块的返回值,而非打印值,这一点如果不注意的话会浪费很多时间。...实战例子中我们还会提到这个重点。 下面我们用五个例子来介绍 org mode 文学编程中最基本的操作。 实战一 计算 1+1 并显示结果。...25F349858A73 #+begin_src python :results output #+end_src #+RESULTS: C3395424-A7F4-4228-A373-25F349858A73 读者可以附录中找到随机函数

62920

我的 IDE 太重了,所以迁到了 Emacs

你还需要对 Lisp 有一点了解(Emacs 是基于它自己的 Lisp 方言 elisp 构建的),但如果你是那种甚至考虑 Emacs 这样的东西可以彻底破解的人,这实际上也是乐趣的一部分。...Org Mode 给文本文件带来了神奇的力量,甚至还有 elfeed 这样的东西,它可以让你不离开编辑器就可以阅读你最喜欢的新闻(来自 RSS feed 和类似 HackerNews 和 Reddit...但 Emacs 真的更轻?...我之所以知道是因为笔记本电脑总是我使用它的时候明显变慢了。工作区切换动画这样的体验变得极其糟糕。...虽然你可以在上面的截图看到,我充一次电就几乎可以 Emacs 上呆上一整天,但使用 IntelliJ 我只花了半个上午就不得不插上充电器。

1.1K10

对 Mastering Emacs作者 Mickey Petersen 的采访

FVWM95 是窗口管理器,看起来 Windows 95,它是“运行 Linux”和使用当时 DOS 或 Windows 上永远无法使用的工具的绝佳体验。...尽管如此,我对 Emacs 的迷恋并没有持续多久。当时它只是我试验过的一系列编辑器中的另一个工具。我可能选择了 Red Hat 附带的图形化界面,因为它默认启用了区域选择和语法突出显示等功能。...我可以查找命令和键;安装和编辑代码;甚至写一些 elisp! 我已经开始尝试使用 Org 模式,所以我创建了一个名为blogideas.org(当时博客风靡一时!)...Emacs 对新手的建议应该更坚定一些。 有哪些特定于 Emacs 的工作流程可以帮助您完成工作(包、默认设置的更改等)? 对我来说,这是需要时编写 Emacs 的能力。...为此,我编写了几行代码将 Emacs 的各个部分粘合在一起。我按下一个按钮,Emacs 使用 TRAMP 连接到远程服务器并调用它需要调用的程序,然后将结果显示 Emacs 缓冲区中。

68610

史上最轻量的 IDE……

你还需要对 Lisp 有一点了解(Emacs 是基于它自己的 Lisp 方言 elisp 构建的),但如果你是那种甚至考虑 Emacs 这样的东西可以彻底破解的人,这实际上也是乐趣的一部分。...Org Mode 给文本文件带来了神奇的力量,甚至还有 elfeed 这样的东西,它可以让你不离开编辑器就可以阅读你最喜欢的新闻(来自 RSS feed 和类似 HackerNews 和 Reddit...但 Emacs 真的更轻?...我之所以知道是因为笔记本电脑总是我使用它的时候明显变慢了。工作区切换动画这样的体验变得极其糟糕。...虽然你可以在上面的截图看到,我充一次电就几乎可以 Emacs 上呆上一整天,但使用 IntelliJ 我只花了半个上午就不得不插上充电器。

18410

史上最轻量的 IDE……

你还需要对 Lisp 有一点了解(Emacs 是基于它自己的 Lisp 方言 elisp 构建的),但如果你是那种甚至考虑 Emacs 这样的东西可以彻底破解的人,这实际上也是乐趣的一部分。...Org Mode 给文本文件带来了神奇的力量,甚至还有 elfeed 这样的东西,它可以让你不离开编辑器就可以阅读你最喜欢的新闻(来自 RSS feed 和类似 HackerNews 和 Reddit...但 Emacs 真的更轻?...我之所以知道是因为笔记本电脑总是我使用它的时候明显变慢了。工作区切换动画这样的体验变得极其糟糕。...虽然你可以在上面的截图看到,我充一次电就几乎可以 Emacs 上呆上一整天,但使用 IntelliJ 我只花了半个上午就不得不插上充电器。

23210
领券