diff --git a/logos.el b/logos.el index a0afab8..2408c60 100644 --- a/logos.el +++ b/logos.el @@ -30,6 +30,9 @@ ;;; Code: +(require 'org) +(require 'org-agenda) +(require 'org-attach) (require 'transient) (require 'subr-x) @@ -82,6 +85,11 @@ :hook ((org-mode . wc-mode)) :config (setq wc-modeline-format "WC[%tw]")) +(define-key org-mode-map (kbd "C-c ") 'windmove-left) +(define-key org-mode-map (kbd "C-c ") 'windmove-right) +(define-key org-mode-map (kbd "C-c ") 'windmove-up) +(define-key org-mode-map (kbd "C-c ") 'windmove-down) + ;; Sentence and word navigation and marking (setq sentence-end-double-space nil) ;; Otherwise, M-e is broken in normal writing. @@ -402,7 +410,7 @@ (setq org-roam-v2-ack t) :custom (org-roam-directory (file-truename "~/.org/lore/")) - (org-dailies-directory (file-truename "~/.org/lore/refined/journal/")) + (org-roam-dailies-directory (file-truename "~/.org/lore/refined/journal/")) (org-roam-file-exclude-regexp "\\.git/.*\\|logseq/.*$") (org-roam-completion-everywhere) (org-roam-capture-templates @@ -410,10 +418,14 @@ "%?" :target (file+head "raw/${slug}.org" "#+title: ${title}\n") :unnarrowed t) + ("i" "Index" plain + "%?" + :target (file+head "raw/${slug}.org" "#+title: ${title} - Index\n#+filetags: :index:") + :unnarrowed t) ("r" "Refined") ("rm" "Mini-essay" plain "%?" - :target (file+head "refined/wiki/${slug}.org" "#+title: ${title}\n#+author: Jakub Nowak") + :target (file+head "refined/wiki/${slug}.org" "#+title: ${title}\n#+author: Jakub Nowak\n#+filetags: :mini-essay:") :unnarrowed t))) (org-roam-dailies-capture-templates '(("d" "default" entry @@ -456,19 +468,39 @@ (kill-line) (kill-line)))) +(use-package logseq-org-roam + :straight (:host github + :repo "sbougerel/logseq-org-roam" + :files ("*.el"))) + (transient-define-prefix org-roam-menu () "Transient menu for task management shortcuts." ["Node" ("c" "Capture" org-roam-node-find) ("i" "Insert" org-roam-node-insert) ("r" "Refile" org-roam-create-node-from-headline) - ("v" "Visit" org-roam-node-visit) ] + ("f" "Find" org-roam-node-find) ] ["Dailies" ("t" "Today" org-roam-dailies-capture-today) ("y" "Yesterday" org-roam-dailies-capture-yesterday) ("n" "Tomorrow" org-roam-dailies-capture-tomorrow)] - ["Logseq" ("R" "Fix links" logseq-org-roam)]) + ["Logseq" ("R" "Fix links" logseq-org-roam)] + ["Org Roam UI" ("U" "Enable org-roam-ui-mode" org-roam-ui-mode)]) (define-key global-map (kbd "C-c o n") #'org-roam-menu) +(use-package org-roam-ui + :straight + (:host github :repo "org-roam/org-roam-ui" :branch "main" :files ("*.el" "out")) + :after org-roam + ;; normally we'd recommend hooking orui after org-roam, but since org-roam does not have + ;; a hookable mode anymore, you're advised to pick something yourself + ;; if you don't care about startup time, use + ;; :hook (after-init . org-roam-ui-mode) + :config + (setq org-roam-ui-sync-theme t + org-roam-ui-follow t + org-roam-ui-update-on-save t + org-roam-ui-open-on-start t)) + ;; Bibliography stuff (setq bibtex-dialect 'biblatex) ;; Use biblatex instead of bibtex. @@ -496,4 +528,21 @@ (define-key bibtex-mode-map (kbd "C-c r") #'bibtex-transient-menu) +;;; Literate Programming +;; Racket +(use-package ob-racket + :after org + :config + (add-hook 'ob-racket-pre-runtime-library-load-hook + #'ob-racket-raco-make-runtime-library) + :straight (ob-racket + :type git :host github :repo "hasu/emacs-ob-racket" + :files ("*.el" "*.rkt"))) + +(org-babel-do-load-languages + 'org-babel-load-languages + '((emacs-lisp . t) + (racket . t) + )) + ;;; logos.el ends here