Compare commits

...

2 commits

Author SHA1 Message Date
9cd051ab51 update 2023-02-18 21:36:00 +08:00
1bc9de9edc update 2023-02-15 19:35:56 +08:00
3 changed files with 90 additions and 49 deletions

125
config.el
View file

@ -67,9 +67,10 @@
;; There are two ways to load a theme. Both assume the theme is installed and ;; There are two ways to load a theme. Both assume the theme is installed and
;; available. You can either set `doom-theme' or manually load a theme with the ;; available. You can either set `doom-theme' or manually load a theme with the
;; `load-theme' function. This is the default: ;; `load-theme' function. This is the default:
(setq doom-theme 'doom-one) (setq doom-theme 'ef-spring)
(cnfonts-mode 1) (cnfonts-mode 1)
(beacon-mode 1) (beacon-mode 1)
(good-scroll-mode 1)
(setq word-wrap-by-category t) (setq word-wrap-by-category t)
(load! "secrets") (load! "secrets")
@ -96,9 +97,9 @@
(add-to-list 'default-frame-alist '(height . 35)) (add-to-list 'default-frame-alist '(height . 35))
(add-to-list 'default-frame-alist '(width . 102)) (add-to-list 'default-frame-alist '(width . 102))
(setq doom-font (font-spec :size 16) ;; (setq doom-font (font-spec :size 16)
doom-big-font (font-spec :size 24) ;; doom-big-font (font-spec :size 24)
doom-variable-pitch-font (font-spec :size 16)) ;; doom-variable-pitch-font (font-spec :size 16))
;; dashboard banner ;; dashboard banner
(defun doom-dashboard-draw-ascii-emacs-banner-fn () (defun doom-dashboard-draw-ascii-emacs-banner-fn ()
@ -238,6 +239,77 @@
(use-package! guess-word) (use-package! guess-word)
(setq guess-word-org-file (f-expand "~/Nextcloud/Documents/my-esl.org")) (setq guess-word-org-file (f-expand "~/Nextcloud/Documents/my-esl.org"))
;;calibre
(setq calibredb-root-dir "~/Nextcloud/Ebook")
(setq calibredb-db-dir (expand-file-name "metadata.db" calibredb-root-dir))
(setq calibredb-ref-default-bibliography (concat (file-name-as-directory calibredb-root-dir) "catalog.bib"))
(setq bibtex-completion-pdf-field "File")
(setq bibtex-completion-bibliography '("~/Nextcloud/Ebook/catalog.bib"))
(setq citar-bibliography '("~/Nextcloud/Ebook/catalog.bib"))
(setq calibredb-format-all-the-icons t)
(map! :map calibredb-show-mode-map
:n "?" #'calibredb-entry-dispatch
:n "o" #'calibredb-find-file
:n "O" #'calibredb-find-file-other-frame
:n "V" #'calibredb-open-file-with-default-tool
:n "s" #'calibredb-set-metadata-dispatch
:n "e" #'calibredb-export-dispatch
:n "q" #'calibredb-entry-quit
:n "." #'calibredb-open-dired
:n [tab] #'calibredb-toggle-view-at-point
:n "M-t" #'calibredb-set-metadata--tags
:n "M-a" #'calibredb-set-metadata--author_sort
:n "M-A" #'calibredb-set-metadata--authors
:n "M-T" #'calibredb-set-metadata--title
:n "M-c" #'calibredb-set-metadata--comments)
(map! :map calibredb-search-mode-map
:n [mouse-3] #'calibredb-search-mouse
:n "RET" #'calibredb-find-file
:n "?" #'calibredb-dispatch
:n "a" #'calibredb-add
:n "A" #'calibredb-add-dir
:n "c" #'calibredb-clone
:n "d" #'calibredb-remove
:n "D" #'calibredb-remove-marked-items
:n "j" #'calibredb-next-entry
:n "k" #'calibredb-previous-entry
:n "l" #'calibredb-virtual-library-list
:n "L" #'calibredb-library-list
:n "n" #'calibredb-virtual-library-next
:n "N" #'calibredb-library-next
:n "p" #'calibredb-virtual-library-previous
:n "P" #'calibredb-library-previous
:n "s" #'calibredb-set-metadata-dispatch
:n "S" #'calibredb-switch-library
:n "o" #'calibredb-find-file
:n "O" #'calibredb-find-file-other-frame
:n "v" #'calibredb-view
:n "V" #'calibredb-open-file-with-default-tool
:n "." #'calibredb-open-dired
:n "b" #'calibredb-catalog-bib-dispatch
:n "e" #'calibredb-export-dispatch
:n "r" #'calibredb-search-refresh-and-clear-filter
:n "R" #'calibredb-search-clear-filter
:n "q" #'calibredb-search-quit
:n "m" #'calibredb-mark-and-forward
:n "f" #'calibredb-toggle-favorite-at-point
:n "x" #'calibredb-toggle-archive-at-point
:n "h" #'calibredb-toggle-highlight-at-point
:n "u" #'calibredb-unmark-and-forward
:n "i" #'calibredb-edit-annotation
:n "DEL" #'calibredb-unmark-and-backward
:n [backtab] #'calibredb-toggle-view
:n [tab] #'calibredb-toggle-view-at-point
:n "M-n" #'calibredb-show-next-entry
:n "M-p" #'calibredb-show-previous-entry
:n "/" #'calibredb-search-live-filter
:n "M-t" #'calibredb-set-metadata--tags
:n "M-a" #'calibredb-set-metadata--author_sort
:n "M-A" #'calibredb-set-metadata--authors
:n "M-T" #'calibredb-set-metadata--title
:n "M-c" #'calibredb-set-metadata--comments)
;;sdcv ;;sdcv
(setq sdcv-say-word-p t) (setq sdcv-say-word-p t)
@ -255,7 +327,7 @@
(default-input-method "rime") (default-input-method "rime")
:config :config
(define-key rime-mode-map (kbd "C-i") 'rime-force-enable) (define-key rime-mode-map (kbd "C-i") 'rime-force-enable)
(setq rime-show-candidate 'posframe) (setq rime-show-candidate 'popup)
(setq rime-disable-predicates (setq rime-disable-predicates
'(rime-predicate-evil-mode-p '(rime-predicate-evil-mode-p
rime-predicate-after-alphabet-char-p rime-predicate-after-alphabet-char-p
@ -341,8 +413,6 @@
;; (add-hook 'org-after-todo-statistics-hook 'org-summary-todo) ;; (add-hook 'org-after-todo-statistics-hook 'org-summary-todo)
(after! org (after! org
(setq org-directory "~/org/" (setq org-directory "~/org/"
org-ellipsis ""
org-superstar-headline-bullets-list '("" "" "" "" "" "" "")
org-image-actual-width '(400) org-image-actual-width '(400)
org-link-search-must-match-exact-headline nil org-link-search-must-match-exact-headline nil
org-log-done 'time org-log-done 'time
@ -352,27 +422,6 @@
(lambda() (lambda()
(org-roam-dailies-capture-today))) (org-roam-dailies-capture-today)))
(defun ql--find-files-in-dir (ext dir &optional rec)
"Find files with EXT in DIR.
REC searches recursively."
(split-string (shell-command-to-string
(concat
(format "fd --type f -e %s " ext)
(unless rec "-d 1 ")
(format ". %s" dir)))))
(defun ql-org-ql--search (file &optional query)
"An Org-ql search allowing for the target FILE to be specified.
Additionally, QUERY can be chosen as well."
(let ((target file)
(query (or query (read-from-minibuffer "Query: "))))
(funcall #'org-ql-search target query)))
(defun my-org-ql-search-dailies (&optional query)
"Quickly search `ql-journal-directory' with optional QUERY."
(interactive)
(ql-org-ql--search (ql--find-files-in-dir 'org "~/Nextcloud/Note/org-roam/daily/") query))
;; ob-restclient ;; ob-restclient
(org-babel-do-load-languages (org-babel-do-load-languages
'org-babel-load-languages 'org-babel-load-languages
@ -440,23 +489,23 @@ Additionally, QUERY can be chosen as well."
(setq org-roam-capture-templates (setq org-roam-capture-templates
'(("m" "main" plain '(("m" "main" plain
"%?" "%?"
:if-new (file+head "main/${slug}.org" :if-new (file+head "main/%<%Y%m%d%H%M%S>-${slug}.org"
"#+title: ${title}\n#+date: %T\n#+hugo_auto_set_lastmod: t\n") "#+title: ${title}\n#+date: %T\n#+hugo_auto_set_lastmod: t\n")
:immediate-finish t :immediate-finish t
:unnarrowed t) :unnarrowed t)
("r" "reference" plain "%?" ("r" "references" plain "%?"
:if-new :if-new
(file+head "reference/${title}.org" "#+title: ${title}\n#+date: %T\n#+hugo_auto_set_lastmod: t\n") (file+head "references/%<%Y%m%d%H%M%S>-${title}.org" "#+title: ${title}\n#+date: %T\n#+hugo_auto_set_lastmod: t\n")
:immediate-finish t :immediate-finish t
:unnarrowed t) :unnarrowed t)
("t" "ttk" plain "%?" ("t" "ttk" plain "%?"
:if-new :if-new
(file+head "ttk/${title}.org" "#+title: ${title}\n#+date: %T\n#+hugo_auto_set_lastmod: t\n") (file+head "ttk/%<%Y%m%d%H%M%S>-${title}.org" "#+title: ${title}\n#+date: %T\n#+hugo_auto_set_lastmod: t\n")
:immediate-finish t :immediate-finish t
:unnarrowed t) :unnarrowed t)
("a" "article" plain "%?" ("a" "article" plain "%?"
:if-new :if-new
(file+head "articles/${title}.org" "#+title: ${title}\n#+date: %T\n#+filetags: :article: :publish:\n#+hugo_auto_set_lastmod: t\n") (file+head "articles/%<%Y%m%d%H%M%S>-${title}.org" "#+title: ${title}\n#+date: %T\n#+filetags: :article: :publish:\n#+hugo_auto_set_lastmod: t\n")
:immediate-finish t :immediate-finish t
:unnarrowed t))) :unnarrowed t)))
@ -486,16 +535,6 @@ Additionally, QUERY can be chosen as well."
(setq epa-file-cache-passphrase-for-symmetric-encryption t) (setq epa-file-cache-passphrase-for-symmetric-encryption t)
(setq-local epa-file-encrypt-to '("master@southfox.me")) (setq-local epa-file-encrypt-to '("master@southfox.me"))
;; org-transclusion
(use-package! org-transclusion
:after org
:init
(map!
:map global-map "<f12>" #'org-transclusion-add
:leader
:prefix "n"
:desc "Org Transclusion Mode" "t" #'org-transclusion-mode))
;; ement ;; ement
(setq ement-save-sessions t (setq ement-save-sessions t
ement-room-message-format-spec "%B%r%R%t") ement-room-message-format-spec "%B%r%R%t")

View file

@ -86,7 +86,7 @@
:tools :tools
;;ansible ;;ansible
;;biblio ; Writes a PhD for you (citation needed) biblio ; Writes a PhD for you (citation needed)
(debugger +lsp) ; FIXME stepping through code, to help you add bugs (debugger +lsp) ; FIXME stepping through code, to help you add bugs
;;direnv ;;direnv
(docker +lsp) (docker +lsp)
@ -96,7 +96,7 @@
;;gist ; interacting with github gists ;;gist ; interacting with github gists
lookup ; navigate your code and its documentation lookup ; navigate your code and its documentation
lsp ; M-x vscode lsp ; M-x vscode
(magit +forge) ; a git porcelain for Emacs magit ; a git porcelain for Emacs
;;make ; run make tasks from Emacs ;;make ; run make tasks from Emacs
;;pass ; password manager for nerds ;;pass ; password manager for nerds
pdf ; pdf enhancements pdf ; pdf enhancements
@ -133,8 +133,7 @@
;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER) ;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER)
;;fsharp ; ML stands for Microsoft's Language ;;fsharp ; ML stands for Microsoft's Language
;;fstar ; (dependent) types and (monadic) effects and Z3 ;;fstar ; (dependent) types and (monadic) effects and Z3
(gdscript ;;gdscript ; the language you waited for
+lsp) ; the language you waited for
;;(go +lsp) ; the hipster dialect ;;(go +lsp) ; the hipster dialect
;;(haskell +lsp) ; a language that's lazier than I am ;;(haskell +lsp) ; a language that's lazier than I am
;;hy ; readability of scheme w/ speed of python ;;hy ; readability of scheme w/ speed of python
@ -186,7 +185,7 @@
;;zig ; C, but simpler ;;zig ; C, but simpler
:email :email
(mu4e +org +gmail) (mu4e +org)
;;notmuch ;;notmuch
;;(wanderlust +gmail) ;;(wanderlust +gmail)

View file

@ -58,12 +58,12 @@
(package! clippy) (package! clippy)
(package! parrot) (package! parrot)
(package! restclient) (package! restclient)
(package! ef-themes)
(package! ement (package! ement
:recipe (:host github :repo "alphapapa/ement.el")) :recipe (:host github :repo "alphapapa/ement.el"))
(unpin! org-roam) (unpin! org-roam)
(package! org-download) (package! org-download)
(package! org-transclusion)
(package! org-fragtog) (package! org-fragtog)
(package! org-roam-ui) (package! org-roam-ui)
(package! ox-hugo) (package! ox-hugo)
@ -82,5 +82,8 @@
:recipe (:host github :repo "chenyanming/wallabag.el" :recipe (:host github :repo "chenyanming/wallabag.el"
:files ("*.el" "*.alist" "*.css"))) :files ("*.el" "*.alist" "*.css")))
(package! mastodon) (package! mastodon)
(package! calibredb)
(package! iscroll)
(package! good-scroll)
(package! impatient-mode) (package! impatient-mode)