Emacs练习变得更加舒适,熟悉编辑器本身以及Lisp?

时间:2009-08-09 19:41:17

标签: emacs lisp

有一个名为Ruby Koans的伟大项目,它是一系列使用Ruby语言自我锻炼的任务,使用Ruby Unit Testing套件作为学习工具,引导您完成标准库。这是一个很棒的项目。

我很想看到类似Emacs的东西。

任何人都可以推荐在Emacs内部进行任何Lisp练习,以便运用Lisp和Emacs吗?也许还在完成Ruby Koans时?

5 个答案:

答案 0 :(得分:8)

曾经在http://www.gnuvola.org/software/elisp-tutorial/以.el格式(emacs lisp)上课。

您现在可以找到copy of the tutorial here

我从中学到了很多东西。您可以在emacs中以lisp交互模式阅读它们,并在文本中练习。

答案 1 :(得分:4)

这本书"Writing GNU Emacs Extensions"非常接近你的要求。

但是,如果你不想要一本书,那么stackoverflow中已经存在三个类似的问题:What's the best way to learn lispHow to quickly get started at using and learning emacsTips for learning elisp

我不知道存在的“漫步”系列,但发现最好的方法是开始思考你希望它做的小事,然后尝试使其工作(在这里请求帮助)。即使Emacs已经提供了这样的功能,你可能会发现解决你想要解决的问题更有趣,而不是一堆对你没什么兴趣的丢弃课程。

答案 2 :(得分:2)

The Little Schemer是一本关于Lisp练习的书。您需要注意其中一些在Emacs Lisp中是不可能的,如it doesn't support closures

它还专注于教授非程序员的递归,这意味着你不会涵盖所有的Lisp语句(大多数练习只是递归地使用(cond ...)。)

我真的很喜欢它。

答案 3 :(得分:1)

如果我没记错的话,一本非常古老的奥瑞利书,Writing GNU Emacs Extensions,有一些。您可能还想查看info页面中的“Emacs Lisp Intro”(您可以使用M-x info访问它们。

老实说,学习Emacs的最好方法是改变你看待它的方式。不要看是要学习的文本编辑器,而是作为编写文本编辑器的环境进行探索。想想你自己:在文本编辑器中我总是想要什么,但在我使用的编辑器中却找不到?为自己做好准备。你将学到更多,更快,试图逐个创建“自己的”编辑器,而不是试图记住从一些松散(如果有)链接练习中学到的经验教训,这些练习没有问题需要解决的问题。

答案 4 :(得分:-1)

这是怎么回事:

编写一个简单的程序来打开一个特定的文件(“〜/ ekoans.txt”)并从该文本文件中选择一个随机行,该行在新的临时缓冲区中显示给用户。调用函数ekoan-random,并让用户调用它。

ekoans.txt的前几行是:

Make ekoan-random open up a new file for you instead of a temporary buffer, and insert apropos header text in the new buffer.
Write an ekoan-sequential function that behaves like ekoan-random, except it works in sequential order
Make ekoan-sequential persist through a customization variable
Make the name of the koan file changeable by a customization variable

我称之为Koan-strapping!