diff options
| author | bh <qn+git@excalibur.computer> | 2025-12-12 20:59:09 +0800 |
|---|---|---|
| committer | bh <qn+git@excalibur.computer> | 2025-12-12 20:59:09 +0800 |
| commit | 77cfedd1c9a6173cc8b47fb97eb594ef3186c264 (patch) | |
| tree | a8219eec8022cb15af3d3d95c225b82f72285259 /config | |
| parent | f5e40c74da77adf875dea03c0a120ea64d7a58d4 (diff) | |
Removed unnecessary files from git tracking and added magit to config
Diffstat (limited to 'config')
| -rw-r--r-- | config/evil.el | 8 | ||||
| -rw-r--r-- | config/magit.el | 5 | ||||
| -rw-r--r-- | config/modeline.el | 64 | ||||
| -rw-r--r-- | config/treemacs.el | 55 |
4 files changed, 74 insertions, 58 deletions
diff --git a/config/evil.el b/config/evil.el index e335c54..4bf6871 100644 --- a/config/evil.el +++ b/config/evil.el @@ -9,13 +9,13 @@ (setq evil-undo-system 'undo-redo) ;; Use Emacs 28+ built-in undo-redo :config (evil-mode 1)) - ;; Restore Emacs-style C-n/C-p in insert mode for line movement - ;; (define-key evil-insert-state-map (kbd "C-n") 'next-line) - ;; (define-key evil-insert-state-map (kbd "C-p") 'previous-line)) +;; Restore Emacs-style C-n/C-p in insert mode for line movement +;; (define-key evil-insert-state-map (kbd "C-n") 'next-line) +;; (define-key evil-insert-state-map (kbd "C-p") 'previous-line)) (use-package evil-collection :after evil :straight (evil-collection :type git :host github :repo "emacs-evil/evil-collection" - :files (:defaults "modes")) + :files (:defaults "modes")) :config (evil-collection-init)) ;; Provides Evil bindings for many Emacs modes diff --git a/config/magit.el b/config/magit.el new file mode 100644 index 0000000..1bf91e9 --- /dev/null +++ b/config/magit.el @@ -0,0 +1,5 @@ +;; Magit - Simple Git interface for Emacs + +(use-package magit + :bind + ("C-x g" . magit-status)) diff --git a/config/modeline.el b/config/modeline.el index b6941ef..80acf48 100644 --- a/config/modeline.el +++ b/config/modeline.el @@ -6,14 +6,14 @@ :config ;; Fix missing data symlink (straight.el doesn't create it automatically) (let ((data-link (expand-file-name "straight/build/nerd-icons/data" user-emacs-directory)) - (data-source (expand-file-name "straight/repos/nerd-icons/data" user-emacs-directory))) - (unless (file-exists-p data-link) - (when (file-exists-p data-source) - (make-symbolic-link data-source data-link)))) + (data-source (expand-file-name "straight/repos/nerd-icons/data" user-emacs-directory))) + (unless (file-exists-p data-link) + (when (file-exists-p data-source) + (make-symbolic-link data-source data-link)))) ;; Prevent icons from becoming bold in active modeline (dolist (face (face-list)) - (when (string-prefix-p "nerd-icons-" (symbol-name face)) - (set-face-attribute face nil :weight 'normal)))) + (when (string-prefix-p "nerd-icons-" (symbol-name face)) + (set-face-attribute face nil :weight 'normal)))) ;; Adjust icon scale to prevent cutoff (setq nerd-icons-scale-factor 1.0) @@ -51,7 +51,7 @@ ;; (setq doom-modeline-spc-face-overrides nil) ;; (setq doom-modeline-spc-face-overrides nil) (setq doom-modeline-spc-face-overrides - (list :family (face-attribute 'fixed-pitch :family))) + (list :family (face-attribute 'fixed-pitch :family))) ;; How to detect the project root. ;; nil means to use `default-directory'. @@ -64,19 +64,19 @@ ;; Determines the style used by `doom-modeline-buffer-file-name'. ;; ;; Given ~/Projects/FOSS/emacs/lisp/comint.el -;; auto => emacs/l/comint.el (in a project) or comint.el -;; truncate-upto-project => ~/P/F/emacs/lisp/comint.el -;; truncate-from-project => ~/Projects/FOSS/emacs/l/comint.el -;; truncate-with-project => emacs/l/comint.el -;; truncate-except-project => ~/P/F/emacs/l/comint.el -;; truncate-upto-root => ~/P/F/e/lisp/comint.el -;; truncate-all => ~/P/F/e/l/comint.el -;; truncate-nil => ~/Projects/FOSS/emacs/lisp/comint.el -;; relative-from-project => emacs/lisp/comint.el -;; relative-to-project => lisp/comint.el -;; file-name => comint.el -;; file-name-with-project => FOSS|comint.el -;; buffer-name => comint.el<2> (uniquify buffer name) +;; auto => emacs/l/comint.el (in a project) or comint.el +;; truncate-upto-project => ~/P/F/emacs/lisp/comint.el +;; truncate-from-project => ~/Projects/FOSS/emacs/l/comint.el +;; truncate-with-project => emacs/l/comint.el +;; truncate-except-project => ~/P/F/emacs/l/comint.el +;; truncate-upto-root => ~/P/F/e/lisp/comint.el +;; truncate-all => ~/P/F/e/l/comint.el +;; truncate-nil => ~/Projects/FOSS/emacs/lisp/comint.el +;; relative-from-project => emacs/lisp/comint.el +;; relative-to-project => lisp/comint.el +;; file-name => comint.el +;; file-name-with-project => FOSS|comint.el +;; buffer-name => comint.el<2> (uniquify buffer name) ;; ;; If you are experiencing the laggy issue, especially while editing remote files ;; with tramp, please try `file-name' style. @@ -183,10 +183,10 @@ ;; See `vc-state' for possible values of the state. ;; For states not explicitly listed, the `doom-modeline-vcs-default' face is used. (setq doom-modeline-vcs-state-faces-alist - '((needs-update . (doom-modeline-warning bold)) - (removed . (doom-modeline-urgent bold)) - (conflict . (doom-modeline-urgent bold)) - (unregistered . (doom-modeline-urgent bold)))) + '((needs-update . (doom-modeline-warning bold)) + (removed . (doom-modeline-urgent bold)) + (conflict . (doom-modeline-urgent bold)) + (unregistered . (doom-modeline-urgent bold)))) ;; Whether display the icon of check segment. It respects option `doom-modeline-icon'. (setq doom-modeline-check-icon t) @@ -307,11 +307,11 @@ ;; Only set evil state faces to normal, not the base doom-modeline face (with-eval-after-load 'doom-modeline (dolist (face '(doom-modeline-evil-emacs-state - doom-modeline-evil-insert-state - doom-modeline-evil-motion-state - doom-modeline-evil-normal-state - doom-modeline-evil-operator-state - doom-modeline-evil-visual-state - doom-modeline-evil-replace-state - doom-modeline-evil-user-state)) - (set-face-attribute face nil :weight 'normal))) + doom-modeline-evil-insert-state + doom-modeline-evil-motion-state + doom-modeline-evil-normal-state + doom-modeline-evil-operator-state + doom-modeline-evil-visual-state + doom-modeline-evil-replace-state + doom-modeline-evil-user-state)) + (set-face-attribute face nil :weight 'normal))) diff --git a/config/treemacs.el b/config/treemacs.el index 07ecb41..e6acc95 100644 --- a/config/treemacs.el +++ b/config/treemacs.el @@ -4,32 +4,43 @@ :defer t :config (setq treemacs-width 35 - treemacs-width-is-initially-locked nil ;; Allow resizing - treemacs-width-increment 1 ;; Smooth resize - treemacs-position 'left - treemacs-show-hidden-files t - ; treemacs-indentation 1 ;; Minimal indentation - ; treemacs-indentation-string " " ;; Just space, no lines + treemacs-width-is-initially-locked nil ;; Allow resizing + treemacs-width-increment 1 ;; Smooth resize + treemacs-position 'left + treemacs-show-hidden-files t + ; treemacs-indentation 1 ;; Minimal indentation + ; treemacs-indentation-string " " ;; Just space, no lines - ;; Disable mouse Features - treemacs-move-files-by-mouse-dragging nil ;; NO DRAGGING FILES! - treemacs-recenter-after-file-follow nil ;; Prevent mouse issues - treemacs-silent-filewatch t ;; Reduce mouse events - treemacs-show-cursor nil) ;; Hide cursor in treemacs + ;; Disable mouse Features + treemacs-move-files-by-mouse-dragging nil ;; NO DRAGGING FILES! + treemacs-recenter-after-file-follow nil ;; Prevent mouse issues + treemacs-silent-filewatch t ;; Reduce mouse events + treemacs-show-cursor nil) ;; Hide cursor in treemacs ;; Disable mouse in treemacs completely :hook (treemacs-mode . (lambda () - ;; Disable all mouse button bindings - (define-key treemacs-mode-map [mouse-1] 'ignore) - (define-key treemacs-mode-map [mouse-2] 'ignore) - (define-key treemacs-mode-map [mouse-3] 'ignore) - (define-key treemacs-mode-map [drag-mouse-1] 'ignore) - (define-key treemacs-mode-map [down-mouse-1] 'ignore) - (define-key treemacs-mode-map [double-mouse-1] 'ignore) - (define-key treemacs-mode-map [triple-mouse-1] 'ignore))) + ;; Disable all mouse button bindings + (define-key treemacs-mode-map [mouse-1] 'ignore) + (define-key treemacs-mode-map [mouse-2] 'ignore) + (define-key treemacs-mode-map [mouse-3] 'ignore) + (define-key treemacs-mode-map [drag-mouse-1] 'ignore) + (define-key treemacs-mode-map [down-mouse-1] 'ignore) + (define-key treemacs-mode-map [double-mouse-1] 'ignore) + (define-key treemacs-mode-map [triple-mouse-1] 'ignore))) :bind - ("C-x t t" . treemacs)) + (:map global-map + ("M-0" . treemacs-select-window) + ("C-x t 1" . treemacs-delete-other-windows) + ("C-x t t" . treemacs) + ("C-x t d" . treemacs-select-directory) + ("C-x t B" . treemacs-bookmark) + ("C-x t C-t" . treemacs-find-file) + ("C-x t M-t" . treemacs-find-tag))) + +;; Evil keybindings for treemacs +(use-package treemacs-evil + :after (treemacs evil)) ;; Beautiful icons for treemacs using nerd-icons (use-package treemacs-nerd-icons @@ -42,5 +53,5 @@ ;; Customize folder icon colors (for nerd-icons theme) (with-eval-after-load 'treemacs-nerd-icons (set-face-attribute 'treemacs-nerd-icons-file-face nil - :foreground "#74c4c4" - :inherit 'unspecified)) + :foreground "#74c4c4" + :inherit 'unspecified)) |
