`
standino
  • 浏览: 10592 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

走进Emacs殿堂

阅读更多
安装

使用cygwin在windows上安装

在安装emacs之前需要先安装cygwin。这里是安装方法。需要特别说明的是,在选择安装包的时候,请选上python。





安装完cygwin以后我们就可以使用脚本进行以下的安装。把下面的一段代码存到名为myapt的文件中,把myapt文件存放到
C:\cygwin\home\[您的用户名]\bin目录下。

#!/bin/bash

function do_apt(){
    mkdir -p ~/bin
    cd ~/bin
    wget http://download.linuxaudio.org/lilypond/binaries/cygwin/cyg-apt
    chmod a+rx cyg-apt
    cyg-apt -m http://www.cygwin.cn/pub setup
    cyg-apt -m http://www.cygwin.cn/pub update
    cd -
}

function do_editor(){
    do_cyg_install install xinit xorg-server font-adobe-dpi100 font-adobe-dpi75
    do_cyg_install install twm xclock font-isas-misc
    do_cyg_install install emacs emacs-X11 emacs-el
}

function do_cyg_install(){
     cyg-apt -m http://www.cygwin.cn/pub $@
}

cmd=$1

case $cmd in
    init)
        do_apt
        ;;
    emacs)
        do_editor
        ;;

esac



点击桌面的 cygwin 快捷方式启动 cygwin 控制台。
在控制台中输入:


chmod +x bin/myapt #---赋予 myapt 执行权限。
myapt init         #---初始化
myapt emacs        #---安装emacs



现在,emacs在windows下的基本安装就完成了。 我们可以在 cygwin 控制台中输入命令 starx 启动 xterm, 然后在 xterm 中输入命令 emacs-X11
来启动 emacs 程序。


在 ubuntu 上安装

我们同时使用脚本方式安装。把下面的代码拷贝到myapt文件中,把myapt存到${HOME}/bin目录下。


#!/bin/bash

function do_emacs(){
    sudo aptitude install  emacs emacs-extra emacs-goodies-el emacs-intl-fonts
    sudo aptitude install  w3m-el muse-el aspell remember-el
}

cmd=$1

case $cmd in

    emacs)
        do_editor
        ;;

esac



打开Terminal 输入:


chmod +x bin/myapt #---赋予myapt执行权限。
myapt emacs        #---安装emacs



现在,emacs 在 ubuntu 下的基本安装就完成了。



Emacs 简介

打开的 emacs 如下图所示。在 emacs 中编辑的不是文本本身,emacs 会把文件的内容拷贝到 buffer 中。




从图中我们可以看到,emacs 由“菜单”、“工具条”、“主 buffer”、“状态显示条”和“次 buffer” 组成。

在 emacs 中很多操作都有快捷键,使用快捷键是一种
高效的编辑 buffer 的方式。但是如果我们忘记了某个操作的快捷键,我们可以通过选择“菜单”或者点击“工具条”上的按钮来执行相应的操作。

“主 buffer” 是我们编辑文件的主要区域,看起来和记事本没有太多区别,不过当您熟悉了它的功能以后,您就知道它远非那么简单了。

在 emacs 中还有一个模式(mode)的概念,例如我们编辑一个 SQL 文件,那么它就会使用 sql-mod。所有 SQL 相关的语法显亮,连接数据库,执行
SQL 查询等功能都会与 sql-mod 关联。在一个 buffer 中可以使用多个模式。这些信息会显示在“状态显示条”上。

“次 buffer” 是我们和 emacs 交互的一个窗口。通过“次 buffer”,我们可以向 emacs 发送命令。emacs 中的所有操作都可以通过命令来执行。


基本的文本编辑


  C-x C-c : Exit and close Emacs
  C-x C-z : Exit and hang on Emacs
  C-x C-f : Open file or folder
  C-x i   : Insert file
  C-x C-r : Open a file with read only mode
  C-x u Or C-/   : Undo
  C-x C-s : Save
  C-x s   : Save all unsaved files
  C-x C-w : Save as...
  C-l     : Refresh the buffer
  C-g     : Stop current command
  C-a     : Go to head
  C-e     : Go to tail
  C-n     : Next line
  C-p     : Pre line
  C-f     : forward one character
  C-b     : backward one character



如何获得帮助信息

Ctrl + h

  • a  command-apropos.  Type a list of words or a regexp; it shows a list of commands whose names match.  See also the  apropos  command.
  • b  describe-bindings.  Display a table of all key bindings.
  • c  describe-key-briefly.  Type a key sequence;it displays the command name run by that key sequence.
  • d  apropos-documentation.  Type a pattern (a list of words or a regexp),
  • and shows a list of functions, variables, and other items whose documentation matches that pattern.  See also the apropos command.
  • p  finder-by-keyword. Find packages matching a given topic keyword.
  • r  info-emacs-manual.  Display the Emacs manual in Info mode.



Lisp 语言介绍

  • Function


01  (defun my-switch-buffer ()
02    "Like switch-buffer but in the opposite direction"
03    (interactive "")
04    (other-window -1)
05  )


  • Customize Emacs


(require 'color-theme)
(color-theme-initialize)
(color-theme-billw)


安装插件

Emacs的插件一般是由 Lisp 编写的,你只需要把插件的 Lisp 文件放到 Emacs 的查询路径下就可以了。这里我介绍另一个安装插件的工具 ELAP
http://tromey.com/elpa/install.html。



(let ((buffer (url-retrieve-synchronously
	       "http://tromey.com/elpa/package-install.el")))
  (save-excursion
    (set-buffer buffer)
    (goto-char (point-min))
    (re-search-forward "^$" nil 'move)
    (eval-region (point) (point-max))
    (kill-buffer (current-buffer))))





在Emacs中编程

  • Tabbar
  • Spell Check
  • SQL
  • Template
  • Auto-completion
  • Version Control


执行更多的文本编写

  • PlanningOrg

Org-mode is a mode for keeping notes, maintaining TODO lists, and doing project planning with a fast and effective plain-text system.

  • Taking notesmuse

Emacs Muse is an authoring and publishing environment for Emacs. It simplifies the process of writings documents and publishing them to various output formats. Muse uses a very simple Wiki-like format as input.

Muse consists of two main parts: an enhanced text-mode for authoring documents and navigating within Muse projects, and a set of
publishing styles for generating different kinds of output.


扩展Emacs

  • Get the last version automatically


(add-hook 'find-file-hooks 'my-vc-update)

(defun my-vc-update()
  (condition-case nil
      (if (vc-registered (buffer-file-name))
           (vc-update))
    (error nil))
)



  • Run SQLunit Test

(defun sqlunit-run-file ()
     "Run sqlunit on current buffer"
     (interactive )
     (shell-command
      (format "ant -f %s../build.xml  -Dscript.name=%s &" (buffer-dir)  (buffer-name))))


  • Developerworks article publishing


  • 大小: 23 KB
  • 大小: 19.8 KB
分享到:
评论

相关推荐

    三本emacs书籍:生存于emacs+生活于emacs+emacs手册

    Emacs是一款强大的文本编辑器,深受程序员和高级用户喜爱,因其高度可定制性和丰富的扩展功能而闻名。这个压缩包包含了三本关于Emacs的重要书籍,旨在帮助用户从初识到熟练掌握这款工具。 《Survive in Emacs》是...

    emacs 24.5 for windows

    Emacs 24.5是针对Windows平台的版本,它是一款功能极其强大的文本编辑器,被誉为"神一样的编辑器"。这款编辑器以其高度可定制性、丰富的功能和开源特性深受程序员、作家以及任何需要处理文本的人士喜爱。在Emacs的...

    emacs用户手册(中文版).pdf

    ### Emacs用户手册中文版知识点概览 #### 一、Emacs简介与发展史 - **GNU与Emacs**:Emacs是GNU项目的一部分,由Richard Stallman于1975年在MIT创立的Free Software Foundation (FSF)发起。GNU旨在创建一个完全...

    Emacs User 's Guide中文版电子书

    GNU Emacs 是什麽 GNU EMACS 的特质 Emacs 的线上辅助说明 Emacs 的基本知识 Emacs 的自学教材 Ctrl-h 的用法 Emacs 的 info 使用说明 Emacs 的整合环境 如何在 Emacs 中执行 Shell 的指令 有关目录的编辑...

    [emacs].emacs

    标题 "[emacs].emacs" 暗示我们正在讨论的是 Emacs 配置文件,这是一个非常重要的文本编辑器的个性化设置。Emacs 是一个高度可定制的、功能强大的编辑器,广泛用于编写代码、文档等,尤其在程序员和系统管理员中非常...

    emacs

    Emacs是一款强大的文本编辑器,尤其受到程序员和高级用户的喜爱,因为它提供了丰富的功能和高度的可定制性。作为一款“好用的代码剪辑软件”,Emacs不仅支持编写各种编程语言,还具备代码高亮、自动补全、语法检查、...

    Emacs使用详解,Emacs使用详解

    ### Emacs使用详解 #### 一、Emacs简介 Emacs是一种功能极其强大的文本编辑器,在Unix和类Unix系统(如Linux)中广泛使用。对于熟悉它的用户来说,Emacs不仅是一个简单的文本编辑器,更是一个完整的开发环境。由于...

    emacs26.1 windows版本

    Emacs 26.1是GNU Emacs编辑器的一个重要版本,发布于2018年6月3日,特别为Windows平台进行了优化,构建为x86_64-w64-mingw32架构。作为一款强大的文本编辑器,Emacs不仅仅是一个简单的文本处理工具,更是一个全功能...

    linux下emacs安装

    在Linux环境中,Emacs是一款非常强大的文本编辑器,深受程序员和系统管理员的喜爱。它提供了丰富的功能,包括代码编辑、文档编写、邮件处理等。本文将详细介绍如何在Linux系统下安装Emacs,以及如何利用提供的安装包...

    Emacs User's Guide emacs使用手册

    ### Emacs 使用手册知识点详解 #### 一、GNU与Emacs的关系 - **GNU**:由Richard Stallman于1975年在MIT发起的Free Software Foundation(FSF)中的一个项目,全称“GNU's Not Unix”。GNU的目标是创建一个与Unix...

    Survive in Emacs(Emacs生存指南).7z

    《Survive in Emacs》是为初学者准备的一份详尽的Emacs编辑器入门指南,旨在帮助用户快速熟悉并掌握这款强大的开源文本编辑器。Emacs不仅是一个编辑器,更是一个功能丰富的集成开发环境(IDE),它提供了丰富的...

    Emacs配置与插件

    Emacs是一款强大的文本编辑器,深受程序员和程序员爱好者们的喜爱,因其高度可定制性和丰富的扩展功能而闻名。本文将深入探讨Emacs的配置与插件使用,帮助新手快速上手。 首先,我们要明白Emacs的基本配置是提升其...

    Writing GNU Emacs Extensions

    emacs 教程 Writing GNU Emacs Extensions pdf

    emacs多年使用总结

    ### Emacs多年使用总结 #### 一、第三方扩展Package Emacs作为一个高度可定制的文本编辑器,通过安装各种第三方扩展可以极大地提升工作效率。 ##### 1.1 学会使用ERC (IRC Client) - **功能**: ERC (Emacs ...

    我的emacs模版

    Emacs是一款强大的文本编辑器,尤其受到程序员和高级用户的青睐,因为它的高度可配置性和丰富的扩展功能。在Linux环境中,Emacs是许多开发者首选的编辑工具。本压缩包中的"我的emacs模版"是为了帮助用户定制一个高效...

    emacs 快速配置脚本包

    快速搭建的主要思想是采用执行注册表脚本 设定 emacs 查找配置文件的路径为 c: emacs home emacs 同时又在此文件中定位到我们现在刚下载的路径 及更改 home 目录的方式 包含最基本的配置 颜色 字体等 脚本以及常用的...

    Emacs中文手册.pdf

    Emacs的基本操作包括启动Emacs、挂起Emacs、永久离开Emacs文件、读取文件到Emacs、保存文件到磁盘、插入其它文件的内容到当前缓冲、将要读取的文件替换当前文件、将当前缓冲写入指定的文件等。这些命令都是Emacs的...

    emacs配置IDE

    Emacs,被誉为“可扩展、可定制、自我文档化”的实时显示编辑器,不仅是一个文本编辑器,更是一个强大的集成开发环境(IDE)。它以其高度的可配置性和丰富的功能库,使得开发者能够根据个人需求定制自己的开发环境。...

    Emacs教程Learn_GNU_Emacs

    Emacs是一款强大的文本编辑器,源自GNU项目,是GNU Emacs的简称。它以其高度可定制性、丰富的功能和开源性质闻名于世。本教程“Learn_GNU_Emacs”旨在帮助用户从零开始掌握Emacs的基本操作和高级特性,成为熟练的...

    Emacs的配置文件

    Emacs是一款强大的文本编辑器,深受程序员和程序员爱好者们的喜爱,因为它提供了丰富的可定制性以及对各种编程语言的优秀支持。Emacs的配置文件是其灵活性的核心,它允许用户根据自己的需求调整编辑器的行为,使其...

Global site tag (gtag.js) - Google Analytics