Files
2025-12-24 13:30:58 -06:00

168 lines
4.3 KiB
Nix

{
plugins = {
auto-save.enable = true;
bufferline = {
# TODO: remove this once you are used to not having it
enable = true;
settings = {
options = {
always_show_bufferline = false;
buffer_close_icon = "";
diagnostics = "nvim_lsp";
};
};
};
gitsigns = {
enable = true;
settings = {
current_line_blame = true;
current_line_blame_opts = {
virt_text = true;
virt_text_pos = "eol";
};
signcolumn = true;
signs = {
add = {text = "";};
change = {text = "";};
changedelete = {text = "~";};
delete = {text = "_";};
topdelete = {text = "";};
untracked = {text = "";};
};
watch_gitdir = {follow_files = true;};
};
};
harpoon = {
enable = false;
settings = {
save_on_toggle = true;
save_on_change = true;
enter_on_sendcmd = false;
};
};
hop.enable = true;
illuminate.enable = true;
image.enable = true;
lazygit.enable = true;
nvim-lightbulb.enable = true;
lualine = {
enable = true;
settings.options.globalstatus = true;
};
luasnip.enable = true;
mini = {
enable = true;
modules = {
surround = {};
indentscope = {
symbol = "";
options = {try_as_border = true;};
};
};
};
obsidian.enable = false;
obsidian.settings = {
attachments.img_folder = "Attachments";
completion = {
min_chars = 2;
nvim_cmp = true;
};
daily_notes = {
folder = "notes/dailies";
date_format = "%Y-%m-%d";
alias_format = "%B %-d, %Y";
template = "templates/daily.md";
};
new_notes_location = "current_dir";
note_id_func = ''
function(title)
local date = os.date("%Y-%m-%d %H%M")
local suffix = ""
if title ~= nil then
suffix = title:gsub(" ", "-"):gsub("[^A-Za-z0-9-]", ""):lower()
else
for _ = 1, 4 do
suffix = suffix .. string.char(math.random(65, 90))
end
end
return date .. "-" .. suffix
end
'';
workspaces = [
{
name = "personal";
path = "~/Source/gitea-app.internal.freddrake.com/fdrake/PKM-Personal";
}
];
wiki_link_func = "use_alias_only";
disable_frontmatter = true;
templates = {
folder = "Templates";
date_format = "%Y-%m-%d";
time_format = "%H:%M";
substitutions = {};
};
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}) -- linux
-- vim.cmd(':silent exec "!start ' .. url .. '"') -- Windows
-- vim.ui.open(url) -- need Neovim 0.10.0+
end'';
follow_img_func = ''
function(img)
vim.fn.jobstart { "qlmanage", "-p", img } -- Mac OS quick look preview
-- vim.fn.jobstart({"xdg-open", url}) -- linux
-- vim.cmd(':silent exec "!start ' .. url .. '"') -- Windows
end'';
};
neo-tree.enable = true;
noice.enable = false;
notify.enable = true;
nvim-autopairs.enable = true;
colorizer.enable = true;
oil = {
enable = true;
settings = {
columns = [
"icons"
"permissions"
"size"
"mtime"
];
default_file_explorer = true;
delete_to_trash = true;
skip_confirmation_for_simple_edits = true;
};
};
render-markdown.enable = true;
todo-comments.enable = true;
treesitter = {
enable = true;
folding.enable = false; # Fixes the folding deprecation warning
settings = {
indent.enable = true;
auto_install = false; # Disable runtime installation
# ensure_installed = [
# "git_config"
# "git_rebase"
# "gitattributes"
# "gitcommit"
# "gitignore"
# "bash"
# "python"
# "lua"
# "nix"
# ];
};
};
vim-surround.enable = true;
web-devicons.enable = true;
};
}