Elisp之检测函数运行时,在它之前执行别的程序(六)

news2024/11/29 2:33:15

公众号:Android系统攻城狮

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!

优质专栏:Audio工程师进阶系列原创干货持续更新中……】🚀

人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.

1.前言

Elisp编程中,有时候想要检测到别的函数将运行时,能不能在它之前运行自己的代码呢?
答案:可以!
直接上代码!

2.代码例子

(defun test_01 ()
  (message "当前文件名:%s, 当前函数名:%s, 当前行号:%d" (buffer-file-name) (which-function) (line-number-at-pos))
  )

(defun test_02 ()
  (message "当前文件名:%s, 当前函数名:%s, 当前行号:%d" (buffer-file-name) (which-function) (line-number-at-pos))
  (sit-for 1)
  )

(advice-add 'test_01 :before #'test_02) 

(test_01)

注意:需要开启 (which-function-mode 1)时,which-function函数才会被调用,不过发现emacs29版本并没有获取函数名.

更多原创,欢迎关注:Android系统攻城狮

欢迎关注Android系统攻城狮

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/470626.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenGLES 实验室之2D篇 第三弹 の 直播白板

本文字数:4555字 预计阅读时间:12分钟 笔者之前发表的音视频文章,有图像的处理,音频的重采样等等,都属于入门级别。通过阅读它们,读者能对音视频有了了解。可在 Gitee 上面回顾。 2023 年,笔者将…

如何使用depcheck检查vue和react的依赖,以后不用把时间浪费在依赖问题上了

当我们在开发 JavaScript 项目时,会引入各种依赖库。但是有些依赖库可能只用到了部分功能,或者已经不再需要了,但是却一直被保留在项目中。 这些未使用的依赖库会占据项目的空间,增加项目的复杂度,影响项目的性能。为…

Elasticsearch --- 索引库、文档操作

一、索引库操作 索引库就类似数据库表,mapping映射就类似表的结构。 我们要向es中存储数据,必须先创建“库”和“表”。 1.1、mapping映射属性 mapping是对索引库中文档的约束,常见的mapping属性包括: type:字段数据…

【python】scikit-learn包:机器学习

环境配置:Scikit-learn包 只支持python语言 安装 WinR ,输入指令:pip install -U scikit-learn 数据预处理 数据导入 借助pandas和numpy 进行数据导入与处理 字符串类label的数字化编码 机器学习的函数大部分只能对数字信息进行处理&…

轻量级任务看板做任务管理

利用看板管理工作和任务,可以让团队更高效,也可以一目了然的了解任务进度及问题 1、首先创建一个任务看板 使用看板工具轻量级项目模板创建一个任务看板。 任务看板内包含:列表和任务卡片,列表一般代表任务流程及状态&#xff…

(四)ArcMap基础——要素的选择

要素的选择 当要在已有的数据中选择部分要素时,ArcMap提供了三种方式:按属性选择、按位置选择及按图形选择。 目录 要素的选择一、按属性选择二、按位置选择三、按图形选择 一、按属性选择 通过设置 SQL 查询表达式,用来选择与选择条件匹配…

怎样解决高并发下的I/O瓶颈?

大家好,我是易安。 说起Java I/O,相信你一定不陌生。你可能使用I/O操作读写文件,也可能使用它实现Socket的信息传输…这些都是我们在系统中最常遇到的和I/O有关的操作。 我们都知道,I/O的速度要比内存速度慢,尤其是在现…

【致敬未来的攻城狮计划】— 连续打卡第十五天:FSP固件库外部中断处理编程(外部中断检测按键控制LED闪烁)

系列文章目录 1.连续打卡第一天:提前对CPK_RA2E1是瑞萨RA系列开发板的初体验,了解一下 2.开发环境的选择和调试(从零开始,加油) 3.欲速则不达,今天是对RA2E1 基础知识的补充学习。 4.e2 studio 使用教程 5.…

J - 在赌场玩

