basic org-roam and org-caldav implementation for testing
This commit is contained in:
@@ -0,0 +1 @@
|
||||
Œ
|
||||
@@ -12,10 +12,14 @@
|
||||
|
||||
* Table of Contents :toc:
|
||||
- [[#config-file-headers][Config File Headers]]
|
||||
- [[#initel][init.el]]
|
||||
- [[#packagesel][packages.el]]
|
||||
- [[#configel][config.el]]
|
||||
- [[#doom-modules][Doom Modules]]
|
||||
- [[#general-configuration][General Configuration]]
|
||||
- [[#user-information][User Information]]
|
||||
- [[#visual-settings][Visual Settings]]
|
||||
- [[#authentication][Authentication]]
|
||||
- [[#multilanguage-spellcheck][Multilanguage Spellcheck]]
|
||||
- [[#latex][LaTeX]]
|
||||
- [[#set-pdf-viewer][Set PDF Viewer]]
|
||||
@@ -23,10 +27,13 @@
|
||||
- [[#org-mode][Org Mode]]
|
||||
- [[#default-location][Default Location]]
|
||||
- [[#enable-header-numbering][Enable Header Numbering]]
|
||||
- [[#setup][Setup]]
|
||||
- [[#caldav-sync][CalDAV Sync]]
|
||||
- [[#org-roam][Org Roam]]
|
||||
|
||||
* Config File Headers
|
||||
We start by simply defining the standard headers used by the three files. These headers come from the initial files generated by =doom install=, and contain either some Emacs-LISP relevant indicators like =lexical-binding=, or instructions about the contents of the file.
|
||||
|
||||
** init.el
|
||||
#+html: <details><summary>init.el</summary>
|
||||
#+begin_src emacs-lisp :tangle init.el
|
||||
;;; init.el -*- lexical-binding: t; -*-
|
||||
@@ -52,6 +59,7 @@ We start by simply defining the standard headers used by the three files. These
|
||||
#+end_src
|
||||
#+html: </details>
|
||||
|
||||
** packages.el
|
||||
#+html: <details><summary>packages.el</summary>
|
||||
#+begin_src emacs-lisp :tangle packages.el
|
||||
;; -*- no-byte-compile: t; -*-
|
||||
@@ -110,6 +118,7 @@ We start by simply defining the standard headers used by the three files. These
|
||||
#+end_src
|
||||
#+html: </details>
|
||||
|
||||
** config.el
|
||||
#+html: <details><summary>config.el</summary>
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
|
||||
@@ -314,7 +323,7 @@ We start by simply defining the standard headers used by the three files. These
|
||||
;;nim ; python + lisp at the speed of c
|
||||
;;nix ; I hereby declare "nix geht mehr!"
|
||||
;;ocaml ; an objective camel
|
||||
org ; organize your plain life in plain text
|
||||
(org +roam2) ; organize your plain life in plain text
|
||||
;;php ; perl's insecure younger brother
|
||||
;;plantuml ; diagrams for confusing people more
|
||||
;;purescript ; javascript, but functional
|
||||
@@ -343,7 +352,7 @@ We start by simply defining the standard headers used by the three files. These
|
||||
;;(wanderlust +gmail)
|
||||
|
||||
:app
|
||||
;;calendar
|
||||
calendar
|
||||
;;emms
|
||||
;;everywhere ; *leave* Emacs!? You must be joking
|
||||
;;irc ; how neckbeards socialize
|
||||
@@ -355,8 +364,6 @@ We start by simply defining the standard headers used by the three files. These
|
||||
(default +bindings +smartparens))
|
||||
#+end_src
|
||||
|
||||
#+RESULTS:
|
||||
|
||||
* General Configuration
|
||||
** User Information
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
@@ -389,6 +396,12 @@ Until I get used to the [[https://github.com/Greduan/emacs-theme-gruvbox][evil-s
|
||||
(setq display-line-numbers-type 'relative)
|
||||
#+end_src
|
||||
|
||||
** Authentication
|
||||
Authentication information will be stored in a encrypted file that is part of my dotfiles
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(setq auth-sources
|
||||
'((:source "~/.config/doom/.authinfo.gpg")))
|
||||
#+end_src
|
||||
* Multilanguage Spellcheck
|
||||
Enables use of multiple dictionaries. In my case German and English
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
@@ -427,3 +440,52 @@ This function could also become useful if we ever want to extend the compile com
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(setq org-startup-numerated t)
|
||||
#+end_src
|
||||
|
||||
** ToDo Setup
|
||||
*** Progress States
|
||||
To get a more nuanced overview of my current TODOs I add more progress states.
|
||||
| | TODO | BLOCKED | IN_PROGRESS | REVIEW | TESTING | | DONE | DELEGATED | CANCELED |
|
||||
|------------+------+---------+-------------+--------+---------+---+------+-----------+----------|
|
||||
| Access Key | t | b | i | r | t | | d | | c |
|
||||
| Log Type | time | note | time | note | note | | time | note | note |
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(setq org-todo-keywords
|
||||
'((sequence "TODO(t!)" "IN_PROGRESS(i!)" "BLOCKED(b@)" "REVIEW(r@)" "TESTING(t@)" "|" "DONE(d!)" "DELEGATED(!)" "CANCELED(c@)")))
|
||||
#+end_src
|
||||
** CalDAV Sync
|
||||
[[https://github.com/dengste/org-caldav][org-caldav]] provides a tool for syncing with a CalDAV server (in my case Nextcloud).
|
||||
A lot of the config is also taken from [[https://www.reddit.com/r/orgmode/comments/8rl8ep/comment/e0sb5j0/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button][this]] reddit post.
|
||||
*** org-caldav installation
|
||||
#+begin_src emacs-lisp :tangle packages.el
|
||||
(package! org-caldav)
|
||||
#+end_src
|
||||
*** configure calendars
|
||||
add the calendars to the org-caldav config
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! org-caldav
|
||||
(setq org-caldav-url "https://cloud.ploedige.com/remote.php/dav/calendars/paul-loedige")
|
||||
(setq org-caldav-calendars
|
||||
'((:calendar-id "org-test" :files ("~/org/calendars/org_test.org")
|
||||
:inbox "~/org/calendars/org_test.org"))))
|
||||
#+end_src
|
||||
and add them to the org agenda as well
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! org
|
||||
(setq org-agenda-files '("~/org/calendars")))
|
||||
#+end_src
|
||||
*** enable TODOs
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! org-caldav
|
||||
(setq org-icalendar-include-todo 'all
|
||||
org-caldav-sync-todo t))
|
||||
#+end_src
|
||||
|
||||
** Org Roam
|
||||
*** set base directory
|
||||
Both the org files themselves and the database should be located in the same directory to enable syncing via Nextcloud
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! org
|
||||
(setq org-roam-directory (file-truename "~/org/org-roam"))
|
||||
(setq org-roam-db-location "~/org/org-roam/org-roam.db")
|
||||
(org-roam-db-autosync-mode))
|
||||
#+end_src
|
||||
|
||||
Reference in New Issue
Block a user