-- Obsidian -- Move to ~/Notes/all vim.api.nvim_create_user_command('MoveNoteToAll', function() local file = vim.fn.expand '%:p' -- Obtenir le chemin complet du fichier ouvert local target_dir = vim.fn.expand '~/Notes/all/' -- Résoudre le chemin du dossier cible -- Vérifier si le fichier existe if vim.fn.filereadable(file) == 1 then -- Utiliser une commande shell pour déplacer le fichier local cmd = 'mv ' .. vim.fn.shellescape(file) .. ' ' .. vim.fn.shellescape(target_dir) vim.fn.system(cmd) -- Vérifier si la commande s'est bien exécutée if vim.fn.filereadable(target_dir .. vim.fn.fnamemodify(file, ':t')) == 1 then -- Fermer le buffer après déplacement si le fichier a bien été déplacé vim.cmd 'bdelete!' else print "Erreur : Le fichier n'a pas été déplacé." end else print 'Impossible de déplacer : fichier non valide.' end end, { nargs = 0 }) -- Delete note vim.api.nvim_create_user_command('DeleteNote', function() local file = vim.fn.expand '%:p' -- Obtenir le chemin complet du fichier ouvert -- Vérifier si le fichier existe if vim.fn.filereadable(file) == 1 then -- Utiliser une commande shell pour supprimer le fichier local cmd = 'rm ' .. vim.fn.shellescape(file) vim.fn.system(cmd) -- Fermer le buffer après suppression vim.cmd 'bdelete!' else print 'Impossible de supprimer : fichier non valide.' end end, { nargs = 0 }) -- Obsidian keymaps vim.keymap.set('n', 'on', 'ObsidianNew', { desc = '[N]ouvelle note' }) vim.keymap.set('n', 'oj', 'ObsidianToday', { desc = 'Note [J]ournalière' }) vim.keymap.set('n', 'ow', 'ObsidianDailies', { desc = '[W] Notes Journalières' }) vim.keymap.set('n', 'oq', 'ObsidianQuickSwitch', { desc = '[Q]uick switch' }) vim.keymap.set('n', 'os', 'ObsidianSearch', { desc = '[S]earch notes' }) vim.keymap.set('n', 'ot', 'ObsidianNewFromTemplate', { desc = 'new from [T]emplate ' }) vim.keymap.set('n', 'oa', 'ObsidianTags', { desc = 'T[a]gs picker' }) vim.keymap.set('n', 'oc', 'ObsidianTOC', { desc = 'Table of [C]ontent' }) vim.keymap.set('n', 'ob', 'ObsidianBacklinks', { desc = '[B]acklinks' }) vim.keymap.set('n', 'oi', 'ObsidianLinks', { desc = 'L[i]nks' }) vim.keymap.set('n', 'or', 'ObsidianRename', { desc = '[R]enomer la note' }) vim.keymap.set('n', 'od', 'DeleteNote', { desc = '[D]elete note' }) vim.keymap.set('n', 'ov', 'MoveNoteToAll', { desc = '[V]alider la note' }) -- visual mode obsidian vim.keymap.set('v', 'ol', 'ObsidianLink', { desc = '[L]ien' }) vim.keymap.set('v', 'oo', 'ObsidianLinkNew', { desc = '[O]bs. nouveau lien' }) vim.keymap.set('v', 'oe', 'ObsidianExtractNote', { desc = '[E]xtraire la note' })