summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--elchemy-dashboard.el91
-rw-r--r--elchemy-personal.el4
-rw-r--r--elchemy-user.el17
3 files changed, 5 insertions, 107 deletions
diff --git a/elchemy-dashboard.el b/elchemy-dashboard.el
deleted file mode 100644
index 9df76cf..0000000
--- a/elchemy-dashboard.el
+++ /dev/null
@@ -1,91 +0,0 @@
-(defun elchemy/create-dashboard (&optional RECREATE)
- "Create the user dashboard"
- (interactive)
- (let ((buffer (get-buffer-create "*Dashboard*")))
- (switch-to-buffer buffer)
- (unless (and buffer-read-only (not RECREATE))
- (read-only-mode -1)
- (erase-buffer)
- (when (file-exists-p (concat elchemy/elchemy-root elchemy/dashboard-splash))
- (insert-image (create-image (concat elchemy/elchemy-root elchemy/dashboard-splash) nil nil :scale 0.25))
- (insert "\n"))
- (let ((start (point)))
- (insert elchemy/dashboard/header-text)
- (add-text-properties start (point)
- `(face (:height ,elchemy/dashboard/header-size))))
- (insert "\n")
- (when (file-exists-p (concat elchemy/elchemy-root elchemy/elchemy-headings-file))
- (elchemy/display-tabular-button-alist
- (elchemy/read-alist-file (concat elchemy/elchemy-root elchemy/elchemy-headings-file))
- elchemy/dashboard/heading-columns elchemy/dashboard/heading-padding)
- (insert "\n"))
- (when (file-exists-p (concat elchemy/elchemy-root elchemy/elchemy-projects-file))
- (let ((start (point)))
- (insert "Projects")
- (add-text-properties start (point)
- `(face (:height ,elchemy/dashboard/subheader-size))))
- (insert "\n")
- (elchemy/display-tabular-button-alist
- (elchemy/read-alist-file (concat elchemy/elchemy-root elchemy/elchemy-projects-file))
- elchemy/dashboard/projects-columns elchemy/dashboard/projects-padding)
- (insert "\n"))
- (ignore-errors
- (setq agenda-items (mapcar #'(lambda (x) (elchemy/get-agenda-items x 3)) elchemy/dashboard-agenda-titles)
- agenda-max-count (apply 'max (mapcar #'(lambda (x) (length x)) agenda-items))
- agenda-max-length (apply 'max (mapcar #'(lambda (x) (apply 'max (mapcar #'(lambda (y) (length y)) x))) agenda-items))
- agenda-heading-format-string "")
- (let ((start (point)))
- (insert "Agenda")
- (add-text-properties start (point)
- `(face (:height ,elchemy/dashboard/subheader-size))))
- (insert "\n")
- (dotimes (_ (- (length elchemy/dashboard-agenda-titles) 1))
- (setq agenda-heading-format-string (concat agenda-heading-format-string "%-" (format "%d" (+ agenda-max-length elchemy/dashboard/agenda-padding)) "s")))
- (setq agenda-heading-format-string (concat agenda-heading-format-string "%s\n"))
- (insert (apply 'format agenda-heading-format-string elchemy/dashboard-agenda-titles))
- (dotimes (i agenda-max-count)
- (dotimes (c (length elchemy/dashboard-agenda-titles))
- (if (eq (% (+ c 1) (length elchemy/dashboard-agenda-titles)) 0)
- (insert (format "%s\n"
- (elchemy/replace-nil (nth i (nth c agenda-items)))))
- (insert (format
- (concat "%-" (format "%d" (+ agenda-max-length elchemy/dashboard/agenda-padding)) "s")
- (elchemy/replace-nil (nth i (nth c agenda-items)))))
- )))
- (insert "\n")
- (let ((start (point)))
- (insert "Overdue")
- (add-text-properties start (point)
- `(face (:height ,elchemy/dashboard/subheader-size))))
- (insert "\n")
- (setq overdue-s (elchemy/format-processed-agenda (mapcar 'elchemy/process-agenda-heading (org-ql-select (org-agenda-files) `(and (todo "STRT" "WAIT" "TODO" "CYCL") (ts :from ,(- elchemy/schedule-lookahead) :to -1)) :sort '(todo priority date)))))
- (if (eq (length overdue-s) 0)
- (insert "Yay, nothing here!\n")
- (insert overdue-s))
- (insert "\n")
- (let ((start (point)))
- (insert "Upcoming")
- (add-text-properties start (point)
- `(face (:height ,elchemy/dashboard/subheader-size))))
- (insert "\n")
- (setq upcoming-s (elchemy/format-processed-agenda (mapcar 'elchemy/process-agenda-heading (org-ql-select (org-agenda-files) `(and (todo "STRT" "WAIT" "TODO" "CYCL") (ts :from today :to ,elchemy/schedule-lookahead)) :sort '(todo priority date)))))
- (if (eq (length upcoming-s) 0)
- (if (eq (length overdue-s) 0)
- (insert "You are free!\n")
- (insert "Time to work on that backlog!\n"))
- (insert upcoming-s))
- (insert "\n"))
- (insert (buttonize "Refresh" '(lambda (x) (elchemy/recreate-dashboard))))
- (insert "\n")
- (button-mode +1)
- (read-only-mode +1)
- (setq-local truncate-lines t)
- (local-set-key (kbd "r") 'elchemy/recreate-dashboard)
- (goto-char (point-min)))))
-
-(defun elchemy/recreate-dashboard ()
- "Recreate the dashboard"
- (interactive)
- (elchemy/create-dashboard t))
-
-(provide 'elchemy-dashboard)
diff --git a/elchemy-personal.el b/elchemy-personal.el
index 7744570..2e4b16d 100644
--- a/elchemy-personal.el
+++ b/elchemy-personal.el
@@ -36,10 +36,6 @@
(get-buffer-process (current-buffer))
nil "_"))))
-
-(when (require 'elchemy-dashboard nil t)
- (elchemy/create-dashboard))
-
;; Face Color Customizations
(unless (or elchemy/user/dark-theme elchemy/user/light-theme)
(add-hook 'minibuffer-setup-hook
diff --git a/elchemy-user.el b/elchemy-user.el
index cd78701..4f9aaf9 100644
--- a/elchemy-user.el
+++ b/elchemy-user.el
@@ -2,16 +2,6 @@
(setq user-full-name "Sergey Bilovytskyy"
user-mail-address "sergey@sbrl.xyz")
-;; Dashboard
-(setq elchemy/dashboard/header-text "Dashboard"
- elchemy/dashboard/heading-columns 4
- elchemy/dashboard/heading-padding 2
- elchemy/dashboard/projects-columns 4
- elchemy/dashboard/projects-padding 2
- elchemy/dashboard/agenda-padding 2
- elchemy/dashboard/header-size 4.0
- elchemy/dashboard/subheader-size 2.0)
-
;; General Settings
(setq default-directory "~/"
default-input-method "ukrainian-computer"
@@ -24,7 +14,7 @@
;; User Options
(setq elchemy/user/dark-theme nil
- elchemy/user/light-theme nil
+ elchemy/user/light-theme t
elchemy/user/transparency 100
elchemy/user/font-height 160
elchemy/user/font-name "azuki_font"
@@ -67,6 +57,9 @@
;; Assembly
(add-to-list 'auto-mode-alist '("\\.inc\\'" . asm-mode))
+;; EPUB
+(add-to-list 'auto-mode-alist '("\\.epub\\'" . nov-mode))
+
;; Org Mode Options
(org-babel-do-load-languages
'org-babel-load-languages
@@ -128,7 +121,7 @@
(json "https://github.com/tree-sitter/tree-sitter-json")
(make "https://github.com/alemuller/tree-sitter-make")
(markdown "https://github.com/ikatyang/tree-sitter-markdown")
- (python "https://github.com/tree-sitter/tree-sitter-python")
+ (python "https://github.com/tree-sitter/tree-sitter-python" "v0.23.6")
(rust "https://github.com/tree-sitter/tree-sitter-rust")
(toml "https://github.com/tree-sitter/tree-sitter-toml")
(tsx "https://github.com/tree-sitter/tree-sitter-typescript" "master" "tsx/src")