Archived
1
0
Fork 0

Compare commits

...

4 commits

9 changed files with 46 additions and 162 deletions

View file

@ -14,11 +14,6 @@
(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 (and (eq system-type 'windows-nt)
@ -31,10 +26,6 @@
(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")
@ -75,11 +66,9 @@
(add-to-list 'package-selected-packages
'(helm-xref helm-lsp lsp-ui lsp-mode 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)
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; activate helm after its fully configured (may be configured beyond global defaults in other profiles so we have to activate locally)
@ -123,10 +112,8 @@
(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)
@ -159,12 +146,10 @@
(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)

View file

@ -1,10 +1,16 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; start emacs server (daemon) via real client so org-mode and other 'workspaces' can be setup as faux daemonized emacs
; (server-start)
; windows performance tweaks, add to top of init.el as well
(when (eq system-type 'windows-nt)
; https://lists.gnu.org/archive/html/bug-gnu-emacs/2012-10/msg00274.html
; https://gioorgi.com/2013/solving-emacs-freeze-andor-slowdown-on-windows7/
(setq w32-get-true-file-attributes nil)
;; critical built in for tuning startup
(setq kmn/is-dayjob
(string= "PCE" (getenv "USERDOMAIN"))
; https://www.reddit.com/r/emacs/comments/c9ef5i/comment/esx5ndr/
(setq inhibit-compacting-font-caches t)
; https://www.reddit.com/r/emacs/comments/c9ef5i/comment/esx5snw/
(when (boundp 'w32-pipe-read-delay)
(setq w32-pipe-read-delay 0))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -15,11 +21,9 @@
(add-to-list 'package-selected-packages
'(which-key all-the-icons revert-buffer-all centaur-tabs scratch persistent-scratch persp-mode rainbow-mode rainbow-delimiters markdown-mode focus zoom popwin dired-single diredfl 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 xclip)
)
)
(require 'use-package)
; helper functions
@ -180,7 +184,6 @@
("\\.markdown\\'" . markdown-mode))
:init (setq markdown-command "multimarkdown"))
(when (not kmn/is-dayjob)
(use-package markdown-preview-mode
:ensure t
:if (boundp 'mdcommand)
@ -192,7 +195,6 @@
(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
@ -261,6 +263,10 @@
(global-set-key (kbd "C-s") 'isearch-forward)
(global-set-key (kbd "C-f") 'isearch-forward)
; C-h find/replace
(global-set-key (kbd "C-h") 'query-replace)
(global-set-key (kbd "C-H") 'query-replace-regexp)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Set some global config
(setq inhibit-splash-screen t) ; why do you need to tell me things i know by default
@ -285,9 +291,7 @@
(global-auto-revert-mode 1)
; Clipboard integration
(when (not kmn/is-dayjob)
(use-package xclip :config (xclip-mode 1))
)
;; use y or n instead of yes or no
(fset 'yes-or-no-p 'y-or-n-p)
@ -454,7 +458,6 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; flyspell
(when (not kmn/is-dayjob)
(require 'flyspell)
(setenv "LANG" "en_US")
(setq ispell-program-name "hunspell")
@ -500,7 +503,6 @@
; 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)
@ -535,6 +537,8 @@
(use-package popwin
:bind ( :map popwin:keymap
("h" . popwin:close-popup-window)
("r" . kmn/workspace-frame-scratch)
("R" . kmn/popwin-scratch)
("q" . kmn/popwin-quick-ref))
:config
(global-set-key (kbd "C-w") popwin:keymap)
@ -544,7 +548,6 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; devdocs
(when (not kmn/is-dayjob)
(require 'devdocs)
(require 'devdocs-browser)
; devdocs
@ -553,7 +556,6 @@
; devdocs-browser
(setq devdocs-browser-cache-directory "~/devdocs-browser")
(global-set-key (kbd "C-x n") 'devdocs-browser-open)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; tabs-bar

View file

@ -150,6 +150,33 @@
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; open text-mode scratch in left side window
(defun kmn/scratch-prompt-on-left ()
(defvar parameters
'(window-parameters . ((no-other-window . t)
(no-delete-other-windows . t))))
(setq fit-window-to-buffer-horizontally t)
(setq window-resize-pixelwise t)
"Display `default-directory' in side window on left, hiding details."
(interactive)
(let ((buffer (scratch (let ((current-prefix-arg t)) (scratch--buffer-querymode)))))
(display-buffer-in-side-window
buffer `((side . left) (slot . -1)
(window-width . fit-window-to-buffer)
, parameters)
)
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; text-mode scratch buffer as a pop up window
(defun kmn/popwin-scratch ()
(interactive)
(popwin:popup-buffer (scratch 'text-mode)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; quick reference notes as a pop up window
(defun kmn/popwin-quick-ref ()

View file

@ -66,7 +66,6 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; org-mode workspace
(when (not kmn/is-dayjob)
(defun kmn/workspace-org ()
(interactive)
(kmn/possibly-create-frame)
@ -98,35 +97,9 @@
; focus top most frame
(next-multiframe-window)
)
)
(when kmn/is-dayjob
(defun kmn/workspace-org ()
(interactive)
(kmn/possibly-create-frame)
; start with fresh frame
(delete-other-windows)
(kmn/kill-other-buffers)
(ignore-errors (kill-buffer "*scratch*"))
; show varied org files so their buffers exist prior to jumping in from org-agenda
(find-file "~/org/_habits.org")
(find-file "~/org/_index.org")
(find-file "~/org/_todo.org")
(find-file "~/org/_slipbox.org")
; front load org-agenda so it doesnt reshuffle the frame layout on us
(org-agenda nil "r")
; show scratch on right
(kmn/scratch-text-on-right)
; delete the current window (agenda triggers a vertical split on my computer, this undoes that non desired outcome)
(delete-window)
; switch to top of agenda window where i prefer to start my reading
(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
@ -146,11 +119,9 @@
; start at the top of the agenda
(goto-char 0)
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; org-mode workspace for general kb work that doesnt use the agenda
(when (not kmn/is-dayjob)
(defun kmn/workspace-org-index ()
(interactive)
(kmn/possibly-create-frame)
@ -163,11 +134,9 @@
(find-file "~/org/_index.org")
(goto-char 0)
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; org-mode workspace for culinary work that doesnt use the agenda
(when (not kmn/is-dayjob)
(defun kmn/workspace-org-culinary ()
(interactive)
(kmn/possibly-create-frame)
@ -180,7 +149,6 @@
(find-file "~/org/culinary/_culinary.org")
(goto-char 0)
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; empty code workspace

View file

@ -80,7 +80,6 @@
)
(setq org-agenda-file-regexp "\\`[^.].*\\.org\\'")
(when (not kmn/is-dayjob)
(setq org-agenda-files (list
"~/org/health/_health.org"
"~/org/health/health_couples.org"
@ -89,14 +88,7 @@
"~/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"
))
)
; use *all* org agenda files as refile targets
(setq org-refile-targets
@ -106,7 +98,6 @@
(require 'org-super-agenda)
(org-super-agenda-mode)
(when (not kmn/is-dayjob)
(setq org-super-agenda-groups
'(
(:name "Health"
@ -241,47 +232,4 @@
)
)
)
)
(when kmn/is-dayjob
(setq org-super-agenda-groups
'(
(:name "Habits" :habit t)
(:order 100 :auto-parent "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)
(org-deadline-warning-days 14)
(org-agenda-entry-types '(:deadline :scheduled))
))
(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)
))
)
)
)
)
)

View file

@ -18,7 +18,6 @@
(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")
@ -206,29 +205,3 @@
:empty-lines-before 1
)
))
)
(when 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"
)
("p" "Deployment" entry
(file "~/org/_todo.org")
(file "~/org/template_deploy.org")
:prepend t
:immediate-finish "f"
:jump-to-captured "t"
)
))
)

View file

@ -16,7 +16,6 @@
(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"))
)
@ -30,12 +29,3 @@
(lambda () (interactive) (find-file "~/org/photography/_photography.org"))
)
(global-set-key (kbd "C-c d r") 'kmn/workspace-org-culinary)
)
(when kmn/is-dayjob
(global-set-key (kbd "C-c d t")
(lambda () (interactive) (find-file "~/org/_todo.org"))
)
(global-set-key (kbd "C-c d s")
(lambda () (interactive) (find-file "~/org/_slipbox.org"))
)
)

View file

@ -4,7 +4,6 @@
(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"
@ -21,4 +20,4 @@
"@coconutmilk" "@oatmilk" "@coconutwater"
"@kemonine" "@waltdk"
)))
)

View file

@ -13,10 +13,6 @@
(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
@ -31,10 +27,6 @@
(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")