根据时间切换 emacs theme


#1

找了些资料 都有点老了 要么就是报错 找到一个靠谱的 简单易懂 根据时间 自动切换 明暗主题 需要的自取

(setq day-theme 'light-blue)
(setq dark-theme 'misterioso)
(defun synchronize-theme ()
    (setq hour
        (string-to-number
            (substring (current-time-string) 11 13)))
    (if (member hour (number-sequence 6 18))
        (setq now day-theme)
        (setq now dark-theme))
    (load-theme now)
)
(run-with-timer 0 3600 'synchronize-theme)

有人指出 2个包 也分享出来把 theme-changer 根据经纬度变换 不能指定具体时间 circadian 都可以指定 自取吧

[Mac] 根据环境光自动调整主题


#2

也可以买个好点的台灯


#3

也可以使用 f.lux 控制屏幕颜色。


#4

那条语句是6点和18点写死的吗?

emacs的calendar有个传统功能就是在给定的任意位置的经纬度后可以算出这个位置在任意日期的日出日落时刻,误差不超过几分钟。我在没有手机前一直用这个功能玩儿呢。这样你的主题可以和宇宙联动实现全自动了!


#5

melpa上已经有一个了 叫theme-changer 给定经纬度 会自动根据日出落时间切换。。 我想自己定时间就用了这个小时的 :)


#6

这个也很好,小即是美。


#7

太好了,最近正在找这个,非常nice。


#8

前面说的 change-theme 应该是指 melpa 上的 theme-changer package,以前我也用过,效果还可以,不过现在换成使用 circadian 了。

theme-changer 不支持指定具体的时间,circadian 除了指定 sunrise sunset 外,还可以指定绝对的时间。


#9

谢谢指正 已经改成 theme-changer


#10

有人指出 2个包 也分享出来把 theme-changer 根据经纬度变换 不能指定具体时间 circadian 都可以指定
自取吧


#11

记得之前看过一篇博文,作者通过mac上的感光硬件(术语不知道叫啥,也不记得是内置还是外置了),根据当前光的强弱来变换主题。


#12

https://matthewbilyeu.com/blog/2018-04-09/setting-emacs-theme-based-on-ambient-light


#13

这个也很棒 收藏一下 收藏一下