diff --git a/lua/plugins/pastify.lua b/lua/plugins/pastify.lua index 26a184c..b782c4f 100644 --- a/lua/plugins/pastify.lua +++ b/lua/plugins/pastify.lua @@ -1,13 +1,49 @@ +local path = vim.fn.expand '%:h' return { - "TobinPalmer/pastify.nvim", - cmd = { "Pastify", "PastifyAfter" }, - config = function() - require("pastify").setup({ - opts = { - absolute_path = true, - save = "local_file", - local_path = "Library/CloudStorage/OneDrive-VrijeUniversiteitAmsterdam/screenshots/", - }, - }) - end, + 'TobinPalmer/pastify.nvim', + cmd = { 'Pastify', 'PastifyAfter' }, + event = { 'BufReadPost' }, -- Load after the buffer is read, I like to be able to paste right away + keys = { + { noremap = true, mode = 'x', 'p', 'PastifyAfter' }, + { noremap = true, mode = 'n', 'p', 'PastifyAfter' }, + { noremap = true, mode = 'n', 'P', 'Pastify' }, + }, + config = function() + require('pastify').setup { + opts = { + -- absolute_path = true, -- use absolute or relative path to the working directory + absolute_path = false, + apikey = '', -- Api key, required for online saving + -- local_path = path .. '/attachments/', -- The path to put local files in, ex ~/Projects//assets/images/.png + local_path = '', + save = 'local_file', -- Either 'local' or 'online' or 'local_file' + filename = function() + return vim.fn.expand '%:t:r' .. '_' .. os.date '%Y-%m-%d_%H-%M-%S' + end, + default_ft = 'markdown', -- Default filetype to use + }, + ft = { -- Custom snippets for different filetypes, will replace $IMG$ with the image url + html = '', + markdown = '![]($IMG$)', + tex = [[\includegraphics[width=\linewidth]{$IMG$}]], + css = 'background-image: url("$IMG$");', + js = 'const img = new Image(); img.src = "$IMG$";', + xml = '', + php = '"; ?>', + python = '# $IMG$', + java = '// $IMG$', + c = '// $IMG$', + cpp = '// $IMG$', + swift = '// $IMG$', + kotlin = '// $IMG$', + go = '// $IMG$', + typescript = '// $IMG$', + ruby = '# $IMG$', + vhdl = '-- $IMG$', + verilog = '// $IMG$', + systemverilog = '// $IMG$', + lua = '-- $IMG$', + }, + } + end, }