summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fnl/plugins/orgmode.fnl48
1 files changed, 21 insertions, 27 deletions
diff --git a/fnl/plugins/orgmode.fnl b/fnl/plugins/orgmode.fnl
index e89039b..835becf 100644
--- a/fnl/plugins/orgmode.fnl
+++ b/fnl/plugins/orgmode.fnl
@@ -2,12 +2,16 @@
(local icons (require :settings.icons))
-(local keys [{1 :ga 2 :<cmd>OrgAgendaPrompt<cr> :desc "Open agenda prompt"}
- {1 :gc 2 :<cmd>OrgCapturePrompt<cr> :desc "Open capture prompt"}
- {1 :go
+(local keys [{1 :<leader>oa
+ 2 :<cmd>OrgAgendaPrompt<cr>
+ :desc "Open agenda prompt"}
+ {1 :<leader>oc
+ 2 :<cmd>OrgCapturePrompt<cr>
+ :desc "Open capture prompt"}
+ {1 :<leader>of
2 ":Telescope find_files theme=dropdown cwd=~/.local/share/org<CR>"
:desc "Find org file"}
- {1 :gm
+ {1 :<leader>oh
2 "<cmd>Telescope orgmode search_headings theme=dropdown<cr>"
:desc "Search headings"}])
@@ -29,8 +33,8 @@
(tset vim.opt_local :foldenable false)
(tset vim.opt_local :foldlevelstart 0)
(tset vim.opt_local :foldlevel 0)
- (tset vim.opt_local :conceallevel 2)
- (tset vim.opt.local :concealcursor :nc))}]])
+ (tset vim.opt_local :concealcursor :nc)
+ (tset vim.opt_local :conceallevel 2))}]])
(fn init []
(let [cmds (require :util.cmds)]
@@ -38,34 +42,18 @@
(cmds.create-auto-cmds auto-cmds)))
(local templates
- {:t {:description :Task :template "* TODO %?\n %u\n DEADLINE: %T\n"}
+ {:t {:description :Todo :template "* TODO %?\n %u\n DEADLINE: %T\n"}
:m {:description :Meeting :template "* Meeting %?"}
:n {:description :Note :template "* NOTE %? :NOTE:\n %u\n"}})
-(lambda handler [data]
- (let [options {}
- options-by-label {}]
- (each [_ item (ipairs data.items)]
- (when (and item.key (not= (item.label:lower) :quit))
- (table.insert options item.label)
- (tset options-by-label item.label item)))
- (vim.ui.select options {:prompt data.prompt}
- (fn [choice]
- (if choice
- (do
- (local option (. options-by-label choice))
- (when option.action
- (option.action))))))))
-
(local org-opts
- {:org_agenda_files ["~/.local/share/org/**/*"]
+ {:org_agenda_files "~/.local/share/org/**/*"
+ :org_default_notes_file "~/.local/share/org/refile.org"
:org_hide_emphasis_markers true
:org_agenda_start_on_weekday false
:org_startup_indented true
:org_log_into_drawer :LOGBOOK
- :org_default_notes_file "~/.local/share/org/refile.org"
- :org_agenda_templates templates
- :ui {:menu {: handler}}
+ :org_capture_templates templates
:mappings {:org {:org_cycle :<c-e> :org_global_cycle :<s-e>}}})
(local bullets-opts
@@ -81,7 +69,12 @@
"@org.checkbox.checked"]
:todo [" " "@org.checkbox.checked"]}}})
-(local roam-opts {:directory "~/.local/share/org"})
+(local roam-templates
+ {:n {:description :node
+ :template "#+category: %^{type}\n#+filetags: %^{tags}\n#+date: %u\n\n* %?"
+ :target "%<%Y%m%d%H%M%S>-%[slug].org"}})
+
+(local roam-opts {:directory "~/.local/share/org" :templates roam-templates})
(fn config []
(let [orgmode (require :orgmode)
@@ -92,6 +85,7 @@
(bullets.setup bullets-opts)))
{1 :nvim-orgmode/orgmode
+ :event :VeryLazy
:dependencies [:akinsho/org-bullets.nvim :chipsenkbeil/org-roam.nvim]
:ft [:org :orgagenda]
: config