Files
nvim/lua/plugins/obsidian.lua
2026-01-27 09:03:00 +01:00

66 lines
1.8 KiB
Lua

return {
{
"epwalsh/obsidian.nvim",
version = "*",
lazy = true,
ft = "markdown",
dependencies = {
"nvim-lua/plenary.nvim",
},
opts = {
workspaces = {
{
name = "second-brain",
path = "~/Projects/private/second-brain",
},
},
notes_subdir = "00 Inbox",
new_notes_location = "notes_subdir",
daily_notes = {
folder = "90 Daily",
date_format = "%Y/%m/%Y-%m-%d",
template = nil,
},
templates = {
subdir = "99 Templates",
date_format = "%Y-%m-%d",
time_format = "%H:%M",
},
completion = {
nvim_cmp = true,
min_chars = 2,
},
mappings = {
["gf"] = {
action = function()
return require("obsidian").util.gf_passthrough()
end,
opts = { noremap = false, expr = true, buffer = true },
},
["<cr>"] = {
action = function()
return require("obsidian").util.smart_action()
end,
opts = { buffer = true, expr = true },
},
},
},
keys = {
{ "<leader>On", "<cmd>ObsidianNew<cr>", desc = "New Note" },
{ "<leader>Oo", "<cmd>ObsidianSearch<cr>", desc = "Search Notes" },
{ "<leader>Os", "<cmd>ObsidianQuickSwitch<cr>", desc = "Quick Switch" },
{ "<leader>Ob", "<cmd>ObsidianBacklinks<cr>", desc = "Backlinks" },
{ "<leader>Ot", "<cmd>ObsidianToday<cr>", desc = "Today's Note" },
{ "<leader>Oy", "<cmd>ObsidianYesterday<cr>", desc = "Yesterday's Note" },
{ "<leader>Ol", "<cmd>ObsidianLinks<cr>", desc = "Links" },
{ "<leader>Of", "<cmd>ObsidianFollowLink<cr>", desc = "Follow Link" },
{ "<leader>Op", "<cmd>ObsidianTemplate<cr>", desc = "Insert Template" },
},
},
}