- 新增 init-dired.el 基础配置 - 调整 corfu 初始化方式 - 修改 dashboard 显示设置和快捷键 - 更新键位绑定 - 调整 org-journal 格式 - 修复 scratch buffer 模式设置 - 更新主题颜色
102 lines
2.8 KiB
EmacsLisp
102 lines
2.8 KiB
EmacsLisp
;;; init-startup.el --- startup settings -*- lexical-binding: t -*-
|
||
|
||
;;; Commentary:
|
||
|
||
;;; Code:
|
||
|
||
;; mac自动全屏
|
||
(when *is-mac*
|
||
(toggle-frame-fullscreen)
|
||
(global-unset-key (kbd "<f12>"))
|
||
(global-set-key (kbd "<f12>") 'toggle-frame-fullscreen))
|
||
|
||
;; 配置备份文件和自动保存文件目录
|
||
(setq backup-directory-alist
|
||
`((".*" . ,(expand-file-name "backup/" user-emacs-directory)))
|
||
backup-by-copying t
|
||
delete-old-versions t
|
||
kept-new-versions 6
|
||
kept-old-versions 2
|
||
version-control t)
|
||
|
||
(setq auto-save-file-name-transforms
|
||
`((".*" ,(expand-file-name "auto-save-list/" user-emacs-directory) t)))
|
||
|
||
;; 开启水平滚动
|
||
(put 'scroll-left 'disabled nil)
|
||
|
||
;; 关闭lock文件
|
||
(setq create-lockfiles nil)
|
||
|
||
;; 关闭提示音
|
||
(setq ring-bell-function 'ignore)
|
||
|
||
;; 同步scoop目录
|
||
(when *is-windows*
|
||
(add-to-list 'exec-path (expand-file-name "H/appppppppppp/scoop/apps/"))
|
||
(setenv "PATH" (concat (expand-file-name "H/appppppppppp/scoop/apps/") ";" (getenv "PATH"))))
|
||
|
||
;; 同步brew目录
|
||
(when *is-mac*
|
||
(add-to-list 'exec-path (expand-file-name "/opt/homebrew/bin/"))
|
||
(setenv "PATH" (concat (expand-file-name "/opt/homebrew/bin/") ":" (getenv "PATH"))))
|
||
|
||
;; 当文件被外部修改时自动刷新
|
||
(global-auto-revert-mode 1)
|
||
|
||
;; 开启recent file mode
|
||
(recentf-mode)
|
||
(setq recentf-max-saved-items 30) ;; 最大保存数量
|
||
|
||
;; 启用select delete
|
||
(delete-selection-mode)
|
||
|
||
;; 启用winner mode
|
||
(winner-mode)
|
||
|
||
;; 自定义scratch
|
||
(setq initial-scratch-message
|
||
"")
|
||
|
||
(defun my/scratch-set-mode (&rest _)
|
||
(when (eq major-mode 'fundamental-mode)
|
||
(funcall initial-major-mode)))
|
||
|
||
(advice-add 'scratch-buffer :after #'my/scratch-set-mode)
|
||
|
||
;; 开启server mode
|
||
(server-start)
|
||
|
||
;; 窗口名
|
||
(setq-default frame-title-format '("%b - Emacs"))
|
||
|
||
;; electirc-pair-mode
|
||
(add-hook 'emacs-lisp-mode-hook 'electric-pair-mode)
|
||
(add-hook 'org-mode-hook 'electric-pair-mode)
|
||
|
||
;; short anwser
|
||
(if (boundp 'use-short-answers)
|
||
(setq use-short-answers t)
|
||
(fset 'yes-or-no-p 'y-or-n-p))
|
||
(setq-default major-mode 'text-mode
|
||
fill-column 100
|
||
tab-width 4
|
||
indent-tabs-mode nil)
|
||
|
||
(setq visible-bell t
|
||
inhibit-compacting-font-caches t ; Don’t compact font caches during GC
|
||
delete-by-moving-to-trash t ; Deleting files go to OS's trash folder
|
||
make-backup-files nil ; Forbide to make backup files
|
||
auto-save-default nil ; Disable auto save
|
||
|
||
uniquify-buffer-name-style 'post-forward-angle-brackets ; Show path if names are same
|
||
adaptive-fill-regexp "[ t]+|[ t]*([0-9]+.|*+)[ t]*"
|
||
adaptive-fill-first-line-regexp "^* *$"
|
||
sentence-end "\\([。!?]\\|……\\|[.?!][]\"')}]*\\($\\|[ \t]\\)\\)[ \t\n]*"
|
||
sentence-end-double-space nil
|
||
word-wrap-by-category t)
|
||
|
||
(provide 'init-startup)
|
||
|
||
;;; init-startup.el ends here
|