emacs 包

1 MELPA

emacs有个包管理器,叫做MELPA(Milkypostman’s Emacs Lisp Package Archive),它的网址是http://melpa.org/#/

其中收集了emacs lisp的包,给出了包的简单说明,包的源码所在位置以及包的下载次数等。

要使用MELPA,你的emacs中需要有package.el,emacs24已经有它了。在 (require 'package) 之后,需要修改变量 package-archives 的值,代码如下所示:

(require 'package)
(setq package-archives
      '(("melpa-cn" . "https://mirrors4.tuna.tsinghua.edu.cn/elpa/melpa/")
	("org-cn"   . "https://mirrors4.tuna.tsinghua.edu.cn/elpa/org/")
	("gnu-cn"   . "https://mirrors4.tuna.tsinghua.edu.cn/elpa/gnu/")))
(package-initialize)

其中 org-cn gnu-cn 是另外两个包的集合。

具体安装某个包的时候,可以使用 package-list-packages 来列出包,并进行安装。

2 源码包安装

有时候,你会自己去下载一个包的源码,或者自己去开发一个包。如果要安装这样的包,和上面略有不同。

现在假设你下载的包为 org-screenshot , 该包的目录结构为 /home/xuyang/org-screenshot/ , 此时要安装这个包,需要在 ~/.emacs.d/init.el 文件中添加如下代码:

(add-to-list `load-path "/home/xuyang/org-screenshot")
(require 'org-attach-screenshot)

require 语句之后,可以对这个包进行一些设置。比如上面的这个在org文件中插入屏幕截图的包,我进行了如下设置:

(setq org-startup-with-inline-images 'inlineimages)
(setq org-attach-screenshot-dirfunction
      (lambda () 
	(progn (assert (buffer-file-name))
	       (if (string= default-directory "/home/xuyang/blog/")
		   (concat default-directory "rfigures")
		   (concat (file-name-sans-extension (buffer-file-name))
			   "_att")))))
(global-set-key (kbd "C-c p") 'org-attach-screenshot)

其中,设置了几个变量的值,并绑定了一个抓图的快捷键。



本文地址: http://www.bagualu.net/wordpress/archives/6758 转载请注明




发表评论

电子邮件地址不会被公开。 必填项已用*标注