summaryrefslogtreecommitdiff
path: root/early-init.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2025-11-03 18:01:24 -0600
committerCraig Jennings <c@cjennings.net>2025-11-03 18:01:24 -0600
commitc0c4b176ace7910cbc1a71b5ec473873b6d821be (patch)
treebbd78f1449630a9a6a5db8ad025205df5dc824a9 /early-init.el
parent9e75fea0cf16c72dfd490b0dcb726e6c7bd023bb (diff)
feat: Complete modeline overhaul with custom segments and interactive features
Replaced mood-line with a custom, minimal modeline using only built-in Emacs functionality to avoid native compilation issues. **Architecture:** - Named segment system using defvar-local for easy reordering - Emacs 30 built-in right-alignment (mode-line-format-right-align) - All segments marked as risky-local-variable for proper evaluation **Features:** - Color-coded buffer names (green=writeable, red=read-only, gold=overwrite) - VC branch with git symbol (U+E0A0) and state-based coloring - Position format: L:line C:col - Help-echo tooltips on all segments - Mouse click handlers for interactive actions - String truncation in narrow windows (< 100 chars) - Active-window-only display for branch and misc-info **Interactive Actions:** - Buffer name: mouse-1 = prev-buffer, mouse-3 = next-buffer - Major mode: mouse-1 = describe-mode - Git branch: mouse-1 = vc-diff, mouse-3 = vc-root-diff **Bug Fixes:** - Disabled async native compilation to prevent "Selecting deleted buffer" errors - Fixed difftastic loading by changing :demand to :defer - Abstracted buffer status colors to user-constants.el for reuse Inspired by Prot's modeline design patterns. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'early-init.el')
-rw-r--r--early-init.el16
1 files changed, 10 insertions, 6 deletions
diff --git a/early-init.el b/early-init.el
index 79ff7816..6fa3e0b2 100644
--- a/early-init.el
+++ b/early-init.el
@@ -51,15 +51,19 @@
(setq debug-on-error t) ;; default nil. turn on to debug issues only.
(setq debug-on-quit t) ;; debug on C-g (breaking out of hangs/freezes)
-(add-hook 'emacs-startup-hook
- (lambda ()
- (setq debug-on-error nil)
- (setq debug-on-quit nil)))
+;; (add-hook 'emacs-startup-hook
+;; (lambda ()
+;; (setq debug-on-error nil)
+;; (setq debug-on-quit nil)))
;; ------------------------------ Bug Workarounds ------------------------------
-;; Prevent org-element from being natively compiled again by adding the line
-(setq native-comp-jit-compilation-deny-list '(".*org-element.*"))
+;; Disable async native compilation to prevent "Selecting deleted buffer" errors
+;; This is a known issue in Emacs 30.x where async compilation buffers get
+;; deleted before the compilation process completes. Synchronous compilation
+;; is slower initially but avoids these race conditions.
+(setq native-comp-deferred-compilation nil) ;; Disable async/deferred compilation
+(setq native-comp-async-report-warnings-errors nil) ;; Silence async warnings
;; --------------------------- Warning Notifications ---------------------------