summaryrefslogtreecommitdiff
path: root/.emacs.d/modules
diff options
context:
space:
mode:
Diffstat (limited to '.emacs.d/modules')
-rw-r--r--.emacs.d/modules/thanos-aesthetics.el31
-rw-r--r--.emacs.d/modules/thanos-ai.el36
-rw-r--r--.emacs.d/modules/thanos-books.el10
-rw-r--r--.emacs.d/modules/thanos-dev.el18
-rw-r--r--.emacs.d/modules/thanos-dired.el11
-rw-r--r--.emacs.d/modules/thanos-elfeed.el11
-rw-r--r--.emacs.d/modules/thanos-eshell.el11
-rw-r--r--.emacs.d/modules/thanos-markdown.el17
-rw-r--r--.emacs.d/modules/thanos-mu4e.el11
-rw-r--r--.emacs.d/modules/thanos-multimedia.el11
-rw-r--r--.emacs.d/modules/thanos-org-config.el79
-rw-r--r--.emacs.d/modules/thanos-org-roam.el105
-rw-r--r--.emacs.d/modules/thanos-org-themes.el142
-rw-r--r--.emacs.d/modules/thanos-org.el273
-rw-r--r--.emacs.d/modules/thanos-packages.el31
-rw-r--r--.emacs.d/modules/thanos-pass.el14
-rw-r--r--.emacs.d/modules/thanos-random.el32
-rw-r--r--.emacs.d/modules/thanos-vm.el54
-rw-r--r--.emacs.d/modules/thanos-yeetube.el95
19 files changed, 384 insertions, 608 deletions
diff --git a/.emacs.d/modules/thanos-aesthetics.el b/.emacs.d/modules/thanos-aesthetics.el
index 91ca3a7..6f27a52 100644
--- a/.emacs.d/modules/thanos-aesthetics.el
+++ b/.emacs.d/modules/thanos-aesthetics.el
@@ -19,9 +19,14 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-
-;;
-
+;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
+;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
+;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
+;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
+;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
+;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
(setf inhibit-startup-message t)
@@ -74,7 +79,7 @@
(if is-hermes '(default ((t (:inherit nil :height 120 :family "Jetbrains Mono"))))
'(default ((t (:inherit nil :height 135 :family "Jetbrains Mono"))))))
-(load-theme 'monokai)
+(load-theme 'molokai)
(doom-modeline-mode 1)
@@ -138,5 +143,23 @@
(add-hook 'ibuffer-mode-hook 'nerd-icons-ibuffer-mode)
+(defun thanos/markdown-theme ()
+ "Adjust height for markdown"
+ (interactive)
+ (dolist
+ (face
+ '(markdown-header-face-1 :height 2.0))))
+
+(require 'markdown-mode)
+(setq markdown-header-scaling t)
+(add-to-list 'auto-mode-alist '("\\.md\\'" . gfm-mode))
+(setq markdown-command "multimarkdown")
+
+(electric-pair-mode 1)
+(auto-insert-mode 1)
+(global-flycheck-mode)
+(global-set-key (kbd "M-.") 'xref-find-definitions)
+(global-set-key (kbd "C-c l") 'display-line-numbers-mode)
+
(provide 'thanos-aesthetics)
;;; thanos-aesthetics.el ends here
diff --git a/.emacs.d/modules/thanos-ai.el b/.emacs.d/modules/thanos-ai.el
deleted file mode 100644
index 387e71d..0000000
--- a/.emacs.d/modules/thanos-ai.el
+++ /dev/null
@@ -1,36 +0,0 @@
-;;; thanos-ai.el --- -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2023 Thanos Apollo
-
-;; Author: Thanos Apollo <[email protected]>
-;; Keywords:
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;
-
-;;; Code:
-
-(require 'gptel)
-
-(define-key 'thanos/applications-map (kbd "c") 'gptel-send)
-
-(setf gptel-api-key (password-store-get "chatgpt/api")
- gptel-model 'gpt-4-32k)
-
-
-(provide 'thanos-ai)
-;;; thanos-ai.el ends here
diff --git a/.emacs.d/modules/thanos-books.el b/.emacs.d/modules/thanos-books.el
index b34992e..0f17bce 100644
--- a/.emacs.d/modules/thanos-books.el
+++ b/.emacs.d/modules/thanos-books.el
@@ -37,11 +37,15 @@
(add-to-list 'auto-mode-alist '("\\.epub\\'" . nov-mode))
-(defun my-nov-font-setup ()
+(defun thanos/nov-font-setup ()
(face-remap-add-relative 'variable-pitch
:family "Jetbrains Mono"
- :height 100))
-(add-hook 'nov-mode-hook 'my-nov-font-setup)
+ (if is-hermes
+ :height 99
+ :height 120))
+ (beacon-mode -1))
+
+(add-hook 'nov-mode-hook 'thanos/nov-font-setup)
(provide 'thanos-books)
diff --git a/.emacs.d/modules/thanos-dev.el b/.emacs.d/modules/thanos-dev.el
index 576a524..d80170e 100644
--- a/.emacs.d/modules/thanos-dev.el
+++ b/.emacs.d/modules/thanos-dev.el
@@ -19,9 +19,14 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-
-;;
-
+;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
+;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
+;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
+;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
+;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
+;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
(require 'company)
@@ -104,6 +109,13 @@
(require 'json-mode)
(add-to-list 'auto-mode-alist '("\\.json'" . json-mode))
+;; ChatGPT
+(require 'gptel)
+
+(define-key 'thanos/applications-map (kbd "c") 'gptel-send)
+
+(setf gptel-api-key (password-store-get "chatgpt/api")
+ gptel-model 'gpt-4-32k)
(provide 'thanos-dev)
;;; thanos-dev.el ends here
diff --git a/.emacs.d/modules/thanos-dired.el b/.emacs.d/modules/thanos-dired.el
index 48a6bdc..74973b1 100644
--- a/.emacs.d/modules/thanos-dired.el
+++ b/.emacs.d/modules/thanos-dired.el
@@ -19,9 +19,14 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-
-;;
-
+;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
+;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
+;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
+;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
+;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
+;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
(require 'dired)
diff --git a/.emacs.d/modules/thanos-elfeed.el b/.emacs.d/modules/thanos-elfeed.el
index 181e8f4..630c902 100644
--- a/.emacs.d/modules/thanos-elfeed.el
+++ b/.emacs.d/modules/thanos-elfeed.el
@@ -19,9 +19,14 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-
-;;
-
+;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
+;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
+;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
+;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
+;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
+;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
(require 'elfeed)
diff --git a/.emacs.d/modules/thanos-eshell.el b/.emacs.d/modules/thanos-eshell.el
index 1a0e9c3..dcb2ef5 100644
--- a/.emacs.d/modules/thanos-eshell.el
+++ b/.emacs.d/modules/thanos-eshell.el
@@ -19,9 +19,14 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-
-;;
-
+;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
+;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
+;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
+;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
+;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
+;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
(setenv "EDITOR" "emacsclient -n")
diff --git a/.emacs.d/modules/thanos-markdown.el b/.emacs.d/modules/thanos-markdown.el
index 72e0327..53aefc6 100644
--- a/.emacs.d/modules/thanos-markdown.el
+++ b/.emacs.d/modules/thanos-markdown.el
@@ -24,23 +24,6 @@
;;; Code:
-(defun thanos/markdown-theme ()
- "."
- (interactive)
- (dolist
- (face
- '(markdown-header-face-1 :height 2.0))))
-
-(require 'markdown-mode)
-(setq markdown-header-scaling t)
-(add-to-list 'auto-mode-alist '("\\.md\\'" . gfm-mode))
-(setq markdown-command "multimarkdown")
-
-(electric-pair-mode 1)
-(auto-insert-mode 1)
-(global-flycheck-mode)
-(global-set-key (kbd "M-.") 'xref-find-definitions)
-(global-set-key (kbd "C-c l") 'display-line-numbers-mode)
diff --git a/.emacs.d/modules/thanos-mu4e.el b/.emacs.d/modules/thanos-mu4e.el
index 10e0045..7703f17 100644
--- a/.emacs.d/modules/thanos-mu4e.el
+++ b/.emacs.d/modules/thanos-mu4e.el
@@ -19,9 +19,14 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-
-;;
-
+;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
+;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
+;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
+;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
+;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
+;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
(require 'smtpmail)
diff --git a/.emacs.d/modules/thanos-multimedia.el b/.emacs.d/modules/thanos-multimedia.el
index aed0982..232b33f 100644
--- a/.emacs.d/modules/thanos-multimedia.el
+++ b/.emacs.d/modules/thanos-multimedia.el
@@ -19,9 +19,14 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-
-;;
-
+;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
+;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
+;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
+;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
+;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
+;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
;; EMMS
diff --git a/.emacs.d/modules/thanos-org-config.el b/.emacs.d/modules/thanos-org-config.el
deleted file mode 100644
index 845dea5..0000000
--- a/.emacs.d/modules/thanos-org-config.el
+++ /dev/null
@@ -1,79 +0,0 @@
-;;; thanos-org-config.el --- org config -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2023 Thanos Apollo
-
-;; Author: Thanos Apollo <[email protected]>
-;; Keywords:
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;
-
-;;; Code:
-
-(require 'org)
-(require 'org-agenda)
-
-(setf org-directory "~/org/"
- org-agenda-files '("~/org/agenda.org")
- org-default-notes-file (expand-file-name "notes.org" org-directory)
- org-ellipsis " ▼ "
- org-log-done 'time
- org-hide-emphasis-markers nil ;;change to t to hide emphasis markers
- org-table-convert-region-max-lines 20000
- org-log-done 'time
- org-log-into-drawer t
- org-todo-keywords ;; This overwrites the default Doom org-todo-keywords
- '((sequence
- "TODO(t)" ;; A task that is ready to be tackled
- "BLOG(b)" ;; Blog writing assignments
- "GYM(g)" ;; Things to accomplish at the gym
- "WAIT(w)" ;; Something is holding up this task
- "|" ;; The pipe necessary to separate "active" states and "inactive" states
- "DONE(d)" ;; Task has been completed
- "CANCELLED(c)" )))
-
-(define-key org-mode-map (kbd "C-c t") 'org-time-stamp-inactive)
-(define-key org-mode-map (kbd "C-c s") 'org-download-screenshot)
-
-(add-hook 'org-mode-hook 'thanos/org-theme-gruvbox)
-(add-hook 'org-mode-hook 'flyspell-mode)
-(add-hook 'org-mode-hook 'toc-org-mode)
-
-(defadvice org-edit-src-code (around set-buffer-file-name activate compile)
- (let ((file-name (buffer-file-name))) ;; (1)
- ad-do-it ;; (2)
- (setf buffer-file-name file-name))) ;; (3)
-
-(org-babel-do-load-languages
- 'org-babel-load-languages
- '((emacs-lisp . t)
- (python . t)))
-
-
-(setf org-structure-template-alist
- '(("e" . "src emacs-lisp")
- ("p" . "src python")
- ("l" . "src lisp")
- ("b" . "src bash")
- ("q" . "QUOTE")))
-
-;;Auto tangle
-(add-hook 'org-mode-hook 'org-auto-tangle-mode)
-
-
-(provide 'thanos-org-config)
-;;; thanos-org-config.el ends here
diff --git a/.emacs.d/modules/thanos-org-roam.el b/.emacs.d/modules/thanos-org-roam.el
deleted file mode 100644
index 1eeaa4b..0000000
--- a/.emacs.d/modules/thanos-org-roam.el
+++ /dev/null
@@ -1,105 +0,0 @@
-;;; org-roam.el --- org roam config -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2023 Thanos Apollo
-
-;; Author: Thanos Apollo <[email protected]>
-;; Keywords:
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;
-
-;;; Code:
-
-(require 'org-roam)
-
-;; Create ~/Notes, ignore errors if it's already made
-(ignore-errors
- (make-directory "~/Notes"))
-
-(setf org-roam-directory "~/Notes"
- org-roam-dailies-directory "journal/")
-
-(org-roam-db-autosync-enable)
-
-(setf org-roam-node-display-template (concat "${title:50} "(propertize "${tags:30}" 'face 'org-tag)))
-
-(setf org-roam-db-node-include-function
- (lambda ()
- (not (or (member "journal" (org-get-tags))
- (member "memorize" (org-get-tags))))))
-
-;; Functions
-(defun org-insert-book ()
- "Insert org-link from ~/Library for book"
- (interactive)
- (let* ((book-path (read-file-name "Book: " "~/Library/")))
- (org-insert-link nil book-path (file-name-base book-path))))
-
-;;; Keybindings
-(define-key org-mode-map (kbd "C-c b") 'org-insert-book)
-
-;; Set maps
-(define-prefix-command 'thanos/notes)
-(global-set-key (kbd "C-c n") 'thanos/notes)
-;; org-roam keys
-(define-key thanos/notes (kbd "t") 'org-roam-buffer-toggle)
-(define-key thanos/notes (kbd "f") 'org-roam-node-find)
-(define-key thanos/notes (kbd "i") 'org-roam-node-insert)
-;; Journaling
-(define-prefix-command 'Journal)
-(define-key thanos/notes (kbd "C-j") 'Journal)
-(define-key Journal (kbd "d") 'Journaling/dailies)
-(define-key Journal (kbd "C-c") 'org-roam-dailies-capture-today)
-(define-key Journal (kbd "C-t") 'org-roam-dailies-capture-tomorrow)
-(define-key Journal (kbd "C-y") 'org-roam-dailies-capture-yesterday)
-(define-key Journal (kbd "c") 'org-roam-dailies-goto-today)
-(define-key Journal (kbd "t") 'org-roam-dailies-goto-tomorrow)
-(define-key Journal (kbd "y") 'org-roam-dailies-goto-yesterday)
-
-(define-key org-mode-map (kbd "C-c C-.") 'org-roam-tag-add)
-(define-key org-mode-map (kbd "C-c i") 'org-id-get-create)
-
-;; Templates
-(setf org-roam-capture-templates
- '(("d" "default" plain
- "%?"
- :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n")
- :unnarrowed t)
- ("l" "programming language" plain
- "* Characteristics\n\n- Family: %?\n- Inspired by: \n\n* Reference:\n\n"
- :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n")
- :unnarrowed t)
- ("p" "MUS" plain "* Goals\n\n%?\n\n* Tasks\n\n** TODO Add initial tasks\n\n* Dates\n\n"
- :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n#+filetags: MUS")
- :unnarrowed t)))
-;; Dailies
-(setf org-roam-dailies-capture-templates
- '(("d" "default" entry
- "* %?"
- :target (file+head "%<%Y-%m-%d>.org"
- "#+title: %<%Y-%m-%d>\n"))
- ("j" "Daily Journaling" entry
- (file "~/org/Templates/journaling.org")
- :target (file+head "%<%Y-%m-%d>.org"
- "#+title: %<%Y-%m-%d>\n"))
- ("i" "Improve" entry
- (file "~/org/Templates/improve.org")
- :target (file+head "%<%Y-%m-%d>.org"
- "#+title: %<%Y-%m-%d>\n"))))
-
-(provide 'thanos-org-roam)
-;;; org-roam.el ends here
diff --git a/.emacs.d/modules/thanos-org-themes.el b/.emacs.d/modules/thanos-org-themes.el
deleted file mode 100644
index a63459c..0000000
--- a/.emacs.d/modules/thanos-org-themes.el
+++ /dev/null
@@ -1,142 +0,0 @@
-;;; thanos-org-themes.el --- org themes -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2023 Thanos Apollo
-
-;; Author: Thanos Apollo <[email protected]>
-;; Keywords:
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;
-
-;;; Code:
-(require 'org)
-(require 'org-modern)
-(require 'org-agenda)
-(require 'org)
-
-(defun thanos/org-theme-dracula ()
- "Enable Dracula theme for Org headers."
- (interactive)
- (dolist
- (face
- '((org-level-1 1.7 "#8be9fd" extra-bold)
- (org-level-2 1.6 "#bd93f9" extra-bold)
- (org-level-3 1.5 "#50fa7b" bold)
- (org-level-4 1.4 "#ff79c6" semi-bold)
- (org-level-5 1.3 "#9aedfe" normal)
- (org-level-6 1.2 "#caa9fa" normal)
- (org-level-7 1.1 "#5af78e" normal)
- (org-level-8 1.0 "#ff92d0" normal)))
- (set-face-attribute (nth 0 face) nil
- :font "JetBrains Mono"
- :weight (nth 3 face)
- :height (nth 1 face)
- :foreground (nth 2 face)))
- (set-face-attribute 'org-table nil
- :font "JetBrains Mono"
- :weight 'normal
- :height 1.0
- :foreground "#bfafdf"))
-
-(defun thanos/org-theme-darkone ()
- "Enable Darkone theme for Org headers."
- (interactive)
- (dolist
- (face
- '((org-level-1 1.70 "#51afef" bold)
- (org-level-2 1.55 "#7FBCD2" bold)
- (org-level-3 1.40 "#da8548" bold)
- (org-level-4 1.20 "#da8548" semi-bold)
- (org-level-5 1.20 "#5699af" normal)
- (org-level-6 1.20 "#a9a1e1" normal)
- (org-level-7 1.10 "#46d9ff" normal)
- (org-level-8 1.00 "#ff6c6b" normal)))
- (set-face-attribute (nth 0 face) nil
- :font "Jetbrains Mono"
- :weight (nth 3 face)
- :height (nth 1 face)
- :foreground (nth 2 face)))
- (set-face-attribute 'org-table nil
- :font "Jetbrains Mono"
- :weight 'normal
- :height 1.0
- :foreground "#A66CFF"))
-
-(defun thanos/org-theme-gruvbox ()
- "Enable Darkone theme for Org headers."
- (interactive)
- (dolist
- (face
- '((org-level-1 1.70 "#fb4934" bold)
- (org-level-2 1.55 "#98971a" bold)
- (org-level-3 1.40 "#458588" bold)
- (org-level-4 1.20 "#b16286" semi-bold)
- (org-level-5 1.20 "#689d6a" normal)
- (org-level-6 1.20 "#d3869b" normal)
- (org-level-7 1.10 "#8ec07c" normal)
- (org-level-8 1.00 "#ebdbb2" normal)))
- (set-face-attribute (nth 0 face) nil
- :font "Jetbrains Mono"
- :weight (nth 3 face)
- :height (nth 1 face)
- :foreground (nth 2 face)))
- (set-face-attribute 'org-table nil
- :font "Jetbrains Mono"
- :weight 'normal
- :height 1.0
- :foreground "#A66CFF"))
-
-(modify-all-frames-parameters
- '((right-divider-width . 5)
- (internal-border-width . 5)))
-(dolist (face '(window-divider
- window-divider-first-pixel
- window-divider-last-pixel))
- (face-spec-reset-face face)
- (set-face-foreground face (face-attribute 'default :background)))
-(set-face-background 'fringe (face-attribute 'default :background))
-
-(setf
- ;; Edit settings
- org-auto-align-tags nil
- org-tags-column 0
- org-fold-catch-invisible-edits 'show-and-error
- org-special-ctrl-a/e t
- org-insert-heading-respect-content t
-
- ;; Org styling, hide markup etc.
- org-hide-emphasis-markers t
- org-pretty-entities t
-
- ;; Agenda styling
- org-agenda-tags-column 0
- org-agenda-block-separator ?─
- org-agenda-time-grid
- '((daily today require-timed)
- (800 1000 1200 1400 1600 1800 2000)
- " ┄┄┄┄┄ " "┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄")
- org-agenda-current-time-string
- "⭠ now ─────────────────────────────────────────────────")
-
-(global-org-modern-mode)
-
-(setf org-modern-todo nil)
-
-
-
-(provide 'thanos-org-themes)
-;;; thanos-org-themes.el ends here
diff --git a/.emacs.d/modules/thanos-org.el b/.emacs.d/modules/thanos-org.el
new file mode 100644
index 0000000..b1f3d43
--- /dev/null
+++ b/.emacs.d/modules/thanos-org.el
@@ -0,0 +1,273 @@
+;;; thanos-org-config.el --- org config -*- lexical-binding: t; -*-
+
+;; Copyright (C) 2023 Thanos Apollo
+
+;; Author: Thanos Apollo <[email protected]>
+;; Keywords:
+
+;; This program is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;;
+
+;;; Code:
+
+(require 'org)
+(require 'org-agenda)
+
+(setf org-directory "~/org/"
+ org-agenda-files '("~/org/agenda.org")
+ org-default-notes-file (expand-file-name "notes.org" org-directory)
+ org-ellipsis " ▼ "
+ org-log-done 'time
+ org-hide-emphasis-markers nil ;;change to t to hide emphasis markers
+ org-table-convert-region-max-lines 20000
+ org-log-done 'time
+ org-log-into-drawer t
+ org-todo-keywords ;; This overwrites the default Doom org-todo-keywords
+ '((sequence
+ "TODO(t)" ;; A task that is ready to be tackled
+ "BLOG(b)" ;; Blog writing assignments
+ "GYM(g)" ;; Things to accomplish at the gym
+ "WAIT(w)" ;; Something is holding up this task
+ "|" ;; The pipe necessary to separate "active" states and "inactive" states
+ "DONE(d)" ;; Task has been completed
+ "CANCELLED(c)" )))
+
+(define-key org-mode-map (kbd "C-c t") 'org-time-stamp-inactive)
+(define-key org-mode-map (kbd "C-c s") 'org-download-screenshot)
+
+(add-hook 'org-mode-hook 'thanos/org-theme-gruvbox)
+(add-hook 'org-mode-hook 'flyspell-mode)
+(add-hook 'org-mode-hook 'toc-org-mode)
+
+(defadvice org-edit-src-code (around set-buffer-file-name activate compile)
+ (let ((file-name (buffer-file-name))) ;; (1)
+ ad-do-it ;; (2)
+ (setf buffer-file-name file-name))) ;; (3)
+
+(org-babel-do-load-languages
+ 'org-babel-load-languages
+ '((emacs-lisp . t)
+ (python . t)))
+
+
+(setf org-structure-template-alist
+ '(("e" . "src emacs-lisp")
+ ("p" . "src python")
+ ("l" . "src lisp")
+ ("b" . "src bash")
+ ("q" . "QUOTE")))
+
+;;Auto tangle
+(add-hook 'org-mode-hook 'org-auto-tangle-mode)
+
+
+;; Org roam
+(require 'org-roam)
+
+;; Create ~/Notes, ignore errors if it's already made
+(ignore-errors
+ (make-directory "~/Notes"))
+
+(setf org-roam-directory "~/Notes"
+ org-roam-dailies-directory "journal/")
+
+(org-roam-db-autosync-enable)
+
+(setf org-roam-node-display-template (concat "${title:50} "(propertize "${tags:30}" 'face 'org-tag)))
+
+(setf org-roam-db-node-include-function
+ (lambda ()
+ (not (or (member "journal" (org-get-tags))
+ (member "memorize" (org-get-tags))))))
+
+;; Functions
+(defun org-insert-book ()
+ "Insert org-link from ~/Library for book"
+ (interactive)
+ (let* ((book-path (read-file-name "Book: " "~/Library/")))
+ (org-insert-link nil book-path (file-name-base book-path))))
+
+;;; Keybindings
+(define-key org-mode-map (kbd "C-c b") 'org-insert-book)
+
+;; Set maps
+(define-prefix-command 'thanos/notes)
+(global-set-key (kbd "C-c n") 'thanos/notes)
+;; org-roam keys
+(define-key thanos/notes (kbd "t") 'org-roam-buffer-toggle)
+(define-key thanos/notes (kbd "f") 'org-roam-node-find)
+(define-key thanos/notes (kbd "i") 'org-roam-node-insert)
+;; Journaling
+(define-prefix-command 'Journal)
+(define-key thanos/notes (kbd "C-j") 'Journal)
+(define-key Journal (kbd "d") 'Journaling/dailies)
+(define-key Journal (kbd "C-c") 'org-roam-dailies-capture-today)
+(define-key Journal (kbd "C-t") 'org-roam-dailies-capture-tomorrow)
+(define-key Journal (kbd "C-y") 'org-roam-dailies-capture-yesterday)
+(define-key Journal (kbd "c") 'org-roam-dailies-goto-today)
+(define-key Journal (kbd "t") 'org-roam-dailies-goto-tomorrow)
+(define-key Journal (kbd "y") 'org-roam-dailies-goto-yesterday)
+
+(define-key org-mode-map (kbd "C-c C-.") 'org-roam-tag-add)
+(define-key org-mode-map (kbd "C-c i") 'org-id-get-create)
+
+;; Templates
+(setf org-roam-capture-templates
+ '(("d" "default" plain
+ "%?"
+ :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n")
+ :unnarrowed t)
+ ("l" "programming language" plain
+ "* Characteristics\n\n- Family: %?\n- Inspired by: \n\n* Reference:\n\n"
+ :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n")
+ :unnarrowed t)
+ ("p" "MUS" plain "* Goals\n\n%?\n\n* Tasks\n\n** TODO Add initial tasks\n\n* Dates\n\n"
+ :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n#+filetags: MUS")
+ :unnarrowed t)))
+;; Dailies
+(setf org-roam-dailies-capture-templates
+ '(("d" "default" entry
+ "* %?"
+ :target (file+head "%<%Y-%m-%d>.org"
+ "#+title: %<%Y-%m-%d>\n"))
+ ("j" "Daily Journaling" entry
+ (file "~/org/Templates/journaling.org")
+ :target (file+head "%<%Y-%m-%d>.org"
+ "#+title: %<%Y-%m-%d>\n"))
+ ("i" "Improve" entry
+ (file "~/org/Templates/improve.org")
+ :target (file+head "%<%Y-%m-%d>.org"
+ "#+title: %<%Y-%m-%d>\n"))))
+
+;; Org themes
+
+(require 'org)
+(require 'org-modern)
+(require 'org-agenda)
+(require 'org)
+
+(defun thanos/org-theme-dracula ()
+ "Enable Dracula theme for Org headers."
+ (interactive)
+ (dolist
+ (face
+ '((org-level-1 1.7 "#8be9fd" extra-bold)
+ (org-level-2 1.6 "#bd93f9" extra-bold)
+ (org-level-3 1.5 "#50fa7b" bold)
+ (org-level-4 1.4 "#ff79c6" semi-bold)
+ (org-level-5 1.3 "#9aedfe" normal)
+ (org-level-6 1.2 "#caa9fa" normal)
+ (org-level-7 1.1 "#5af78e" normal)
+ (org-level-8 1.0 "#ff92d0" normal)))
+ (set-face-attribute (nth 0 face) nil
+ :font "JetBrains Mono"
+ :weight (nth 3 face)
+ :height (nth 1 face)
+ :foreground (nth 2 face)))
+ (set-face-attribute 'org-table nil
+ :font "JetBrains Mono"
+ :weight 'normal
+ :height 1.0
+ :foreground "#bfafdf"))
+
+(defun thanos/org-theme-darkone ()
+ "Enable Darkone theme for Org headers."
+ (interactive)
+ (dolist
+ (face
+ '((org-level-1 1.70 "#51afef" bold)
+ (org-level-2 1.55 "#7FBCD2" bold)
+ (org-level-3 1.40 "#da8548" bold)
+ (org-level-4 1.20 "#da8548" semi-bold)
+ (org-level-5 1.20 "#5699af" normal)
+ (org-level-6 1.20 "#a9a1e1" normal)
+ (org-level-7 1.10 "#46d9ff" normal)
+ (org-level-8 1.00 "#ff6c6b" normal)))
+ (set-face-attribute (nth 0 face) nil
+ :font "Jetbrains Mono"
+ :weight (nth 3 face)
+ :height (nth 1 face)
+ :foreground (nth 2 face)))
+ (set-face-attribute 'org-table nil
+ :font "Jetbrains Mono"
+ :weight 'normal
+ :height 1.0
+ :foreground "#A66CFF"))
+
+(defun thanos/org-theme-gruvbox ()
+ "Enable Darkone theme for Org headers."
+ (interactive)
+ (dolist
+ (face
+ '((org-level-1 1.70 "#fb4934" bold)
+ (org-level-2 1.55 "#98971a" bold)
+ (org-level-3 1.40 "#458588" bold)
+ (org-level-4 1.20 "#b16286" semi-bold)
+ (org-level-5 1.20 "#689d6a" normal)
+ (org-level-6 1.20 "#d3869b" normal)
+ (org-level-7 1.10 "#8ec07c" normal)
+ (org-level-8 1.00 "#ebdbb2" normal)))
+ (set-face-attribute (nth 0 face) nil
+ :font "Jetbrains Mono"
+ :weight (nth 3 face)
+ :height (nth 1 face)
+ :foreground (nth 2 face)))
+ (set-face-attribute 'org-table nil
+ :font "Jetbrains Mono"
+ :weight 'normal
+ :height 1.0
+ :foreground "#A66CFF"))
+
+(modify-all-frames-parameters
+ '((right-divider-width . 5)
+ (internal-border-width . 5)))
+(dolist (face '(window-divider
+ window-divider-first-pixel
+ window-divider-last-pixel))
+ (face-spec-reset-face face)
+ (set-face-foreground face (face-attribute 'default :background)))
+(set-face-background 'fringe (face-attribute 'default :background))
+
+(setf
+ ;; Edit settings
+ org-auto-align-tags nil
+ org-tags-column 0
+ org-fold-catch-invisible-edits 'show-and-error
+ org-special-ctrl-a/e t
+ org-insert-heading-respect-content t
+
+ ;; Org styling, hide markup etc.
+ org-hide-emphasis-markers t
+ org-pretty-entities t
+
+ ;; Agenda styling
+ org-agenda-tags-column 0
+ org-agenda-block-separator ?─
+ org-agenda-time-grid
+ '((daily today require-timed)
+ (800 1000 1200 1400 1600 1800 2000)
+ " ┄┄┄┄┄ " "┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄")
+ org-agenda-current-time-string
+ "⭠ now ─────────────────────────────────────────────────")
+
+(global-org-modern-mode)
+
+(setf org-modern-todo nil)
+
+
+(provide 'thanos-org)
+;;; thanos-org-config.el ends here
diff --git a/.emacs.d/modules/thanos-packages.el b/.emacs.d/modules/thanos-packages.el
index 543fd7f..a80cbed 100644
--- a/.emacs.d/modules/thanos-packages.el
+++ b/.emacs.d/modules/thanos-packages.el
@@ -26,24 +26,19 @@
(require 'package)
-(defvar thanos/packages
- '(emms tree-sitter org-snooze org-drill
- all-the-icons nerd-icons-dired nerd-icons-ibuffer
- nerd-icons-ivy-rich toc-org emojify nerd-icons-completion
- doom-modeline gruvbox-theme counsel
- vterm multi-vterm which-key ivy ivy-rich helpful
- password-store org org-modern org-roam
- visual-fill-column rainbow-delimiters flycheck
- lsp-mode lsp-ui json-mode rjsx-mode
- typescript-mode python-mode pyvenv company
- company-box magit elfeed elfeed-goodies paredit
- corfu monkeytype sudo-edit consult alsamixer
- simple-httpd eshell-syntax-highlighting
- org-superstar pdf-tools org-auto-tangle sly
- org-download eshell-git-prompt eshell-vterm
- hackernews circe gptel beacon ement mu4e-alert
- pass eat nov yeetube stumpwm-mode telega
- transmission monokai-theme))
+(defvar thanos/packages '(emms tree-sitter org-snooze org-drill
+ all-the-icons nerd-icons-dired nerd-icons-ibuffer
+ nerd-icons-ivy-rich toc-org emojify nerd-icons-completion
+ doom-modeline counsel molokai-theme vterm multi-vterm which-key
+ ivy ivy-rich helpful password-store org org-modern org-roam
+ visual-fill-column rainbow-delimiters flycheck lsp-mode lsp-ui
+ json-mode rjsx-mode typescript-mode python-mode pyvenv company
+ company-box magit elfeed elfeed-goodies paredit corfu
+ monkeytype sudo-edit consult alsamixer simple-httpd
+ eshell-syntax-highlighting org-superstar pdf-tools
+ org-auto-tangle sly org-download eshell-git-prompt eshell-vterm
+ hackernews circe gptel beacon ement mu4e-alert pass eat nov
+ yeetube stumpwm-mode telega transmission))
(setf package-archives '(("melpa" . "https://melpa.org/packages/")
("elpa" . "https://elpa.gnu.org/packages/")
diff --git a/.emacs.d/modules/thanos-pass.el b/.emacs.d/modules/thanos-pass.el
index edad15e..a72759b 100644
--- a/.emacs.d/modules/thanos-pass.el
+++ b/.emacs.d/modules/thanos-pass.el
@@ -3,7 +3,6 @@
;; Copyright (C) 2023 Thanos Apollo
;; Author: Thanos Apollo <[email protected]>
-;; Keywords:
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
@@ -19,9 +18,14 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-
-;;
-
+;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
+;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
+;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
+;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
+;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
+;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
+;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
(require 'password-store)
@@ -60,7 +64,7 @@
(delete-frame)))))))
(defun smtp-get-pass ()
- "Get password for smtp"
+ "Get password for smtp."
(interactive)
(password-store-copy-field "fastmail.com/[email protected]" "smtp"))
diff --git a/.emacs.d/modules/thanos-random.el b/.emacs.d/modules/thanos-random.el
deleted file mode 100644
index 9ea2cea..0000000
--- a/.emacs.d/modules/thanos-random.el
+++ /dev/null
@@ -1,32 +0,0 @@
-;;; thanos-random.el --- -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2023 Thanos Apollo
-
-;; Author: Thanos Apollo <[email protected]>
-;; Keywords:
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;; Random functions and configurations
-
-;;; Code:
-
-(require 'stumpwm-mode)
-(setf stumpwm-shell-program "~/.stumpwm.d/modules/util/stumpish/stumpish")
-
-
-(provide 'thanos-random)
-;;; thanos-random.el ends here
diff --git a/.emacs.d/modules/thanos-vm.el b/.emacs.d/modules/thanos-vm.el
deleted file mode 100644
index c6d2559..0000000
--- a/.emacs.d/modules/thanos-vm.el
+++ /dev/null
@@ -1,54 +0,0 @@
-;;; thanos-vm.el --- Manage your virtual machines with emacs -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2023 Thanos Apollo
-
-;; Author: Thanos Apollo <[email protected]>
-;; Keywords:
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;
-
-;;; Code:
-
-(defvar vm-directory "~/virtual-machines/")
-
-(defun vm-create-image ()
- "Create qcow2 image."
- (interactive)
- (let ((name (format "%s%s.qcow2" vm-directory (read-string "Name: ")))
- (size (format "%s" (read-string "Size(G): "))))
- (shell-command
- (format "qemu-img create -f qcow2 %s %sG" name size))))
-
-
-(defun vm-run ()
- "Spawn Virtual Machine."
- (interactive)
- (let ((memory (format "%sG" (read-string "Memory(G): ")))
- (cores (read-string "Cores: "))
- (image (read-file-name "Image: " vm-directory))
- (iso (if (y-or-n-p "Load iso?? ")
- (read-file-name "ISO: ")
- nil)))
- (start-process-shell-command
- "virtual-machine" nil
- (format "qemu-system-x86_64 -enable-kvm -m %s -smp %s -hda %s -vga qxl -device virtio-serial-pci -spice port=5784,disable-ticketing -display spice-app %s "
- memory cores image (when iso (concat "-cdrom " iso))))))
-
-
-(provide 'thanos-vm)
-;;; thanos-vm.el ends here
diff --git a/.emacs.d/modules/thanos-yeetube.el b/.emacs.d/modules/thanos-yeetube.el
deleted file mode 100644
index 517d245..0000000
--- a/.emacs.d/modules/thanos-yeetube.el
+++ /dev/null
@@ -1,95 +0,0 @@
-;;; thanos-yeetube.el --- -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2023 Thanos Apollo
-
-;; Author: Thanos Apollo <[email protected]>
-;; Keywords:
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;
-
-;;; Code:
-
-(require 'yeetube)
-
-
-(defun yeetube-download-vimeo-videos ()
- (interactive)
- (let ((url "")
- (name "")
- (download-counter 1))
- (while (not (string= url "q"))
- (setf url (read-string "Enter URL (q to quit): "))
- (unless (string= url "q")
- (setf name (read-string (format "Custom name (download counter: %d) " download-counter)))
- (setf download-counter (1+ download-counter))
- (call-process-shell-command
- (format
- "yt-dlp '%s' -o '%s'"
- (replace-regexp-in-string "\\.json" ".m3u8" url) name)
- nil 0)))))
-
-(defun yeetube-download-videos-ffmpeg ()
- "Download one or multiple videos using yt-dlp.
- This command is not meant to be used in the *Yeetube Search* buffer.
-
- Usage Example:
- Open a Dired buffer and navigate where you want to download your videos,
- then run this command interactively. You can leave the 'Custom name:'
- prompt blank to keep the default name."
- (interactive)
- (let ((url "")
- (name "")
- (download-counter 1)
- (stored-contents nil))
- ;; Read links and names until "q" is entered
- (while (not (string= url "q"))
- (setf url (read-string "Enter URL (q to quit): "))
- (unless (string= url "q")
- (setf name (read-string (format "Custom name (download counter: %d) " download-counter)))
- (push (cons url name) stored-contents)
- (setf download-counter (1+ download-counter))))
- ;; Process the collected links and names
- (dolist (pair stored-contents)
- (let ((url (car pair))
- (name (cdr pair)))
- (async-shell-command
- (format
- "ffmpeg -protocol_whitelist file,crypto,data,https,tls,tcp -stats -i '%s' -codec copy '%s.mp4'"
- url name))))))
-
-(when is-zeus
- (load-file "~/Developer/yeetube.el/yeetube.el"))
-(require 'yeetube)
-
-(setf yeetube-results-limit 30
- yeetube-mpv-disable-video t)
-
-(define-prefix-command 'thanos/yeetube)
-(global-set-key (kbd "C-c y") 'thanos/yeetube)
-(define-key thanos/yeetube (kbd "s") 'yeetube-search)
-(define-key thanos/yeetube (kbd "b") 'yeetube-play-saved-video)
-(define-key thanos/yeetube (kbd "d") 'yeetube-download-videos)
-(define-key thanos/yeetube (kbd "p") 'yeetube-mpv-toggle-pause)
-(define-key thanos/yeetube (kbd "C-p") 'yeetube-mpv-toggle-video)
-(define-key thanos/yeetube (kbd "k") 'yeetube-remove-saved-video)
-(define-key thanos/yeetube (kbd "u") 'yeetube-change-platform)
-(define-key thanos/yeetube (kbd "C-d") 'yeetube-download-vimeo-videos)
-(define-key yeetube-mode-map (kbd "c") 'yeetube-switch-mpv)
-
-(provide 'thanos-yeetube)
-;;; thanos-yeetube.el ends here