54 lines
1.3 KiB
Lua
54 lines
1.3 KiB
Lua
local function workspace(name)
|
|
return {
|
|
name = name,
|
|
path = ("%s/Obsidian/%s"):format(vim.env.HOME, name),
|
|
}
|
|
end
|
|
|
|
local function event(name)
|
|
return ("%s %s/Obsidian/**.md"):format(name, vim.env.HOME)
|
|
end
|
|
|
|
return {
|
|
"epwalsh/obsidian.nvim",
|
|
cmd = {
|
|
"ObsidianOpen",
|
|
"ObsidianNew",
|
|
"ObsidianToday",
|
|
"ObsidianYesterday",
|
|
"ObsidianWorkspace",
|
|
"ObsidianSearch",
|
|
"ObsidianQuickSwitch",
|
|
},
|
|
dependencies = {
|
|
-- Required.
|
|
"nvim-lua/plenary.nvim",
|
|
|
|
-- see below for full list of optional dependencies 👇
|
|
},
|
|
event = {
|
|
event "BufReadPre",
|
|
event "BufNewFile",
|
|
},
|
|
opts = {
|
|
workspaces = {
|
|
workspace "personal",
|
|
workspace "work",
|
|
workspace "stories",
|
|
workspace "tigor",
|
|
},
|
|
mappings = {},
|
|
},
|
|
config = function(_, opts)
|
|
require("obsidian").setup(opts)
|
|
|
|
vim.keymap.set("n", "gf", function()
|
|
if require("obsidian").util.cursor_on_markdown_link() then
|
|
return "<cmd>ObsidianFollowLink<CR>"
|
|
else
|
|
return "gf"
|
|
end
|
|
end, { noremap = false, expr = true, desc = "Obsidian Follow Link or Fallback" })
|
|
end,
|
|
}
|