aboutsummaryrefslogtreecommitdiff
path: root/nvim/lua/plugins/neorg.lua
blob: 77bb71fcb31c7905e1ad5e8df445ec8cfc5ff63f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
local config = function()
	vim.api.nvim_create_autocmd("Filetype", {
		pattern = "norg",
		callback = function()
			-- remap keybinds
			vim.keymap.set("n", "<Space>nn", "<Plug>(neorg.dirman.new-note)", { buffer = true })
			vim.keymap.set("n", "<Space>tc", "<cmd>Neorg toc<CR>", { buffer = true })

			vim.keymap.set("i", "<C-d>", "<Plug>(neorg.promo.demote)", { buffer = true })
			vim.keymap.set("i", "<C-t>", "<Plug>(neorg.promo.promote)", { buffer = true })
			vim.keymap.set("i", "<M-CR>", "<Plug>(neorg.itero.next-iteration)", { buffer = true })
			vim.keymap.set("i", "<M-d>", "<Plug>(neorg.tempus.insert-date.insert-mode)", { buffer = true })

			vim.keymap.set("n", "<.", "<Plug>(neorg.promo.demote)", { buffer = true })
			vim.keymap.set("n", "<<", "<Plug>(neorg.promo.demote.nested)", { buffer = true })
			vim.keymap.set("n", "<C-Space>", "<Plug>(neorg.qol.todo-items.todo.task-cycle)", { buffer = true })
			vim.keymap.set("n", "<CR>", "<Plug>(neorg.esupports.hop.hop-link)", { buffer = true })
			vim.keymap.set("n", "<Space>cm", "<Plug>(neorg.looking-glass.magnify-code-block)", { buffer = true })
			vim.keymap.set("n", "<Space>id", "<Plug>(neorg.tempus.insert-date)", { buffer = true })
			vim.keymap.set("n", "<Space>li", "<Plug>(neorg.pivot.list.invert)", { buffer = true })
			vim.keymap.set("n", "<Space>lt", "<Plug>(neorg.pivot.list.toggle)", { buffer = true })
			vim.keymap.set("n", "<Space>ma", "<Plug>(neorg.qol.todo-items.todo.task-ambiguous)", { buffer = true })
			vim.keymap.set("n", "<Space>mc", "<Plug>(neorg.qol.todo-items.todo.task-cancelled)", { buffer = true })
			vim.keymap.set("n", "<Space>md", "<Plug>(neorg.qol.todo-items.todo.task-done)", { buffer = true })
			vim.keymap.set("n", "<Space>mh", "<Plug>(neorg.qol.todo-items.todo.task-on-hold)", { buffer = true })
			vim.keymap.set("n", "<Space>mi", "<Plug>(neorg.qol.todo-items.todo.task-important)", { buffer = true })
			vim.keymap.set("n", "<Space>mp", "<Plug>(neorg.qol.todo-items.todo.task-pending)", { buffer = true })
			vim.keymap.set("n", "<Space>mr", "<Plug>(neorg.qol.todo-items.todo.task-recurring)", { buffer = true })
			vim.keymap.set("n", "<Space>mu", "<Plug>(neorg.qol.todo-items.todo.task-undone)", { buffer = true })
			vim.keymap.set("n", "<M-CR>", "<Plug>(neorg.esupports.hop.hop-link.vsplit)", { buffer = true })
			vim.keymap.set("n", "<M-t>", "<Plug>(neorg.esupports.hop.hop-link.tab-drop)", { buffer = true })
			vim.keymap.set("n", ">.", "Plug>(neorg.promo.promote)", { buffer = true })
			vim.keymap.set("n", ">>", "Plug>(neorg.promo.promote.nested)", { buffer = true })

			vim.keymap.set("v", "<", "<Plug>(neorg.promo.demote.range)", { buffer = true })
			vim.keymap.set("v", ">", "<Plug>(neorg.promo.promote.range)", { buffer = true })
		end,
	})

	require("neorg").setup({
		load = {
			["core.defaults"] = {
				config = {
					disable = {
						"core.esupports.metagen",
						"core.journal",
					}
				}
			},
			["core.keybinds"] = {
				config = {
					default_keybinds = false
				}
			},
			["core.summary"] = {},
			-- ["core.latex.renderer"] = {},
			["core.export"] = {},
			["core.dirman"] = {
				config = {
					default_workspace = "documents",
					workspaces = {
						documents = "~/Documents/neorg",
						physics = "~/Documents/neorg/uni/fisica",
						asd = "~/Documents/neorg/uni/algoritmi-strutture-dati",
					},
					index = "index.norg"
				}
			},
			["core.completion"] = {
				config = {
					engine = "nvim-cmp"
				}
			},
			["core.journal"] = {
				config = {
					journal_folder = "journal",
					workspace = "documents"
				}
			},
			["core.esupports.metagen"] = {
				config = {
					timezone = "implicit-local",
					type = "auto"
				}
			},
			["core.concealer"] = {
				config = {
					folds = false,
					icons = {
						heading = {
							icons = { "󰲠", "󰲢", "󰲤", "󰲦", "󰲨", "󰲪" },
						},
						todo = {
							cancelled = { icon = "" },
							pending = { icon = "󰔛" },
							uncertain = { icon = "" },
							urgent = { icon = "" },
						},
						code_block = {
							conceal = true,
						}
					}
				}
			}
		}
	})
end

return {
	"nvim-neorg/neorg",
	lazy = true,
	ft = "norg",
	cmd = "Neorg",
	version = "*", -- Pin Neorg to the latest stable release
	config = config,
	-- dependencies = { "3rd/image.nvim" }
}