mirror of
https://github.com/NotAShelf/nvf.git
synced 2026-01-03 01:25:57 +00:00
modules: start breaking down core modules; simplify tree structure
This commit is contained in:
parent
4703ed7731
commit
370913e827
242 changed files with 178 additions and 124 deletions
43
modules/plugins/notes/obsidian/config.nix
Normal file
43
modules/plugins/notes/obsidian/config.nix
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkIf nvim;
|
||||
|
||||
cfg = config.vim.notes.obsidian;
|
||||
auto = config.vim.autocomplete;
|
||||
in {
|
||||
config = mkIf (cfg.enable) {
|
||||
vim.startPlugins = [
|
||||
"obsidian-nvim"
|
||||
"vim-markdown"
|
||||
"tabular"
|
||||
];
|
||||
|
||||
vim.luaConfigRC.obsidian = nvim.dag.entryAnywhere ''
|
||||
require("obsidian").setup({
|
||||
dir = "${cfg.dir}",
|
||||
completion = {
|
||||
nvim_cmp = ${
|
||||
if (auto.type == "nvim-cmp")
|
||||
then "true"
|
||||
else "false"
|
||||
}
|
||||
},
|
||||
daily_notes = {
|
||||
folder = ${
|
||||
if (cfg.daily-notes.folder == "")
|
||||
then "nil,"
|
||||
else "'${cfg.daily-notes.folder}',"
|
||||
}
|
||||
date_format = ${
|
||||
if (cfg.daily-notes.date-format == "")
|
||||
then "nil,"
|
||||
else "'${cfg.daily-notes.date-format}',"
|
||||
}
|
||||
}
|
||||
})
|
||||
'';
|
||||
};
|
||||
}
|
||||
6
modules/plugins/notes/obsidian/default.nix
Normal file
6
modules/plugins/notes/obsidian/default.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
_: {
|
||||
imports = [
|
||||
./obsidian.nix
|
||||
./config.nix
|
||||
];
|
||||
}
|
||||
39
modules/plugins/notes/obsidian/obsidian.nix
Normal file
39
modules/plugins/notes/obsidian/obsidian.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkEnableOption mkOption types;
|
||||
in {
|
||||
options.vim.notes = {
|
||||
obsidian = {
|
||||
enable = mkEnableOption "complementary neovim plugins for Obsidian editor";
|
||||
dir = mkOption {
|
||||
type = types.str;
|
||||
default = "~/my-vault";
|
||||
description = "Obsidian vault directory";
|
||||
};
|
||||
|
||||
daily-notes = {
|
||||
folder = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = "Directory in which daily notes should be created";
|
||||
};
|
||||
date-format = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = "Date format used for creating daily notes";
|
||||
};
|
||||
};
|
||||
|
||||
completion = {
|
||||
nvim_cmp = mkOption {
|
||||
# if using nvim-cmp, otherwise set to false
|
||||
type = types.bool;
|
||||
description = "If using nvim-cmp, otherwise set to false";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue