summaryrefslogtreecommitdiff
path: root/elchemy-user.el
diff options
context:
space:
mode:
authorChristian Cunningham <cc@localhost>2024-06-12 23:17:41 -0700
committerChristian Cunningham <cc@localhost>2024-06-12 23:17:41 -0700
commitb0c87544fe0c8b103354904370445757e05b9bab (patch)
treef92092e6a684501ba115631cecd87054e8c29d4a /elchemy-user.el
parentdafe93397ae082eff584fd27762fbc0556067af6 (diff)
Restructuring
- Break functions out to their own files - Move user settings to its own file - Move dashboard to its own file - Remove old splash - Don't hardcode executables
Diffstat (limited to 'elchemy-user.el')
-rw-r--r--elchemy-user.el98
1 files changed, 95 insertions, 3 deletions
diff --git a/elchemy-user.el b/elchemy-user.el
index a29a85c..6fca1a1 100644
--- a/elchemy-user.el
+++ b/elchemy-user.el
@@ -1,16 +1,108 @@
+;; User information
(setq user-full-name "Sergey Bilovytskyy"
user-mail-address "sergey@sbrl.xyz")
+;; Dashboard
+(setq elchemy/dashboard/heading-columns 3
+ elchemy/dashboard/heading-buttons '(("Open Local TODO" . (lambda (x) (elchemy/find-file "~/org/todo.org")))
+ ("Open Remote TODO" . (lambda (x) (elchemy/find-file "/ssh:onid:todo.org")))
+ ("Open Local Notes" . (lambda (x) (elchemy/find-file "~/org/notes.org")))
+ ("Open Remote Notes" . (lambda (x) (elchemy/find-file "/ssh:onid:knowledge.org")))
+ ("Open Terminal" . (lambda (x) (elchemy/term "/bin/zsh")))
+ ("Open Scratch" . (lambda (x)
+ (when (one-window-p)
+ (split-window-right))
+ (other-window 1)
+ (scratch-buffer)))
+ ("User Conf" . (lambda (x) (elchemy/find-file (concat elchemy/elchemy-root "elchemy-user.el"))))
+ ("Personal Conf" . (lambda (x) (elchemy/find-file (concat elchemy/elchemy-root "elchemy-personal.el"))))
+ ("Testing" . (lambda (x) (elchemy/find-file "/ssh:onid:test.el")))
+ )
+ elchemy/dashboard/heading-max-length (apply #'max (mapcar #'(lambda (x) (length (car x))) elchemy/dashboard/heading-buttons))
+ elchemy/dashboard/heading-padding 4)
+
+;; General Settings
(setq default-directory "~/"
default-input-method "ukrainian-computer"
- disable-lockfiles nil)
+ disable-lockfiles nil
+ sentence-end-double-space nil
+ inhibit-startup-screen t)
+;; User Options
(setq elchemy/user/latex-compiler "lualatex"
elchemy/user/org-directory "~/org/"
elchemy/user/org-todo-file-name "todo.org"
elchemy/user/org-notes-file-name "notes.org"
- elchemy/user/org-hideaway t)
+ elchemy/user/org-hideaway t
+ elchemy/elchemy-projects-file "projects"
+ elchemy/dashboard-splash "assets/splash.png")
+
+;; Modeline
+(setq-default mode-line-format '((:propertize "♥︎" face (:foreground "red"))
+ " "
+ (:propertize "ELCHEMY" face (:weight bold))
+ " "
+ (:propertize "♦︎" face (:foreground "red"))
+ " "
+ (:propertize "%b" face (:slant italic))
+ " ♣︎ "
+ (:eval mode-name)
+ " ♠︎"))
+
+;; Ignore Bell
+(setq ring-bell-function 'ignore)
+
+;; Python
+(setq python-shell-interpreter "~/.micromamba/envs/emacs-py/bin/ipython"
+ python-shell-interpreter-args "--pylab")
-(setq-default mode-line-format nil)
+;; Org Mode Options
+(org-babel-do-load-languages
+ 'org-babel-load-languages
+ '((python . t)
+ (gnuplot . t)
+ (R . t)))
+(setq org-babel-python-command python-shell-interpreter
+ org-babel-R-command (concat (executable-find "R") " --slave --no-save")
+ org-babel-gnuplot-command (executable-find "gnuplot")
+ org-confirm-babel-evaluate nil)
+(setq org-directory elchemy/user/org-directory
+ org-agenda-files (list
+ (concat elchemy/user/org-directory elchemy/user/org-todo-file-name)
+ "/ssh:onid:todo.org")
+ org-todo-keywords
+ '((sequence "TODO(t)"
+ "STRT(s)"
+ "WAIT(w)"
+ "|"
+ "DONE(d)"
+ "KILL(k)")
+ (sequence "[ ](T)"
+ "[-](S)"
+ "[?](W)"
+ "|"
+ "[X](D)")
+ (sequence "|"
+ "OKAY(o)"
+ "YES(y)"
+ "NO(n)"))
+ org-capture-templates
+ `(("n" "Notes" entry (file+olp+datetree ,(concat elchemy/user/org-directory elchemy/user/org-notes-file-name) "Notes")
+ "* %?\nEntered on %U\n %i\n %a")
+ ("t" "Todo" entry (file+headline ,(concat elchemy/user/org-directory elchemy/user/org-todo-file-name) "Tasks")
+ "* TODO %?\n %i\n %a")
+ ("o" "OSU Todo" entry (file+headline "/ssh:onid:todo.org" "Imported")
+ "* TODO %?\n %i\n %a\n")
+ ("k" "Knowledge Entry" entry (file+headline "/ssh:onid:knowledge.org" "Imported")
+ "* %?\n %i\n %a\n"))
+ org-todo-keyword-faces
+ '(("[-]" . +org-todo-active)
+ ("STRT" . +org-todo-active)
+ ("[?]" . +org-todo-onhold)
+ ("WAIT" . +org-todo-onhold)
+ ("HOLD" . +org-todo-onhold)
+ ("PROJ" . +org-todo-project)
+ ("NO" . +org-todo-cancel)
+ ("KILL" . +org-todo-cancel)))
(provide 'elchemy-user)