第一周任务 - Virtual Judge (vjudge.net) http://t.csdn.cn/rcwO7 第一周任务 - Virtual Judge (vjudge.net) 【题目描述】 然后所有玩家成对玩,每对玩家只玩一次。因此,例如,如果总共有四个玩家,则进行六场比赛:第…

真题详解(二分查找平均值)-软件设计(六十)

真题详解(数据流图平衡)-软件设计(五十九)https://blog.csdn.net/ke1ying/article/details/130394959 全码:指关系模式所有属性都是这个关系模式的候选码。 RISC特点: 指令种类:少,精简 指令…

彻底弄懂Java的泛型1 - 泛型类

Java泛型是初级程序员向中高级程序员进阶的必经之路,他不是特别难,但是想全部搞懂和会用,还是不容易的。 本文从实战角度出发,讲解你在公司做开发,可能会用到泛型的一种场景。 泛型T的用法 引子 先来看一个简单的类…

UDP 协议

目录 一、什么是协议 二、认识UDP 协议 2.2 UDP 协议的报文格式 2.3 使用UDP 协议传输大文件时的策略 2.4 UDP协议的工作流程 一、什么是协议 为了使数据在网络上传输(从源头到达目的),网络通信的参与方必须遵循相同的规则,如…

SpaceX的星舰爆炸了:产品开发,快速失败真的很重要

目录 前言 快速失败 产品生命周期 专栏上线 前言 看到很多人都在聊星舰,今天就来简单谈谈“炸星舰”带给我们的启示。 在美国中部时间20日,SpaceX公司的“星舰”超重型火箭进行了首次轨道飞行。 但在该火箭成功点火升空几分钟后,却在半…

Java-synchronized实现详解(从Java到汇编)

synchronized作为java语言中的并发关键词,其在代码中出现的频率相当高频,大多数开发者在涉及到并发场景时,一般都会下意识得选取synchronized。 synchronized在代码中主要有三类用法,根据其用法不同,所获取的锁对象也…

如何通过开源项目搭建私有云平台--第四步下:安装rancher 监控

第四步下:安装rancher 监控,缺告警 本来想监控与告警一起写,但最近几天研究了rancher的告警,按照文档说法,配置了但没有触发,网上找了一些资料,有的在rancer 2.6成功的,但我用同样的方法在2.7.…

09 【Sass语法介绍-函数指令】

1.前言 在之前的章节我们学习过 Sass 提供的各种各样的函数,那么如果我们需要自定定义函数来使用就需要用到函数指令 function了。本节内容我们来学习 Sass 函数指令的语法和使用,在 Sass 中自定义函数是必须要掌握的! 2.什么是 Sass 函数指…

又一款可视化神器,开源了!

在互联网数据大爆炸的这几年,各类数据处理、数据可视化的需求使得 GitHub 上诞生了一大批高质量的 BI 工具。 借助这些 BI 工具,我们能够大幅提升数据分析效率、生成更高质量的项目报告,让用户通过直观的数据看到结果,减低沟通成…

安卓项目如何做单元测试

前言 先说一下创建篇文章的目的,近期负责搭建公司的单元测试框架,于是查阅了网上的很多文章,以及参考了github上很多的项目例子,并且也进行了相当多的尝试。这其中花费了很多的精力,大约有两三周的时间,远…

淘系抓包流程(淘宝数据无法抓包解决方式)

淘系抓包流程 结合frida和adb工具以及mumu模拟器进行抓包。 具体的关系图: frida的安装 frida安装,直接安装官网的脚手架。frida官网使用python的pip安装,python > 3。 安装后使用查看版本命令来确认是否安装。 pip install frida-tools frida --ve…

【严重】VMware Aria Operations for Logs v8.10.2 存在反序列化漏洞(CVE-2023-20864)

漏洞描述 VMware Aria Operations for Logs前身是vRealize Log Insight,VMware用于处理和管理大规模的日志数据产品。 VMware Aria Operations for Logs 8.10.2版本中存在反序列化漏洞,具有 VMware Aria Operations for Logs 网络访问权限的未经身份验…