Spacemacs 中 Elisp 调试技巧记录

Posted WingDust

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spacemacs 中 Elisp 调试技巧记录相关的知识,希望对你有一定的参考价值。

前言

因为自己要在 Org Mode 中写 Latex, 但是在 Org Mode 中的预览 Latex 不怎么友好,

新看到的插件 org-latex-impatient 在 Windows 运行的尚未解决问题(已有解决方法)

所以只能自己去折腾一下这个插件
将这个过程的学习到有关于 Elisp 调试 的点记录一下

调试记录

首先是自己已经忘记的 Spacemacs 文档 中 Elisp 调试有关东西 Debugging Elisp

  • 其中 SPC m d f 这个快捷键来调试函数几个细节

    1. 若在已安装了这个包的情况下,你再将这个包的文件(通常是一个文件)Copy 一份,而你在这个 Copy 文件上 使用这个快捷键来进行调试,同样会触发调试。

      也就是说 我可以在不去修改原文件(甚至原文件的位置在哪都不用在乎)使用新 Copy 文件调试
    2. 对 Copy 文件中的某个函数内部进行修改,不会走原函数定义,而是走新的函数定义,相当于原函数被覆盖了。
    3. 在以上的条件下,我们可以添加一些调试语句如:将变量值插入(相当于打印)How to insert a formatted string into a specific buffer?另一个 buffer 中

        (with-current-buffer buffer-name
                insert var)

一些方法

  • 查看 Emacs 中 Image Mode 是否支持 svg :(image-type-available-p \'svg)

    • Reference

      • 让Windows版本的Emacs支持图片直接显示
  • make-process 运行的结果将在 :buffer 参数中 ,即值在一个新 buffer 中, Sentinels 可用来实现 运行结束得到结果的命令、脚本

    • Reference

      • How to pass arguments to a shell script using make-process function?
  • Reference

    • Get content of a buffer
    • Print process output line by line
    • How to check if a variable is set to what in elisp/emacs?

以上是关于Spacemacs 中 Elisp 调试技巧记录的主要内容,如果未能解决你的问题,请参考以下文章

spacemacs及python学习-坑之记录

Elisp 09:库

delphi调试技巧

ADB调试技巧记录

Chrome 内存查看调试技巧

如何在 elisp 'if' 语句中编写多个语句?