|
@ -3,7 +3,6 @@ |
|
|
;; Place your private configuration here! Remember, you do not need to run 'doom |
|
|
;; Place your private configuration here! Remember, you do not need to run 'doom |
|
|
;; sync' after modifying this file! |
|
|
;; sync' after modifying this file! |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;; Some functionality uses this to identify you, e.g. GPG configuration, email |
|
|
;; Some functionality uses this to identify you, e.g. GPG configuration, email |
|
|
;; clients, file templates and snippets. |
|
|
;; clients, file templates and snippets. |
|
|
(setq user-full-name "Levi Olson" |
|
|
(setq user-full-name "Levi Olson" |
|
@ -22,10 +21,9 @@ |
|
|
;; (setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light) |
|
|
;; (setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light) |
|
|
;; doom-variable-pitch-font (font-spec :family "sans" :size 13)) |
|
|
;; doom-variable-pitch-font (font-spec :family "sans" :size 13)) |
|
|
|
|
|
|
|
|
(setq doom-font (font-spec :family "PragmataPro Liga" :size 20) |
|
|
|
|
|
doom-variable-pitch-font (font-spec :family "PragmataPro Liga" :size 20) ; inherits `doom-font''s :size |
|
|
|
|
|
doom-unicode-font (font-spec :family "PragmataPro Liga" :size 12) |
|
|
|
|
|
doom-big-font (font-spec :family "PragmataPro Liga" :size 30)) |
|
|
|
|
|
|
|
|
(setq doom-font (font-spec :family "PragmataPro" :size 20 :weight 'regular) |
|
|
|
|
|
doom-variable-pitch-font (font-spec :family "PragmataPro" :size 20) |
|
|
|
|
|
doom-unicode-font (font-spec :family "PragmataPro" :size 20)) |
|
|
|
|
|
|
|
|
;; There are two ways to load a theme. Both assume the theme is installed and |
|
|
;; There are two ways to load a theme. Both assume the theme is installed and |
|
|
;; available. You can either set `doom-theme' or manually load a theme with the |
|
|
;; available. You can either set `doom-theme' or manually load a theme with the |
|
@ -40,7 +38,6 @@ |
|
|
;; This determines the style of line numbers in effect. If set to `nil', line |
|
|
;; This determines the style of line numbers in effect. If set to `nil', line |
|
|
;; numbers are disabled. For relative line numbers, set this to `relative'. |
|
|
;; numbers are disabled. For relative line numbers, set this to `relative'. |
|
|
(setq display-line-numbers-type t) |
|
|
(setq display-line-numbers-type t) |
|
|
|
|
|
|
|
|
(setq projectile-project-search-path "~/Projects") |
|
|
(setq projectile-project-search-path "~/Projects") |
|
|
|
|
|
|
|
|
(require 's) |
|
|
(require 's) |
|
@ -56,6 +53,16 @@ |
|
|
(setq browse-url-chrome-program "/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe") |
|
|
(setq browse-url-chrome-program "/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe") |
|
|
(setq browse-url-chromium-program "/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe") |
|
|
(setq browse-url-chromium-program "/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe") |
|
|
))) |
|
|
))) |
|
|
|
|
|
(when (eq system-type 'darwin) |
|
|
|
|
|
(progn |
|
|
|
|
|
(setq org-directory "/Users/leviolson/Nextcloud/Org") |
|
|
|
|
|
(add-to-list 'default-frame-alist '(top . 0)) |
|
|
|
|
|
(add-to-list 'default-frame-alist '(left . 0)) |
|
|
|
|
|
(add-to-list 'default-frame-alist '(height . 49)) |
|
|
|
|
|
(add-to-list 'default-frame-alist '(width . 178)) |
|
|
|
|
|
(setq browse-url-chrome-program "/Applications/Safari.app") |
|
|
|
|
|
(setq browse-url-chromium-program "/Applications/Safari.app") |
|
|
|
|
|
)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;; Here are some additional functions/macros that could help you configure Doom: |
|
|
;; Here are some additional functions/macros that could help you configure Doom: |
|
@ -78,12 +85,31 @@ |
|
|
(load! "functions.el") |
|
|
(load! "functions.el") |
|
|
(use-package! functions) |
|
|
(use-package! functions) |
|
|
|
|
|
|
|
|
(load! "fancy-banner.el") |
|
|
|
|
|
(use-package! fancy-banner) |
|
|
|
|
|
|
|
|
|
|
|
(load! "setup-elfeed.el") |
|
|
(load! "setup-elfeed.el") |
|
|
(use-package! setup-elfeed) |
|
|
(use-package! setup-elfeed) |
|
|
|
|
|
|
|
|
|
|
|
(after! company |
|
|
|
|
|
;; (set-company-backend! 'prog-mode nil) |
|
|
|
|
|
(set-company-backend! 'typescript-mode '(:separate 'company-tabnine 'company-capf 'company-yasnippet)) |
|
|
|
|
|
;; (setq company-backends '(company-tabnine company-capf)) |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
(use-package company-tabnine |
|
|
|
|
|
:after company |
|
|
|
|
|
:ensure t |
|
|
|
|
|
:config |
|
|
|
|
|
;; Tabnine::config ;; to open the config |
|
|
|
|
|
;; Tabnine::config_dir ;; /Users/leviolson/Library/Preferences/TabNine |
|
|
|
|
|
|
|
|
|
|
|
;; Trigger completion immediately. |
|
|
|
|
|
(setq company-idle-delay 0) |
|
|
|
|
|
|
|
|
|
|
|
;; Number the candidates (use M-1, M-2 etc to select completions). |
|
|
|
|
|
(setq company-show-numbers t) |
|
|
|
|
|
|
|
|
|
|
|
;; (setq company-backends '(company-tabnine company-capf)) |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
(use-package! darkroom |
|
|
(use-package! darkroom |
|
|
:commands darkroom-mode |
|
|
:commands darkroom-mode |
|
|
:custom |
|
|
:custom |
|
@ -94,11 +120,12 @@ |
|
|
) |
|
|
) |
|
|
|
|
|
|
|
|
(use-package! org |
|
|
(use-package! org |
|
|
|
|
|
;; :disabled t |
|
|
:commands org-capture |
|
|
:commands org-capture |
|
|
:mode ("\\.org\\'" . org-mode) |
|
|
:mode ("\\.org\\'" . org-mode) |
|
|
:bind ( |
|
|
:bind ( |
|
|
("C-," . org-cycle-agenda-files) |
|
|
("C-," . org-cycle-agenda-files) |
|
|
("C-c C-d" . org-capture) |
|
|
|
|
|
|
|
|
;; ("C-c C-d" . org-capture) |
|
|
:map org-mode-map |
|
|
:map org-mode-map |
|
|
("M-n" . leo/org-narrow-next-tree) |
|
|
("M-n" . leo/org-narrow-next-tree) |
|
|
("M-p" . leo/org-narrow-prev-tree) |
|
|
("M-p" . leo/org-narrow-prev-tree) |
|
@ -118,14 +145,6 @@ |
|
|
(concat org-directory "/personal.org") |
|
|
(concat org-directory "/personal.org") |
|
|
(concat org-directory "/archive.org") |
|
|
(concat org-directory "/archive.org") |
|
|
)) |
|
|
)) |
|
|
(set-face-attribute 'org-document-title nil :height 1.5) |
|
|
|
|
|
(set-face-attribute 'org-level-1 nil :height 1.2) |
|
|
|
|
|
(set-face-attribute 'org-level-2 nil :height 1.1) |
|
|
|
|
|
(set-face-attribute 'org-level-3 nil :height 1.0) |
|
|
|
|
|
(set-face-attribute 'org-level-4 nil :height 1.0) |
|
|
|
|
|
(set-face-attribute 'org-level-5 nil :height 1.0) |
|
|
|
|
|
(set-face-attribute 'org-scheduled-today nil :height 2.0) |
|
|
|
|
|
(set-face-attribute 'org-agenda-date-today nil :height 2.0) |
|
|
|
|
|
(setq org-agenda-include-diary t) |
|
|
(setq org-agenda-include-diary t) |
|
|
(add-to-list 'safe-local-variable-values '(eval leo/deft-insert-boilerplate)) |
|
|
(add-to-list 'safe-local-variable-values '(eval leo/deft-insert-boilerplate)) |
|
|
(setq org-refile-targets '((nil :maxlevel . 3) |
|
|
(setq org-refile-targets '((nil :maxlevel . 3) |
|
@ -181,14 +200,10 @@ |
|
|
(match-end 1) |
|
|
(match-end 1) |
|
|
,(concat (list ?\C-i) |
|
|
,(concat (list ?\C-i) |
|
|
(list (decode-char 'ucs (cadr regex-char-pair))))))))) |
|
|
(list (decode-char 'ucs (cadr regex-char-pair))))))))) |
|
|
'(("\\(\\[ \\]\\)" #XF096);2B1C |
|
|
|
|
|
("\\(\\[-\\]\\)" #XF147);29C7;F458 |
|
|
|
|
|
("\\(\\[X\\]\\)" #XF046);2BBD |
|
|
|
|
|
|
|
|
'(("\\(\\[ \\]\\)" #XF096);2B1C;F096; |
|
|
|
|
|
("\\(\\[-\\]\\)" #XF147);29C7;F458;F147; |
|
|
|
|
|
("\\(\\[X\\]\\)" #XF046);2BBD;F046; |
|
|
))) |
|
|
))) |
|
|
;; Replace list hyphen with dot |
|
|
|
|
|
;; (font-lock-add-keywords 'org-mode |
|
|
|
|
|
;; '(("^ *\\([-]\\) " |
|
|
|
|
|
;; (0 (prog1 () (compose-region (match-beginning 1) (match-end 1) "•")))))) |
|
|
|
|
|
(defun add-checkbox-symbol-keywords () |
|
|
(defun add-checkbox-symbol-keywords () |
|
|
"Add checkbox font to font-lock." |
|
|
"Add checkbox font to font-lock." |
|
|
(font-lock-add-keywords nil checkbox-fontlock-keywords-alist)) |
|
|
(font-lock-add-keywords nil checkbox-fontlock-keywords-alist)) |
|
@ -202,14 +217,21 @@ |
|
|
)) |
|
|
)) |
|
|
) |
|
|
) |
|
|
|
|
|
|
|
|
(use-package! org-roam |
|
|
|
|
|
:after org |
|
|
|
|
|
|
|
|
(use-package org-roam |
|
|
|
|
|
:disabled t |
|
|
|
|
|
:ensure t |
|
|
:hook |
|
|
:hook |
|
|
(org-mode . org-roam-mode) |
|
|
|
|
|
:config |
|
|
|
|
|
(setq org-roam-directory (concat org-directory "/Roam/")) |
|
|
|
|
|
(setq org-roam-link-title-format "r::%s") |
|
|
|
|
|
(org-roam-db-build-cache)) |
|
|
|
|
|
|
|
|
(after-init . org-roam-mode) |
|
|
|
|
|
:custom |
|
|
|
|
|
(org-roam-directory (concat org-directory "/Roam/")) |
|
|
|
|
|
(org-roam-link-title-format "r::%s") |
|
|
|
|
|
:bind (:map org-roam-mode-map |
|
|
|
|
|
(("C-c n l" . org-roam) |
|
|
|
|
|
("C-c n f" . org-roam-find-file) |
|
|
|
|
|
("C-c n g" . org-roam-graph)) |
|
|
|
|
|
:map org-mode-map |
|
|
|
|
|
(("C-c n i" . org-roam-insert)) |
|
|
|
|
|
(("C-c n I" . org-roam-insert-immediate)))) |
|
|
|
|
|
|
|
|
(use-package! deft |
|
|
(use-package! deft |
|
|
:after org |
|
|
:after org |
|
@ -223,6 +245,7 @@ |
|
|
deft-recursive-ignore-dir-regexp "\\(?:\\.\\|\\.\\.\\|setup\\)$")) |
|
|
deft-recursive-ignore-dir-regexp "\\(?:\\.\\|\\.\\.\\|setup\\)$")) |
|
|
|
|
|
|
|
|
(use-package! org-journal |
|
|
(use-package! org-journal |
|
|
|
|
|
:disabled t |
|
|
:after org |
|
|
:after org |
|
|
:config |
|
|
:config |
|
|
(setq org-journal-date-prefix "#+TITLE: " |
|
|
(setq org-journal-date-prefix "#+TITLE: " |
|
@ -238,18 +261,11 @@ |
|
|
(org-pandoc-import-backend html) |
|
|
(org-pandoc-import-backend html) |
|
|
) |
|
|
) |
|
|
|
|
|
|
|
|
(use-package! lsp-java |
|
|
|
|
|
:hook ( |
|
|
|
|
|
(java-mode . lsp-deferred) |
|
|
|
|
|
(java-mode . lsp-lens-mode) |
|
|
|
|
|
(java-mode . lsp-ui-mode) |
|
|
|
|
|
(css-mode . lsp-deferred) |
|
|
|
|
|
(js-mode . lsp-deferred) |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
(use-package! lsp-mode |
|
|
:config |
|
|
:config |
|
|
(setq lsp-ui-doc-include-signature t |
|
|
|
|
|
lsp-ui-doc-enable t |
|
|
|
|
|
lsp-ui-sideline-enable t)) |
|
|
|
|
|
|
|
|
(setq +lsp-company-backends '(:separate company-tabnine company-yasnippet company-capf)) |
|
|
|
|
|
(setq lsp-enable-symbol-highlighting nil |
|
|
|
|
|
lsp-headerline-breadcrumb-enable t)) |
|
|
|
|
|
|
|
|
(use-package! apex-mode |
|
|
(use-package! apex-mode |
|
|
:mode "\\.cls\\'" |
|
|
:mode "\\.cls\\'" |
|
@ -263,19 +279,29 @@ |
|
|
:config |
|
|
:config |
|
|
(setq so-long-action 'so-long-minor-mode)) |
|
|
(setq so-long-action 'so-long-minor-mode)) |
|
|
|
|
|
|
|
|
(use-package! ob-apex |
|
|
|
|
|
:after org |
|
|
|
|
|
:load-path "/home/leothelocust/Projects/emacs/apex-babel" |
|
|
|
|
|
:commands org-babel-execute:apex) |
|
|
|
|
|
|
|
|
(use-package! dired |
|
|
|
|
|
:config |
|
|
|
|
|
(setq dired-listing-switches "-ahgo --group-directories-first")) |
|
|
|
|
|
|
|
|
|
|
|
(use-package! dired-x |
|
|
|
|
|
:disabled t |
|
|
|
|
|
:custom |
|
|
|
|
|
(dired-omit-files nil)) |
|
|
|
|
|
|
|
|
(use-package! emacs-sfdx |
|
|
|
|
|
:load-path "/home/leothelocust/Projects/emacs/emacs-sfdx" ;; use this load-path when testing locally |
|
|
|
|
|
:commands (sfdx/transient-action sfdx/next-component-file) |
|
|
|
|
|
:bind ("C-<iso-lefttab>" . #'sfdx/next-component-file)) |
|
|
|
|
|
|
|
|
(use-package! lookup |
|
|
|
|
|
:config |
|
|
|
|
|
(add-to-list '+lookup-provider-url-alist '("Melpa" "https://melpa.org/#/?q=%s"))) |
|
|
|
|
|
|
|
|
|
|
|
;;;;;;;;;;; |
|
|
|
|
|
;; HOOKS ;; |
|
|
|
|
|
;;;;;;;;;;; |
|
|
|
|
|
(add-hook 'text-mode-hook 'leo/remove-dos-eol) ;; Don't show `^M' at the end of lines |
|
|
|
|
|
(add-hook 'prog-mode-hook 'leo/remove-dos-eol) ;; same, but for prog modes |
|
|
|
|
|
|
|
|
(use-package! vlocitemacs |
|
|
|
|
|
:commands (vlo/transient-action)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;;;;;;;;;;;;;;;;; |
|
|
|
|
|
;; KEYBINDINGS ;; |
|
|
|
|
|
;;;;;;;;;;;;;;;;; |
|
|
(map! :map global-map |
|
|
(map! :map global-map |
|
|
:prefix "C-x" |
|
|
:prefix "C-x" |
|
|
"C-l" nil |
|
|
"C-l" nil |
|
@ -283,9 +309,8 @@ |
|
|
"a" #'org-agenda |
|
|
"a" #'org-agenda |
|
|
"e" #'elfeed |
|
|
"e" #'elfeed |
|
|
"g" #'magit-status |
|
|
"g" #'magit-status |
|
|
"s" #'sfdx/transient-action |
|
|
|
|
|
"v" #'vlo/transient-action |
|
|
|
|
|
)) |
|
|
)) |
|
|
|
|
|
|
|
|
(map! :map global-map |
|
|
(map! :map global-map |
|
|
:prefix "C-c" |
|
|
:prefix "C-c" |
|
|
"a" nil |
|
|
"a" nil |
|
@ -293,9 +318,8 @@ |
|
|
"a" #'org-agenda |
|
|
"a" #'org-agenda |
|
|
"e" #'elfeed |
|
|
"e" #'elfeed |
|
|
"g" #'magit-status |
|
|
"g" #'magit-status |
|
|
"s" #'sfdx/transient-action |
|
|
|
|
|
"v" #'vlo/transient-action |
|
|
|
|
|
)) |
|
|
)) |
|
|
|
|
|
|
|
|
(map! :map comint-mode-map |
|
|
(map! :map comint-mode-map |
|
|
"q" '(lambda() |
|
|
"q" '(lambda() |
|
|
(interactive) |
|
|
(interactive) |
|
@ -304,30 +328,57 @@ |
|
|
(leo/kill-this-buffer-unless-scratch) |
|
|
(leo/kill-this-buffer-unless-scratch) |
|
|
(+workspace/close-window-or-workspace) |
|
|
(+workspace/close-window-or-workspace) |
|
|
)))) |
|
|
)))) |
|
|
|
|
|
|
|
|
|
|
|
(map! :map xwidget-webkit-mode-map |
|
|
|
|
|
"C-i" 'xwidget-webkit-insert-string |
|
|
|
|
|
"C-m" 'xwidget-webkit-insert-string |
|
|
|
|
|
"C-s" 'isearch-forward |
|
|
|
|
|
"M-w" 'xwidget-webkit-copy-selection-as-kill |
|
|
|
|
|
"C-w" 'xwidget-webkit-copy-selection-as-kill |
|
|
|
|
|
|
|
|
|
|
|
"o" 'xwidget-webkit-goto-url |
|
|
|
|
|
"C-l" 'xwidget-webkit-goto-url |
|
|
|
|
|
|
|
|
|
|
|
"n" 'xwidget-webkit-scroll-up |
|
|
|
|
|
"p" 'xwidget-webkit-scroll-down |
|
|
|
|
|
|
|
|
|
|
|
"C-y" 'yank |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
(map! :map global-map |
|
|
(map! :map global-map |
|
|
"M-t" #'treemacs-select-window |
|
|
"M-t" #'treemacs-select-window |
|
|
"M-q" #'leo/kill-this-buffer-unless-scratch |
|
|
"M-q" #'leo/kill-this-buffer-unless-scratch |
|
|
"M-RET" #'lsp-ui-doc-glance |
|
|
|
|
|
|
|
|
"M-RET" #'eshell |
|
|
|
|
|
|
|
|
"C-<tab>" #'leo/tidy |
|
|
"C-<tab>" #'leo/tidy |
|
|
"C-;" #'leo/comment-or-uncomment-region-or-line |
|
|
"C-;" #'leo/comment-or-uncomment-region-or-line |
|
|
"C-c C-e" #'leo/edit-config |
|
|
"C-c C-e" #'leo/edit-config |
|
|
"C-c d" #'leo/duplicate-thing |
|
|
"C-c d" #'leo/duplicate-thing |
|
|
|
|
|
"C-c g" #'magit-status |
|
|
"M-n" #'leo/jump-to-next-symbol |
|
|
"M-n" #'leo/jump-to-next-symbol |
|
|
"M-p" #'leo/jump-to-prev-symbol |
|
|
"M-p" #'leo/jump-to-prev-symbol |
|
|
"M-u" #'upcase-dwim |
|
|
"M-u" #'upcase-dwim |
|
|
"M-c" #'capitalize-dwim |
|
|
"M-c" #'capitalize-dwim |
|
|
"M-l" #'downcase-dwim |
|
|
"M-l" #'downcase-dwim |
|
|
|
|
|
|
|
|
"C-c b" #'counsel-switch-buffer |
|
|
|
|
|
|
|
|
;; Perspective.el |
|
|
|
|
|
"C-c C-n" #'persp-next |
|
|
|
|
|
"C-c C-p" #'persp-prev |
|
|
|
|
|
"C-c C-r" #'persp-rename |
|
|
|
|
|
"C-c C-l" #'persp-switch |
|
|
|
|
|
"C-c C-s" #'persp-switch |
|
|
|
|
|
"C-c b" #'persp-switch-to-buffer |
|
|
|
|
|
|
|
|
|
|
|
;; "C-c b" #'counsel-switch-buffer |
|
|
"C-s" #'swiper |
|
|
"C-s" #'swiper |
|
|
|
|
|
|
|
|
"C-}" #'mc/mark-next-like-this |
|
|
"C-}" #'mc/mark-next-like-this |
|
|
"C-)" #'mc/unmark-next-like-this |
|
|
"C-)" #'mc/unmark-next-like-this |
|
|
"C-{" #'mc/mark-previous-like-this |
|
|
"C-{" #'mc/mark-previous-like-this |
|
|
"C-(" #'mc/unmark-previous-like-this |
|
|
"C-(" #'mc/unmark-previous-like-this |
|
|
|
|
|
|
|
|
"C-@" #'er/expand-region |
|
|
"C-@" #'er/expand-region |
|
|
"C-#" #'er/contract-region |
|
|
"C-#" #'er/contract-region |
|
|
|
|
|
|
|
|
"C-c C-r" #'counsel-recoll |
|
|
|
|
|
|
|
|
;; "C-c C-r" #'counsel-recoll |
|
|
) |
|
|
) |