Config: add jinx spell check, org-download, and keybinding updates

This commit is contained in:
User
2026-03-29 21:23:44 +08:00
parent 6131329bdd
commit e7a0e1b382
6 changed files with 86 additions and 11 deletions

View File

@@ -6,7 +6,7 @@
:hook ((python-mode . eglot-ensure))
:config
(setq eglot-send-changes-idle-time 0.5))
(setq eglot-send-changes-idle-time 0.25))
;; corfu
(use-package corfu

View File

@@ -53,6 +53,29 @@
(global-set-key (kbd "M-u") 'upcase-dwim)
(global-set-key (kbd "M-l") 'downcase-dwim)
;; jinx相关
(with-eval-after-load 'jinx
(defun my/jinx-smart-toggle ()
"Toggle jinx-mode smartly.
Disable jinx-mode if it's enable and global-jinx-mode is disable , otherwise toggle global-jinx-mode."
(interactive)
(let ((local-on (bound-and-true-p jinx-mode))
(global-on (bound-and-true-p global-jinx-mode)))
(cond
((and local-on (not global-on))
(message "disable jinx-mode in current buffer")
(jinx-mode -1))
(t
(if global-on
(progn
(message "disable global-jinx-mode")
(global-jinx-mode -1))
(progn
(message "enable global-jinx-mode")
(global-jinx-mode 1))))))))
(global-set-key (kbd "C-c j j") 'my/jinx-smart-toggle)
;; pair编辑
(global-set-key (kbd "C-c p d") 'delete-pair)
@@ -140,6 +163,12 @@
;; popper
(global-set-key (kbd "M-`") 'popper-toggle-latest)
(defun popper-toggle-type-delte-other-window()
(interactive)
(popper-toggle-type)
(delete-other-windows))
(global-set-key (kbd "C-M-=") 'popper-toggle-type-delte-other-window)
;; crux相关
(global-set-key (kbd "C-<backspace>") 'crux-kill-line-backwards) ;; C-DEL kill line backwards
(global-set-key (kbd "C-c k") 'comment-line) ;; 快速注释
@@ -193,7 +222,15 @@
;; vterm
(with-eval-after-load 'vterm
(define-key vterm-mode-map (kbd "M-]") nil))
(define-key vterm-mode-map (kbd "M-]") nil)
(define-key vterm-mode-map (kbd "C-x C-x") 'vterm-send-C-x))
;; ;; eshell
(with-eval-after-load 'eshell
(define-key eshell-mode-map (kbd "M-n") nil)
(define-key eshell-mode-map (kbd "M-p") nil)
(define-key eshell-mode-map (kbd "M-{") 'eshell-previous-matching-input-from-input)
(define-key eshell-mode-map (kbd "M-}") 'eshell-next-matching-input-from-input))
;; 打开目录
(defun consult-directory-externally (file)

View File

@@ -12,6 +12,20 @@
(lambda ()
(require 'org-checklist nil t)))
;; org-download
(use-package org-download
:config
(when *is-mac*
(setq org-download-image-dir "./images")
(unless (file-exists-p "./images")
(make-directory "./images" t))
(setq org-download-link-format "[[file:%s]]\n")
(setq org-download-timestamp "%Y%m%d_%H%M%S_")
(setq org-download-dragndrop t)
(setq org-image-actual-width nil)
(setq org-download-image-html-width 600)
(add-hook 'org-mode-hook 'org-display-inline-images)))
;; org-journal
(use-package org-journal
:config
@@ -97,7 +111,15 @@
(add-hook 'org-mode-hook
(lambda ()
(require 'org-tempo)
(org-indent-mode)))
(org-indent-mode)
(setq-local electric-pair-inhibit-predicate
(lambda (char)
(or (eq char ?<)
(electric-pair-default-inhibit char))))))
(with-eval-after-load 'org
(require 'org-download)
(setq org-return-follows-link t))
;; 预加载防止windows的org-mode加载卡顿
(if *is-windows*
@@ -209,6 +231,11 @@
(org-table-map-tables 'org-table-align t)))
;; hugo
;; 安装ox-hugo
(use-package ox-hugo)
(with-eval-after-load 'org-capture
(defun org-hugo-new-subtree-post-capture-template ()
"Returns `org-capture' template string for new Hugo post.

View File

@@ -119,15 +119,26 @@
(unless (eq ibuffer-sorting-mode 'alphabetic)
(ibuffer-do-sort-by-alphabetic)))))
;; avy中文支持
(use-package ace-pinyin
:init (ace-pinyin-global-mode +1))
;; 安装ox-hugo
(use-package ox-hugo
:custom
(empv-mpv-args '("--force-window=immediate"
"--keep-open=yes"
"--fs=no")))
;; jinx拼写检查
(use-package jinx
:hook (org-mode-hook . jinx-mode)
:bind ([remap ispell-word] . jinx-correct)
:config (setq jinx-languages "en_US")
(add-to-list 'jinx-exclude-regexps '(t "\\cc"))
(with-eval-after-load 'jinx
(dolist (range '((#x4E00 . #x9FFF)
(#x3400 . #x4DBF)
(#x3000 . #x303F)
(#xFF00 . #xFFEF)
(#x20000 . #x2A6DF)))
(let ((start (car range))
(end (cdr range)))
(dotimes (i (- end start))
(modify-syntax-entry (+ start i) "_" jinx--syntax-table))))))
;; 安装emms
(use-package emms

View File

@@ -56,8 +56,7 @@
";; SCRATCH SCRATCH SCRATCH\n\n")
;; 开启server mode
(unless *is-mac*
(server-start))
(server-start)
;; 窗口名
(setq-default frame-title-format '("%b - Emacs"))

View File

@@ -24,6 +24,7 @@
"\\*Embark Export:.*\\*"
"\\*Edit Annotation.*\\*"
"\\*Flutter\\*"
"\\*Ibuffer\\*"
bookmark-bmenu-mode
lsp-bridge-ref-mode
comint-mode