Adds nvim-notes config

This commit is contained in:
Michel 2024-11-21 22:18:33 +01:00
parent 01d6a32b3b
commit ac5fd4f192
17 changed files with 634 additions and 0 deletions

View file

@ -0,0 +1,44 @@
-- Autocmds are automatically loaded on the VeryLazy event
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
-- Add any additional autocmds here
vim.api.nvim_create_autocmd("BufWritePost", {
pattern = { "*.md" },
callback = function(args)
local function get_file_name(file)
local file_name = file:match("[^/]*.md$")
return file_name:sub(0, #file_name - 3):gsub(" ", "_")
end
local commitMessage = get_file_name(args.file) .. "-" .. os.date("%m_%B_%Y")
os.execute("git add " .. args.file)
local commitCommand = 'git commit -m "' .. commitMessage .. '" &> /dev/null'
local commitResult = os.execute(commitCommand)
print("Commiting... " .. commitMessage)
if commitResult == 256 then
print("Nothing to commit")
return
elseif commitResult == 0 then
print("Commit complete")
else
print("Unknown Error " .. commitResult)
print(commitCommand)
return
end
end,
})
vim.api.nvim_create_autocmd("VimLeavePre", {
callback = function(args)
print("Pushing changes...")
-- Push twice, in case the credentials expired. Ugly hack, but it works
local pushSuccess = os.execute("git push &> /dev/null")
if pushSuccess > 0 then
os.execute("git push &> /dev/null")
end
print("Done")
end,
})