Config: add jinx spell check, org-download, and keybinding updates
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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"))
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
"\\*Embark Export:.*\\*"
|
||||
"\\*Edit Annotation.*\\*"
|
||||
"\\*Flutter\\*"
|
||||
"\\*Ibuffer\\*"
|
||||
bookmark-bmenu-mode
|
||||
lsp-bridge-ref-mode
|
||||
comint-mode
|
||||
|
||||
Reference in New Issue
Block a user