【讨论】当我们选择主题的时候究竟在选什么?

:face_vomiting:竟然起了一个“知味”十足的标题……

前段时间尝试了不少经典热门的theme

以及一些后起之秀:

nano emacs

bespoke theme

各有千秋,尝试过后不禁有几点体会或疑惑:我们在选择主题的时候最看重什么?

1、功能:更多的语法高亮,更多的插件适配,更多的自定义。这应该算是编辑器主题的最本质需求。

2、美观:除了提高编程的效率之外,主题的配色、排版等外观也是重点,尤其对于emacs这种出厂即丑到巅峰的编辑器来说。

3、健康:深入了解之后还发现有的主题会注重保护眼睛。例如减少蓝光,这一需要貌似可以用redshift f.lux等软件来实现。又例如根据环境明暗系统亮变化时间点来切换dark/light主题。再例如配合视觉习惯,发明“自适应亮度对比度”。

对比一番下来,最喜欢nano theme的排版(例如modeline在上)和配色,但是在功能上则逊色很多,而 Zenburn Theme等经典主题虽然没那么惊艳,但是语法高亮和插件的适配确实很到位。

本想把两者hack在一起,取长补短,奈何自己的水平差,hack在一起总会出现一些小bug。

1、虽然主题是个老生常谈的话题,但是还没看到认真讨论如何选择主题的帖子。在此借机请教一下大家,平时怎样选主题,甚至是制作自己的主题的?

2、这个“自适应亮度对比度”能用emacs实现吗?打开emacs之后,主题前景色后景色随时间而渐变?

3、BTW,nano emacs真的特别难配置……感觉nano的代码逻辑跟其他常用的theme不大一样,hack起来很麻烦,连切换个dark theme都困难。有大佬配置好nano-emacs的吗?借来参考一下~

1 个赞

主题这东西只要自己拆一个出来剩下的就是改改颜色什么的了,当然如果把排版这些算上就比较麻烦了,我平时自己用的就是自己一开始从 nano emacs 拆出来的,基本没用到暗色,白底黑字用了挺长时间了没有像其他主题那种腻了的感觉。

ps: readme 好像没有更新,关于 modeline 的选项可能有问题

1 个赞

哈哈 刚才编辑帖子的时候就想起你这个project,因为之前配置根据系统亮暗切换主题的时候参考了你的readme,谢谢! :pray:

zenburn和nano theme都用过,感觉所有主题都存在美学和功能(或护眼)的trade off,特别是light theme。我还是偏向功能和护眼为主,感觉modus的设计理念比较适合我

1 个赞

我以前是用赛博朋克那个主题的,特别喜欢,可惜覆盖的 face 不全了,后来也切换到 modus 了,一开始觉得很不好看,但用了一个星期,现在也觉得看起来不错,所以我的感觉是,排名靠前的主题都值得试一段时间,即使第一眼不喜欢,也许看上几天就喜欢了。

1 个赞

Modus 高度定制,支持的插件功能也多。配色也好看,当然不喜欢可以自己再改改配色。我试了nano-theme.el后又转回modus了。

我用的也是 Modus,同时有黑白的主题。

其实主题就是个习惯问题,用的多了就适应了。

由于以前用了很久 Purcell 的配置,现在已经习惯了 tomorrow-bright 这个黑色主题。

我现在用 doom-one-light 。没有黑色产生的压抑感,整个 Emacs 感觉就像一个普通的文本,简单、轻盈。

另,听一个医生说,眼睛看白底黑字会比较放松。但我没有看到过相关的论文,感觉上也没有感到特别的差异。先用着吧。

自带的一直很优秀

我选择一个 theme 基于两个考虑:

1, 纳入考虑的 theme 是绿色的

必须能够通过 enable-theme disable-theme 进行启用禁用,禁用后不得有残留。 所以像 nano-emacselegant-emacs 这样的即使再好看也不敢用。

2, 满足个人偏好

所谓护养、防蓝光个人感觉是信则有,不信则无,为求安心装了 redshift 在桌面系统层 面进行解决了。所以对于 theme 则主要是依据个人偏好进行选择。

我的视力比较差,并且主要是编程,所以选择的 theme 都是对比度比较高又比较素的,试 用过很多 theme,现在固定在 solarized-dark-high-contrast poet poet-dark-monochrome 中切换。

一直用sanityinc-tomorrow-blue。老年人喜欢这个turbo pascal蓝。

我会觉得默认主题兼容性没得说,其他的主题多少都有点问题。时不时就会出现浅色底白字,深色底黑字这种情况。

你看看2020年的问卷结果,默认主题用的还是最多的。

https://emacssurvey.org/2020/which-theme-do-you-use.svg

1 个赞

我也是默认, describe face 的时候看到基本上都是 inherit 几个 font lock,改几个差不多就能满足大部分场景了。