mirror of
https://github.com/js0ny/dotfiles.git
synced 2025-12-21 08:43:00 +00:00
Merge branch 'master' of github.com:js0ny/dotfiles
This commit is contained in:
commit
5a8c8a6cc7
25 changed files with 665 additions and 84 deletions
3
tools/emacs.d/.gitignore
vendored
3
tools/emacs.d/.gitignore
vendored
|
|
@ -4,6 +4,7 @@
|
|||
/eshell/
|
||||
/server/
|
||||
/url/
|
||||
transient/
|
||||
|
||||
# 临时文件
|
||||
tutorial
|
||||
|
|
@ -22,3 +23,5 @@ custom.el
|
|||
.org-id-locations
|
||||
bookmarks
|
||||
.cache
|
||||
eln-cache
|
||||
org-persist
|
||||
|
|
|
|||
|
|
@ -20,10 +20,31 @@
|
|||
(use-package catppuccin-theme
|
||||
:config
|
||||
(setq catppuccin-flavor 'mocha) ; This looks like shit in terminal mode
|
||||
(load-theme 'catppuccin t))
|
||||
;; (load-theme 'catppuccin t)
|
||||
)
|
||||
|
||||
(use-package doom-themes
|
||||
:ensure t
|
||||
:config
|
||||
;; Global settings (defaults)
|
||||
(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
|
||||
doom-themes-enable-italic t) ; if nil, italics is universally disabled
|
||||
(load-theme 'doom-nord-aurora t)
|
||||
|
||||
;; Enable flashing mode-line on errors
|
||||
(doom-themes-visual-bell-config)
|
||||
|
||||
;; Enable custom neotree theme (nerd-icons must be installed!)
|
||||
;; (doom-themes-neotree-config)
|
||||
|
||||
;; or for treemacs users
|
||||
(setq doom-themes-treemacs-theme "doom-nord-aurora") ; use "doom-colors" for less minimal icon theme
|
||||
(doom-themes-treemacs-config)
|
||||
;; Corrects (and improves) org-mode's native fontification.
|
||||
(doom-themes-org-config))
|
||||
|
||||
|
||||
;; Better mode line, see (L7) Icon install
|
||||
;; Better mode line, see (L11) for Icon install
|
||||
;; M-x nerd-icons-install-fonts
|
||||
(use-package doom-modeline
|
||||
:ensure t
|
||||
|
|
@ -31,4 +52,6 @@
|
|||
|
||||
(global-tab-line-mode) ; bufferline
|
||||
|
||||
|
||||
|
||||
(provide 'init-appearance)
|
||||
|
|
|
|||
|
|
@ -15,8 +15,6 @@
|
|||
(prog-mode . display-line-numbers-mode))
|
||||
|
||||
|
||||
;; Auto input pairred brackets
|
||||
(electric-pair-mode 1)
|
||||
|
||||
;; https://book.emacs-china.org/#orgcfd105e Open with Emacs
|
||||
(server-mode 1)
|
||||
|
|
@ -25,10 +23,15 @@
|
|||
(require 'recentf)
|
||||
(recentf-mode 1)
|
||||
|
||||
;; Disable toobar and scrollbar
|
||||
;; Disable topbars
|
||||
(tool-bar-mode -1)
|
||||
(scroll-bar-mode -1)
|
||||
(menu-bar-mode -1)
|
||||
|
||||
(use-package alert
|
||||
:commands (alert)
|
||||
:config
|
||||
(setq alert-default-style 'libnotify))
|
||||
|
||||
;; Export module
|
||||
(provide 'init-basic)
|
||||
|
|
|
|||
|
|
@ -3,6 +3,9 @@
|
|||
;; Use UTF-8 & LF
|
||||
(setq-default buffer-file-coding-system 'utf-8-unix)
|
||||
|
||||
;; Auto input pairred brackets
|
||||
(electric-pair-mode 1)
|
||||
|
||||
;; Company - Complete Anything
|
||||
(use-package company
|
||||
:ensure t
|
||||
|
|
@ -25,12 +28,13 @@
|
|||
(marginalia-mode))
|
||||
|
||||
|
||||
;; (set-language-environment "UTF-8")
|
||||
(set-default-coding-systems 'utf-8)
|
||||
;; (prefer-coding-system 'utf-8)
|
||||
|
||||
;;; 设置语言环境为 UTF-8
|
||||
;(set-language-environment "UTF-8")
|
||||
;
|
||||
;;; 强制使用 UTF-8
|
||||
;(prefer-coding-system 'utf-8)
|
||||
;(set-default-coding-systems 'utf-8)
|
||||
;(set-terminal-coding-system 'utf-8)
|
||||
;(set-keyboard-coding-system 'utf-8)
|
||||
;
|
||||
|
|
@ -54,4 +58,11 @@
|
|||
|
||||
(setq-default buffer-file-coding-system 'utf-8-unix)
|
||||
|
||||
;; Avy - act like Vim Easymotion
|
||||
(use-package avy
|
||||
:config
|
||||
(evil-define-key '(normal) 'global (kbd "T") 'avy-goto-char)
|
||||
(evil-define-key '(normal) 'global (kbd "s") 'avy-goto-char-2)
|
||||
(evil-define-key '(normal) 'global (kbd "s") 'avy-goto-char-2-above))
|
||||
|
||||
(provide 'init-edit)
|
||||
|
|
|
|||
|
|
@ -53,5 +53,13 @@
|
|||
;; Treemacs mode specific binding
|
||||
(evil-define-key 'treemacs treemacs-mode-map (kbd "i") #'treemacs-RET-action))
|
||||
|
||||
;; magit - Git Client
|
||||
(use-package magit
|
||||
:ensure t
|
||||
:after (evil-leader)
|
||||
:config
|
||||
(evil-leader/set-key
|
||||
"g" 'magit-status)
|
||||
)
|
||||
|
||||
(provide 'init-file)
|
||||
|
|
|
|||
|
|
@ -1,11 +1,8 @@
|
|||
;;; init-keymaps.el
|
||||
|
||||
;; Once this is defined, `M-x open-init-file` will open this file
|
||||
(defun open-init-file()
|
||||
(defun open-org-config()
|
||||
(interactive) ;; Mark function as `interactive` that allows user to access by M-x open-init-file RET
|
||||
(find-file "~/.emacs.d/init.el"))
|
||||
(defun reload-init()
|
||||
(interactive)
|
||||
(load-file "~/.emacs.d/init.el"))
|
||||
(find-file "~/.emacs.d/lisp/init-org.el"))
|
||||
|
||||
(provide 'init-keymaps)
|
||||
|
|
|
|||
|
|
@ -39,10 +39,8 @@
|
|||
("~" (org-code verbatim :background "deep sky blue" :foreground "MidnightBlue"))
|
||||
("+" (:strike-through t))))
|
||||
|
||||
(use-package org-bullets
|
||||
:after org
|
||||
:hook (org-mode . org-bullets-mode))
|
||||
|
||||
;; Better LaTeX preview
|
||||
(use-package org-fragtog
|
||||
:after org
|
||||
:hook (org-mode . org-fragtog-mode))
|
||||
|
|
@ -104,5 +102,66 @@
|
|||
(global-set-key (kbd "C-c b") (lambda () (interactive) (my/insert-emphasis-with-zws ?*)))
|
||||
(global-set-key (kbd "C-c i") (lambda () (interactive) (my/insert-emphasis-with-zws ?/)))
|
||||
|
||||
;; Pomodoro for org clock
|
||||
(use-package org-pomodoro)
|
||||
|
||||
;; Org Styles Integration
|
||||
(use-package org-modern
|
||||
:ensure t
|
||||
:after (org)
|
||||
:config
|
||||
(with-eval-after-load 'org (global-org-modern-mode))
|
||||
;; https://github.com/minad/org-modern/issues/232
|
||||
(setq org-modern-fold-stars
|
||||
'(("▶" . "▼")
|
||||
("▷" . "▽")
|
||||
;; ("⯈" . "⯆")
|
||||
("▷" . "▽")
|
||||
("▹" . "▿")
|
||||
("▸" . "▾"))
|
||||
)
|
||||
)
|
||||
|
||||
(use-package mixed-pitch
|
||||
:hook
|
||||
(text-mode . org-mode))
|
||||
|
||||
;; Integrate Emacs Timer with System Notifications
|
||||
;; 定义通知函数
|
||||
(defun my/org-clock-notification (title message &optional icon)
|
||||
"发送一个系统通知"
|
||||
(alert message
|
||||
:title title
|
||||
:icon icon
|
||||
:category 'org-clock))
|
||||
|
||||
;; 添加定时器检查函数
|
||||
(defun my/org-clock-check-timer ()
|
||||
"检查当前正在运行的 clock 是否到期"
|
||||
(when (org-clocking-p)
|
||||
(let* ((clocked-time (org-clock-get-clocked-time))
|
||||
(effort (org-duration-to-minutes
|
||||
(or (org-entry-get (org-clock-is-active) "Effort")
|
||||
"0")))
|
||||
(remaining (- effort clocked-time)))
|
||||
(when (and (> effort 0) (<= remaining 0))
|
||||
(my/org-clock-notification
|
||||
"Org Clock 提醒"
|
||||
(format "任务 '%s' 的预计时间已到!"
|
||||
(org-clock-get-clock-string)))))))
|
||||
|
||||
;; 设置定时器,每分钟检查一次
|
||||
(run-with-timer 0 60 #'my/org-clock-check-timer)
|
||||
|
||||
;; 在 org-clock-in-hook 中添加检查
|
||||
(add-hook 'org-clock-in-hook
|
||||
(lambda ()
|
||||
(let ((effort (org-entry-get (point) "Effort")))
|
||||
(when effort
|
||||
(my/org-clock-notification
|
||||
"开始计时"
|
||||
(format "开始计时任务: %s\n预计用时: %s"
|
||||
(org-get-heading t t t t)
|
||||
effort))))))
|
||||
|
||||
(provide 'init-org)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue