Merge branch 'master' of gitlab.com:chriscochrun/dotemacs
This commit is contained in:
commit
1daf3c7d01
66
README.org
66
README.org
|
@ -14,6 +14,7 @@
|
||||||
- [[#undo-fu][Undo-Fu]]
|
- [[#undo-fu][Undo-Fu]]
|
||||||
- [[#better-ui][Better UI]]
|
- [[#better-ui][Better UI]]
|
||||||
- [[#completion][Completion]]
|
- [[#completion][Completion]]
|
||||||
|
- [[#yasnippet][YASnippet]]
|
||||||
- [[#navigation][Navigation]]
|
- [[#navigation][Navigation]]
|
||||||
- [[#window-management][Window Management]]
|
- [[#window-management][Window Management]]
|
||||||
- [[#help][Help]]
|
- [[#help][Help]]
|
||||||
|
@ -33,6 +34,8 @@
|
||||||
- [[#transmission][Transmission]]
|
- [[#transmission][Transmission]]
|
||||||
- [[#pass][Pass]]
|
- [[#pass][Pass]]
|
||||||
- [[#matrix][Matrix]]
|
- [[#matrix][Matrix]]
|
||||||
|
- [[#activitywatch][ActivityWatch]]
|
||||||
|
- [[#mybible][MyBible]]
|
||||||
- [[#performance][Performance]]
|
- [[#performance][Performance]]
|
||||||
- [[#logging][Logging]]
|
- [[#logging][Logging]]
|
||||||
- [[#early-init][Early Init]]
|
- [[#early-init][Early Init]]
|
||||||
|
@ -631,6 +634,15 @@ Marginalia makes for some great decoration to our minibuffer completion items. W
|
||||||
:after company)
|
:after company)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
** YASnippet
|
||||||
|
YASnippet is a templating system. It's powerful.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package yasnippet
|
||||||
|
:config
|
||||||
|
(setq yas-snippet-dirs '("~/.dotemacs/yasnippets"))
|
||||||
|
(yas-global-mode 1))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
** Navigation
|
** Navigation
|
||||||
*** Avy
|
*** Avy
|
||||||
Avy provides a lot of functions to search through the current buffer. Most of the time I use evil or consult functions to find what I'm looking for, but avy provides a lot of small movements that are more useful for visible movements.
|
Avy provides a lot of functions to search through the current buffer. Most of the time I use evil or consult functions to find what I'm looking for, but avy provides a lot of small movements that are more useful for visible movements.
|
||||||
|
@ -666,16 +678,23 @@ Ace link provides an avy like search for links. Upon using the keybindings prese
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(setq display-buffer-alist
|
(setq display-buffer-alist
|
||||||
'(("\\*e?shell\\*"
|
'(("\\*e?shell\\*"
|
||||||
(display-buffer-pop-up-frame))
|
(display-buffer-in-side-window)
|
||||||
|
(side . right)
|
||||||
|
(window-width . 0.3))
|
||||||
("*helpful*"
|
("*helpful*"
|
||||||
(display-buffer-pop-up-frame))
|
(display-buffer-in-side-window)
|
||||||
|
(side . right)
|
||||||
|
(window-width . 0.4))
|
||||||
("\\*elfeed-entry\\*"
|
("\\*elfeed-entry\\*"
|
||||||
(display-buffer-in-side-window)
|
(display-buffer-in-side-window)
|
||||||
(side . bottom)
|
(side . bottom)
|
||||||
(window-height . 0.60))
|
(window-height . 0.60))
|
||||||
("*Org Agenda(a)*"
|
("*Org Agenda(a)*"
|
||||||
(display-buffer-pop-up-frame)
|
(display-buffer-pop-up-frame))
|
||||||
(wait-for-wm . t))
|
("*Agenda Commands*"
|
||||||
|
(display-buffer-in-side-window)
|
||||||
|
(side . right)
|
||||||
|
(window-width . 0.30))
|
||||||
("\\*Bongo-Elfeed Queue\\*"
|
("\\*Bongo-Elfeed Queue\\*"
|
||||||
(display-buffer-in-side-window)
|
(display-buffer-in-side-window)
|
||||||
(side . bottom)
|
(side . bottom)
|
||||||
|
@ -765,6 +784,16 @@ Fish is my preferred shell and made some scripts in it so I keep this to be able
|
||||||
:mode ("\\.fish\\'" . fish-mode))
|
:mode ("\\.fish\\'" . fish-mode))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
*** Markdown
|
||||||
|
It's probably smart to have markdown.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package markdown-mode
|
||||||
|
:mode ("\\.md\\'" . markdown-mode)
|
||||||
|
:config
|
||||||
|
(setq markdown-fontify-code-blocks-natively t))
|
||||||
|
|
||||||
|
#+end_src
|
||||||
|
|
||||||
*** QML
|
*** QML
|
||||||
I make some apps in Qt 5 so QML is a needed language although the support in Emacs is lacking.
|
I make some apps in Qt 5 so QML is a needed language although the support in Emacs is lacking.
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
|
@ -928,7 +957,7 @@ Part of this config includes some special capture templates for my work as a you
|
||||||
org-agenda-sticky t
|
org-agenda-sticky t
|
||||||
org-fontify-quote-and-verse-blocks t
|
org-fontify-quote-and-verse-blocks t
|
||||||
org-src-preserve-indentation t
|
org-src-preserve-indentation t
|
||||||
org-src-window-setup 'other-frame)
|
org-src-window-setup 'other-window)
|
||||||
|
|
||||||
(add-hook 'org-mode-hook 'chris/org-mode-setup)
|
(add-hook 'org-mode-hook 'chris/org-mode-setup)
|
||||||
|
|
||||||
|
@ -1074,7 +1103,8 @@ Part of this config includes some special capture templates for my work as a you
|
||||||
('normal org-mode-map
|
('normal org-mode-map
|
||||||
"RET" 'chris/org-dwim-at-point
|
"RET" 'chris/org-dwim-at-point
|
||||||
"gC" 'chris/org-columns-view
|
"gC" 'chris/org-columns-view
|
||||||
"ge" 'org-edit-src-code)
|
"ge" 'org-edit-src-code
|
||||||
|
"t" 'org-todo)
|
||||||
('normal 'org-src-mode-map
|
('normal 'org-src-mode-map
|
||||||
"q" 'org-edit-src-abort))
|
"q" 'org-edit-src-abort))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
@ -1147,15 +1177,14 @@ We also need to setup some capture templates to use some specific setups with my
|
||||||
(use-package org-roam
|
(use-package org-roam
|
||||||
:after org
|
:after org
|
||||||
;; :ensure t
|
;; :ensure t
|
||||||
:commands (org-roam org-roam-find-file org-roam-insert)
|
|
||||||
:hook
|
:hook
|
||||||
(org-load . org-roam-mode)
|
(after-init . org-roam-mode)
|
||||||
:config
|
:config
|
||||||
(setq org-roam-directory "~/org"
|
(setq org-roam-directory "~/org"
|
||||||
org-roam-buffer-width 0.25
|
org-roam-buffer-width 0.25
|
||||||
org-roam-file-exclude-regexp ".stversion.*\|.stfolder.*\|.*~.*\|.*sync.*"
|
org-roam-file-exclude-regexp ".stversion.*\|.stfolder.*\|.*~.*\|.*sync.*"
|
||||||
org-roam-db-location "~/.dotemacs/org-roam.db"
|
org-roam-db-location "~/.dotemacs/org-roam.db"
|
||||||
org-roam-completion-everywhere t
|
org-roam-completion-everywhere t
|
||||||
org-roam-capture-templates
|
org-roam-capture-templates
|
||||||
'(("d" "default" plain (function org-roam--capture-get-point)
|
'(("d" "default" plain (function org-roam--capture-get-point)
|
||||||
"%?"
|
"%?"
|
||||||
|
@ -1680,7 +1709,7 @@ Let's add our own eshell prompt. and set the password cache to a significantly h
|
||||||
:keymaps 'override
|
:keymaps 'override
|
||||||
"oe" 'eshell)
|
"oe" 'eshell)
|
||||||
(general-def '(normal insert) eshell-mode-map
|
(general-def '(normal insert) eshell-mode-map
|
||||||
"C-d" 'chris/kill-buffer-frame))
|
"C-d" 'kill-buffer-and-window))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Eshell Aliases
|
*** Eshell Aliases
|
||||||
|
@ -1938,6 +1967,21 @@ Matrix.el is a decent enough matrix client built in emacs. Like it.
|
||||||
:straight (matrix-client :type git :host github :repo "alphapapa/matrix-client.el"))
|
:straight (matrix-client :type git :host github :repo "alphapapa/matrix-client.el"))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
** ActivityWatch
|
||||||
|
I like to track my time with ActivityWatch so I can notice and kill bad habits.
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package activity-watch-mode
|
||||||
|
:init (global-activity-watch-mode))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** MyBible
|
||||||
|
MyBible is going to be my minor mode for creating and using a bible app within Emacs. Let's see if we can't make it work.
|
||||||
|
#+begin_src emacs-lisp :tangle no
|
||||||
|
(defun chris/find-translation-tag ()
|
||||||
|
(interactive)
|
||||||
|
)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
** Performance
|
** Performance
|
||||||
Here we have a bunch of performance tweaks
|
Here we have a bunch of performance tweaks
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
|
|
42
init.el
42
init.el
|
@ -360,6 +360,11 @@ vertically."
|
||||||
(use-package company-dict
|
(use-package company-dict
|
||||||
:after company)
|
:after company)
|
||||||
|
|
||||||
|
(use-package yasnippet
|
||||||
|
:config
|
||||||
|
(setq yas-snippet-dirs '("~/.dotemacs/yasnippets"))
|
||||||
|
(yas-global-mode 1))
|
||||||
|
|
||||||
(use-package avy
|
(use-package avy
|
||||||
:after evil)
|
:after evil)
|
||||||
|
|
||||||
|
@ -381,16 +386,23 @@ vertically."
|
||||||
|
|
||||||
(setq display-buffer-alist
|
(setq display-buffer-alist
|
||||||
'(("\\*e?shell\\*"
|
'(("\\*e?shell\\*"
|
||||||
(display-buffer-pop-up-frame))
|
(display-buffer-in-side-window)
|
||||||
|
(side . right)
|
||||||
|
(window-width . 0.3))
|
||||||
("*helpful*"
|
("*helpful*"
|
||||||
(display-buffer-pop-up-frame))
|
(display-buffer-in-side-window)
|
||||||
|
(side . right)
|
||||||
|
(window-width . 0.4))
|
||||||
("\\*elfeed-entry\\*"
|
("\\*elfeed-entry\\*"
|
||||||
(display-buffer-in-side-window)
|
(display-buffer-in-side-window)
|
||||||
(side . bottom)
|
(side . bottom)
|
||||||
(window-height . 0.60))
|
(window-height . 0.60))
|
||||||
("*Org Agenda(a)*"
|
("*Org Agenda(a)*"
|
||||||
(display-buffer-pop-up-frame)
|
(display-buffer-pop-up-frame))
|
||||||
(wait-for-wm . t))
|
("*Agenda Commands*"
|
||||||
|
(display-buffer-in-side-window)
|
||||||
|
(side . right)
|
||||||
|
(window-width . 0.30))
|
||||||
("\\*Bongo-Elfeed Queue\\*"
|
("\\*Bongo-Elfeed Queue\\*"
|
||||||
(display-buffer-in-side-window)
|
(display-buffer-in-side-window)
|
||||||
(side . bottom)
|
(side . bottom)
|
||||||
|
@ -439,6 +451,11 @@ vertically."
|
||||||
(use-package fish-mode
|
(use-package fish-mode
|
||||||
:mode ("\\.fish\\'" . fish-mode))
|
:mode ("\\.fish\\'" . fish-mode))
|
||||||
|
|
||||||
|
(use-package markdown-mode
|
||||||
|
:mode ("\\.md\\'" . markdown-mode)
|
||||||
|
:config
|
||||||
|
(setq markdown-fontify-code-blocks-natively t))
|
||||||
|
|
||||||
(use-package qml-mode
|
(use-package qml-mode
|
||||||
:mode ("\\.qml\\'" . qml-mode)
|
:mode ("\\.qml\\'" . qml-mode)
|
||||||
:config
|
:config
|
||||||
|
@ -558,7 +575,7 @@ vertically."
|
||||||
org-agenda-sticky t
|
org-agenda-sticky t
|
||||||
org-fontify-quote-and-verse-blocks t
|
org-fontify-quote-and-verse-blocks t
|
||||||
org-src-preserve-indentation t
|
org-src-preserve-indentation t
|
||||||
org-src-window-setup 'other-frame)
|
org-src-window-setup 'other-window)
|
||||||
|
|
||||||
(add-hook 'org-mode-hook 'chris/org-mode-setup)
|
(add-hook 'org-mode-hook 'chris/org-mode-setup)
|
||||||
|
|
||||||
|
@ -704,7 +721,8 @@ vertically."
|
||||||
('normal org-mode-map
|
('normal org-mode-map
|
||||||
"RET" 'chris/org-dwim-at-point
|
"RET" 'chris/org-dwim-at-point
|
||||||
"gC" 'chris/org-columns-view
|
"gC" 'chris/org-columns-view
|
||||||
"ge" 'org-edit-src-code)
|
"ge" 'org-edit-src-code
|
||||||
|
"t" 'org-todo)
|
||||||
('normal 'org-src-mode-map
|
('normal 'org-src-mode-map
|
||||||
"q" 'org-edit-src-abort))
|
"q" 'org-edit-src-abort))
|
||||||
|
|
||||||
|
@ -754,15 +772,14 @@ vertically."
|
||||||
(use-package org-roam
|
(use-package org-roam
|
||||||
:after org
|
:after org
|
||||||
;; :ensure t
|
;; :ensure t
|
||||||
:commands (org-roam org-roam-find-file org-roam-insert)
|
|
||||||
:hook
|
:hook
|
||||||
(org-load . org-roam-mode)
|
(after-init . org-roam-mode)
|
||||||
:config
|
:config
|
||||||
(setq org-roam-directory "~/org"
|
(setq org-roam-directory "~/org"
|
||||||
org-roam-buffer-width 0.25
|
org-roam-buffer-width 0.25
|
||||||
org-roam-file-exclude-regexp ".stversion.*\|.stfolder.*\|.*~.*\|.*sync.*"
|
org-roam-file-exclude-regexp ".stversion.*\|.stfolder.*\|.*~.*\|.*sync.*"
|
||||||
org-roam-db-location "~/.dotemacs/org-roam.db"
|
org-roam-db-location "~/.dotemacs/org-roam.db"
|
||||||
org-roam-completion-everywhere t
|
org-roam-completion-everywhere t
|
||||||
org-roam-capture-templates
|
org-roam-capture-templates
|
||||||
'(("d" "default" plain (function org-roam--capture-get-point)
|
'(("d" "default" plain (function org-roam--capture-get-point)
|
||||||
"%?"
|
"%?"
|
||||||
|
@ -1247,7 +1264,7 @@ If on a:
|
||||||
:keymaps 'override
|
:keymaps 'override
|
||||||
"oe" 'eshell)
|
"oe" 'eshell)
|
||||||
(general-def '(normal insert) eshell-mode-map
|
(general-def '(normal insert) eshell-mode-map
|
||||||
"C-d" 'chris/kill-buffer-frame))
|
"C-d" 'kill-buffer-and-window))
|
||||||
|
|
||||||
(setq eshell-command-aliases-list
|
(setq eshell-command-aliases-list
|
||||||
'(("ls" "exa $1")
|
'(("ls" "exa $1")
|
||||||
|
@ -1460,6 +1477,9 @@ interfere with the default `bongo-playlist-buffer'."
|
||||||
(chris/leader-keys
|
(chris/leader-keys
|
||||||
"st" 'password-store-otp-token-copy))
|
"st" 'password-store-otp-token-copy))
|
||||||
|
|
||||||
|
(use-package activity-watch-mode
|
||||||
|
:init (global-activity-watch-mode))
|
||||||
|
|
||||||
;; Reduce rendering/line scan work for Emacs by not rendering cursors or regions
|
;; Reduce rendering/line scan work for Emacs by not rendering cursors or regions
|
||||||
;; in non-focused windows.
|
;; in non-focused windows.
|
||||||
(setq-default cursor-in-non-selected-windows nil)
|
(setq-default cursor-in-non-selected-windows nil)
|
||||||
|
|
Loading…
Reference in a new issue