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

如何在Elisp中收听按键?

在Elisp中,可以使用read-key函数来收听按键。该函数会等待用户输入并返回按下的按键作为一个字符对象。下面是一个示例代码:

代码语言:txt
复制
(defun listen-to-key ()
  "收听按键"
  (interactive)
  (let ((key (read-key "按下一个按键:")))
    (message "你按下了:%c" key)))

(global-set-key (kbd "C-c l") 'listen-to-key)

在上述代码中,我们定义了一个函数listen-to-key,该函数使用read-key函数等待用户输入按键,并将按下的按键保存在变量key中。然后,我们使用message函数显示用户按下的按键。

为了方便使用,我们还将该函数绑定到了快捷键C-c l上,通过按下C-c l,可以触发listen-to-key函数。

Elisp提供了一系列函数来操作按键,比如判断是否是特殊按键、获取按键对应的字符串表示等。你可以根据具体需求使用相应的函数来处理按键。

这种方式可以用于开发Elisp程序时,需要根据用户的按键输入做出不同的响应。例如,在一个编辑器中,可以根据用户按下的按键执行不同的编辑操作。

腾讯云相关产品和产品介绍链接地址暂无相关推荐。

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

相关·内容

003. 与子龙山人聊 Emacs 与程序员修炼之道

干活为主,不去过多折腾“花哨”的配置 •spacemacs vs doom-emacs • 新手推荐 doom-emacs,spacemacs 历史包袱有些重 • 从 prelude[4] 那里学了不少 ELisp...,这被称为 reproducible research[6] • 已经工作的话,基于成熟配置先把 Emacs 用起来 •使用 evil,彻底解决小手指痛的问题 • 不要觉得在 Emacs 用 vim 按键方式就不...找到对你职业生涯最重要的部分,熟练掌握它 • 在漫长的职业生涯跳槽时,要有一个长远的计划,朝一个方向不断前进 •如何在繁忙的工作中进行提升?...不要局限在自己的一亩三分地 •主播的分享 • Emacs China 论坛[10] •建站工具 Hugo[11] • 支持 org mode, emacstalk[12] 网站就是使用 Hugo 搭建起来的 收听方式...首推使用泛用性播客客户端订阅 RSS[13] 或在微信公众号 EmacsTalk[14] 收听 2.

55720
  • 008. Emacs 之光的成长历程

    更令人好奇的是,嘉宾如何在短期内熟悉 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...• aggressive-indent-mode[15] • Practical Typography[16] •主播的分享 • 关注牙齿健康,最好每年去看一次牙医 Get in Touch • 收听方式见...emacstalk.github.io/post/002/ [8] 34.3 Regular Expressions: https://www.gnu.org/software/emacs/manual/html_node/elisp

    40610

    【DB笔试面试511】如何在Oracle写操作系统文件,写日志?

    题目部分 如何在Oracle写操作系统文件,写日志? 答案部分 可以利用UTL_FILE包,但是,在此之前,要注意设置好UTL_FILE_DIR初始化参数。...image.png 其它常见问题如下表所示: 问题 答案 Oracle哪个包可以获取环境变量的值? 可以通过DBMS_SYSTEM.GET_ENV来获取环境变量的当前生效值。...在CLIENT_INFO列存放程序的客户端信息;MODULE列存放主程序名,包的名称;ACTION列存放程序包的过程名。该包不仅提供了设置这些列值的过程,还提供了返回这些列值的过程。...如何在存储过程暂停指定时间? DBMS_LOCK包的SLEEP过程。例如:“DBMS_LOCK.SLEEP(5);”表示暂停5秒。 DBMS_OUTPUT提示缓冲区不够,怎么增加?...如何在Oracle写操作系统文件,写日志? 可以利用UTL_FILE包,但是,在此之前,要注意设置好UTL_FILE_DIR初始化参数。

    28.8K30

    004. 与 stardiviner 聊 Emacs 与他与众不同的人生经历

    在一次次的选择,他逐渐远离“常人”走过的路,这其中或许有一时的鲁莽,但更多的是他勇于突破传统的束缚,逐渐形成了其独特的做事风格。近一个半小时的内容,“湿货”十足,不容错过!...本期人物 • 主播:西瓜[2] • 嘉宾:stardiviner[3] 时间轴 • 00:02:09 嘉宾学习 Emacs 经历 • 00:10:35 org mode 介绍 • 00:15:15 Elisp...github.com/stardiviner/org-mode •入坑经历 • vim -> org mode • 喜欢复古风 •org mode • 零配置复现问题,再去社区求助 • 自己想要的功能没人乐意实现 •Elisp...学习经历 • 文本处理比较删除 • 不如 common lisp 强大,主要是对异步的支持的比较差 • kiwix[5] 在 Emacs 离线搜索 Wikipedia •开淘宝店售卖咨询 • 19...org-link-beautify[8] org 美化插件,方便区分不同格式的链接(PDF/图片/视频等) • Clojure[9] •主播的分享 • 使用 Emacs 阅读邮件[10] Get in Touch • 收听方式见

    38320

    Emacs 28 新特性介绍

    这篇文章就来介绍 Emacs 28 ,笔者个人觉得比较实用的功能,完整列表可参考 NEWS[3] ( M-x view-emacs-news ),最后会介绍如何在 macOS 上编译。...它可以把解释执行的 elisp 代码通过 gccjit 技术直接编译成二进制代码。...与 flush-lines 命令类似,但是匹配的行会作为整体加到 kill ring • 新配置 kill-transform-function 字符在添加到 kill ring 的预处理函数 •...比如 11:00pm • 新配置 browse-url-default-handlers 根据 url 来定制不同的打开方式 • mode-line 会展示 Elisp 作用域方式 mode-line...positional 参数已经被淘汰 编译方式 看了上面那么多新功能,读者可能已经按捺不住内心的喜悦,这里就来介绍如何在 macOS 编译 28 版本,其他操作系统方式类似。

    96830

    iOS 9人机界面指南(三):iOS 技术 (下) - 腾讯ISUX

    用户使用设备音量调节按键可调节他们的设备所能发出的所有声音的音量,包括歌曲、应用音效和设备声音。...不管铃声/静音(或静音)的开关在什么位置,用户都能使用音量调节按键屏蔽所有声音,使用音量调节按键调节应用当前所播放的音频时同样调整了全局系统的音量,铃声音量除外。...应用可以在播放媒体的过程,通过后台向支持Airplay的硬件(Apple TV)发送视频。这样的应用可以接收通过远程控制事件实现的用户输入行为,因此用户可以控制处于后台运行状态的应用的视频播放。...用户习惯于这些标准控件的外观和行为,因此他们可以理解如何在你的应用中使用它们。 不要改变事件的用途,即使这个事件在你的应用没有意义。用户期望iOS系统的所有应用媒体控制和辅助控制能有功能上的统一。...欲了解如何在代码实现这些行为的相关信息,请参阅Copy, Cut, and Paste Operations. 为了确保编辑菜单在你的应用的表现符合用户期望,你应该: 显示在当前情境下合理的命令。

    1.3K30

    被下架封杀几年后,这款 GitHub 上万星、超牛逼的浏览器插件终于回归了

    渐渐地有人发现,一些听歌 APP 上的音乐不能随意收听下载了,之前收藏的歌曲也都消失了。...几大平台在版权上斗得如火荼,如今的网络音乐的版权基本已被割据在网易云音乐、QQ 音乐等几大平台手上。 虽然正版化是好事,但对用户来说就不是那么美好了。...目前其 GitHub 仓库仍在活跃,开发者也依然在为大家提供免费服务。 近期,扩展迷发现,它的 Chrome 插件也重新出现在了 Chrome 扩展商店。...插件下载地址 https://www.extfans.com/fun/indecfegkejajpaipjipfkkbedgaodbp/ 安装教程 【安装教程】如何在谷歌浏览器安装扩展迷上下载的插件?...三、播放 现在,你可以非常简单地在线收听音乐了。找到喜欢的歌曲后,点击歌曲名就能直接播放。 点击页面底部播放栏,可点开播放器,查看歌曲专辑封面和歌词。

    2.7K30

    Android隐藏和沉浸式虚拟按键NavigationBar的实现方法

    有的时候我们在做全屏显示或者视频全屏播放时候,有些手机有底部的虚拟按键,如下图所示: ? 在开发我们会遇到需要隐藏虚拟按键或者沉浸式虚拟按键的需求。 ? 上图为沉浸式虚拟按键效果。 ?...上图为隐藏虚拟按键效果。...但是布局大小会被虚拟按键的高度所影响。 如果你不想虚拟按键影响高度。...可以用如下: 用其他的UI标签(SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION和SYSTEM_UI_FLAG_LAYOUT_STABLE)来防止系统栏隐藏时内容区域大小发生变化是一种很不错的方法...下面这段代码展示了如何在不改变内容区域大小的情况下,隐藏与显示状态栏和导航栏。 那么如何显示虚拟按键呢?

    2.4K20

    X3DAudio

    收听者和发射器别表示收听声音和音源的位置. 一个收听者定义为空间中的一个带朝向和收听位置的点. 一般来说位置和朝向是跟摄像机一样的, 不管你是第一人称还是第三人称视角....这两个值保存在X3DAUDIO_DSP_SETTINGS结构体的SrcChannelCount和DstChannelCount, 它们决定了计算结果的输出格式(立体声还是5.1声道)....XACT3DCalculate和XACT3DApply 最后的步骤就是调用XACT3DCalculation来计算最终的声道映射, 然后调用XACT3DApply把这个映射应用到cue, 还有复制3D信息(距离...)到cue的固有变量....如果XACT的3D功能在实际产品应用的话, 音效设计师可以使用RPCs(Runtime Parameter Controls)来改变相关的固有变量的值, 音量和音调.

    50320

    WPF 从键盘事件 KeyEventArgs 里获取 Scan Code 的方法

    本文将告诉大家如何在 WPF 里面,从键盘事件 KeyEventArgs 参数里获取到 Scan Code 键盘按键的设备独立标识符的方法 概念: 以下来自 bing 的答案 键盘的 Scan Code...是按键的设备独立标识符,对应于按键在硬件上的实际标识。...每个按键都有一个唯一的扫描码,用于表示该按键。当用户按下一个键时,键盘会生成两个扫描码:通码(Make Code)和断码(Break Code)。通码表示按键被按下,而断码表示按键被释放。...GetValue(e); } 这两个方法获取到的值是相同的,使用下面代码,判断相等成立 Debug.Assert(scanCode == (int) scanCodeFromWpf...; 但 MapVirtualKeyW 函数所述,确实存在一些情况下,获取不到相同的结果 本文代码放在 github 和 gitee 上,可以使用如下命令行拉取代码 先创建一个空文件夹,接着使用命令行

    17410

    iOS 8人机界面指南(三):iOS技术(下)- 腾讯ISUX

    学习如何在代码实现,请查看UIPrintInteractionController Class Reference。...想了解如何使用这一技术,参阅Audio UI Sounds (SysSound)的范例项目。...而且,用户可能会希望能在玩游戏时静音或听他们乐单的歌曲而不听游戏配乐。 最好的策略是在你的应用启动时确定用户是否在收听其他音频。不要要求用户选择他们是要收听其他音频或是你的音效。...主任务与音频并没有关系,用户也不是必须要通过收听声音来成功使用应用。在这一情境,你最好使用系统声音服务来产生声音。...关于如何在代码实现这些行为的相关信息,参见Text Programming Guide for iOSCopy, Cut, and Paste Operations章节。

    2K40

    深入探索嵌入式系统开发:从LED控制到物联网集成

    嵌入式系统的LED控制程序在嵌入式系统控制LED是一个很常见的任务,可以用于指示状态、显示信息等。...LED控制接口:如果的开发板上有物理LED,需要了解如何在代码控制它。如果没有,可以模拟一个虚拟LED。编写LED控制程序以下是一个简单的C代码示例,用于控制LED状态。...以下是一个简单的示例,演示如何在按下按键时切换LED的状态:#include // 假设按键控制寄存器的地址为 0x40010000#define BUTTON_CONTROL_REG...如果检测到按键按下,我们会切换LED的状态,并在按键释放前等待。中断处理在嵌入式系统,中断是一种重要的机制,用于及时响应外部事件,例如按键输入、传感器信号等。...可能需要探索各种通信协议,Wi-Fi、蓝牙、LoRa等,以实现设备与设备之间的通信。物联网集成还可能涉及云服务和数据处理,以便远程监控和控制。内存管理在嵌入式系统,内存是有限的资源。

    30710

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

    例如,如果你不知道如何在 Emacs 只用键盘快捷键复制一个单词,编辑菜单的复制、剪切和粘贴选择提供了最轻松的路径。没有理由因为选择了 Emacs 而惩罚自己。...例如,C-x 在现代键盘符号的意思是 Ctrl+X,M-x 是 Alt+X。就像你从任何应用程序剪切文本时一样,同时按下这两个键。...有时,键盘快捷键并不只是一个键组合,而是由一系列的按键组成。 例如,C-x C-f 的意思是像往常一样按 Ctrl+X,然后再按 Ctrl+C。 有时,一个键盘快捷键有混合的键型。...你与一个应用程序的交互会影响你的工作方式,所以如果 Emacs 中所需要的按键模式与特定任务不一致,那么就不要强迫自己使用 Emacs 来完成该任务。...探索新功能 Emacs 所做的大部分工作都是一个 elisp 函数,它可以从菜单选择和键盘快捷键调用,或者在某些情况下从特定事件调用。

    80820
    领券