Emacs 29 目前适合作为日常生产力工具了么?

我用着没什么问题啊

可以用。莫麻哒。

前几天macos momterey中build了emacs-plus@29,结果无法运行,报错了,然后没有耐心就又用回了28,一下是构建时候的命令

brew install emacs-plus@29 --with-ctags --with-xwidgets --with-imagemagick --with-modern-black-dragon-icon --with-native-comp --with-debug

1 个赞

用这个解决,参考 emacs@29 --with-native-comp linkage errors · Issue #476 · d12frosted/homebrew-emacs-plus · GitHub

ln -sf /usr/local/Cellar/emacs-plus@29/29.0.50/lib/emacs/29.0.50/native-lisp /opt/homebrew/Cellar/emacs-plus@29/29.0.50/Emacs.app/Contents

好的,明天去公司试试。谢谢指导

macbook pro 的键位使用 emacs 难用的很啊。要自己改键位的么?

改了caps->ctrl和enter组合按为ctrl。

苹果本身的键盘就很难用,HHKB 就很好用:-)

还有一个问题,我在帮同组的伙伴配emacs,她是win本。我想把win键映射到Hyper,参考了 Emacs: How to Bind Super Hyper Keys 还是绑不上。

(setq w32-pass-lwindow-to-system nil)
(setq w32-lwindow-modifier 'hyper) ; Left Windows key

(setq w32-pass-rwindow-to-system nil)
(setq w32-rwindow-modifier 'hyper) ; Right Windows key

最后把win键映射成menu键,

(setq w32-pass-apps-to-system nil)
(setq w32-apps-modifier 'hyper) ; Menu/App key

勉强能用,但经常会有些奇怪的问题。虽然她不怎么用win键,把win键完全改掉也太粗暴了。:joy:大家有什么建议么?

需要使用 “w32-register-hot-key” 启用这个modifer key

(setq w32-lwindow-modifier 'super)
(setq w32-rwindow-modifier 'super)
(w32-register-hot-key [s-])

(setq w32-lwindow-modifier 'hyper)
(setq w32-rwindow-modifier 'hyper)
(w32-register-hot-key [H-])

(w32-register-hot-key KEY)

On Windows versions since NT, KEY can also be specified as just a modifier key, [M-], [s-] or [H-], to indicate that all combinations of the respective modifier key should be processed by Emacs instead of the operating system. The super and hyper modifiers are interpreted according to the current values of ‘w32-lwindow-modifier’ and ‘w32-rwindow-modifier’. For instance, setting ‘w32-lwindow-modifier’ to ‘super’ and then calling ‘(w32-register-hot-key [s-])’ grabs all combinations of the left Windows key to Emacs as keys with the Super modifier, but leaves the right Windows key free for the operating system keyboard shortcuts.

2 个赞

event-apply-hyper-modifier 把 win键用 ahk 绑定到 C-x @ h

非常非常感谢!我让小伙伴试一下。 另外,在windows系统中,hyper如果绑到windows,中文输入法下按 H-f 不是调用 H-f 绑定的命令,而是显示中文输入法输f的界面。这种情况正常么?

用 M1 上用 emacs-plus 29 大概半年了,没遇到问题。

1 个赞

在M1中,你是如何编译emacs-plus 29的?

直接两条命令,别的什么都不用干:

brew install d12frosted/emacs-plus/emacs-plus@30 --with-dbus --with-debug --with-mailutils --with-no-frame-refocus --with-xwidgets
osascript -e 'tell application "Finder" to make alias file to posix file "/opt/homebrew/opt/emacs-plus@30/Emacs.app" at POSIX file "/Applications"'

开始使用 Emacs 30~

2 个赞

请问你在mac上用的哪个版本的emacs?

我是通过 macports 安装依赖,然后自己编译 Emacs-29 分支,也可以直接用 macports 安装,但更新太慢。

通过 wget 下载源码,这样快点,比如目前最新的 emacs-29:

# 下载
wget https://git.savannah.gnu.org/cgit/emacs.git/snapshot/emacs-45618447203a1332125106bf2d7a61f2c53e3939.tar.gz
# 解压缩
tar -xjvf emacs-45618447203a1332125106bf2d7a61f2c53e3939.tar.gz

如果用的是 brew,建议安装 emacs-plus 或者通过脚本build-emacs-for-macos 编译安装。

1 个赞

emacs 29的测试版Windows包并不包含SQLite支持

emacs29 Windows版,但是加入tree-sitter和sqlite的dll支持

1 个赞

支持了 Emacs 27.1–29.1 (Recommended: 29.1 + native-comp )