2024-02-25 09:50:19 +00:00
|
|
|
{ config, lib, pkgs, helpers, hmConfig, ... }:
|
2024-02-02 03:09:35 +00:00
|
|
|
|
|
|
|
{
|
|
|
|
# The main star of the show.
|
|
|
|
plugins.neorg.enable = true;
|
|
|
|
|
|
|
|
# Set it up, set it up, set it up.
|
|
|
|
plugins.neorg.extraOptions = {
|
|
|
|
lazy_loading = true;
|
|
|
|
|
2024-02-22 23:13:57 +00:00
|
|
|
load = lib.mkMerge [
|
|
|
|
{
|
|
|
|
# Pretty much required with tree-sitter integration and all.
|
|
|
|
"core.defaults" = helpers.emptyTable;
|
2024-02-02 03:09:35 +00:00
|
|
|
|
2024-02-22 23:13:57 +00:00
|
|
|
# Conceal your blade (which is the markup, in which it is pretty sharp to
|
|
|
|
# look at).
|
|
|
|
"core.concealer" = helpers.emptyTable;
|
2024-02-02 03:09:35 +00:00
|
|
|
|
2024-02-22 23:13:57 +00:00
|
|
|
# Dear diary...
|
|
|
|
"core.journal".config = {
|
|
|
|
strategy = "flat";
|
|
|
|
};
|
2024-02-02 03:09:35 +00:00
|
|
|
|
2024-02-22 23:13:57 +00:00
|
|
|
# Norg ripping a page from org-mode.
|
|
|
|
"core.ui.calendar" = helpers.emptyTable;
|
2024-02-02 03:09:35 +00:00
|
|
|
|
2024-02-22 23:13:57 +00:00
|
|
|
# Manage your note workspaces.
|
|
|
|
"core.dirman".config = {
|
|
|
|
workspaces = {
|
2024-02-25 09:50:19 +00:00
|
|
|
personal = "${hmConfig.home.homeDirectory}/library/notes";
|
|
|
|
work = "${hmConfig.xdg.userDirs.documents}/Notes";
|
|
|
|
wiki = "${hmConfig.xdg.userDirs.documents}/Wiki";
|
2024-02-22 23:13:57 +00:00
|
|
|
};
|
2024-02-02 03:09:35 +00:00
|
|
|
};
|
2024-02-22 23:13:57 +00:00
|
|
|
}
|
|
|
|
|
2024-03-07 10:45:17 +00:00
|
|
|
(lib.mkIf config.plugins.cmp.enable {
|
2024-02-22 23:13:57 +00:00
|
|
|
"core.completion".config.engine = "nvim-cmp";
|
|
|
|
})
|
|
|
|
];
|
2024-02-02 03:09:35 +00:00
|
|
|
};
|
|
|
|
|
2024-02-12 09:44:42 +00:00
|
|
|
# Install the common text markup tree-sitter grammars.
|
2024-02-14 13:15:52 +00:00
|
|
|
plugins.treesitter.grammarPackages = with config.plugins.treesitter.package.builtGrammars; [
|
|
|
|
bibtex
|
|
|
|
cooklang
|
|
|
|
latex
|
|
|
|
ledger
|
|
|
|
markdown
|
|
|
|
markdown_inline
|
|
|
|
org
|
|
|
|
po
|
|
|
|
pod
|
|
|
|
rst
|
|
|
|
tsx
|
2024-02-12 09:44:42 +00:00
|
|
|
]
|
2024-02-02 03:09:35 +00:00
|
|
|
# Install the tree-sitter parsers required for the core.defaults Neorg
|
|
|
|
# module.
|
2024-02-12 09:44:42 +00:00
|
|
|
++ lib.optionals (config.plugins.neorg.extraOptions ? load."core.defaults")
|
|
|
|
(with pkgs.tree-sitter-grammars; [
|
|
|
|
tree-sitter-norg
|
|
|
|
tree-sitter-norg-meta
|
|
|
|
]);
|
2024-02-02 03:09:35 +00:00
|
|
|
}
|