2008-11-07 81 views
20

我想尝试Emacs,并想给它最好的机会。建议初始Emacs配置?

要做到这一点,似乎有一个良好的.emacs文件是很重要的。

我主要使用的是Mac OS X(所以我已经看过Aquamacs),我主要做Python编程,所以特地为任何事情将是巨大的。

+0

它相当于说,一个良好的家庭是生活非常重要。我正在寻找建议的初始家庭设置。 (考虑到有些人使用emacs和.emacs文件超过20年)。 – aartist 2011-08-16 14:44:01

回答

13

这是一个很难回答的问题。我对Emacs的理论是,你必须给它一个诚实的尝试真实。这意味着与它合作几个月,而不是几天。这不是因为心灵的懦弱!理想情况下,emacs将成为您唯一的文本编辑器,并且您可以通过emacs的方式执行操作。

真的,给自己和Emacs的最好机会可能,你应该掌握足够的elisp做自己的基本的自定义。

其实,我觉得你的.emacs可能是一个读鲱鱼至于给emacs的最佳机会。相反,尝试一些像gromayer功能,如flymake与pylint,劣质的python进程,用emacs进行python调试都是值得的。特别是劣质程序是炸弹。

EmacsWiki对Python和Emacs的一些好的信息。

+1

我现在一直在使用emacs一年左右 - 这几乎是我最终熟悉它的方式。开始一个完全默认的设置,通过内置的教程,然后开始玩有趣的功能/库(例如flymake pyflakes,emacs-jabber),或者改变那些让我烦恼的事情(例如用``Cx o`快捷方式替换`风移动“,或设置”颜色主题“) – dbr 2011-01-02 00:10:16

7

我发现的最重要的配置更改不是用于.emacs,而是用于您的操作系统。在“键盘&鼠标”系统首选项中,在“键盘”选项卡中,单击底部的“修饰键...”,然后将“Caps Lock”更改为“控制”。然后训练自己使用大写锁定键(在“A”的左侧),而不是在角落的控制键。这将使整个体验更高效,更舒适。

见:Emacs on Mac OS X Leopard key bindings

0

你可以看看我的emacs配置,位于my site。 Aquamacs特定的配置,你可以找到在separate file

1

我创建了一个模块化的Emacs配置自己。随时去看看here

17

我建议从一个空白的.emacs文件开始。然后阅读教程和相关博客文章,并在您学习的过程中发展。使用从别人借来的.emacs文件看起来有点像漏掉了一点。

+4

+1。我有两个关于自定义的屏幕录像[第1部分](http://emacsmovies.org/blog/2012/08/05/customisation_part_1/)和[第2部分](http://emacsmovies.org/blog/2012/08/ 25/customisation_part_2 /),它讨论从头开始编写一个简单的`.emacs`文件。 – 2012-09-25 08:26:39

2

要添加到少数人的意见,我目前正与设置以下修改键运行:

Caps-lock = Control 
Control = Option 
Option = Inactive 
Command = Command 

在Emacs的(顺便说一句,你提到Aquamacs,去Emacs.app代替)我然后通过首选项指定让Option = Command和Command = Option。这将两个最常用的按键(C和M)放置在主行的旁边,并紧靠空格键,我发现使用起来非常舒适。

为了配合Emacs.app,只需使用MacPorts安装它

sudo port install emacs-app 

另外,我打算把我的鼓励在那里与其他人;你必须长时间尝试,否则你将不会坚持下去。多次浏览本教程(Ch t),浏览Info手册(Ch r),如果您不知道如何使用Info,请阅读Info手册(Ch ih)(它确实是一个令人难以置信的文档系统),以及我听过的30个最精彩的提示,其中一个以非常简洁的方式写出,请访问Yegge的旧effective Emacs post。除此之外,真的关掉所有其他事情,只是为了它。当你遇到你不知道该怎么做的事情时,请抓住机会研究它,重复几次,然后继续前进。开始时你会放慢速度,但之后你会更加高效地编辑任何类型的文本。

3

您可以尝试以下扩展名:

(require 'smooth-scrolling) 
(require 'multiple-cursors) 
(require 'ace-jump-mode) 
(require 'expand-region) 
(require 'inline-string-rectangle) 
(require 'mark-more-like-this) 
(require 'key-chord) 
(require 'browse-kill-ring) 
(require 'idle-highlight-mode) 
(require 'htmlize) 
(require 'icicles) 
(require 'highlight-parentheses) 
(require 'golden-ratio) 
(require 'projectile) 
(require 'helm-projectile) 
(require 'rainbow-mode) 
(require 'anything-config) 
(require 'highlight-symbol) 
(require 'markerpen) 
(require 'flyspell) 

也可以区分TAB和C-I,那么你就会有一个更加简单的短键。

(define-key input-decode-map (kbd "C-i") (kbd "H-i")) 
(define-key input-decode-map (kbd "C-M-i") (kbd "H-M-i")) 
(global-set-key (kbd "H-i") 'kill-ring-save) 
(global-set-key (kbd "M-i") 'kill-ring-save) 
(global-set-key (kbd "H-M-i") 'ace-jump-line-mode) 
(global-set-key (kbd "C-c H-i") 'ido-switch-buffer) 

找到更多: https://github.com/whunmr/dotemacs/blob/master/init.el