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)