You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Fedora(GNOME)下Emacs不跟随系统深色主题及顶部栏主题不一致的解决求助

Fedora(GNOME)下Emacs不跟随系统深色主题及顶部栏主题不一致的解决求助

最近在Fedora的GNOME桌面用Emacs时碰到个闹心的小问题:明明系统已经开了深色主题,可Emacs却完全不“跟风”,界面还是浅色的,连顶部栏都和系统主题格格不入,看着特别别扭。先给大家看看我的Emacs窗口现状:

Emacs窗口

折腾了好一会儿,终于找到几个好用的解决办法,分享给同样遇到这个问题的朋友:

  • 让Emacs自动跟随系统主题切换
    想要Emacs像其他GNOME原生应用一样,自动适配系统的深色/浅色模式切换?可以在Emacs的配置文件(通常是~/.emacs或者~/.emacs.d/init.el)里添加这段代码:

    (add-hook 'after-init-hook
              (lambda ()
                (let ((theme (frame-parameter nil 'background-mode)))
                  (if (eq theme 'dark)
                      (load-theme 'modus-vivendi t)
                    (load-theme 'modus-operandi t)))))
    

    Modus系列是Emacs自带的官方主题,风格简洁清爽,能完美对接系统主题的切换逻辑。保存配置后重启Emacs就生效啦。

  • 设置和GNOME风格统一的深色主题
    如果你想让Emacs的视觉风格和GNOME系统更贴合,可以先安装gnome-themes-extra包,打开终端输入:

    sudo dnf install gnome-themes-extra
    

    之后在Emacs配置文件里添加启用Adwaita深色主题的代码:

    (load-theme 'adwaita-dark t)
    

    Adwaita是GNOME的原生主题,启用后Emacs的顶部栏和界面风格会和系统完美统一。

  • 用GNOME Tweaks一键强制适配
    嫌改配置麻烦?那试试GNOME Tweaks工具吧。先安装它:

    sudo dnf install gnome-tweaks
    

    打开Tweaks后,找到「外观」选项卡,把「应用程序」的主题改成你正在使用的深色主题(比如Adwaita-dark),Emacs就能自动同步系统主题了。

如果以上方法都不管用,建议检查下Emacs的版本,部分旧版本对GNOME系统主题的支持不够完善,升级到最新版应该能解决问题~

备注:内容来源于stack exchange,提问作者GlydeR

火山引擎 最新活动