《学习 GNU EMACS 第二版》学习笔记 (一) 如何建立自己的LISP开发库

《学习 GNU EMACS 第二版》学习笔记 (一) 如何建立自己的LISP开发库

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

需要2个步骤:

1、创建一个目录,把你的 lisp 代码拷贝到这个目录下;

2、让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种方法:
1、输入用户级命令 alt-x load-library 回车。
2、在LISP代码里(通常是你的 .emacs 文件)里加入语句 (load "package-name")。如果该语句是加在 .emacs 文件里,EMACS会在起点时加载你指定的名为 package-name 的包。
3、给用来启动 emacs 的命令(runemacs.exe)加上一个命令行参数 “-l package-name”。该操作将加载指定的程序包,在 emacs-24.2 中可以这样使用 runemacs.exe --eval (load \"lispbox\")。
4、在LISP代码里(通常是你的 .emacs 文件)里加入语句 (autoload ‘function “filename"),这个操作将在执行给定函数 function 时让 emacs 自动加载相应的程序包。

转载于:https://my.oschina.net/freeblues/blog/89290

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值