我使用prelude作为基础Emacs配置.我已经从软件包管理器安装了很多软件包,我想在另一台机器上使用我的设置.
我不想携带已安装的软件包,也不想手动创建列表.
将所有已安装的软件包列表保存到prelude-package.el或任何其他文件中的方法是什么,这样当我将此配置带到我的其他机器时,它们会在首次使用时自动安装到那里?
在我看来,内置在Emacs 24上的新Package系统在正确加载和初始化已安装的软件包时存在一些缺陷.
最近,我升级到Emacs 24.1.1,它于2012年10月6日发布,我一直在尝试使用内置的软件包系统,并使用它安装了几个软件包,但它们都有类似的问题,与自动加载和初始化.
例如,我使用一个名为的包smex,它提供了使用M-x和弦的增强功能.它需要你定义一个键M-x,所以我添加(global-set-key (kbd "M-x") 'smex)到我的init.el文件中.但是在启动emacs之后我按下M-x和弦,我收到消息"符号的函数定义是无效的:smex" ...如果我也放入(require 'smex)我的init.el文件,我收到错误消息"文件错误:无法打开加载文件,smex "
将smex的位置添加到load-path变量使得它按预期工作,但是,这似乎打破了首先拥有包系统的整个目的......
有什么想法吗?有没有更好的方法,或者我们现在忍受这个限制?
我想删除我安装的几个软件包.当我调用时package-list-packages,我注意到有一个' d'(删除标记)命令和' x'(执行).但是,似乎这只是从列表中删除包名称/描述而不是下面的实际文件~/.emacs.d/elpa.我做错了什么或错过了什么?当然必须有一些方法来删除已安装的包.
在emacs 24中检查和发送电子邮件的当前权威方式是什么?
我检查了以下SO链接:
并了解包含smtpmail,rmail,以及.authinfo文件的软件包.
我创建了一个表单的.authinfo文件:
machine mail.example.org port 25 login myuser password mypassword
并将以下内容添加到我的init.el文件中:
(setq smtpmail-stream-type 'ssl)
(setq smtpmail-smtp-server "smtp.gmail.com")
(setq smtpmail-smtp-service 465)
Run Code Online (Sandbox Code Playgroud)
(作为第二个链接,超级用户,说.)
但是当我运行时M-x rmail,它仍然连接到我的计算机的本地电子邮件地址,而不是我的Gmail.设置登录和读/写电子邮件需要什么?(如果你可以包括击键,那也会非常有帮助.)
我正在运行ubuntu 12.04,如果这有任何区别的话.
我在fedora 17上使用emacs 24.我安装了markdown-mode,但每当我尝试通过输入C-c C-c m或C-c C-c p在emacs中导出文件时,我都会收到此错误:/bin/bash: markdown: command not found.这是一个截图:

我读到这可能是路径变量的问题,所以我env通过$ env在命令行和Esc-! env RETemacs中键入来比较变量.我发现路径变量描述在两种情况下都是相同的.
这个错误是什么?如何修复它并从emacs中执行markdown预览?
我的.emacs中有以下代码:
(if (null window-system)
(progn
(require 'color-theme)
(color-theme-initialize)
(color-theme-simple-1)))
Run Code Online (Sandbox Code Playgroud)
当我在控制台上打开Emacs时,我可以验证该progn块是否运行(通过a (message "Got here.")),并且我看到一个闪存,表明颜色主题已加载,但如果已加载,则会被其他内容覆盖.如果在加载后打开我的.emacs文件并使用上面提交的块C-x C-e,它就可以了.我试过做:
(add-hook 'after-init-hook
(lambda ()
(progn
(require 'color-theme)
(color-theme-initialize)
(color-theme-simple-1))))
Run Code Online (Sandbox Code Playgroud)
但是行为是一样的.
可能与我使用Emacs 24相关,并且此代码不在我的.emacs中,而是在〜/ Dropbox/.emacs中,它是从我的.emacs加载的.
另外一个注意事项:我已经尝试过了M-x customize-themes,但是这些都没有在控制台上可以接受.它们或者产生几乎不可读的光主题,或者大部分文本是不可见的.
我最近从Emacs 23升级到Emacs 24.自升级以来,我似乎失去了调用"Mx python-shell"(!)的能力.
发生了什么?包含的python模式是否不再附带此功能?
使用Emacs 23:
? /usr/local/bin/emacs -Q
Describe function: python-shell
python-shell is an interactive autoloaded Lisp function in
`python.el'.
Run Code Online (Sandbox Code Playgroud)
使用Emacs 24:
? /Applications/Emacs.app/Contents/MacOS/Emacs -Q
Describe function: python-shell [No match]
Run Code Online (Sandbox Code Playgroud) 我最近尝试了Sublime Text 2,我发现Goto Anything非常适用于导航源代码(Ctrl-P文件@符号似乎工作得非常好).Emacs有类似的东西吗?最好的东西只是工作,没有大量的定制elisp.
到目前为止我尝试过的:
我已经习惯了multi-occur-in-matching-buffers,但似乎也无法满足"即时"标准.
我目前一起使用#2和#3,作为Goto Anything的不良替代品.
如果不是Goto Anything的精确克隆,那么我可以使用天真的即时搜索解决方案(一个在所有打开的缓冲区中搜索给定字符串并动态显示结果的解决方案).所以这也是可以接受的.
我使用Emacs 24.2,所以任何仅限v24的elisp也没问题.
编辑:我给头盔再出手,在event_jr的建议,我发现它确实在所有打开的缓冲区支持即时搜索.helm-multi-occur+ helm-follow-mode出乎意料地接近满足我的需求,唯一的小问题是(冒着挑剔的风险):
我跑步时没有找到(见下面的编辑#2)helm-follow-mode 自动开启的方法helm-multi-occur.我必须手动调用它C-c C-f.有人想用一小段elisp来拍摄吗?
它不像ST2的Goto Anything那样"智能"(也就是说,它不能理解源代码中的"符号",就像Goto Anything那样).
编辑#2:现在我已经获得了大部分Goto Anything,感谢下面的event_jr答案(当然,感谢Helm的创作者Thierry Volpiatto).我衷心向所有寻找类似功能的人推荐它.以下是我目前正在使用的elisp:
;; instant recursive grep on a directory with helm
(defun instant-rgrep-using-helm ()
"Recursive grep in a directory."
(interactive) …Run Code Online (Sandbox Code Playgroud) 这些是一些很棒的选项:emacs-24,evil-mode(在emacs中使用vim绑定)和undo-tree.
但是,当我处于编辑模式(插入模式)时,我有时会在遇到转义和离开插入模式之前跳转一下数字插入,删除等.
"撤消"将整个插入(包括删除)作为一个编辑.例如,我无法撤消我意外删除的段落而没有撤消整个删除!
有没有什么办法解决这一问题?
以下是一些相关链接:
以下是转换某些vim命令的vim映射,以便它们可以撤消:
inoremap <c-u> <c-g>u<c-u>
inoremap <c-w> <c-g>u<c-w>
inoremap <End> <C-g>u<End>
inoremap <BS> <c-g>u<BS>
inoremap <CR> <c-g>u<CR>
inoremap <del> <c-g>u<del>
Run Code Online (Sandbox Code Playgroud)
所需要的是emacs evil undo-tree内部的撤消模式除了离开插入模式之外还要跟踪其他事件.例如,您应该能够长时间保持插入模式,然后撤消任何类型的删除,剪切,粘贴.
在emacs 24中,应用颜色主题的顺序似乎很重要.如果你做Mx color-theme-select,这是显而易见的.你的命令
有没有人对此问题有任何见解?
我希望能够在不重新启动的情况下切换以下颜色主题:
我想我需要相当于emacs的css-reset.另一个非常宝贵的提示是,如果你使用邪恶,那么你需要这条线,否则你的光标会保持黑色,这对于黑暗主题来说是可怕的:
(setq evil-default-cursor t)
Run Code Online (Sandbox Code Playgroud)
这是一个相关问题:在Emacs中切换颜色主题(<v.24).我使用的是Emacs 24.0.我发布这个问题是因为我正在寻找24.1之前的解决方法,或者如果24.1足够稳定可能会提供建议.
emacs24 ×10
emacs ×8
dot-emacs ×4
emacs-helm ×1
email ×1
evil-mode ×1
installation ×1
markdown ×1
python ×1
smtp ×1
sublimetext ×1
vim ×1