344_spacemacs中的调试功能支持

    Spacemacs中内置了一个专门用于调试的模块,可能是我们作为使用者有时候是注意不到的。这个功能,应该是在开发整个sapcemacs初期的时候设计的吧?

    在正常的用户使用过程中,这个模块的功能其实是不开启的。这部分,从spacemacs的配置文件中能够看得出。

344_spacemacs中的调试功能支持_第1张图片

    上面的配置是core-spacemacs.el中的,之前这部分的配置我还是做过简单的分析学习的。上面图中,我专门画出来了一个模块,就是这个模块中提供了spacemacs的基础调试功能。

344_spacemacs中的调试功能支持_第2张图片

    继续往下看这部分配置文件,有上面画出来的这么一段配置。这里其实是配置模块功能初始化(很可能是功能使能,暂时这部分还是没研究),是否进行初始化的依据是条件判断中的一个变量的值。我们查看一下默认的情况下,这个值的状态。

344_spacemacs中的调试功能支持_第3张图片

    这个量的值是nil,因此上面的配置中调试功能应该是没有初始化。整个调试功能的设计存在于core-debug.el配置文件中。大概看一部分代码:

344_spacemacs中的调试功能支持_第4张图片

    从这里看,这个模块最起码提供了一些出错时候运行环境信息采集之类的功能。似乎,很多功能是为了方便BUG的上报。

344_spacemacs中的调试功能支持_第5张图片

    在这部分代码中,能够看得出有些BUG报告的功能直接打通了跟Github之间的通道。能够让用户直接参与到这个开源工具的建设中,个人觉得这是一个很好地理念。或许,研究一下这个debug模块的功能之后,我也会有机会参与到这样的有意义的活动中去。

    我的emacs以及lisp的水平还是处于并将长期处于学习的初级阶段,比较深的分析做不好,暂且做这么多的分析。

你可能感兴趣的:(Emacs,Lisp)