You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current minimal config for obsidian does not truly work for following links to other markdown files.
This is my configuration which works, modified from the default config in the obsidian.nvim repo.
return {
"epwalsh/obsidian.nvim",
lazy=true,
event= { "BufReadPre */obsidian-vault/*.md" },
-- If you want to use the home shortcut '~' here you need to call 'vim.fn.expand':-- event = { "bufreadpre " .. vim.fn.expand "~" .. "/my-vault/**.md" },dependencies= {
-- Required."nvim-lua/plenary.nvim",
-- Optional, for completion."hrsh7th/nvim-cmp",
-- Optional, for search and quick-switch functionality."nvim-telescope/telescope.nvim",
-- Optional, an alternative to telescope for search and quick-switch functionality.-- "ibhagwan/fzf-lua"-- Optional, another alternative to telescope for search and quick-switch functionality.-- "junegunn/fzf",-- "junegunn/fzf.vim"-- Optional, alternative to nvim-treesitter for syntax highlighting.-- "godlygeek/tabular",-- "preservim/vim-markdown",
},
opts= {
dir="~/obsidian-vault", -- no need to call 'vim.fn.expand' here-- -- Optional, if you keep notes in a specific subdirectory of your vault.-- notes_subdir = "notes",---- daily_notes = {-- -- Optional, if you keep daily notes in a separate directory.-- folder = "notes/dailies",-- -- Optional, if you want to change the date format for daily notes.-- date_format = "%Y-%m-%d"-- },-- Optional, completion.completion= {
nvim_cmp=true, -- if using nvim-cmp, otherwise set to false
},
-- -- Optional, customize how names/IDs for new notes are created.-- note_id_func = function(title)-- -- Create note IDs in a Zettelkasten format with a timestamp and a suffix.-- -- In this case a note with the title 'My new note' will given an ID that looks-- -- like '1657296016-my-new-note', and therefore the file name '1657296016-my-new-note.md'-- local suffix = ""-- if title ~= nil then-- -- If title is given, transform it into valid file name.-- suffix = title:gsub(" ", "-"):gsub("[^A-Za-z0-9-]", ""):lower()-- else-- -- If title is nil, just add 4 random uppercase letters to the suffix.-- for _ = 1, 4 do-- suffix = suffix .. string.char(math.random(65, 90))-- end-- end-- return tostring(os.time()) .. "-" .. suffix-- end,-- Optional, set to true if you don't want Obsidian to manage frontmatter.disable_frontmatter=false,
-- Optional, alternatively you can customize the frontmatter data.note_frontmatter_func=function(note)
-- This is equivalent to the default frontmatter function.localout= { id=note.id, aliases=note.aliases, tags=note.tags }
-- `note.metadata` contains any manually added fields in the frontmatter.-- So here we just make sure those fields are kept in the frontmatter.ifnote.metadata~=nilandrequire("obsidian").util.table_length(note.metadata) >0thenfork, vinpairs(note.metadata) doout[k] =vendendreturnoutend,
-- Optional, for templates (see below).templates= {
subdir="templates",
date_format="%Y-%m-%d-%a",
time_format="%H:%M",
},
-- Optional, by default when you use `:ObsidianFollowLink` on a link to an external-- URL it will be ignored but you can customize this behavior here.follow_url_func=function(url)
-- Open the URL in the default web browser.vim.fn.jobstart({ "open", url }) -- Mac OS-- vim.fn.jobstart({"xdg-open", url}) -- linuxend,
-- Optional, set to true if you use the Obsidian Advanced URI plugin.-- https://github.com/Vinzent03/obsidian-advanced-uriuse_advanced_uri=true,
-- Optional, set to true to force ':ObsidianOpen' to bring the app to the foreground.open_app_foreground=false,
-- Optional, by default commands like `:ObsidianSearch` will attempt to use-- telescope.nvim, fzf-lua, and fzf.nvim (in that order), and use the-- first one they find. By setting this option to your preferred-- finder you can attempt it first. Note that if the specified finder-- is not installed, or if it the command does not support it, the-- remaining finders will be attempted in the original order.finder="telescope.nvim",
},
config=function(_, opts)
require("obsidian").setup(opts)
-- Optional, override the 'gf' keymap to utilize Obsidian's search functionality.-- see also: 'follow_url_func' config option above.vim.keymap.set("n", "gf", function()
ifrequire("obsidian").util.cursor_on_markdown_link() thenreturn"<cmd>ObsidianFollowLink<CR>"elsereturn"gf"endend, { noremap=false, expr=true })
end,
}
There are only 2 things to manually edit here, to specify the vault location. For instance my vault is at ~/obsidian-vault so you need to edit the 2 lines event = { "BufReadPre */obsidian-vault/*.md" },
and dir = "~/obsidian-vault",
to match your vault location. The plugin may also nag and ask you to create a templates folder in the vault.
Because of these manual edits / interventions, I'm not entirely sure how to fit this into the astrocommunity framework. Perhaps the maintainer can add a warning / notification to peruse the README.md and make these manual edits.
The text was updated successfully, but these errors were encountered:
The current minimal config for obsidian does not truly work for following links to other markdown files.
This is my configuration which works, modified from the default config in the obsidian.nvim repo.
There are only 2 things to manually edit here, to specify the vault location. For instance my vault is at
~/obsidian-vault
so you need to edit the 2 linesevent = { "BufReadPre */obsidian-vault/*.md" },
and
dir = "~/obsidian-vault",
to match your vault location. The plugin may also nag and ask you to create a
templates
folder in the vault.Because of these manual edits / interventions, I'm not entirely sure how to fit this into the astrocommunity framework. Perhaps the maintainer can add a warning / notification to peruse the
README.md
and make these manual edits.The text was updated successfully, but these errors were encountered: