我在Mac下启动Emacs会卡住一直没法启动, 除非这时候我三指向上启动工作区才会触发Emacs GUI窗口启动.
下面命令行可以重现:
open -a Emacs
已经测试过带配置文件或者 emacs -Q 的情况, 都是无法启动.
如果Mac下有哪位朋友已经有解决方案, 还请指点下, 谢谢.
我在Mac下启动Emacs会卡住一直没法启动, 除非这时候我三指向上启动工作区才会触发Emacs GUI窗口启动.
下面命令行可以重现:
open -a Emacs
已经测试过带配置文件或者 emacs -Q 的情况, 都是无法启动.
如果Mac下有哪位朋友已经有解决方案, 还请指点下, 谢谢.
大佬,我這裏從命令行啓動還是別的啓動方法都沒有問題哦,
open -a Emacs
Emacs 版本:
GNU Emacs 26.1 (build 1, x86_64-apple-darwin14.5.0, NS appkit-1348.17 Version 10.10.5 (Build 14F2511)) of 2018-05-31
macos 版本:
macOS Mojave 10.14.2
試試重裝 Emacs?
emacs-mac
macos 10.14
没问题 但是使用过程中有偶尔卡死现象
请问是用的 Emacs 26.1 with Mojave 吗? 这是个已知 bug, 主分支上已经修复了, 讨论见此
Emacs rendering is broken in MacOS Mojave
如果确实是这个问题引起的,解决方法也很简单, Reddit 讨论里给出了两种办法, 我提供另外一种 (对于 Homebrew 用户):
$ brew edit emacs
修改 head 到 emacs-26 分支上,
diff --git a/Formula/emacs.rb b/Formula/emacs.rb
index 1305daf..807bbe5 100644
--- a/Formula/emacs.rb
+++ b/Formula/emacs.rb
@@ -14,7 +14,7 @@ class Emacs < Formula
end
head do
- url "https://github.com/emacs-mirror/emacs.git"
+ url "https://github.com/emacs-mirror/emacs.git", :branch => "emacs-26"
depends_on "autoconf" => :build
depends_on "gnu-sed" => :build
brew install emacs --with-cocoa --HEAD
我是自己源码编译的,我回来更新一下git试一下吧。
感觉是mac升级后出问题了
我自己编译的和 macos port 都没有问题,很顺畅,启动2秒内
怎么这么快,我的emacs一般要十来秒
试试我的配置: Centaur Emacs。
是这个吧?GitHub - seagle0128/.emacs.d: Centaur Emacs - A Fancy and Fast Emacs Configuration 已经加星了,我抽时间看看
是的,试试看不会让你失望的
直接分析你的代码的话,得花一些时间,能简单解释一些,你的快速启动是基于什么吗?lazy?我搜索什么关键字,方便分析代码?
我去,简直是膜拜呀,你的是框架级的配置,我的配置弱爆了。不过我还得花些时间熟悉一下。
写的很清楚,又不像spacemacs那么复杂
你是说分析代码吗?我才从Vim转过来两个多月,所以,需要花些时间,好在我有一些lisp的基础。
主要利用了use-package,lazy loading,还有另外一些优化。尽量做到简洁快速,在性能和功能间达到一个平衡。
目前使用 Mac os 14, Emacs Mac Port 7.2,Spacemacs develop,在使用 treemacs 或者 (c-x, c-f) 打开 python 文件时会出现卡死情况。
使用 emacs -Q 打开文件没有问题。。
我源码编译了十几个版本都是会在启动的时候卡住了, 感觉Mac mojave的图形绘制API变了, 导致Emacs启动的时候总是崩溃.
最后在 Emacs For Mac OS X: Releases, Pretests & Nightlies 下载了26.1.92 的版本解决了问题, 直接启动, 不会崩溃了. 感觉开发者在 Emacs 26 针对Mac的优化的补丁并没有合并到 master 分支 (没有深入研究)
从Emacs Git切换到 Emacs 26.1.92 后, 同时按 Option 和 Command 的时候, Emacs 26 会认为是 Super + Alt + Shift + key, 折腾了一下, 先去掉 Karabiner 中 Option 和 Command 按键的交换, 然后在配置中写入以下代码, 搞定:
;; Mac平台下交换 Option 和 Command 键。
(when (featurep 'cocoa)
(setq mac-option-modifier 'super)
(setq mac-command-modifier 'meta))
再学 doom emacs 那样预先编译一下或许会更快
试过了,提高不明显,还可能带来副作用。