summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2025-11-03 15:43:36 -0600
committerCraig Jennings <c@cjennings.net>2025-11-03 15:43:36 -0600
commitbc353c614d7235edc0c1325edfef0b385fc1d31d (patch)
treeb4af82e2c00bb982c75481fb20e14358b1b10007 /modules
parentdc166120ced2be43ccbe241d2ecc1321c7738aed (diff)
refactor: Replace doom-modeline with mood-line and remove deprecated tree-sitter
Method 2 improvements for cleaner, faster configuration: 1. **Replaced doom-modeline with mood-line** (modules/modeline-config.el) - Simplified from 70+ lines to ~10 lines (-40 lines net) - mood-line is lightweight, minimal, inspired by doom-modeline - Better performance with no dependencies - Keeps all essential features: buffer status, major mode, VCS, flycheck, cursor position, multiple-cursors counters 2. **Removed deprecated tree-sitter package** (modules/prog-general.el) - Deleted `(use-package tree-sitter)` - Now relies solely on Emacs 29+ built-in treesit with treesit-auto - treesit-auto continues to manage grammars automatically - No functionality lost, cleaner dependency tree Both changes serve Method 2: "Stop Problems Before They Appear" - Simpler code = fewer bugs - Fewer dependencies = less maintenance - Native features = better integration Updated todo.org to mark both tasks complete [2/5 in Method 2]. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'modules')
-rw-r--r--modules/modeline-config.el74
-rw-r--r--modules/prog-general.el3
2 files changed, 16 insertions, 61 deletions
diff --git a/modules/modeline-config.el b/modules/modeline-config.el
index 0a247732..af0c3524 100644
--- a/modules/modeline-config.el
+++ b/modules/modeline-config.el
@@ -3,72 +3,28 @@
;;; Commentary:
-;; Doom modeline configuration with performance optimizations.
+;; Minimal modeline configuration using mood-line.
-;; Settings prioritize speed while keeping essential information including:
-;; - relative file paths from project root
-;; - column number and percentage position
-;; - buffer modification indicators
-;; - and major mode with icon.
+;; mood-line is a lightweight, minimal modeline inspired by doom-modeline
+;; but with much better performance and simpler configuration.
-;; Disabled features for performance:
-;; - minor modes display
-;; - word count
-;; - encoding info
-;; - LSP information
-
-;; Performance tuning includes:
-;; - 0.75 second refresh rate
-;; - 1MB process output chunks
-;; - nerd-icons (faster than all-the-icons)
-;; - simplified checker format
-;; - limited VCS info length
+;; Features:
+;; - Buffer status and modification indicators
+;; - Major mode display
+;; - Version control status
+;; - Flycheck/Flymake status
+;; - Cursor position and buffer percentage
+;; - Anzu and multiple-cursors counters
+;; - No dependencies
+;; - Minimal performance overhead
;;; Code:
-;; ------------------------------- Doom Modeline -------------------------------
-
-(use-package doom-modeline
- :hook (after-init . doom-modeline-mode)
- :custom
- ;; Performance optimizations
- (doom-modeline-buffer-file-name-style 'relative-from-project) ;; Faster than 'file-name
- (doom-modeline-icon t)
- (doom-modeline-major-mode-icon t)
- (doom-modeline-major-mode-color-icon t)
- (doom-modeline-buffer-state-icon t)
- (doom-modeline-buffer-modification-icon t)
- (doom-modeline-unicode-fallback nil)
- (doom-modeline-minor-modes nil) ;; Hide minor modes as requested
- (doom-modeline-enable-word-count nil) ;; Faster without word count
- (doom-modeline-continuous-word-count-modes nil)
- (doom-modeline-buffer-encoding nil) ;; Hide encoding for speed
- (doom-modeline-indent-info nil) ;; Hide indent info for speed
- (doom-modeline-checker-simple-format t) ;; Simpler checker format for speed
- (doom-modeline-number-limit 99) ;; Lower number limit for better performance
- (doom-modeline-vcs-max-length 12) ;; Limit VCS info length for speed
- (doom-modeline-persp-name nil) ;; Disable perspective name for speed
- (doom-modeline-display-default-persp-name nil)
- (doom-modeline-persp-icon nil)
- (doom-modeline-lsp nil) ;; Disable LSP info for speed
-
- ;; UI Preferences
- (doom-modeline-height 25)
- (doom-modeline-bar-width 3)
- (doom-modeline-window-width-limit 0.25)
- (doom-modeline-project-detection 'projectile) ;; Use projectile if available, nil is faster
-
- ;; Use nerd-icons instead of all-the-icons
- (doom-modeline-icon-preference 'nerd-icons)
+;; -------------------------------- mood-line ----------------------------------
- ;; Enable elements you specifically requested
- (doom-modeline-column-number t) ;; Show column number
- (doom-modeline-percent-position t) ;; Show percentage position
- (doom-modeline-buffer-name t) ;; Show buffer name
- (doom-modeline-buffer-file-name t) ;; Show file name
+(use-package mood-line
:config
- (setq read-process-output-max (* 1024 1024)) ;; 1MB process read size for better performance
- (setq doom-modeline-refresh-rate 0.75)) ;; Update rate in seconds
+ (mood-line-mode))
(provide 'modeline-config)
diff --git a/modules/prog-general.el b/modules/prog-general.el
index 3ece928a..0ae6aa82 100644
--- a/modules/prog-general.el
+++ b/modules/prog-general.el
@@ -93,8 +93,7 @@
;; --------------------------------- Treesitter --------------------------------
;; incremental language syntax parser
-
-(use-package tree-sitter)
+;; Using Emacs 29+ built-in treesit with treesit-auto for grammar management
;; installs tree-sitter grammars if they're absent
(use-package treesit-auto