~thecatster/.emacs.d

1c73a8ac896401013bdf10f5a57fea325462405b — Daniel Rose 2 years ago ca6c46a
Switch to smart mode line again, update diminish
4 files changed, 59 insertions(+), 49 deletions(-)

M emacs.org
M exwm.org
M init.el
M lisp/catsters-exwm.el
M emacs.org => emacs.org +26 -26
@@ 345,6 345,8 @@ Iterating through CamelCase words is quite nice, especially in JVM
langs.

#+BEGIN_SRC emacs-lisp
(with-eval-after-load 'subword
  (diminish 'subword-mode))
(global-subword-mode 1)
#+END_SRC



@@ 534,7 536,7 @@ them on or off.
#+END_SRC

** Theme and Modeline
By default, Engineered Emacs uses the Doom modeline, and Atom One Dark Pro
By default, Engineered Emacs uses ~smart-mode-line~, and Atom One Dark Pro
as the color theme. I think this strikes a good balance of usefulness and
readability.



@@ 545,23 547,19 @@ readability.
(use-package all-the-icons)
#+END_SRC

I've decided to try out the Doom modeline, since it looks quite clean
and everyone seems to be using it!
I'm still not sold on the Doom modeline. I've gone back to using the
smart modeline.

#+BEGIN_SRC emacs-lisp
  (use-package doom-modeline
    :hook (after-init . doom-modeline-init)
    :custom
    (doom-modeline-height 15)
    (doom-modeline-bar-width 6)
    (doom-modeline-lsp t)
    (doom-modeline-github nil)
    (doom-modeline-mu4e t)
    (doom-modeline-irc t)
    (doom-modeline-minor-modes t)
    (doom-modeline-persp-name nil)
    (doom-modeline-buffer-file-name-style 'truncate-except-project)
    (doom-modeline-major-mode-icon t))
(use-package smart-mode-line-atom-one-dark-theme)

(use-package smart-mode-line
  :after smart-mode-line-atom-one-dark-theme
  :init
  (setq sml/theme 'atom-one-dark)
  (setq sml/no-confirm-load-theme t)
  :config
  (sml/setup))
#+END_SRC

** PGP


@@ 872,9 870,6 @@ package as well. Great, because it's one of my most used!
#+BEGIN_SRC emacs-lisp
(use-package crux
  :config
  ;; ispell words then abbrev
  (setq save-abbrevs 'silently)
  (setq-default abbrev-mode t)
  ;; Replace default commands with CRUX
  (global-set-key [remap move-beginning-of-line] #'crux-move-beginning-of-line)
  (global-set-key (kbd "C-c o") #'crux-open-with)


@@ 979,14 974,15 @@ unstoppable. Porting my snippets over is also a pain, so once that is
done I should be more used to this.

#+BEGIN_SRC emacs-lisp
(use-package yasnippet-snippets)

(use-package yasnippet
  :after yasnippet-snippets
  :diminish yas-minor-mode
  :hook ((prog-mode text-mode) . yas-minor-mode)
  :config
  (yas-reload-all)
  (add-to-list 'yas-snippet-dirs "~/.emacs.d/snippets")
  (add-hook 'prog-mode-hook 'yas-minor-mode)
  (add-hook 'text-mode-hook 'yas-minor-mode))

(use-package yasnippet-snippets)
  (yas-reload-all))
#+END_SRC
** Helpful
An even more /helpful/ way to understand Emacs. A better alternative


@@ 1269,13 1265,17 @@ Emacs Dashboard is pretty nice, especially since I often use it to
look at the day's agenda.

#+BEGIN_SRC emacs-lisp
(use-package page-break-lines)

(use-package dashboard
  :config
  (setq dashboard-set-heading-icons t)
  (setq dashboard-center-content t)
  (setq dashboard-set-file-icons t)
  (setq dashboard-set-navigator t)
  (setq dashboard-items '((projects . 5)
                            (agenda . 5))))
                          (agenda . 5))))

(defun create-dashboard ()
  "Jump to the dashboard buffer, if doesn't exists create one."
  (interactive)


@@ 2397,7 2397,7 @@ Although EXWM is in another file, I still need to require it in my
main config.

#+BEGIN_SRC emacs-lisp
(setq catster/use-exwm nil)
(setq catster/use-exwm t)

(when catster/use-exwm
   (require 'catsters-exwm))

M exwm.org => exwm.org +5 -0
@@ 691,6 691,10 @@ especially need as many keys available as possible.
  (when (string-prefix-p "nyxt" exwm-instance-name)
    (exwm-input-release-keyboard (exwm--buffer->id (window-buffer)))))

(defun catster/exwm-start-firefox-in-char-mode ()
  (when (string-prefix-p "firefox" exwm-instance-name)
    (exwm-input-release-keyboard (exwm--buffer->id (window-buffer)))))

(defun ambrevar/exwm-start-emacs-in-char-mode ()
  (when (string-prefix-p "emacs" exwm-instance-name)
    (exwm-input-release-keyboard (exwm--buffer->id (window-buffer)))))


@@ 700,6 704,7 @@ especially need as many keys available as possible.
    (exwm-input-release-keyboard (exwm--buffer->id (window-buffer)))))

(add-hook 'exwm-manage-finish-hook 'catster/exwm-start-nyxt-in-char-mode)
(add-hook 'exwm-manage-finish-hook 'catster/exwm-start-firefox-in-char-mode)
(add-hook 'exwm-manage-finish-hook 'catster/exwm-start-alacritty-in-char-mode)
(add-hook 'exwm-manage-finish-hook 'ambrevar/exwm-start-emacs-in-char-mode)


M init.el => init.el +23 -23
@@ 192,6 192,8 @@
      truncate-string-ellipsis "…"
      scroll-margin 20)

(with-eval-after-load 'subword
  (diminish 'subword-mode))
(global-subword-mode 1)

(setq set-mark-command-repeat-pop t)


@@ 293,19 295,15 @@
  (load-theme 'atom-one-dark t))
(use-package all-the-icons)

(use-package doom-modeline
  :hook (after-init . doom-modeline-init)
  :custom
  (doom-modeline-height 15)
  (doom-modeline-bar-width 6)
  (doom-modeline-lsp t)
  (doom-modeline-github nil)
  (doom-modeline-mu4e t)
  (doom-modeline-irc t)
  (doom-modeline-minor-modes t)
  (doom-modeline-persp-name nil)
  (doom-modeline-buffer-file-name-style 'truncate-except-project)
  (doom-modeline-major-mode-icon t))
(use-package smart-mode-line-atom-one-dark-theme)

(use-package smart-mode-line
  :after smart-mode-line-atom-one-dark-theme
  :init
  (setq sml/theme 'atom-one-dark)
  (setq sml/no-confirm-load-theme t)
  :config
  (sml/setup))

;; Don't bring up key recipient dialogue.
(require 'epa-file)


@@ 558,9 556,6 @@

(use-package crux
  :config
  ;; ispell words then abbrev
  (setq save-abbrevs 'silently)
  (setq-default abbrev-mode t)
  ;; Replace default commands with CRUX
  (global-set-key [remap move-beginning-of-line] #'crux-move-beginning-of-line)
  (global-set-key (kbd "C-c o") #'crux-open-with)


@@ 640,14 635,15 @@
  :bind (("M-[" . er/expand-region)
         ("C-(" . er/mark-outside-pairs)))

(use-package yasnippet-snippets)

(use-package yasnippet
  :after yasnippet-snippets
  :diminish yas-minor-mode
  :hook ((prog-mode text-mode) . yas-minor-mode)
  :config
  (yas-reload-all)
  (add-to-list 'yas-snippet-dirs "~/.emacs.d/snippets")
  (add-hook 'prog-mode-hook 'yas-minor-mode)
  (add-hook 'text-mode-hook 'yas-minor-mode))

(use-package yasnippet-snippets)
  (yas-reload-all))

(use-package helpful
  :config


@@ 877,13 873,17 @@
    ;; save after adding comment
    (advice-add 'pdf-annot-edit-contents-commit :after 'bjm/save-buffer-no-args)))

(use-package page-break-lines)

(use-package dashboard
  :config
  (setq dashboard-set-heading-icons t)
  (setq dashboard-center-content t)
  (setq dashboard-set-file-icons t)
  (setq dashboard-set-navigator t)
  (setq dashboard-items '((projects . 5)
                            (agenda . 5))))
                          (agenda . 5))))

(defun create-dashboard ()
  "Jump to the dashboard buffer, if doesn't exists create one."
  (interactive)


@@ 1677,7 1677,7 @@
      (if (and b e (< (point) e)) (setq rlt nil)))
    (setq ad-return-value rlt)))

(setq catster/use-exwm nil)
(setq catster/use-exwm t)

(when catster/use-exwm
   (require 'catsters-exwm))

M lisp/catsters-exwm.el => lisp/catsters-exwm.el +5 -0
@@ 230,6 230,10 @@ nil if empty or undefined."
  (when (string-prefix-p "nyxt" exwm-instance-name)
    (exwm-input-release-keyboard (exwm--buffer->id (window-buffer)))))

(defun catster/exwm-start-firefox-in-char-mode ()
  (when (string-prefix-p "firefox" exwm-instance-name)
    (exwm-input-release-keyboard (exwm--buffer->id (window-buffer)))))

(defun ambrevar/exwm-start-emacs-in-char-mode ()
  (when (string-prefix-p "emacs" exwm-instance-name)
    (exwm-input-release-keyboard (exwm--buffer->id (window-buffer)))))


@@ 239,6 243,7 @@ nil if empty or undefined."
    (exwm-input-release-keyboard (exwm--buffer->id (window-buffer)))))

(add-hook 'exwm-manage-finish-hook 'catster/exwm-start-nyxt-in-char-mode)
(add-hook 'exwm-manage-finish-hook 'catster/exwm-start-firefox-in-char-mode)
(add-hook 'exwm-manage-finish-hook 'catster/exwm-start-alacritty-in-char-mode)
(add-hook 'exwm-manage-finish-hook 'ambrevar/exwm-start-emacs-in-char-mode)