diff options
Diffstat (limited to 'modules/by-name/nv')
-rw-r--r-- | modules/by-name/nv/nvim/plgs/neorg/default.nix | 94 | ||||
-rw-r--r-- | modules/by-name/nv/nvim/plgs/neorg/key_mappings.lua | 30 |
2 files changed, 76 insertions, 48 deletions
diff --git a/modules/by-name/nv/nvim/plgs/neorg/default.nix b/modules/by-name/nv/nvim/plgs/neorg/default.nix index 995f9601..67c18cc6 100644 --- a/modules/by-name/nv/nvim/plgs/neorg/default.nix +++ b/modules/by-name/nv/nvim/plgs/neorg/default.nix @@ -5,60 +5,58 @@ }: let cfg = config.soispha.programs.nvim; in { - home-manager.users.soispha.programs.nixvim.plugins = lib.mkIf cfg.enable { - cmp.settings.sources = [ - {name = "neorg";} - ]; + home-manager.users.soispha.programs.nixvim = lib.mkIf cfg.enable { + extraFiles = { + "ftplugin/neorg.lua".text = '' + ${lib.strings.fileContents ./key_mappings.lua} + ''; + }; - neorg = { - enable = true; - lazyLoading = true; + plugins = { + cmp.settings.sources = [ + {name = "neorg";} + ]; - modules = { - "core.defaults" = { - __empty = null; - }; - "core.esupports.metagen".config = { - type = "auto"; - }; - "core.journal".config = { - workspace = "journal"; - }; - "core.keybinds".config = { - hook = { - __raw = '' - function(keybinds) - -- remap the looking glas to the same key, femaco is also mapped to. - keybinds.remap_event("norg", "n", "<space>cc", "core.looking-glass.magnify-code-block") + neorg = { + enable = true; + lazyLoading = true; - keybinds.remap_event("norg", "n", "<C-s>", "core.integrations.telescope.find_linkable") - keybinds.remap_event("norg", "i", "<C-i>", "core.integrations.telescope.insert_link") - end, - ''; + modules = { + "core.defaults" = { + __empty = null; }; - }; - "core.completion".config = { - engine = "nvim-cmp"; - }; - "core.concealer".config = { - __empty = null; - }; - "core.dirman".config = { - workspaces = { - general = "~/repos/notes/general"; - journal = "~/repos/notes/journal"; - projects = "~/repos/notes/projects"; + "core.esupports.metagen".config = { + type = "auto"; + }; + "core.journal".config = { + workspace = "journal"; + }; + "core.keybinds".config = { + __empty = null; + }; + "core.completion".config = { + engine = "nvim-cmp"; + }; + "core.concealer".config = { + __empty = null; + }; + "core.dirman".config = { + workspaces = { + general = "~/repos/notes/general"; + journal = "~/repos/notes/journal"; + projects = "~/repos/notes/projects"; + }; + }; + "core.export".config = { + __empty = null; + }; + "core.integrations.telescope".config = { + __empty = null; }; - }; - "core.export".config = { - __empty = null; - }; - "core.integrations.telescope".config = { - __empty = null; - }; - "core.ui.calendar".config = { - __empty = null; + "core.ui.calendar".config = { + __empty = null; + }; }; }; }; diff --git a/modules/by-name/nv/nvim/plgs/neorg/key_mappings.lua b/modules/by-name/nv/nvim/plgs/neorg/key_mappings.lua new file mode 100644 index 00000000..e2ebb653 --- /dev/null +++ b/modules/by-name/nv/nvim/plgs/neorg/key_mappings.lua @@ -0,0 +1,30 @@ +-- Override some of my default key mappings to better integrate into neorg. +-- They still to the same conceptual thing. + +-- Femaco does the same outside of neorg, so map looking-glass the same key. +vim.keymap.set( + "n", + "<Leader>cc", + "<Plug>(neorg.looking-glass.magnify-code-block)", + { noremap = true, silent = true, desc = "Edit code block" } +) +vim.keymap.set( + "n", + "<Enter>", + "<Plug>(neorg.esupports.hop.hop-link)", + { noremap = true, silent = true, desc = "Follow link" } +) +vim.keymap.set( + "n", + "<C-s>", + "<Plug>(core.integrations.telescope.find_linkable)", + { noremap = true, silent = true, desc = "Find possible links" } +) +vim.keymap.set( + "i", + "<C-i>", + "<Plug>(core.integrations.telescope.insert_link)", + { noremap = true, silent = true, desc = "Insert a link" } +) + +-- action = "gf", key = "<Enter>", mode = { "n" }, options = { desc = "open file/url under cursor" } }, |