el-get

el-get 是一个emacs下的扩展管理工具。就像apt-get一样,当要为emacs安装扩展时,会自动解析依赖,并安装,非常方便。 emacs还自带一个扩展管理工具package.el,但是我没用过。

1 依赖

linux系统安装install-info。如果是windows版emacs,可以安装windows版的Texinfo

2 安装

  • 在emacs中执行以下elisp

    ;; 加载el-get安装脚本,并执行
    (url-retrieve
    "https://raw.githubusercontent.com/dimitri/el-get/master/el-get-install.el"
    (lambda (s)
    (goto-char (point-max))
    (eval-print-last-sexp)))
  • 也可以在自己的init.el中添加安装脚本

    ;; el-get-dir是el-get在安装的根目录,这个变量是el-get安装脚本内部指定的
    (setq el-get-dir (file-name-as-directory "~/documents/git/emacs-plugins"))
    ;; 把设置的根目录添加到加载路径中
    (add-to-list 'load-path el-get-dir)
    ;; 先尝试加载el-get,如果没有安装就会返回false,这时加载github上的el-get安装脚本,并执行
    (unless (require 'el-get nil 'noerror)
    (with-current-buffer
    (url-retrieve-synchronously
    "https://raw.githubusercontent.com/dimitri/el-get/master/el-get-install.el")
    (goto-char (point-max))
    (eval-print-last-sexp)))

3 配置

3.1 自定义包配置

在'el-get-user-package-directory指定的目录下的init-<package>.el文件中对package进行配置。<package>是指需要配置的包名。 这样el-get就会在这个包初始化的时候调用这个文件。

4 命令

命令 作用
M-x el-get-list-packages 列出扩展的列表
M-x el-get-describe 显示详细信息
M-x el-get-find-recipe-file 查找指定扩展的recipe,如果不存在就创建一个
M-x el-get-install 安装指定的扩展
M-x el-get-remove 删除指定的扩展
M-x el-get-reinstall 删掉重装,与el-get-update的不同在于,如果扩展的安装方式变了el-get-update无能为力
M-x el-get-self-update 更新el-get自己
M-x el-get-update 更新指定扩展
M-x el-get-update-all 更新所有已安装的扩展
M-x el-get-reload 重新加载

5 管理扩展

比如要安装auto-complete。

  • 可以直接执行命令M-x el-get-install RET auto-complete来安装。这样应该得在init.el中把安装后的路径加到load-path下,然后require。
  • 我是直接在init.el中添加el-get-bundle加载或者安装扩展,然后C-x C-e执行。这样下次启动页会启用auto-complete了。

    (el-get-bundle auto-complete)
    

Author: zhenghu

Created: 2015-03-10 二 22:49

Emacs 24.3.1 (Org mode 8.3beta)

Validate

el-get的更多相关文章

  1. jsp页面无法识别el表达式的解决方案

    今天在写一个springmvc的小demo时,碰到一个问题,在jsp页面中书写为${user.username}的表达式语言,在浏览器页面中仍然显示为${user.username},说明jsp根本不 ...

  2. Mac制作U盘系统(OS X El Capitan)教程

    前言部分 重装过Mac OS X系统的人应该都深有体会,通过自带的重新安装 Mac OS X功能恢复系统(开机时按Command+R) 要耗费10几个小时才能完成(请求苹果国外服务器),但如果通过U盘 ...

  3. El表达式的关系运算符

    El表达式的关系运算符: ==  对应  eq !=   对应  ne >    对应  gt <    对应  It

  4. java web学习总结(三十一) -------------------EL表达式

    一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...

  5. EL表达式的算术运算

    一个例子--乘法运算 ${book.bookCount * book.bookPrice } 两个不同对象的EL表达式的算术运算同理 ${student.studentNum * book.bookP ...

  6. EL表达式杂项

    1.<%@ page isELIgnored="false" %> 是否忽略EL表达式,如果值为ture,那么  ${..}这样的会直接原样输出,不会进行EL表达式计算 ...

  7. [转载]El Capitan 中 SIP 介绍

    这两天大家纷纷将 OS X 系统升级到了 El Capitan,然后发现,一些注入的工具无法使用了,某些系统目录无法使用了,第三方未签名的 kext 无法加载了,问题一堆堆的.这是因为,Mac OS ...

  8. [Java] JSP笔记 - EL、JSTL 常用标签

    一. 什么是 EL 语言 表达式语言(EL)是 JSP 2.0 引入的一种计算和输出 Java 对象的简单语言. 二.EL 语言的作用 为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMASc ...

  9. c:out标签和el表达式与跨域攻击XSS

    很多时候,在JSP中我们喜欢用EL表达式输出信息,但是最近发现这个确实存在个问题:XSS即跨域攻击. 下面看个例子: <c:out value="${student.name}&quo ...

  10. JavaWeb:EL表达式

    JavaWeb:EL表达式 说明 1.Expression Language语言,一种用于JSP文件中的数据访问的语言. 2.能够简化JSP文件中该数据访问的代码,可用来替代传统的基于<%= % ...

随机推荐

  1. -join 和 -split 用法

    具体可参考 PowerShell_ISE的帮助文件: -Join(一元联接运算符): 一元联接运算符 (-join <string[]>) 的优先级高于逗号.因此,如果向一元联接运算符提交 ...

  2. C++ 构造和析构

    1.继承关系可认为,子类在父类的基础上进行.从这个角度讲,可把它认为穿衣脱衣的过程.穿衣是:先穿内衣,再穿外套.脱衣是:先脱外套,在脱内衣.构造是:先调用父类构造方法,再调用子类构造方法.析构是:先调 ...

  3. Asp.Net 5使用Area及自定义Area

    Asp.Net Mvc里有一个叫做Area的技术,就是可以把不同逻辑组件的controller, view等放到不同的文件夹里.比如所有管理相关的都放到Admin area里.其实之前我一直对这个功能 ...

  4. 由strupr,strlwr体会如果将字符常量转换为变量进行修改,体会常量的静态存储

    #include <stdio.h> #include <string.h> int main() { char s[]="Copywrite 1999-2000 G ...

  5. 在Linux平台上用ASP.NET 5 连接Redis服务器

    最近在做一个Linux平台上基于ASP.Net 5 中间件+Redis+Mysql架构的系统,研究使用了 StackExchange.Redis 作为asp.net5连接redis的工具.作者在前几天 ...

  6. Matlab plotyy函数的使用及问题总结

    MATLAB函数,用来绘制双纵坐标图. 调用格式: 1.plotyy(X1,Y1,X2,Y2):以左.右不同纵轴绘制X1-Y1.X2-Y2两条曲线. 2.plotyy(X1,Y1,X2,Y2,FUN1 ...

  7. C语言中 指针、引用和取值

    指针是一个存储计算机内存地址的变量.从指针指向的内存读取数据称作指针的取值.指针可以指向某些具体类型的变量地址,例如int.long和double.指针也可以是void类型.NULL指针和未初始化指针 ...

  8. RPC之Thrift学习实战

    关于Thrift的学习实战请参考:http://blog.csdn.net/column/details/slimina-thrift.html

  9. [记录]java.math.biginteger cannot be cast to java.lang.long

    可以直接使用BigInteger类型进行接收, BigInteger id = (BigInteger)QueryRunner(conn,"SELECT LAST_INSERT_ID&quo ...

  10. Atom编辑器入门到精通(六) Markdown支持

    尽管我们使用Atom主要是为了编写代码,不过Atom还支持编辑很多其他格式的文件. 比如Markdown和Asciidoc. 这一章中我们主要学习如何快速方便地编辑Markdown文件.另外在写这篇博 ...