207_emacs lisp文件加载

         完整的common lisp的学习集合整理如下:

         https://github.com/GreyZhang/g_lisp

         这次看一下上面的函数load-file,先查看一下emacs内置的帮助信息:

         这个函数看起来是一个lisp函数,找一下相应相应的定义如下:

         这个代码我暂时是看不懂的,不过看起来这个实现是很简单的,用到的read-file-name函数会是更加基础的函数?看起来,emacs lisp的很多内置函数其实都是基础的lisp功能实现而已。

         再次看看官方文档中的介绍:

         这里有另一个不同的描述,把这个功能定义为了一个command,而不是一个function。为什么会有这样的差异呢?我从上面的代码中看到了一个interactive的关键词,是不是因为这个关键词把这个函数变成了一个交互式的函数,因此这个最终被归属为一个命令呢?

         在加载文件的时候,如果没有指明目录,默认从当前的目录中寻找。从操作行为上考虑,或许这个是可以直接M-x之后输入,然后选择操作文件的。

         做几个测试:

         上面的返回为t,这个似乎文档以及帮助中都没有提到。

         接下来,做一下命令式的测试:

         确实是可以在这里进行交互式操作,接下来加载test.el。

         两种调用方式,没想到还有不同的提示效果。按照之前接触的一点common lisp的经验,这个函数或许与其中的load函数类似。而这个功能是把相应的文件中的信息加载到lisp环境中,后面就可以直接调用其中的功能。

其他的lisp相关的学习笔记汇总,可以参考如下链接:

         https://github.com/GreyZhang/g_lisp

 

发布了812 篇原创文章 · 获赞 163 · 访问量 172万+

猜你喜欢

转载自blog.csdn.net/grey_csdn/article/details/104186184