{ config, lib, ... }: with lib; with builtins; let cfg = config.vim.notes.orgmode; in { config = mkIf (cfg.enable) { vim.startPlugins = [ "orgmode-nvim" ]; vim.luaConfigRC.orgmode = nvim.dag.entryAnywhere '' -- Load custom treesitter grammar for org filetype require('orgmode').setup_ts_grammar() -- Treesitter configuration require('nvim-treesitter.configs').setup { -- If TS highlights are not enabled at all, or disabled via `disable` prop, -- highlighting will fallback to default Vim syntax highlighting highlight = { enable = true, -- Required for spellcheck, some LaTex highlights and -- code block highlights that do not have ts grammar additional_vim_regex_highlighting = {'org'}, }, ensure_installed = {'org'}, -- Or run :TSUpdate org } require('orgmode').setup({ org_agenda_files = ${cfg.orgAgendaFiles}, org_default_notes_file = '${cfg.orgDefaultNotesFile}', }) ''; }; }