工具与资源jesshamrick.com
Emacs 绝对新手指南 (2012)
Absolute Beginner's Guide to Emacs (2012)
2015 — 2018,它一次次回到首页
黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。
导读
这是一篇面向零基础读者的 Emacs 入门教程,从最基本的概念和操作讲起,帮助新手迈出第一步。文章多次登上 Hacker News 首页,评论中大家分享了 Emacs 的强大之处,如 Org mode、tramp 远程编辑,以及把它当作学习 Lisp 的 playground。
为什么经久不衰:它不堆砌配置代码,让新手从原版 Emacs 开始自己探索,这种教学思路加上 Emacs 本身的持久生命力,使它多年后仍是最好的入门材料之一。
HN 评论精选
Emacs 的本质是一个可塑形的跨平台计算环境,灵活性无可匹敌。
我还没遇到过在灵活性上能与 Emacs 匹配的东西。比如我现在用 Org mode 写文档,带超链接、表格、脚注,还能按几个键导出为 LaTeX、HTML、Open-Office 等格式。它不只是编辑器、IDE 甚至窗口系统——它是一个跨平台的计算环境,可以塑造成完全符合你需求的任何样子。
Wildgoose查看英文原文
I have yet to encounter anything that can match the sheer flexibility of Emacs. For example I am currently using Org mode to write some documentation complete with hyper-links, tables, foot notes and the option to export the results as LaTeX, HTML, Open-Office, and so on with just a few keypresses. It's not just an editor, or an IDE, or even a windowing system - it is a cross-platform computing environment that can be fashioned to exactly suit whatever purpose you require.
tramp-mode 让远程和容器内文件的编辑如同本地一样顺畅,是杀手级功能。
你应该看看 tramp-mode,这是个杀手级功能,让你像编辑本地文件一样编辑远程文件(AWS、Azure 甚至 docker 容器!)。所有功能都正常工作,可以在本地文件和 AWS 文件之间做 diff,通过 magit 执行 git 操作时它也知道作用于远程文件。只需 CTRL-X CTRL-F 然后输入 /ssh:username@example.com:~/somefile.txt,就能得到远程文件内容的本地 buffer,保存时自动 scp 回去。合并和 diff 都直接可用,非常棒。
Tistel查看英文原文
You should check out tramp-mode too. Its a killer feature that lets you edit files remotely (AWS, Azure, even docker containers!) as if they are local. All the stuff work, so you can do diffs between a local file and an a AWS file and it all appears to be local. If you are editing a remote file and do a git action (through magit) it knows to work on the remote file. You can open up remote shells also. You just go: CTRL-X CTRL-F then => /ssh:username@example.com:~/somefile.txt and you get a local buffer with the contents of the remote file (via scp). All your editing is the same as if it is local. When you save it does a scp back to the remote machine. You can even edit in docker containers: /docker:root@03f5f926f1ca:/etc/environment as if they are local. Merges/diffs all just work its really great.
Emacs 也是学习 Lisp 和系统设计哲学的绝佳 playground。
Emacs 另一个微妙但重要的用途:它是学习(某种风味的)Lisp 的好 playground。加上 site-lisp/ 里大量的源码,它是学习一个完整系统如何用 Lisp 搭建起来的绝佳环境。hooks、宏、advice——所有那些让你用美妙的 Lisp 方式射中自己脚的东西!Stallman 那篇关于 Emacs 中 C 与 Lisp 分工的文章也值得一读,这种'快速语言写底层 + 解释器提供灵活性'的设计哲学也是 GNU guile 背后的理念。
sn41查看英文原文
Another subtle but important use of emacs : it is a good playground for (a flavor of) Lisp. Together with the source code galore in site-lisp/, it is a really good environment to learn how a full-blown system can be put together in Lisp. [Hooks, macros, advice - all the goodies to shoot yourself in the foot in that wonderful Lisp way!] Also relevant is the great article by Stallman on the exact C-vs-Lisp division of labor in emacs. This design philosophy of "bare metal" programming in a fast language + an interpreter for flexibility is also the philosophy behind GNU guile: https://www.gnu.org/gnu/rms-lisp.en.html https://www.gnu.org/software/guile/
这篇指南的可贵之处在于让新手先体验原版 Emacs,自己探索定制。
这篇指南最好的地方(在我看来)是它没有一上来就让你往 .emacs.d/init.el 里塞一大堆 Elisp 代码。我认为应该让人们先体验原汁原味的 Emacs,自己决定要改什么。如果我们直接告诉他们'你肯定要启用这些模式、把这些设置改成这些值',我觉得他们就被剥夺了 Emacs 最好的部分——即摸索出属于你自己的编辑体验。
gnuvince查看英文原文
The best thing (IMO) about this guide is that it does not start with a gazillion lines of Elisp code to add to .emacs.d/init.el. I think people should be allowed to experience plain vanilla Emacs and decide for themselves what they want to change. If we just tell them "oh, you definitely want these modes enabled and these settings to these values", I feel they are somehow robbed of the best part of Emacs, namely figuring out what you want your own personal editing experience to be.
历次讨论
同类还值得读
直接在浏览器中启动 Linux 内核
Boot a linux kernel right inside your browser.
Fabrice Bellard 的 JSLinux 页面,用 JavaScript 在浏览器里启动一个 Linux 内核,并提供一个可交互的终端环境。
工具与资源上首页 5 次 · 2011–2025bellard.orgHacker News 未公开功能与行为清单(2018)
A List of Hacker News's Undocumented Features and Behaviors (2018)
数据科学家 Max Woolf 整理的 Hacker News 未公开功能与行为清单,涵盖投票机制、排名算法、账号惩罚等社区运作细节。
工具与资源上首页 5 次 · 2019–2025github.comMapSCII:在终端中用盲文和 ASCII 渲染地图
MapSCII – Braille and ASCII map renderer for the console
MapSCII 是一个在命令行终端里渲染地图的开源工具,用盲文字符和 ASCII 字符把地理数据画成可交互浏览的字符地图。
工具与资源上首页 5 次 · 2017–2025github.com顶尖大学的免费在线课程
Free Online Courses from Top Universities
Open Culture 整理的一份免费在线课程合集,汇集了全球顶尖大学(如 MIT、斯坦福、耶鲁等)向公众开放的网络课程资源,涵盖音频、视频等多种形式。
工具与资源上首页 5 次 · 2010–2022openculture.com淘气字符串:容易引发用户输入问题的字符串清单
Naughty Strings: A list of strings likely to cause issues as user-input data
一个 GitHub 仓库,收录了大量容易让程序出问题的用户输入字符串,如特殊字符、emoji、SQL 注入片段、系统命令等,供开发者用于测试输入处理逻辑。
工具与资源上首页 4 次 · 2015–2020github.com