summaryrefslogtreecommitdiff
path: root/dot_config/nvim.new/lua/ibrahim/plugins/obsidian.lua
diff options
context:
space:
mode:
authorIbrahim Muftee <ibrahim@muftee.net>2025-06-23 20:44:28 -0500
committerIbrahim Muftee <ibrahim@muftee.net>2026-07-01 00:23:31 -0400
commit85e2428a021c541638d2c44364987f51b5c908aa (patch)
treeaf95fade0f15bac30b8333c6606f5ff7c7681544 /dot_config/nvim.new/lua/ibrahim/plugins/obsidian.lua
parentcd96aedafa3be65084efb276f05aa089261fbb64 (diff)
feat(nvim) begin new config
Diffstat (limited to 'dot_config/nvim.new/lua/ibrahim/plugins/obsidian.lua')
-rw-r--r--dot_config/nvim.new/lua/ibrahim/plugins/obsidian.lua76
1 files changed, 76 insertions, 0 deletions
diff --git a/dot_config/nvim.new/lua/ibrahim/plugins/obsidian.lua b/dot_config/nvim.new/lua/ibrahim/plugins/obsidian.lua
new file mode 100644
index 0000000..661a859
--- /dev/null
+++ b/dot_config/nvim.new/lua/ibrahim/plugins/obsidian.lua
@@ -0,0 +1,76 @@
+-- vim:ft=lua
+
+return {
+ "epwalsh/obsidian.nvim",
+ version = "*", -- recommended, use latest release instead of latest commit
+ lazy = true,
+ ft = "markdown",
+ -- Replace the above line with this if you only want to load obsidian.nvim for markdown files in your vault:
+ -- event = {
+ -- -- If you want to use the home shortcut '~' here you need to call 'vim.fn.expand'.
+ -- -- E.g. "BufReadPre " .. vim.fn.expand "~" .. "/my-vault/**.md"
+ -- "BufReadPre path/to/my-vault/**.md",
+ -- "BufNewFile path/to/my-vault/**.md",
+ -- },
+ keys = {
+ { "<leader>ob", vim.cmd.ObsidianBacklinks, desc = "Open Obsidian backlinks" },
+ { "<leader>o/", vim.cmd.ObsidianSearch, desc = "Open Obsidian search" },
+ { "<leader>op", vim.cmd.ObsidianQuickSwitch, desc = "Open Obsidian find files" },
+ { "<leader>on", vim.cmd.ObsidianNew, desc = "Create new Obsidian note" },
+ { "<leader>ot", vim.cmd.ObsidianToday, desc = "Open today's Obsidian daily note" },
+ { "<leader>oy", vim.cmd.ObsidianYesterday, desc = "Open yesterday's Obsidian daily note" },
+ { "<leader>ow", vim.cmd.ObsidianTomorrow, desc = "Open tomorrow's Obsidian daily note" },
+ { "<leader>od", vim.cmd.ObsidianDailyNote, desc = "Open daily Obsidian note" },
+ },
+ dependencies = {
+ -- Required.
+ "nvim-lua/plenary.nvim",
+
+ -- Optional
+ "hrsh7th/nvim-cmp",
+ "nvim-telescope/telescope.nvim",
+ "nvim-treesitter/nvim-treesitter",
+ },
+ opts = {
+ workspaces = {
+ {
+ name = "personal",
+ path = "~/Documents/Vaults/Personal",
+ },
+
+ },
+
+ ---@param title string
+ ---@return string
+ note_id_func = function(title)
+ local id = title:gsub(" ", "%-"):lower()
+ return id
+ end,
+
+ templates = {
+ folder = "templates",
+ date_format = "%Y-%m-%d-%a",
+ substitutions = {
+ friendly_date_format = function()
+ return os.date("%A %B %d, %Y")
+ end
+ },
+ },
+
+ daily_notes = {
+ folder = "dailies",
+ date_format = "%Y-%m-%d-%a",
+ alias_format = "%Y-%m-%d-%a",
+ template = "daily.md",
+ },
+
+ callbacks = {
+ enter_note = function()
+ -- The folds are too much for these notes
+ vim.opt_local.foldlevel = 99
+ vim.opt_local.foldlevelstart = 99
+ end,
+ },
+
+ },
+}