Formed during work on projects, I need to:
- run docker-compose up
- access the database shell of the db service in docker-compose
- run mitmproxy
- run a new shell
Using org-babel of org-mode is a great solution (Literate Devops with Org-Mode
).
Therefore, this package provides a convenient interface for accessing those tasks instead of accessing org-mode files and executing org-babel code blocks.
- M-x
project-tasks
Find-file `project-tasks-file` org file
-> get all src-blocks by `(org-babel-src-block-names)`
-> display src-blocks to user
-> user select and run `(org-babel-execute-src-block)`
- M-x
project-tasks-capture
Let `org-default-notes-file` to `current_project/project-tasks-file`
-> `(org-capture)`
- M-x
project-tasks-jump
Find-file `current_project/project-tasks-file`
(use-package project-tasks
:ensure t :defer t
:straight
( :host github
:repo "TxGVNN/project-tasks"
:files ("*.el"))
:after (project)
:commands (project-tasks)
:init
;; Show project-tasks when switching projects
(add-to-list 'project-switch-commands '(project-tasks "tasks") t)
;; Add action to embark-file map
(with-eval-after-load 'embark
(define-key embark-file-map (kbd "P") #'project-tasks-in-dir))
:custom
;; Set the default filename in project
(project-tasks-file "tasks.org")
;; Set the function to get current project dir
(project-tasks-root-func #'project-tasks-project-root)
;; Bind project-tasks to project keymap
:bind
(:map project-prefix-map
("P" . project-tasks)
("o" . project-tasks-capture)
("O" . project-tasks-jump))
)
You need to ensure that your code blocks work as intended. This package serves as an interface for interacting with Org files but does not affect your Org configuration.