From c88c16a82bcd2e270fbbc76b7fb675f311d2d17f Mon Sep 17 00:00:00 2001 From: verdant Date: Sat, 23 May 2026 12:27:24 +0800 Subject: update --- config.org | 206 +++++++++++++++++++++++++++++++------------------------------ 1 file changed, 106 insertions(+), 100 deletions(-) diff --git a/config.org b/config.org index 5a0d732..f6752f0 100644 --- a/config.org +++ b/config.org @@ -1,7 +1,6 @@ #+title: config #+property: header-args :tangle yes - * 包源 #+begin_src emacs-lisp ;; -*- lexical-binding: t; -*- @@ -14,19 +13,21 @@ * 编辑相关 ** Evil #+begin_src emacs-lisp - (use-package evil - :init - (setq evil-want-keybinding nil - evil-want-C-u-scroll t) - :config - (evil-mode) - :ensure t) - - (use-package evil-collection - :after evil - :ensure t - :config - (evil-collection-init)) + (use-package evil + :init + (setq evil-want-keybinding nil + evil-want-C-u-scroll t) + :config + (evil-mode) + :ensure nil) +(use-package evil-collection + :after evil + :ensure t + :init + (setq evil-collection-mode-list '(dired ibuffer bindings)) + :config + (evil-collection-init)) + #+end_src #+end_src ** olivetti @@ -52,6 +53,7 @@ (ivy-mode 1) (counsel-mode 1) :config + (global-set-key (kbd "C-x r g") nil) (setq ivy-use-selectable-prompt t) (setq ivy-use-preview t) (setq ivy-fixed-height-minibuffer t) @@ -69,6 +71,7 @@ ("C-c V" . 'ivy-pop-view) ("C-x C-@" . 'counsel-mark-ring); 在某些终端上 C-x C-SPC 会被映射为 C-x C-@,比如在 macOS 上,所以要手动设置 ("C-x C-SPC" . 'counsel-mark-ring) + ("C-x r g" . 'counsel-rg) :map minibuffer-local-map ("C-r" . counsel-minibuffer-history))) @@ -154,6 +157,74 @@ )) #+end_src +** 自动匹配括号 +#+begin_src emacs-lisp +(electric-pair-mode) +#+end_src +** Flycheck +#+begin_src emacs-lisp +(global-flycheck-mode) +#+end_src +* Dired +#+begin_src emacs-lisp + +(setq dired-recursive-copies 'always) +(setq dired-recursive-deletes 'always) +(setq dired-dwim-target t) + +(put 'dired-find-alternate-file 'disabled nil) +(with-eval-after-load 'dired + (define-key dired-mode-map (kbd "RET") 'dired-find-alternate-file) + (define-key dired-mode-map (kbd "^") (lambda () (interactive) (find-alternate-file "..")))) ; was dired-up-directory) + +(setq dired-dwim-target t) + +;; dired-sort +(defun dired-sort-size () + "Dired sort by size." + (interactive) + (dired-sort-other (concat dired-listing-switches "S"))) + +(defun dired-sort-extension () + "Dired sort by extension." + (interactive) + (dired-sort-other (concat dired-listing-switches "X"))) + +(defun dired-sort-ctime () + "Dired sort by create time." + (interactive) + (dired-sort-other (concat dired-listing-switches "ct"))) + +(defun dired-sort-utime () + "Dired sort by access time." + (interactive) + (dired-sort-other (concat dired-listing-switches "ut"))) + +(defun dired-sort-time () + "Dired sort by time." + (interactive) + (dired-sort-other (concat dired-listing-switches "t"))) + +(defun dired-sort-name () + "Dired sort by name." + (interactive) + (dired-sort-other (concat dired-listing-switches ""))) +;; 在 Dired 中,按`l`进入文件,按`h`回到上一级目录 +(with-eval-after-load 'dired + (evil-define-key 'normal dired-mode-map + (kbd "h") #'dired-up-directory + (kbd "l") #'dired-find-file)) +(add-hook 'dired-mode-hook + (lambda () + (define-key dired-mode-map (kbd "C-b") nil) + (define-key dired-mode-map (kbd "C-f") nil) + (define-key dired-mode-map (kbd "C-b") #'dired-up-directory) + (define-key dired-mode-map (kbd "C-f") #'dired-find-file))) + +(global-set-key (kbd "") #'my/keyboard-escape-quit) + +(global-auto-revert-mode t) ; 另一程序修改文件让 Emacs 及时刷新 Buffer +#+end_src * 邮件 ** mu4e 这个东西的配置实在是太庞大了,懒得细拆了。 @@ -317,28 +388,18 @@ (("C-x o" . ace-window))) #+end_src ** dashboard +我突然发现dashboard除了好看没有任何用处(对我来说)。 #+begin_src emacs-lisp - (use-package dashboard - :ensure t - :config - (setq dashboard-startup-banner 'logo - dashboard-banner-logo-title "Welcome to Verdant's Emacverse!!!" - dashboard-center-content t - dashboard-set-heading-icons t - dashboard-items '((recents . 10) - (bookmarks . 5)) - dashboard-footer-messages '("verdant.el")) - - ;; 核心三件套 - (setq initial-buffer-choice (lambda () (get-buffer-create "*dashboard*"))) - (dashboard-setup-startup-hook) - (add-hook 'after-init-hook #'dashboard-open t)) + (add-hook 'after-init-hook + (lambda () + (setq inhibit-startup-screen t) + (setq initial-buffer-choice "~"))) #+end_src ** 主题 #+begin_src emacs-lisp (setq custom-safe-themes t) - (load-theme 'ef-dark) + ; (load-theme 'ef-dark) #+end_src ** 窗口大小 @@ -348,6 +409,10 @@ :height 120) #+end_src +** 背景透明 +#+begin_src emacs-lisp + ;; (setq default-frame-alist '((alpha-background . 80))) +#+end_src ** 新窗口平均其他左右窗口 #+begin_src emacs-lisp ;; (setq window-combination-resize t) @@ -364,6 +429,10 @@ (set-fontset-font t 'cjk-misc (font-spec :family "Noto Sans CJK SC")) (set-fontset-font t 'bopomofo (font-spec :family "Noto Sans CJK SC")) #+end_src +** 字体 +#+begin_src emacs-lisp + (set-frame-font (font-spec :family "FiraMono Nerd Font Mono" :size 18)) +#+end_src ** Holo-layer #+begin_src emacs-lisp (add-to-list 'load-path (expand-file-name "~/.emacs.d/holo-layer")) @@ -409,14 +478,6 @@ (setq org-agenda-files '("~/org/")) #+end_src -** org-bullets -#+begin_src emacs-lisp - (use-package org-bullets - :ensure t - :config - (setq org-bullets-bullet-list '("☰" "☷" "☯" "☭"))) - (org-bullets-mode) -#+end_src ** 边距 #+begin_src emacs-lisp (lambda () (progn @@ -471,7 +532,7 @@ PRETTY COOL! scroll-conservatively 10000) (when (display-graphic-p) (set-frame-size (selected-frame) 143 40)) - (global-display-line-numbers-mode t) + (global-display-line-numbers-mode -1) (display-time-mode 1) #+end_src @@ -497,7 +558,7 @@ PRETTY COOL! ** 删除文件移动到垃圾箱 #+begin_src emacs-lisp - (setq-default delete-by-moving-to-transh t) + (setq-default delete-by-moving-to-trash t) #+end_src ** 快速退出 minibuffer @@ -517,8 +578,8 @@ PRETTY COOL! ** 编码风格 #+begin_src emacs-lisp - (setq c-basic-offset 4 - tab-width 4) + (setq c-basic-offset 8 + tab-width 8) #+end_src ** counsel @@ -534,65 +595,10 @@ PRETTY COOL! (forward-line 1) (org-babel-tangle))) #+end_src -* Dired - +* Vterm #+begin_src emacs-lisp - (setq dired-recursive-copies 'always) - (setq dired-recursive-deletes 'always) - (setq dired-dwim-target t) - - (put 'dired-find-alternate-file 'disabled nil) - (with-eval-after-load 'dired - (define-key dired-mode-map (kbd "RET") 'dired-find-alternate-file) - (define-key dired-mode-map (kbd "^") (lambda () (interactive) (find-alternate-file "..")))) ; was dired-up-directory) - - (setq dired-dwim-target t) - - ;; dired-sort - (defun dired-sort-size () - "Dired sort by size." - (interactive) - (dired-sort-other (concat dired-listing-switches "S"))) - - (defun dired-sort-extension () - "Dired sort by extension." - (interactive) - (dired-sort-other (concat dired-listing-switches "X"))) - - (defun dired-sort-ctime () - "Dired sort by create time." - (interactive) - (dired-sort-other (concat dired-listing-switches "ct"))) - - (defun dired-sort-utime () - "Dired sort by access time." - (interactive) - (dired-sort-other (concat dired-listing-switches "ut"))) - - (defun dired-sort-time () - "Dired sort by time." - (interactive) - (dired-sort-other (concat dired-listing-switches "t"))) - - (defun dired-sort-name () - "Dired sort by name." - (interactive) - (dired-sort-other (concat dired-listing-switches ""))) - ;; 在 Dired 中,按`l`进入文件,按`h`回到上一级目录 - (with-eval-after-load 'dired - (evil-define-key 'normal dired-mode-map - (kbd "h") #'dired-up-directory - (kbd "l") #'dired-find-file)) - (add-hook 'dired-mode-hook - (lambda () - (define-key dired-mode-map (kbd "C-b") nil) - (define-key dired-mode-map (kbd "C-f") nil) - (define-key dired-mode-map (kbd "C-b") #'dired-up-directory) - (define-key dired-mode-map (kbd "C-f") #'dired-find-file))) - - (global-set-key (kbd "") #'my/keyboard-escape-quit) - - (global-auto-revert-mode t) ; 另一程序修改文件让 Emacs 及时刷新 Buffer +(use-package vterm + :ensure t) #+end_src * provide #+begin_src emacs-lisp -- cgit v1.2.3