欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
GNU Emacs
您可以在Wikipedia上了解到此条目的英文信息 GNU Emacs Thanks, Wikipedia. |
GNU Emacs
目录 |
简介
Emacs是一种信仰,也是种生活方式!
Emacs 是对技术极限不懈追求的信仰!
Emacs 是一个不折不扣的操作系统,一个终极工具!
学完Elisp不是探索的终点, 而是乐趣的开始!
功能
指南
OS X
Linux
Debian 7 安装 Emacs 25
apt-get install autoconf automake libtool texinfo build-essential xorg-dev libgtk2.0-dev libjpeg-dev libncurses5-dev libgif-dev libtiff-dev libm17n-dev libpng12-dev librsvg2-dev libotf-dev git clone --depth 1 git://git.sv.gnu.org/emacs.git cd emacs/ ./autogen.sh ./configure make bootstrap sudo make install
对Debian用户
#apt-get install emacs21 #apt-get install debian-el // Emacs helpers specific to Debian users. #apt-get isntall emacs-goodies-el // Miscellaneous add-ons for Emacs
EmacsForDebian - http://www.emacswiki.org/cgi-bin/wiki/EmacsForDebian
Emacs中文环境设置(Debian Linux)
1. 安装mule-ucs
apt-get install mule-ucs
2. 安装字体
apt-get install emacs-intl-fonts apt-get install xfonts-intl-chinese
这时emacs已经支持UTF8
3. 取消自动创建备份文件功能
Windows
.emacs
(setq line-number-mode t) // To enable line-number-mode by default in Emacs
Debian
http://www.debian.org/doc/packaging-manuals/debian-emacs-policy
常用功能
- C-x C-f:打开文件
- M-x ielm : REPL
(setq url-proxy-services
'(("no_proxy" . "^\\(localhost\\|10.*\\)") ("http" . "127.0.0.1:32783") ("https" . "127.0.0.1:32783")))
GTK+
apt-get install emacs22-gtk // GNU Emacs 22.2.1 (i486-pc-linux-gnu, GTK+ Version 2.12.11) ./emacs22-gtk &
Markdown
在 Emacs 中使用 Markdown。
编程语言
Programming Modes - http://www.emacswiki.org/cgi-bin/emacs-en/ProgrammingModes
Emacs Code Browser(ECB) : Code browser for several languages for Emacs.
#apt-get intall ecb
Lisp
Clojure
Racket
Erlang
- erlang.el:Erlang mode for Emacs
- Erlang Development Tool Suite
OCaml
Rust
C/C++
- CC Mode - C, C++ (CPP), Objective C, Java, etc.
C-h P
Lua
Swift
Objective-C
Go
Python
- Python Mode
- Python - http://www.python.org/emacs/
Ruby
PHP
Perl
CPerlMode - http://www.emacswiki.org/cgi-bin/wiki/CPerlMode
Dart
Java
JDEE - http://jdee.sunsite.dk/ - http://www-128.ibm.com/developerworks/java/library/j-emacs/
Scala
仓库
使用 MELPA 仓库
在 .emacs.d 目录下创建 init.el
(require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) (when (< emacs-major-version 24) ;; For important compatibility libraries like cl-lib (add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/"))) (package-initialize)
然后
M-x package-list-packages
安装 el-get
M-x package-install
框架工具
- Doom Emacs An Emacs framework for the stubborn martian hacker(顽固的火星黑客)
- Emacs Code Browser
- Emacs Muse
- COGRE - Connected Graph Editor
- Emacs Application Framework (EAF)
定制分发
作为编辑器
- 支持宏
- 编辑文本、各种程序
- 语法高亮,自动补全,代码折叠,在线帮助,自动语法检查...
- 写 TeX/LaTeX 文档,AUCTeX,BibTeX,Preview LaTeX
- 文件比较,图形化界面,文件合并
- 支持 HTML/XML/SGML/PHP/PERL/Python/C/C++/JAVA ... 的编辑
- Vi 模拟器
- 中文处理
其他工具的界面
- 调试程序,集成多种调试器(gdb等)的控制功能
- 版本管理,作为 CVS, Subversion 的前端 VC mode,PCL-CVS
- 文件浏览 Dired
- 查字典
- 拼写检查
- 调用 shell
- 调用 Scilab 进行专业科学计算
- 代码浏览 (cscope)
很强的可定制性
- Emacs 使用的 Emacs Lisp
- .emacs.el,.gnus.el ...
- 各种环境下的设置
网上浏览
- 收/发/管理电子邮件 Mew , 让.mew.el能保存POP密码
- 阅读新闻组 Gnus
- 登陆 IRC,在线聊天 Erc Rcirc
- 登陆 FTP,编辑远程文件
- 管理/发布 Wiki emacs-wiki, pmwiki-mode
- 管理/发布 Blog emacs-wiki-blog, emacs-wiki-journal
- 读取 RSS nnrss
- 浏览网页
w3m (很爽,推荐): http://emacs-w3m.namazu.org/
#apt-get install w3m // 可独立使用 $ w3m http://www.huihoo.org #apt-get install w3m-el ESC-x w3m enter
w3: http://www.cs.indiana.edu/elisp/w3/docs.html
#apt-get install w3-el-e21 // web browser for GNU Emacs 21 ESC-x w3 enter
- 看 info/man
个人信息管理
- 有地址簿/电话簿
- 有万年历,各种不同历法
- 记日记
- 日程管理Calendar and Diary
- 编写大纲
各种扩展
- 科学计算器
- 浏览源码
- 同时支持多种语言的字符编码
休闲娱乐
- 多媒体 Mpg123 EMMS
- 心理医生
- 游戏
- Life 游戏
- hanoi
开发者玩家
图集
链接
- http://www.gnu.org/software/emacs/
- Awesome Emacs
- Emacs @ GitHub
- Emacs Wiki
- Emacs 中文网
- XEmacs: The next generation of Emacs - http://www.xemacs.org/
- emacs开发主页
- Emacs 中文化指南
- Emacs Docs
- EmacsNotes --- 记录一些使用 Emacs 的笔记
- 一年成为Emacs高手(像神一样使用编辑器)
- 生活在 Emacs 中
- 肉山博客 (Wenshan's Blog)
- Emacs随想
- Emacspeak User's Guide
- GNU Emacs Quick Reference