added debug capability to Doom Emacs and python debug config
This commit is contained in:
@@ -28,11 +28,13 @@
|
||||
- [[#org-mode][Org Mode]]
|
||||
- [[#default-location][Default Location]]
|
||||
- [[#visual][Visual]]
|
||||
- [[#org-agenda-setup][Org Agenda Setup]]
|
||||
- [[#caldav-sync][CalDAV Sync]]
|
||||
- [[#org-agenda-setup][Org Agenda Setup]]
|
||||
- [[#org-roam][Org Roam]]
|
||||
- [[#org-transclusion][Org Transclusion]]
|
||||
- [[#bibliography][Bibliography]]
|
||||
- [[#python][Python]]
|
||||
- [[#set-debugger-to-debugpy][Set Debugger to debugpy]]
|
||||
|
||||
* 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.
|
||||
@@ -260,7 +262,7 @@ We start by simply defining the standard headers used by the three files. These
|
||||
;;ansible
|
||||
biblio ; Writes a PhD for you (citation needed)
|
||||
;;collab ; buffers with friends
|
||||
;;debugger ; FIXME stepping through code, to help you add bugs
|
||||
(debugger +lsp) ; FIXME stepping through code, to help you add bugs
|
||||
;;direnv
|
||||
;;docker
|
||||
;;editorconfig ; let someone else argue about tabs vs spaces
|
||||
@@ -278,7 +280,7 @@ We start by simply defining the standard headers used by the three files. These
|
||||
;;taskrunner ; taskrunner for all your projects
|
||||
;;terraform ; infrastructure as code
|
||||
;;tmux ; an API for interacting with tmux
|
||||
;;tree-sitter ; syntax and parsing, sitting in a tree...
|
||||
tree-sitter ; syntax and parsing, sitting in a tree...
|
||||
;;upload ; map local to remote projects via ssh/ftp
|
||||
|
||||
:os
|
||||
@@ -330,7 +332,7 @@ We start by simply defining the standard headers used by the three files. These
|
||||
;;php ; perl's insecure younger brother
|
||||
;;plantuml ; diagrams for confusing people more
|
||||
;;purescript ; javascript, but functional
|
||||
python ; beautiful is better than ugly
|
||||
(python +conda +lsp +pyright +pyenv +tree-sitter) ; beautiful is better than ugly
|
||||
;;qt ; the 'cutest' gui framework ever
|
||||
;;racket ; a DSL for DSLs
|
||||
;;raku ; the artist formerly known as perl6
|
||||
@@ -367,6 +369,8 @@ 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
|
||||
@@ -461,26 +465,6 @@ This function could also become useful if we ever want to extend the compile com
|
||||
(setq org-startup-latex-with-latex-preview t))
|
||||
#+end_src
|
||||
|
||||
** Org Agenda 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
|
||||
(after! org
|
||||
(setq org-todo-keywords
|
||||
'((sequence "TODO(t!)" "IN_PROGRESS(i!)" "BLOCKED(b@)" "REVIEW(r@)" "TESTING(t@)" "|" "DONE(d!)" "DELEGATED(!)" "CANCELED(c@)"))))
|
||||
#+end_src
|
||||
*** Add "~/org" to Agenda
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! org
|
||||
(setq org-agenda-files (f-files "~/org"
|
||||
(lambda (f)
|
||||
(string= (f-ext f) "org"))
|
||||
'recursive)))
|
||||
#+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.
|
||||
@@ -492,10 +476,8 @@ A lot of the config is also taken from [[https://www.reddit.com/r/orgmode/commen
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! org-caldav
|
||||
(setq org-icalendar-include-todo 'all
|
||||
org-caldav-todo-percent-states '((0 "TODO") (1 "IN_PROGRESS") (2 "BLOCKED") (90 "REVIEW") (90 "TESTING") (100 "DONE") (100 "DELEGATED") (100 "CANCELED"))
|
||||
org-caldav-sync-todo t))
|
||||
#+end_src
|
||||
|
||||
*** Configure Sync
|
||||
add the calendars to the org-caldav config
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
@@ -505,6 +487,31 @@ add the calendars to the org-caldav config
|
||||
(setq org-caldav-calendars
|
||||
'((:calendar-id "todo" :files ("~/org/todo.org")))))
|
||||
#+end_src
|
||||
** Org Agenda 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
|
||||
(after! org
|
||||
(setq org-todo-keywords
|
||||
'((sequence "INACTIVE(i!)" "TODO(t!)" "IN_PROGRESS(p!)" "BLOCKED(b@)" "REVIEW(r@)" "TESTING(e@)" "|" "DONE(d!)" "DELEGATED(x@)" "CANCELED(c@)"))))
|
||||
#+end_src
|
||||
Also set the percent states for [[*CalDAV Sync][CalDAV Sync]]
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! org-caldav
|
||||
(setq org-caldav-todo-percent-states '((0 "INACTIVE") (1 "TODO") (2 "IN_PROGRESS") (3 "BLOCKED") (90 "REVIEW") (90 "TESTING") (100 "DONE") (100 "DELEGATED") (100 "CANCELED"))))
|
||||
#+end_src
|
||||
*** Add "~/org" to Agenda
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! org
|
||||
(setq org-agenda-files (f-files "~/org"
|
||||
(lambda (f)
|
||||
(string= (f-ext f) "org"))
|
||||
'recursive)))
|
||||
#+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
|
||||
@@ -585,3 +592,11 @@ In [[https://www.riccardopinosio.com/blog/posts/zotero_notes_article.html#citar]
|
||||
(after! citar
|
||||
(add-to-list 'citar-file-open-functions '("pdf" . citar-file-open-external)))
|
||||
#+end_src
|
||||
|
||||
* Python
|
||||
** Set Debugger to debugpy
|
||||
as per the [[https://github.com/doomemacs/doomemacs/tree/master/modules/tools/debugger#dap-python][Doom Emacs Documentation]] it is recommended to set the debugger used for python debugging to debugpy
|
||||
#+begin_src emacs-lisp :tangle config.el
|
||||
(after! dap-mode
|
||||
(setq dap-python-debugger 'debugpy))
|
||||
#+end_src
|
||||
|
||||
Reference in New Issue
Block a user