Config: replace smart-mode-line by simple-modeline, optimize org-ql config, add basic guile support
This commit is contained in:
1
init.el
1
init.el
@@ -21,6 +21,7 @@
|
||||
(require 'init-org-refile)
|
||||
(require 'init-completion)
|
||||
(require 'init-window)
|
||||
(require 'init-exwm)
|
||||
(require 'init-dired)
|
||||
(require 'init-workspace)
|
||||
(require 'init-ui)
|
||||
|
||||
@@ -6,10 +6,12 @@
|
||||
|
||||
;; eglot
|
||||
(use-package eglot
|
||||
:hook ((python-mode . eglot-ensure))
|
||||
|
||||
:hook ((python-mode . eglot-ensure)
|
||||
(scheme-mode . eglot-ensure))
|
||||
:config
|
||||
(setq eglot-send-changes-idle-time 0.25))
|
||||
(setq eglot-send-changes-idle-time 0.25)
|
||||
(add-to-list 'eglot-server-programs
|
||||
'(scheme-mode . ("guile-lsp-server"))))
|
||||
|
||||
;; corfu
|
||||
(use-package corfu
|
||||
@@ -117,6 +119,13 @@
|
||||
(global-treesit-auto-mode)
|
||||
(setq treesit-font-lock-level 4))
|
||||
|
||||
(use-package geiser)
|
||||
|
||||
(use-package geiser-guile)
|
||||
|
||||
(with-eval-after-load 'geiser
|
||||
(setq geiser-default-implementation 'guile))
|
||||
|
||||
(provide 'init-completion)
|
||||
|
||||
;;; init-completion.el ends here
|
||||
|
||||
@@ -27,31 +27,45 @@
|
||||
(use-package dirvish
|
||||
:init
|
||||
(dirvish-override-dired-mode)
|
||||
|
||||
:config
|
||||
(if *is-mac*
|
||||
(setq dirvish-hide-details t)
|
||||
(setq dirvish-hide-details '(dirvish-side)))
|
||||
(setq dirvish-use-mode-line 'global)
|
||||
|
||||
(unless *is-windows*
|
||||
(setq dirvish-attributes '(file-time file-size)))
|
||||
|
||||
(setq dirvish-default-layout '(1 0.15 0.45))
|
||||
|
||||
:custom
|
||||
(dirvish-quick-access-entries
|
||||
(cond
|
||||
(*is-windows*
|
||||
'(("h" "~/" "Home")
|
||||
("e" "~/.emacs.d/")
|
||||
("e" "~/.emacs.d/" "Emacs config")
|
||||
("p" "c:/Users/gaozh/Pictures/Screenshots/" "Pictures")
|
||||
("d" "f:/下载25-2-10/" "Download")
|
||||
("v" "f:/luping26-1-11/" "Videos")
|
||||
("n" "h:/emacs/my-org-note/" "Notes")))
|
||||
|
||||
(*is-mac*
|
||||
'(("h" "~/" "Home")
|
||||
("e" "~/.emacs.d/")
|
||||
("e" "~/.emacs.d/" "Emacs config")
|
||||
("p" "~/Pictures/" "Pictures")
|
||||
("d" "~/Downloads/" "Download")
|
||||
("v" "~/Movies/" "Videos")
|
||||
("n" "~/org/my-org-note/")))
|
||||
("n" "~/org/my-org-note/" "Notes")))
|
||||
|
||||
(*is-linux*
|
||||
'(("h" "~/" "Home")
|
||||
("e" "~/.emacs.d/" "Emacs config")
|
||||
("s" "~/.config/guix/" "System config")
|
||||
("p" "~/图片/" "Pictures")
|
||||
("d" "~/downloads/" "Downloads")
|
||||
("v" "~/视频/" "Videos")
|
||||
("n" "~/org/my-org-note/" "Notes")))
|
||||
(t nil))))
|
||||
|
||||
(use-package trashed
|
||||
|
||||
@@ -5,13 +5,25 @@
|
||||
;;; Code:
|
||||
|
||||
;; Clash 代理配置
|
||||
(setq url-proxy-services
|
||||
(if *is-linux*
|
||||
(progn
|
||||
(setq url-proxy-services
|
||||
'(("http" . "192.168.31.121:7890")
|
||||
("https" . "192.168.31.121:7890")
|
||||
("no_proxy" . "\\(localhost\\|127\\.0\\.0\\.1\\|192\\.168\\.*\\)")))
|
||||
|
||||
(setenv "http_proxy" "192.168.31.121:7890")
|
||||
(setenv "https_proxy" "192.168.31.121:7890"))
|
||||
|
||||
(progn
|
||||
(setq url-proxy-services
|
||||
'(("http" . "127.0.0.1:7890")
|
||||
("https" . "127.0.0.1:7890")
|
||||
("no_proxy" . "\\(localhost\\|127\\.0\\.0\\.1\\|192\\.168\\.*\\)")))
|
||||
|
||||
(setenv "http_proxy" "127.0.0.1:7890")
|
||||
(setenv "https_proxy" "127.0.0.1:7890")
|
||||
(setenv "http_proxy" "127.0.0.1:7890")
|
||||
(setenv "https_proxy" "127.0.0.1:7890"))
|
||||
)
|
||||
|
||||
;; straight.el
|
||||
(defvar bootstrap-version)
|
||||
|
||||
11
lisp/init-exwm.el
Normal file
11
lisp/init-exwm.el
Normal file
@@ -0,0 +1,11 @@
|
||||
;;; init-exwm.el --- exwm config -*- lexical-binding: t -*-
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
;;; Code:
|
||||
|
||||
(use-package exwm)
|
||||
|
||||
(provide 'init-exwm)
|
||||
|
||||
;;; init-exwm.el ends here
|
||||
@@ -443,6 +443,8 @@ Disable jinx-mode if it's enable and global-jinx-mode is disable , otherwise tog
|
||||
;; perspective
|
||||
(global-set-key (kbd "C-M-<left>") 'persp-prev)
|
||||
(global-set-key (kbd "C-M-<right>") 'persp-next)
|
||||
(define-key persp-mode-map (kbd "C-c p c") nil)
|
||||
(global-set-key (kbd "C-c p d") 'persp-kill)
|
||||
|
||||
(provide 'init-kbd)
|
||||
|
||||
|
||||
@@ -107,10 +107,11 @@
|
||||
;; 文件头
|
||||
(insert (format "#+title: %s\n" user-filename))
|
||||
(insert (format "#+date: %s\n" (format-time-string "[%Y-%m-%d %a %H:%M]")))
|
||||
(insert (format "#+category: %s\n\n" category))
|
||||
(insert (format "#+category: %s\n" category))
|
||||
(insert "#+STARTUP: content\n\n")
|
||||
|
||||
;; 插入标题和tag
|
||||
(insert (format "* STARTED %s %s\n"
|
||||
(insert (format "* STARTED %s :root%s\n"
|
||||
;; (if todo (concat todo " ") "")
|
||||
user-filename
|
||||
formatted-tags))
|
||||
|
||||
@@ -44,10 +44,8 @@
|
||||
(format-time-string "%Y-%m-%d %a" time)))
|
||||
org-journal-carryover-items "TODO=\"TODO\"|TODO=\"STARTED\"|TODO=\"WAITING\"|TODO=\"SOMEDAY\"")
|
||||
|
||||
(when *is-windows*
|
||||
(setq org-journal-dir "h:/emacs/my-org-daily/"))
|
||||
|
||||
(when *is-mac*
|
||||
(if *is-windows*
|
||||
(setq org-journal-dir "h:/emacs/my-org-daily/")
|
||||
(setq org-journal-dir "~/org/my-org-daily/"))
|
||||
|
||||
(add-hook 'org-journal-mode-hook 'font-lock-update)
|
||||
@@ -111,7 +109,6 @@
|
||||
(lambda ()
|
||||
(global-cns-mode-enable-in-buffer)))
|
||||
|
||||
|
||||
;; 一些随org-mode加载的基础配置
|
||||
(add-hook 'org-mode-hook
|
||||
(lambda ()
|
||||
@@ -163,17 +160,24 @@
|
||||
(setq org-agenda-files '("~/org/my-org-daily"
|
||||
"~/org/my-org-note/")))
|
||||
|
||||
(when *is-linux*
|
||||
(setq org-agenda-files '("~/org/my-org-daily/"
|
||||
"~/org/my-org-note/")))
|
||||
|
||||
(setq org-agenda-span 'day)
|
||||
|
||||
(setq org-default-priority ?D)
|
||||
(setq org-default-priority ?C)
|
||||
|
||||
(setq org-agenda-skip-function-global
|
||||
'(org-agenda-skip-entry-if 'todo '("COMMENT")))
|
||||
|
||||
;; org-ql
|
||||
(use-package org-ql)
|
||||
(use-package org-ql
|
||||
:config
|
||||
(with-eval-after-load 'org-ql-view
|
||||
(keymap-set org-ql-view-map (kbd "q") 'org-agenda-Quit))
|
||||
|
||||
(setq org-ql-views
|
||||
(setq org-ql-views
|
||||
'(("tags: emacs category:note"
|
||||
:buffers-files org-agenda-files
|
||||
:query (and (tags "emacs") (category "note"))
|
||||
@@ -181,16 +185,28 @@
|
||||
|
||||
("tags: org"
|
||||
:buffers-files org-agenda-files
|
||||
:query (tags "org"))
|
||||
:query (tags "org")
|
||||
:super-groups ((:auto-property "CATEGORY")))
|
||||
|
||||
("group by time"
|
||||
:buffers-files org-agenda-files
|
||||
:query (and (ts :to "today") (tags "root"))
|
||||
:sort date
|
||||
:super-groups ((:auto-ts t)))
|
||||
|
||||
("group by category"
|
||||
:buffers-files org-agenda-files
|
||||
:query (tags "root")
|
||||
:super-groups ((:auto-property "CATEGORY")))
|
||||
|
||||
("all important todos"
|
||||
:buffers-files org-agenda-files
|
||||
:query (and (not (done)) (todo))
|
||||
:super-groups
|
||||
((:name "priority = A" :priority "A")
|
||||
((:name "started" :todo "STARTED")
|
||||
(:name "priority = A" :priority "A")
|
||||
(:name "priority = B" :priority "B")
|
||||
(:name "started" :todo "STARTED")
|
||||
(:name "someday" :todo "SOMEDAY")))))
|
||||
(:name "someday" :todo "SOMEDAY"))))))
|
||||
|
||||
;; org-super-agenda 配置
|
||||
(use-package org-super-agenda
|
||||
@@ -258,11 +274,13 @@
|
||||
"~/org/my-org-note/"
|
||||
(format-time-string "%Y%m%d")
|
||||
my-org-capture-temp-title)))))
|
||||
"#+title: %(symbol-value 'my-org-capture-temp-title)
|
||||
"
|
||||
#+title: %(symbol-value 'my-org-capture-temp-title)
|
||||
#+date: %U
|
||||
#+category: %^{Category|none|project|book|article|note|insight|fun}
|
||||
#+category: %^{Category|none|project|book|article|note|wisdom|fun|data}
|
||||
#+STARTUP: content
|
||||
|
||||
* %(symbol-value 'my-org-capture-temp-title) %^g
|
||||
* %(symbol-value 'my-org-capture-temp-title) :root%^g
|
||||
:PROPERTIES:
|
||||
:END:
|
||||
%U
|
||||
@@ -276,6 +294,8 @@
|
||||
"
|
||||
:jump-to-captured t)))
|
||||
|
||||
(setq org-bookmark-names-plist nil)
|
||||
|
||||
(global-set-key (kbd "C-c o c") 'org-capture)
|
||||
|
||||
;; 批量调整表格
|
||||
|
||||
@@ -191,7 +191,7 @@ targets."
|
||||
|
||||
;; 启用savehist,保存命令顺序
|
||||
(use-package savehist
|
||||
:hook (after-init . savehist-mode)
|
||||
;; :hook (after-init . savehist-mode)
|
||||
:init (setq enable-recursive-minibuffers t
|
||||
history-length 50
|
||||
savehist-additional-variables '(mark-ring
|
||||
@@ -199,11 +199,12 @@ targets."
|
||||
search-ring
|
||||
regexp-search-ring
|
||||
extended-command-history)
|
||||
savehist-autosave-interval 300))
|
||||
savehist-autosave-interval 300)
|
||||
(savehist-mode))
|
||||
|
||||
;; saveplace,保存光标位置
|
||||
(use-package saveplace
|
||||
:hook (after-init . save-place-mode))
|
||||
:init (save-place-mode))
|
||||
|
||||
;; undo增强
|
||||
(use-package undo-fu)
|
||||
@@ -253,7 +254,7 @@ targets."
|
||||
("M-Z" . avy-zap-up-to-char-dwim)))
|
||||
|
||||
;; jinx,拼写检查
|
||||
(unless *is-windows*
|
||||
(if *is-mac*
|
||||
(use-package jinx
|
||||
:hook (org-mode-hook . jinx-mode)
|
||||
:bind ([remap ispell-word] . jinx-correct)
|
||||
@@ -276,6 +277,10 @@ targets."
|
||||
:init
|
||||
(add-hook 'after-init-hook #'global-flycheck-mode))
|
||||
|
||||
(use-package flycheck-guile
|
||||
:hook (scheme-mode . (lambda ()
|
||||
(require 'flycheck-guile))))
|
||||
|
||||
;; consult-flycheck
|
||||
(use-package consult-flycheck)
|
||||
|
||||
|
||||
@@ -4,8 +4,9 @@
|
||||
|
||||
;;; Code:
|
||||
|
||||
;; emacs-chinese-word-segmentation 配置
|
||||
(when *is-windows*
|
||||
;; emacs-chinese-word-segmentation
|
||||
(cond
|
||||
(*is-windows*
|
||||
(add-to-list 'load-path "h:/emacs/emacs-chinese-word-segmentation/")
|
||||
;; 设置为进程调用方式
|
||||
(setq cns-process-type 'shell)
|
||||
@@ -23,14 +24,14 @@
|
||||
(concat (file-name-as-directory cns-dict-directory) "idf.utf8")
|
||||
(concat (file-name-as-directory cns-dict-directory) "stop_words.utf8"))))
|
||||
|
||||
(when *is-mac*
|
||||
(t
|
||||
(add-to-list 'load-path "~/emacs-stuff/emacs-chinese-word-segmentation/")
|
||||
;; 设置为进程调用方式
|
||||
(setq cns-process-type 'shell)
|
||||
;; 设置可执行文件路径
|
||||
(setq cns-prog "~/emacs-stuff/emacs-chinese-word-segmentation/cnws")
|
||||
;; 设置字典目录
|
||||
(setq cns-dict-directory "~/emacs-stuff/emacs-chinese-word-segmentation/cppjieba/dict/"))
|
||||
(setq cns-dict-directory "~/emacs-stuff/emacs-chinese-word-segmentation/cppjieba/dict/")))
|
||||
|
||||
;; 其他配置
|
||||
(setq cns-recent-segmentation-limit 40)
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
;;; Code:
|
||||
|
||||
;; mac自动全屏
|
||||
(when *is-mac*
|
||||
(unless *is-windows*
|
||||
(toggle-frame-fullscreen)
|
||||
(global-unset-key (kbd "<f12>"))
|
||||
(global-set-key (kbd "<f12>") 'toggle-frame-fullscreen))
|
||||
|
||||
@@ -56,17 +56,24 @@
|
||||
(load-theme 'my-base16-dark t))
|
||||
|
||||
;; 很多主题
|
||||
(use-package doom-themes)
|
||||
(use-package color-theme-modern)
|
||||
;; (use-package doom-themes)
|
||||
;; (use-package color-theme-modern)
|
||||
(use-package naysayer-theme)
|
||||
|
||||
;; 安装smart-mode-line
|
||||
(use-package smart-mode-line
|
||||
:defer 0.5
|
||||
;; (use-package smart-mode-line
|
||||
;; :config
|
||||
;; (setq sml/no-confirm-load-theme t)
|
||||
;; ;; sml/theme 'respectful)
|
||||
;; (sml/setup))
|
||||
|
||||
(use-package simple-modeline
|
||||
:init (simple-modeline-mode)
|
||||
:config
|
||||
(setq sml/no-confirm-load-theme t)
|
||||
;; sml/theme 'respectful)
|
||||
(sml/setup))
|
||||
;; (defun simple-modeline-segment-buffer-name ()
|
||||
;; "Displays the full path of current file in the mode-line."
|
||||
;; (propertize " %f" 'face 'mode-line-buffer-id))
|
||||
)
|
||||
|
||||
;; eshell高亮
|
||||
(use-package eshell-syntax-highlighting
|
||||
|
||||
Reference in New Issue
Block a user