《学习 GNU EMACS 第二版》学习笔记 (一) 如何创建本身的LISP开发库

《学习 GNU EMACS 第二版》学习笔记 (一) 如何创建本身的LISP开发库

P.458
当你在作了必定数量的LISP程序开发以后,你已经积累了一部分本身写的LISP函数,也许你很想把它们打包到一块儿作为一个开发包来使用,这样能够很方便地随时调用(固然,你能够把一些函数放在 .emacs 文件中加载,可是一旦数量较多这么作就不太方便了)。 app

须要2个步骤: 函数

一、建立一个目录,把你的 lisp 代码拷贝到这个目录下; 学习

二、让EMACS知道有这个目录,这样当你试图加载某个程序包时,EMACS才能知道在哪里去找。EMACS把这类目录都记录在全局变量 load-path 中,该变量的值是一个由字符串元素组成的列表,每一个字符串是一个目录名。
假设你的LISP代码的目录名为“~mycode/lisp“,那么须要把以下语句添加到 .emacs 文件中:
(setq load-path (append load-path (list "~mycoe/lisp")))
该命令执行后,当你试图加载某个函数时,EMACS会按照目录在 load-path 变量中出现的前后顺序进行查找,也就是说咱们新加的目录 "~mycoe/lisp” 在 load-path 变量的最后,因此最后一个被搜索到。 命令行

若是但愿先从你新设的 "~mycoe/lisp" 目录查起,则以下设置:
(setq load-path (cons load-path (list "~mycoe/lisp")))

接下来就能够加载和使用本身开发的LISP程序包了,下面提供了4种方法:
一、输入用户级命令 alt-x load-library 回车。
二、在LISP代码里(一般是你的 .emacs 文件)里加入语句 (load "package-name")。若是该语句是加在 .emacs 文件里,EMACS会在起点时加载你指定的名为 package-name 的包。
三、给用来启动 emacs 的命令(runemacs.exe)加上一个命令行参数 “-l package-name”。该操做将加载指定的程序包,在 emacs-24.2 中能够这样使用 runemacs.exe --eval (load \"lispbox\")。
四、在LISP代码里(一般是你的 .emacs 文件)里加入语句 (autoload ‘function “filename"),这个操做将在执行给定函数 function 时让 emacs 自动加载相应的程序包。 code

相关文章
相关标签/搜索