return { 'epwalsh/obsidian.nvim', version = '*', -- recommended, use latest release instead of latest commit lazy = false, 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", -- }, dependencies = { -- Required. 'nvim-lua/plenary.nvim', -- see below for full list of optional dependencies 👇 }, opts = { workspaces = { { name = 'Artemis', path = '~/Documents/Obsidian/Artemis/', }, }, completion = { nvim_cmp = true, min_chars = 2, }, mappings = { -- Overrides the 'gf' mapping to work on markdown/wiki links within your vault. ['gf'] = { action = function() return require('obsidian').util.gf_passthrough() end, opts = { noremap = false, expr = true, buffer = true }, }, -- Toggle check-boxes. ['ch'] = { action = function() return require('obsidian').util.toggle_checkbox() end, opts = { buffer = true }, }, -- Smart action depending on context, either follow link or toggle checkbox. [''] = { action = function() return require('obsidian').util.smart_action() end, opts = { buffer = true, expr = true }, }, }, notes_subdir = 'Inbox', new_notes_location = 'notes_subdir', preffered_link_style = 'wiki', note_id_func = function(title) return title end, templates = { folder = 'Templates', date_format = '%Y-%m-%d-%a', time_format = '%H:%M', }, daily_notes = { folder = 'Daily Notes', date_format = '%Y-%m-%d', default_tags = { 'dailynote' }, }, ui = { enable = false, -- set to false to disable all additional syntax features update_debounce = 200, -- update delay after a text change (in milliseconds) max_file_length = 5000, -- disable UI features for files with more than this many lines -- Define how various check-boxes are displayed checkboxes = { -- NOTE: the 'char' value has to be a single character, and the highlight groups are defined below. [' '] = { char = '󰄱', hl_group = 'ObsidianTodo' }, ['x'] = { char = '', hl_group = 'ObsidianDone' }, ['>'] = { char = '', hl_group = 'ObsidianRightArrow' }, ['~'] = { char = '󰰱', hl_group = 'ObsidianTilde' }, ['!'] = { char = '', hl_group = 'ObsidianImportant' }, -- Replace the above with this if you don't have a patched font: -- [" "] = { char = "☐", hl_group = "ObsidianTodo" }, -- ["x"] = { char = "✔", hl_group = "ObsidianDone" }, -- You can also add more custom ones... }, -- Use bullet marks for non-checkbox lists. bullets = { char = '•', hl_group = 'ObsidianBullet' }, external_link_icon = { char = '', hl_group = 'ObsidianExtLinkIcon' }, -- Replace the above with this if you don't have a patched font: -- external_link_icon = { char = "", hl_group = "ObsidianExtLinkIcon" }, reference_text = { hl_group = 'ObsidianRefText' }, highlight_text = { hl_group = 'ObsidianHighlightText' }, tags = { hl_group = 'ObsidianTag' }, block_ids = { hl_group = 'ObsidianBlockID' }, hl_groups = { -- The options are passed directly to `vim.api.nvim_set_hl()`. See `:help nvim_set_hl`. ObsidianTodo = { bold = true, fg = '#f78c6c' }, ObsidianDone = { bold = true, fg = '#89ddff' }, ObsidianRightArrow = { bold = true, fg = '#f78c6c' }, ObsidianTilde = { bold = true, fg = '#ff5370' }, ObsidianImportant = { bold = true, fg = '#d73128' }, ObsidianBullet = { bold = true, fg = '#89ddff' }, ObsidianRefText = { underline = true, fg = '#c792ea' }, ObsidianExtLinkIcon = { fg = '#c792ea' }, ObsidianTag = { italic = true, fg = '#89ddff' }, ObsidianBlockID = { italic = true, fg = '#89ddff' }, ObsidianHighlightText = { bg = '#75662e' }, }, }, }, }