summaryrefslogtreecommitdiff
path: root/tw
diff options
context:
space:
mode:
authorTimo Wilken2023-10-07 17:14:49 +0200
committerTimo Wilken2023-10-07 17:14:49 +0200
commitaf11b425fb54cad70304425d04f241a456919e85 (patch)
treeaf1869fdbb58e6e96ee3f5d82362835ebb1f0742 /tw
parent584de83142ae43a69c6088df2571a339b7fcb087 (diff)
Update Emacs config for 29.1
Diffstat (limited to 'tw')
-rw-r--r--tw/home.scm1
-rw-r--r--tw/home/files/emacs-early-init.el13
-rw-r--r--tw/home/files/emacs-init.el25
3 files changed, 25 insertions, 14 deletions
diff --git a/tw/home.scm b/tw/home.scm
index c0540579..a933801b 100644
--- a/tw/home.scm
+++ b/tw/home.scm
@@ -379,7 +379,6 @@ show_border=1
(simple-service 'emacs-config home-xdg-configuration-files-service-type
`(("emacs/include" ,(local-file "home/files/emacs-packages" #:recursive? #t))
- ("emacs/early-init.el" ,(local-file "home/files/emacs-early-init.el"))
("emacs/init.el" ,(local-file "home/files/emacs-init.el"))
(,(string-append "emacs/" (local-file-name catppuccin-emacs-theme))
,catppuccin-emacs-theme)))
diff --git a/tw/home/files/emacs-early-init.el b/tw/home/files/emacs-early-init.el
deleted file mode 100644
index f4d4e765..00000000
--- a/tw/home/files/emacs-early-init.el
+++ /dev/null
@@ -1,13 +0,0 @@
-;;; early-init.el --- Emacs early-start initialisation
-;;; Commentary:
-;;; Put native-compiled binaries in the cache. Do this in early-init so that
-;;; Emacs doesn't start compiling stuff and putting it in the wrong directory
-;;; before loading init.el.
-;;; Code:
-
-;; Don't require 'comp (which defines `native-compile-target-directory'), so
-;; that we don't load-and-compile subr.el before the variable is set properly.
-(setq native-compile-target-directory ; not a `customize' option
- (expand-file-name "emacs/eln" (or (getenv "XDG_CACHE_HOME") "~/.cache/")))
-
-;;; early-init.el ends here
diff --git a/tw/home/files/emacs-init.el b/tw/home/files/emacs-init.el
index 52a7c84f..2240fda9 100644
--- a/tw/home/files/emacs-init.el
+++ b/tw/home/files/emacs-init.el
@@ -2,6 +2,12 @@
;;; Commentary:
;;; Code:
+(startup-redirect-eln-cache
+ (expand-file-name "emacs/eln" (or (getenv "XDG_CACHE_HOME") "~/.cache/")))
+(add-hook 'after-init-hook #'native-compile-prune-cache)
+
+;; TODO: try new `pixel-scroll-precision-mode'
+
;; Load settings set through Custom.
;; (setq custom-file (locate-user-emacs-file "custom.el"))
;; (when (file-readable-p custom-file)
@@ -40,6 +46,7 @@
(column-number-mode t "Show the column number in the statusline.")
(electric-pair-mode t "Auto-pair suitable characters like parentheses.")
(completion-cycle-threshold 6 "Allow cycling through completions if there are 6 or fewer of them.")
+ (shell-kill-buffer-on-exit t "Kill *shell* buffers as soon as their shell session exits.")
;; Text formatting.
(sentence-end-double-space nil "Use a single space after a sentence.")
(fill-column 78 "Make hard-wrapped text a bit wider.")
@@ -268,6 +275,7 @@
("<leader>ev" . flymake-running-backends)
("<leader>eV" . flymake-disabled-backends))
:custom
+ ;; TODO: what does `flymake-mode-line-lighter' do?
(flymake-suppress-zero-counters nil "Show severity counters even when they are zero."))
(use-package flymake-collection
@@ -296,6 +304,21 @@
(add-hook 'eglot-managed-mode-hook #'tw/help-is-eldoc))
;; Non-LSP language modes.
+
+;; TODO: Try any/all of the following new tree-sitter-based major modes.
+;; Enable them using the following, replacing the relevant "old" major mode:
+;; (add-to-list 'major-mode-remap-alist '(ruby-mode . ruby-ts-mode))
+;; New command 'c-or-c++-ts-mode'.
+;; New major mode 'python-ts-mode'.
+;; New major mode 'css-ts-mode'.
+;; New major mode 'json-ts-mode'.
+;; New major mode 'bash-ts-mode'.
+;; New major mode 'dockerfile-ts-mode'.
+;; New major mode 'cmake-ts-mode'.
+;; New major mode 'toml-ts-mode'.
+;; New major mode 'yaml-ts-mode'.
+;; New major mode 'ruby-ts-mode'.
+
(use-package cmake-mode
:mode (rx (or (: (or bos "/") "CMakeLists.txt") ".cmake") eos))
@@ -612,10 +635,12 @@ For use in `org-latex-classes'."
(kbd "<leader>bd") #'kill-current-buffer
(kbd "<leader>bn") #'tw/new-buffer
(kbd "<leader>br") #'revert-buffer-quick
+ (kbd "<leader>bs") #'scratch-buffer
(kbd "<leader>bw") #'read-only-mode
(kbd "<leader>bx") #'kill-buffer-and-window
(kbd "<leader>fd") #'tw/delete-current-buffer-file
(kbd "<leader>ff") #'find-file
+ (kbd "<leader>fR") #'rename-visited-file
(kbd "<leader>fs") #'save-buffer
(kbd "<leader>h") help-map
(kbd "<leader>hw") #'which-key-show-top-level