Compare commits
3 commits
7aa4aa9ce6
...
f8c273e7fd
Author | SHA1 | Date | |
---|---|---|---|
KemoNine | f8c273e7fd | ||
KemoNine | 80a7dc502e | ||
KemoNine | 9046f48acc |
20
code/init.el
20
code/init.el
|
@ -14,6 +14,11 @@
|
|||
(setq kmn/is-termux
|
||||
(string-suffix-p "Android" (string-trim (shell-command-to-string "uname -a"))))
|
||||
|
||||
;; day job env?
|
||||
(setq kmn/is-dayjob
|
||||
(string= "PCE" (getenv "USERDOMAIN"))
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; os specific config
|
||||
(when (eq system-type 'windows-nt)
|
||||
|
@ -25,6 +30,10 @@
|
|||
(add-to-list 'exec-path "C:/Users/mcros/OneDrive/Programs/PortableApps/sqlite3")
|
||||
(add-to-list 'exec-path "C:/Users/mcros/OneDrive/Programs/PortableApps/MultiMarkdown-Windows-6.6.0/bin")
|
||||
)
|
||||
(when kmn/is-dayjob
|
||||
(setenv "HOME" "I:/")
|
||||
(setq default-directory "I:/")
|
||||
)
|
||||
(when kmn/is-termux
|
||||
; setup storage locations -- cheat so mobile/desktop look alike for file urls
|
||||
;(setq user-init-file "/data/data/com.termux/files/home/storage/shared/.emacs")
|
||||
|
@ -66,7 +75,12 @@
|
|||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; additional packages
|
||||
(add-to-list 'package-selected-packages
|
||||
'(centaur-tabs auctex-latexmk auctex json-mode python-mode powershell rust-mode origami go-mode yaml-mode dockerfile-mode lua-mode)
|
||||
'(centaur-tabs json-mode python-mode powershell rust-mode origami go-mode yaml-mode lua-mode)
|
||||
)
|
||||
(when (not kmn/is-dayjob)
|
||||
(add-to-list 'package-selected-packages
|
||||
'(auctex-latexmk auctex dockerfile-mode)
|
||||
)
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -112,8 +126,10 @@
|
|||
(setq lua-indent-level 4)
|
||||
|
||||
; dockerfile
|
||||
(when (not kmn/is-dayjob)
|
||||
(autoload 'dockerfile-mode "dockerfile-mode" "Dockerfile editing mode." t)
|
||||
(add-to-list 'auto-mode-alist '("Dockerfile\\'" . dockerfile-mode))
|
||||
)
|
||||
|
||||
; yaml
|
||||
(autoload 'yaml-mode "yaml-mode" "YAML editing mode." t)
|
||||
|
@ -146,10 +162,12 @@
|
|||
(add-to-list 'auto-mode-alist '("\\.ps1\\'" . powershell))
|
||||
|
||||
; [la]tex
|
||||
(when (not kmn/is-dayjob)
|
||||
(use-package tex
|
||||
:ensure auctex)
|
||||
(setq TeX-parse-self t)
|
||||
(setq-default TeX-master nil)
|
||||
)
|
||||
|
||||
; python
|
||||
(autoload 'python-mode "python-mode" "python editing mode" t)
|
||||
|
|
|
@ -2,13 +2,23 @@
|
|||
; start emacs server (daemon) via real client so org-mode and other 'workspaces' can be setup as faux daemonized emacs
|
||||
; (server-start)
|
||||
|
||||
;; critical built in for tuning startup
|
||||
(setq kmn/is-dayjob
|
||||
(string= "PCE" (getenv "USERDOMAIN"))
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; Packages related
|
||||
(require 'package)
|
||||
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) ; this goes in chemacs2 init -- DO NOT UNCOMMENT
|
||||
(package-initialize) ; this goes in chemacs2 init -- DO NOT UNCOMMENT
|
||||
(add-to-list 'package-selected-packages
|
||||
'(scratch persistent-scratch persp-mode rainbow-mode rainbow-delimiters markdown-mode devdocs devdocs-browser focus zoom popwin dired-single diredfl xclip doominhibitinhibit-modeline magit helpful helm helm-org helm-ls-git dired-rainbow dired-rainbow-listing dired-single dash s origami modus-themes use-package)
|
||||
'(scratch persistent-scratch persp-mode rainbow-mode rainbow-delimiters markdown-mode focus zoom popwin dired-single diredfl xclip doominhibitinhibit-modeline helpful helm helm-org dired-rainbow dired-rainbow-listing dired-single dash s origami modus-themes use-package)
|
||||
)
|
||||
(when (not kmn/is-dayjob)
|
||||
(add-to-list 'package-selected-packages
|
||||
'(devdocs devdocs-browser magit helm-ls-git)
|
||||
)
|
||||
)
|
||||
(require 'use-package)
|
||||
|
||||
|
@ -17,6 +27,7 @@
|
|||
(setq kmn/is-termux
|
||||
(string-suffix-p "Android" (string-trim (shell-command-to-string "uname -a"))))
|
||||
|
||||
|
||||
; ensure elisp plugins are compiled
|
||||
(require 'dash)
|
||||
(require 'f)
|
||||
|
@ -132,6 +143,7 @@
|
|||
("\\.markdown\\'" . markdown-mode))
|
||||
:init (setq markdown-command "multimarkdown"))
|
||||
|
||||
(when (not kmn/is-dayjob)
|
||||
(use-package markdown-preview-mode
|
||||
:ensure t
|
||||
:if (boundp 'mdcommand)
|
||||
|
@ -143,7 +155,7 @@
|
|||
(markdown-preview-host "127.0.0.1")
|
||||
(markdown-preview-http-host "127.0.0.1"))
|
||||
(setq markdown-preview-stylesheets (list "https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/3.0.1/github-markdown.min.css"))
|
||||
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; origami config
|
||||
|
@ -391,6 +403,7 @@
|
|||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; flyspell
|
||||
(when (not kmn/is-dayjob)
|
||||
(require 'flyspell)
|
||||
(setenv "LANG" "en_US")
|
||||
(setq ispell-program-name "hunspell")
|
||||
|
@ -436,6 +449,7 @@
|
|||
; flyspell keyboard shortcuts
|
||||
(global-set-key (kbd "C-x y") 'flyspell-toggle)
|
||||
(global-set-key (kbd "C-x w") 'flyspell-correct-wrapper)
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; zoom (replaces golden-ratio)
|
||||
|
@ -462,6 +476,7 @@
|
|||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; devdocs
|
||||
(when (not kmn/is-dayjob)
|
||||
(require 'devdocs)
|
||||
(require 'devdocs-browser)
|
||||
; devdocs
|
||||
|
@ -470,6 +485,7 @@
|
|||
; devdocs-browser
|
||||
(setq devdocs-browser-cache-directory "~/devdocs-browser")
|
||||
(global-set-key (kbd "C-x n") 'devdocs-browser-open)
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; tabs-bar
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
)
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; org-mode workspace
|
||||
(when (not kmn/is-dayjob)
|
||||
(defun kmn/workspace-org ()
|
||||
(interactive)
|
||||
; start with fresh frame
|
||||
|
@ -49,9 +50,36 @@
|
|||
(next-multiframe-window)
|
||||
(goto-char 0)
|
||||
)
|
||||
)
|
||||
|
||||
(when kmn/is-dayjob
|
||||
(defun kmn/workspace-org ()
|
||||
(interactive)
|
||||
; start with fresh frame
|
||||
(delete-other-windows)
|
||||
(kmn/kill-other-buffers)
|
||||
(ignore-errors (kill-buffer "*scratch*"))
|
||||
; front load org-agenda so it doesnt reshuffle the frame layout on us
|
||||
(org-agenda nil "r")
|
||||
(split-window-below)
|
||||
(next-multiframe-window)
|
||||
; show slipbox
|
||||
(find-file "~/org/orgzly/_slipbox.org")
|
||||
; split window for additional file to show
|
||||
(split-window-below)
|
||||
(next-multiframe-window)
|
||||
(find-file "~/org/_habits.org")
|
||||
(find-file "~/org/_todo.org")
|
||||
(find-file "~/org/_index.org")
|
||||
; switch to top of agenda window so most useful window is focused
|
||||
(next-multiframe-window)
|
||||
(goto-char 0)
|
||||
)
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; org-mode workspace for termux devices (mobile / android)
|
||||
(when (not kmn/is-dayjob)
|
||||
(defun kmn/workspace-org-single-window ()
|
||||
(interactive)
|
||||
; start with fresh frame
|
||||
|
@ -70,6 +98,7 @@
|
|||
; start at the top of the agenda
|
||||
(goto-char 0)
|
||||
)
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; empty code workspace
|
||||
|
|
|
@ -80,6 +80,7 @@
|
|||
)
|
||||
|
||||
(setq org-agenda-file-regexp "\\`[^.].*\\.org\\'")
|
||||
(when (not kmn/is-dayjob)
|
||||
(setq org-agenda-files (list
|
||||
"~/org/health/_health.org"
|
||||
"~/org/health/health_houdini.org"
|
||||
|
@ -88,10 +89,19 @@
|
|||
"~/org/orgzly/_todo.org"
|
||||
"~/org/orgzly/_slipbox.org"
|
||||
))
|
||||
)
|
||||
(when kmn/is-dayjob
|
||||
(setq org-agenda-files (list
|
||||
"~/org/_index.org"
|
||||
"~/org/_slipbox.org"
|
||||
"~/org/_todo.org"
|
||||
))
|
||||
)
|
||||
|
||||
(require 'org-super-agenda)
|
||||
(org-super-agenda-mode)
|
||||
|
||||
(when (not kmn/is-dayjob)
|
||||
(setq org-super-agenda-groups
|
||||
'(
|
||||
(:name "Health"
|
||||
|
@ -182,3 +192,44 @@
|
|||
("o" . "Photography")
|
||||
)
|
||||
)
|
||||
)
|
||||
(when kmn/is-dayjob
|
||||
(setq org-super-agenda-groups
|
||||
'(
|
||||
(:name "Habits" :habit t)
|
||||
(:name "Active"
|
||||
:todo ("WIP" "READY"))
|
||||
(:name "Slip Box" :tag "slipbox")
|
||||
(:name "To Do" :priority>= "C")
|
||||
(:name "Low Priority" :priority< "C")))
|
||||
|
||||
(setq org-agenda-custom-commands
|
||||
'(
|
||||
("r" "PCE"
|
||||
(
|
||||
(agenda "" (
|
||||
(org-agenda-overriding-header "Scheduled")
|
||||
(org-agenda-remove-tags t)
|
||||
))
|
||||
(agenda "" (
|
||||
(org-agenda-overriding-header "Habits")
|
||||
(org-agenda-files (list "~/org/_habits.org"))
|
||||
(org-agenda-remove-tags t)
|
||||
))
|
||||
(todo "WIP" (
|
||||
(org-agenda-overriding-header "WIP")
|
||||
(org-agenda-remove-tags t)
|
||||
))
|
||||
(todo "READY" (
|
||||
(org-agenda-overriding-header "Ready")
|
||||
(org-agenda-remove-tags t)
|
||||
))
|
||||
(tags-todo "-TODO=\"WIP\"-TODO=\"READY\"" (
|
||||
(org-agenda-overriding-header "")
|
||||
(org-agenda-remove-tags t)
|
||||
))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
(concat prefix (org-time-stamp nil))))
|
||||
|
||||
; orgmode capture templates
|
||||
(when (not kmn/is-dayjob)
|
||||
(setq org-capture-templates '(
|
||||
("d" "TODO (Main)" entry
|
||||
(file "~/org/orgzly/_todo.org")
|
||||
|
@ -166,3 +167,22 @@
|
|||
:empty-lines-before 1
|
||||
)
|
||||
))
|
||||
)
|
||||
(when (not kmn/is-dayjob)
|
||||
(setq org-capture-templates '(
|
||||
("d" "TODO (Main)" entry
|
||||
(file "~/org/_todo.org")
|
||||
(file "~/org/template_todo.org")
|
||||
:prepend t
|
||||
:immediate-finish "f"
|
||||
:jump-to-captured "t"
|
||||
)
|
||||
("s" "TODO (Slipbox)" entry
|
||||
(file "~/org/_slipbox.org")
|
||||
(file "~/org/template_slipbox.org")
|
||||
:prepend t
|
||||
:immediate-finish "f"
|
||||
:jump-to-captured "t"
|
||||
)
|
||||
))
|
||||
)
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
(setq org-habit-graph-column 75)
|
||||
|
||||
; set ui to standard org-workspace at launch
|
||||
(when (not kmn/is-dayjob)
|
||||
(add-hook 'after-init-hook (lambda ()
|
||||
(kmn/workspace-org)
|
||||
))
|
||||
)
|
||||
|
|
|
@ -5,15 +5,19 @@
|
|||
(global-set-key (kbd "C-c s") 'org-schedule)
|
||||
(global-set-key (kbd "C-c c") 'org-capture)
|
||||
(global-set-key (kbd "C-c z") 'org-attach)
|
||||
(global-set-key (kbd "C-c d v")
|
||||
(lambda () (interactive) (dired "~/org/Document_Archive"))
|
||||
)
|
||||
(global-set-key (kbd "C-c d n")
|
||||
(lambda () (interactive) (find-file "~/org/_index.org"))
|
||||
)
|
||||
(when (not kmn/is-dayjob)
|
||||
(global-set-key (kbd "C-c d t")
|
||||
(lambda () (interactive) (find-file "~/org/orgzly/_todo.org"))
|
||||
)
|
||||
(global-set-key (kbd "C-c d s")
|
||||
(lambda () (interactive) (find-file "~/org/orgzly/_slipbox.org"))
|
||||
)
|
||||
(global-set-key (kbd "C-c d n")
|
||||
(lambda () (interactive) (find-file "~/org/_index.org"))
|
||||
)
|
||||
(global-set-key (kbd "C-c d h")
|
||||
(lambda () (interactive) (find-file "~/org/health/_health.org"))
|
||||
)
|
||||
|
@ -23,6 +27,12 @@
|
|||
(global-set-key (kbd "C-c d r")
|
||||
(lambda () (interactive) (find-file "~/org/culinary/_culinary.org"))
|
||||
)
|
||||
(global-set-key (kbd "C-c d v")
|
||||
(lambda () (interactive) (dired "~/org/Document_Archive"))
|
||||
)
|
||||
(when kmn/is-dayjob
|
||||
(global-set-key (kbd "C-c t")
|
||||
(lambda () (interactive) (find-file "~/org/_todo.org"))
|
||||
)
|
||||
(global-set-key (kbd "C-c s")
|
||||
(lambda () (interactive) (find-file "~/org/_slipbox.org"))
|
||||
)
|
||||
)
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
(setq org-todo-keywords
|
||||
'((sequence "TODO(t)" "READY(r)" "WIP(w)" "|" "SKIPPED(k)" "COMPLETE(c)" "CANCELED(x)"))
|
||||
)
|
||||
(setq org-todo-keyword-faces
|
||||
'(("TODO" . "turquoise") ("READY" . "yellow") ("WIP" . "magenta") ("COMPLETE" . "green") ("CANCELED" . "orange"))
|
||||
)
|
||||
(when (not kmn/is-dayjob)
|
||||
(setq org-tags-exclude-from-inheritance (quote ("@recipe" "@budgetbytes"
|
||||
"@vegan" "@vegetarian"
|
||||
"@instapot" "@slowcooker" "@onepot" "@oven" "@baked" "@baking" "@dehydrator" "@ricecooker"
|
||||
|
@ -14,9 +21,4 @@
|
|||
"@coconutmilk" "@oatmilk" "@coconutwater"
|
||||
"@kemonine" "@waltdk"
|
||||
)))
|
||||
(setq org-todo-keywords
|
||||
'((sequence "TODO(t)" "READY(r)" "WIP(w)" "|" "SKIPPED(k)" "COMPLETE(c)" "CANCELED(x)"))
|
||||
)
|
||||
(setq org-todo-keyword-faces
|
||||
'(("TODO" . "turquoise") ("READY" . "yellow") ("WIP" . "magenta") ("COMPLETE" . "green") ("CANCELED" . "orange"))
|
||||
)
|
||||
|
|
|
@ -13,6 +13,10 @@
|
|||
(require 'subr-x)
|
||||
(setq kmn/is-termux
|
||||
(string-suffix-p "Android" (string-trim (shell-command-to-string "uname -a"))))
|
||||
;; day job env?
|
||||
(setq kmn/is-dayjob
|
||||
(string= "PCE" (getenv "USERDOMAIN"))
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; os specific config
|
||||
|
@ -26,6 +30,10 @@
|
|||
(add-to-list 'exec-path "C:/msys64/usr/bin/unzip.exe")
|
||||
(setenv "PATH" (concat "C:\\msys64\\mingw64\\bin;" (getenv "PATH")))
|
||||
)
|
||||
(when kmn/is-dayjob
|
||||
(setenv "HOME" "I:/")
|
||||
(setq default-directory "I:/")
|
||||
)
|
||||
(when kmn/is-termux
|
||||
; setup storage locations -- cheat so mobile/desktop look alike for file urls
|
||||
;(setq user-init-file "/data/data/com.termux/files/home/storage/shared/.emacs")
|
||||
|
|
Reference in a new issue