branch: elpa/moe-theme
commit 5fb6a307c0d5f839bb48e03f94a58b783a459905
Author: ono hiroko <[email protected]>
Commit: ono hiroko <[email protected]>
Remove garbage + a part of dark history in my life
---
moe-theme-switcher.el | 148 --------------------------------------------------
1 file changed, 148 deletions(-)
diff --git a/moe-theme-switcher.el b/moe-theme-switcher.el
deleted file mode 100644
index 74473380ae..0000000000
--- a/moe-theme-switcher.el
+++ /dev/null
@@ -1,148 +0,0 @@
-;; moe-theme-switcher.el
-;; Author: kuanyui ([email protected])
-;; Date: 2013/05/11 11:39
-;;
-;; This file is not a part of GNU Emacs,
-;; but this file is released under GPL v3.
-
-(require 'moe-theme)
-
-(defvar moe-theme-switch-by-sunrise-and-sunset t
-"Automatically switch between dark and light moe-theme.
-
-If this value is nil, moe-theme will switch at fixed time (06:00 and 18:00).
-
-If this value is t and both calendar-latitude and calendar-longitude are set
-properly, the switching will be triggered at the sunrise and sunset time of the
-local calendar.
-
-Take Keelung, Taiwan(25N,121E) for example, you can set like this:
-
- (setq calendar-latitude +25)
- (setq calendar-longitude +121)"
-)
-
-(defvar moe-theme-which-enabled nil
- "Variable indicate which theme (moe-dark or light) is being used.")
-
-(defun moe-load-theme (switch-to)
- "Avoid unnecessary load-theme and screen flashing in GUI version Emacs"
- (cond ((equal switch-to 'light)
- (if (not (equal moe-theme-which-enabled 'light))
- (progn (moe-light)
- (setq moe-theme-which-enabled 'light)))) ;[FIXME] Maybe
unnecessary
- ((equal switch-to 'dark)
- (if (not (equal moe-theme-which-enabled 'dark))
- (progn (moe-dark)
- (setq moe-theme-which-enabled 'dark)))))) ;[FIXME] Maybe
unnecessary
-
-(solar-sunrise-sunset-string (calendar-current-date))
-(solar-sunrise-sunset (calendar-current-date))
-(solar-time-string )
-
-
-(defun switch-at-fixed-time ()
- (let ((now (string-to-number (format-time-string "%H"))))
- (if (and (>= now 06) (<= now 18))
- (moe-load-theme 'light)
- (moe-load-theme 'dark))
- nil))
-
-;; (Thanks for letoh!)
-;; Fix strange bahavior of sunrise-sunset when buffer's width is too narrow.
-(defun get-sunrise-sunset-string ()
- "get the real result from `sunrise-sunset'"
- (save-window-excursion
- (let ((regex "[0-9]+:[0-9]+[ap]m")
- (s (sunrise-sunset))
- (buf (get-buffer "*temp*")))
- (unless (and (stringp s)
- (string-match-p regex s))
- (when buf
- (with-current-buffer buf
- (let* ((s1 (buffer-string))
- (s2 (if (string-match-p regex s1)
- s1 nil)))
- (setq s s2)
- (kill-buffer buf)))))
- s)))
-
-;; Convert am/pm to 24hr and save to 24h/sunrise & 24h/set
-;; Excute every 24 hr
-(defun convert-time-format-of-sunrise-and-sunset ()
- (let (rise_set a b c d e f)
- (setq rise_set (get-sunrise-sunset-string))
- (if (string-match "0:00 hours daylight" rise_set) ;If polar-night
- (progn
- (setq 24h/sunrise 'polar-night
- 24h/sunset 'polar-night))
- (if (string-match "24:00 hours daylight" rise_set) ;If midnight-sun
- (progn
- (setq 24h/sunrise 'midnight-sun
- 24h/sunset 'midnight-sun))
- (progn ;Convert 12hr to 24hr
- (string-match
"\\([0-9][0-9]?\\):\\([0-9][0-9]\\)\\([ap]m\\).+\\([0-9][0-9]?\\):\\([0-9][0-9]\\)\\([ap]m\\)"
rise_set)
- (setq a (string-to-number (match-string 1 rise_set))
- b (string-to-number (match-string 2 rise_set))
- c (match-string 3 rise_set)
- d (string-to-number (match-string 4 rise_set))
- e (string-to-number (match-string 5 rise_set))
- f (match-string 6 rise_set))
- (if (equal c "pm")
- (setq 24h/sunrise (list (+ 12 a) b))
- (setq 24h/sunrise (list a b)))
- (if (equal f "pm")
- (setq 24h/sunset (list (+ 12 d) e))
- (setq 24h/sunset (list d e))))))))
-
-;; Excute every minute.
-(defun switch-by-locale ()
- (if (equal 24h/sunrise 'polar-night) ;If polar-night...moe-dark!
- (moe-load-theme 'dark)
- (if (equal 24h/sunrise 'midnight-sun) ;If midnight-sun...moe-light!
- (moe-load-theme 'light)
- (progn
- (let ((now (list (string-to-number (format-time-string "%H"))
- (string-to-number (format-time-string "%M")))))
- (if (and (or ;magic-logic [tm]
- (> (car now) (car 24h/sunrise))
- (and
- (= (car now) (car 24h/sunrise))
- (>= (second now) (second 24h/sunrise))))
- (or
- (< (car now) (car 24h/sunset))
- (and
- (= (car now) (car 24h/sunset))
- (< (second now) (second 24h/sunset)))))
- (moe-load-theme 'light)
- (moe-load-theme 'dark)
- ))))))
-
-(defun moe-theme-auto-switch ()
- "Automatically switch between dark and light moe-theme."
- (interactive)
- (if (boundp '24h/sunrise)
- (switch-by-locale)
- (switch-at-fixed-time))
- )
-
-(if (and
- (boundp 'calendar-longitude)
- (boundp 'calendar-latitude)
- (eql moe-theme-switch-by-sunrise-and-sunset t))
- (progn
- (convert-time-format-of-sunrise-and-sunset)
- (run-with-timer 0 (* 60 60 24)
'convert-time-format-of-sunrise-and-sunset))
- ()
- )
-
-(setq moe-timer (run-with-timer 0 (* 1 60) 'moe-theme-auto-switch))
-
-;; [FIXME] A minor-mode to enable/disable moe-theme-switcher
-(defun moe-theme-switcher-disable ()
- (interactive)
- (cancel-timer moe-timer))
-
-(moe-theme-auto-switch)
-
-(provide 'moe-theme-switcher)