Add obsidian hotkeys
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
@@ -144,6 +144,24 @@ in
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
hotkeysOptions =
|
||||
{ config, ... }:
|
||||
{
|
||||
options = {
|
||||
modifiers = mkOption {
|
||||
type = listOf str;
|
||||
description = "The hotkey modifiers.";
|
||||
default = [ ];
|
||||
};
|
||||
|
||||
key = mkOption {
|
||||
type = str;
|
||||
description = "The hotkey.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
in
|
||||
{
|
||||
enable = mkEnableOption "obsidian";
|
||||
@@ -204,6 +222,12 @@ in
|
||||
type = raw;
|
||||
default = [ ];
|
||||
};
|
||||
|
||||
hotkeys = mkOption {
|
||||
description = "Hotkeys to configure.";
|
||||
type = raw;
|
||||
default = { };
|
||||
};
|
||||
};
|
||||
|
||||
vaults = mkOption {
|
||||
@@ -261,6 +285,12 @@ in
|
||||
type = listOf (either package (submodule themesOptions));
|
||||
default = cfg.sharedSettings.themes;
|
||||
};
|
||||
|
||||
hotkeys = mkOption {
|
||||
description = "Hotkeys to configure.";
|
||||
type = attrsOf (listOf (submodule hotkeysOptions));
|
||||
default = cfg.sharedSettings.hotkeys;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -406,6 +436,13 @@ in
|
||||
source = toPkg theme;
|
||||
};
|
||||
}) vault.settings.themes;
|
||||
|
||||
mkHotkeys = vault: {
|
||||
name = "${vault.target}/.obsidian/hotkeys.json";
|
||||
value = {
|
||||
source = (pkgs.formats.json { }).generate "hotkeys.json" vault.settings.hotkeys;
|
||||
};
|
||||
};
|
||||
in
|
||||
builtins.listToAttrs (
|
||||
lib.lists.flatten (
|
||||
@@ -416,6 +453,7 @@ in
|
||||
(mkCommunityPlugins vault)
|
||||
(mkCssSnippets vault)
|
||||
(mkThemes vault)
|
||||
(mkHotkeys vault)
|
||||
]) vaults
|
||||
)
|
||||
);
|
||||
|
Reference in New Issue
Block a user