使用emacs lisp安装emacs插件

Grey

使用emacs lisp安装emacs插件

代码设计

实现这个功能的一段代码示例如下,代码用来安装use-package插件。

(setq inhibit-startup-message t)

(require 'package)
(setq package-enable-at-startup nil)
(add-to-list 'package-archives
         '("melpa" . "http://mirrors.163.com/elpa/melpa/"))

(package-initialize)

(unless (package-installed-p 'use-package)
 (package-refresh-contents)
 (package-install 'use-package))

代码分析

这段代码是从一个视频教程里面搬过来的,基本上是没改动,估计唯一的差异是在于我把melpa的网站切换成了网易的镜像,这样的话在国内做测试会容易一些。
- 第一行代码是禁用了启动界面,这样启动后会是一个空的buffer。

  • 接下来,设置了package插件。

 这是一个内置的插件,主要是为了能够支持插件的下载安装。

  • 为什么要使用package这个基础插件呢?因为后面的插件的检查以及安装都是调用这个插件的接口来实现的。
  • package-initialize的使用是为了加在elisp的插件,从帮助描述看这个函数可以简化一些变量设置的工作。

  • 最后三行,其实是动作执行的核心所在。这是一个条件判断的分支结构,首先检查一下use-package是否已经安装,如果没安装则刷新插件内容,之后安装这个插件。

功能验证

这一段代码的验证其实还是很容易的,我现在的电脑上的emacs其实是没有什么插件安装的。接下来,我先注释掉最后3行执行动作,之后重启emacs,看看效果。
#+ATTR_LATEX: :width 0.5]

 启动之后,查看.emacs.d目录下,没有插件安装的文件。如果是查看 describe-package 对于use-package的说明,也会找不到这个插件。
之后,取消后面三行的注释。

 从消息buffer中能够看到这个插件安装的过程。

 从.emacs.d的目录中也看得到多出了一些新的插件的文件,不过这里似乎是一次安装了2个插件,可能一起安装了它的依赖插件?

 此时,再使用 describe-package 来查看这个插件的信息,已经可以查看到。

978_使用emacs lisp安装emacs插件相关推荐

  1. doom emacs如何安装新插件和自定义快捷键

    doom emacs如何安装新插件和自定义快捷键 最近在学习和使用doom emacs,遇到了2个问题. 问题1: 虽然doom emacs已经配置了很多的三方插件,但是还有些个性化的插件如何按doo ...

  2. emacs下安装eaf

    emacs下安装eaf插件 原因 eaf插件一开始还有点排斥,觉得emacs终端下操作多好多流畅.想要浏览器,终端和pdf再快速切换就可以了,毕竟我用i3wm/yabai窗口管理器. 但是想到当初也是 ...

  3. CentOS安装EMACS文件夹树型图插件与颜色插件

    2019独角兽企业重金招聘Python工程师标准>>> 我的EMACS是CentOS7自带的,版本号24.3. 依照https://www.emacswiki.org/emacs/S ...

  4. 在Emacs Prelude配置下安装neotree插件,实现文件导航树

    适用人群: 我们这个插件的添加是Emacs Prelude配置环境下实现的,是针对已经在Emacs下安装了Prelude的用户. Prelude是一个针对emacs的一个配置: Prelude is ...

  5. Emacs Lisp 功能扩展集锦

    From 参考 Emacs Lisp 功能扩展集锦 session.el desktop.el ibuffer.el browse-kill-ring.el ido.el tabbar.el spee ...

  6. win10安装emacs+spacemacs,建议用官方安装方式

    1.下载emacs最新版 26.1 官网下载地址:https://www.gnu.org/software/emacs/download.html#nonfree 2.解压emacs到你的安装目录,我 ...

  7. Windows中安装Emacs

    为什么80%的码农都做不了架构师?>>>    "在这个蔚蓝色的星球上,流传着两大神器的传说:据说Emacs是神的编辑器,而Vim是编辑器之神." 既然有人这么说 ...

  8. windows下Emacs的安装与配置

    近期在学习windows下的Emacs,遇到不少问题,比方什么home文件夹啦,.emacs配置文件啦,.el文件啦,通过几天的重复琢磨,最终有所感悟.我想不仅是我,非常多人都遇到过这些问题,如今就总 ...

  9. linux emacs 编译,linux 编译安装emacs和安装spacemacs

    下载 wget http://mirrors.ustc.edu.cn/gnu/emacs/emacs-25.1.tar.xz tar xvf emacs-25.1.tar.xz 编译安装 ./conf ...

  10. Emacs Lisp基本语法(六)

    简介 Lisp,名称源自列表处理器(英语:List Processor)的缩写,最早由约翰·麦卡锡在1958年基于λ演算创造,演化至今,是历史第二悠久的高级语言,仅次于Fortran,也是第一个函数式 ...

最新文章

  1. tomcat 6.0 部署报错信息
  2. 【三种解法实现】剑指 Offer 03. 数组中重复的数字
  3. Java程序员常用网站
  4. 一些在网上搜集的奇奇怪怪的bat代码。。。仅供参考!小心中招!
  5. 正版win8/win8.1系统激活密钥(key)备份还原操作步骤
  6. FPI厂商SoleraNetworks被Blue Coat收购
  7. 私有云和服务器虚拟化的区别,私有云和服务器有什么区别
  8. IT转型之路(一) 迷茫、困惑
  9. JavaWeb 之 Listener监听器及Session的钝化与活化
  10. 英语思维导图大全 介词(七)
  11. TQ2440使用DNW烧录配置流程详解
  12. 经典算法 之 子数组换位问题
  13. 【正点原子MP157连载】 第十二章 呼吸灯实验-摘自【正点原子】【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7
  14. 实验三:CART回归决策树python实现(两个测试集)(二)|机器学习
  15. 全面质量管理体系运转的基本方法 PDCA
  16. revit出图建模【尺寸定位标注】功能
  17. CURL: CURLE_COULDNT_CONNECT问题探究
  18. 微信小程序二维码如何生成?
  19. ALEVEL经济学:通货膨胀的原因是什么?
  20. equinix自动化服务器,Equinix收购Packet 大举进军边缘计算

热门文章

  1. ipa在线安装搭建_五大在线苹果企业签名平台评测:微导流居然打败了蒲公英
  2. 批量导出qq群的成员列表
  3. Django 表单 AuthenticationFrom自动检测user的name 和 password , has no attributes cleaned_data
  4. Windows如何进入安全模式
  5. 记一次公司被勒索病毒攻击事迹,上上下下咬牙切齿
  6. android studio 自定义应用主题,Android studio 设置主题
  7. linux上如何把2个或者多个显示器合并为一个显示器
  8. C++11之内联名字空间(inline namespace)和ADL特性(Argument-Dependent name Lookup)
  9. PTA (特立独行的幸福)
  10. ios设置tabbar背景颜色_IOS UITabBarViewController 修改背景颜色