From c59c9c80363b99ddba8564af244714b792a44c62 Mon Sep 17 00:00:00 2001 From: pr0c3550r Date: Mon, 16 Jan 2023 22:40:43 +0100 Subject: [PATCH] migrated filetype specific mappings from autocommands to ftplugin directory --- nvim/.config/nvim/ftplugin/c.lua | 5 +++ nvim/.config/nvim/ftplugin/python.lua | 5 +++ nvim/.config/nvim/ftplugin/tex.lua | 10 +++++ nvim/.config/nvim/lua/pr073c70r/autocmd.lua | 47 --------------------- 4 files changed, 20 insertions(+), 47 deletions(-) create mode 100644 nvim/.config/nvim/ftplugin/c.lua create mode 100644 nvim/.config/nvim/ftplugin/python.lua create mode 100644 nvim/.config/nvim/ftplugin/tex.lua diff --git a/nvim/.config/nvim/ftplugin/c.lua b/nvim/.config/nvim/ftplugin/c.lua new file mode 100644 index 0000000..f0978a7 --- /dev/null +++ b/nvim/.config/nvim/ftplugin/c.lua @@ -0,0 +1,5 @@ +-- Compile c from file +vim.api.nvim_buf_set_keymap(0, "n", "c", ":exec 'w' :exec '!gcc % -o %<'", {}) +vim.api.nvim_buf_set_keymap(0, "n", "", ":exec 'w' :exec '!gcc % -o %<'", {}) +vim.api.nvim_buf_set_keymap(0, "i", "", ":exec 'w' :exec '!gcc % -o %<'", {}) +vim.api.nvim_buf_set_keymap(0, "v", "", ":exec 'w' :exec '!gcc % -o %<'", {}) diff --git a/nvim/.config/nvim/ftplugin/python.lua b/nvim/.config/nvim/ftplugin/python.lua new file mode 100644 index 0000000..2a4b5d8 --- /dev/null +++ b/nvim/.config/nvim/ftplugin/python.lua @@ -0,0 +1,5 @@ +-- Run python from file +vim.api.nvim_buf_set_keymap(0, "n", "c", ":exec 'w' :exec '!python3 %'", {}) +vim.api.nvim_buf_set_keymap(0, "n", "", ":exec 'w' :exec '!python3 %'", {}) +vim.api.nvim_buf_set_keymap(0, "i", "", ":exec 'w' :exec '!python3 %'", {}) +vim.api.nvim_buf_set_keymap(0, "v", "", ":exec 'w' :exec '!python3 %'", {}) diff --git a/nvim/.config/nvim/ftplugin/tex.lua b/nvim/.config/nvim/ftplugin/tex.lua new file mode 100644 index 0000000..54a76dc --- /dev/null +++ b/nvim/.config/nvim/ftplugin/tex.lua @@ -0,0 +1,10 @@ +-- Compile LaTeX from file +vim.api.nvim_buf_set_keymap(0, "n", "c", ":exec 'w' :exec '!xelatex %'", {}) +vim.api.nvim_buf_set_keymap(0, "n", "", ":exec 'w' :exec 'w' :exec '!xelatex %'", {}) +vim.api.nvim_buf_set_keymap(0, "i", "", ":exec 'w' :exec '!xelatex %'", {}) +vim.api.nvim_buf_set_keymap(0, "v", "", ":exec 'w' :exec '!xelatex %'", {}) + +-- Open PDF-Viewer from LaTeX-file +vim.api.nvim_buf_set_keymap(0, "n", "", ":silent !zathura --fork %:r.pdf& ", {}) +vim.api.nvim_buf_set_keymap(0, "i", "", " :silent !zathura --fork %:r.pdf& ", {}) +vim.api.nvim_buf_set_keymap(0, "v", "", " :silent !zathura --fork %:r.pdf& ", {}) diff --git a/nvim/.config/nvim/lua/pr073c70r/autocmd.lua b/nvim/.config/nvim/lua/pr073c70r/autocmd.lua index 1700bb4..4caea81 100644 --- a/nvim/.config/nvim/lua/pr073c70r/autocmd.lua +++ b/nvim/.config/nvim/lua/pr073c70r/autocmd.lua @@ -7,50 +7,3 @@ vim.api.nvim_create_autocmd("Filetype", { command = "setlocal formatoptions-=c formatoptions-=r formatoptions-=o" }) --- Filetype specific mappings - --- Compile and show LaTeX -vim.api.nvim_create_autocmd("Filetype", { - pattern = "tex", - callback = function() - vim.api.nvim_buf_set_keymap(0, "n", "c", ":exec '!xelatex %'", {}) - vim.api.nvim_buf_set_keymap(0, "n", "", ":exec '!xelatex %'", {}) - vim.api.nvim_buf_set_keymap(0, "i", "", ":exec '!xelatex %'", {}) - vim.api.nvim_buf_set_keymap(0, "v", "", ":exec '!xelatex %'", {}) - vim.api.nvim_buf_set_keymap(0, "n", "", ":silent !zathura --fork %:r.pdf& ", {}) - vim.api.nvim_buf_set_keymap(0, "i", "", " :silent !zathura --fork %:r.pdf& ", {}) - vim.api.nvim_buf_set_keymap(0, "v", "", " :silent !zathura --fork %:r.pdf& ", {}) - end -}) - --- Compile C -vim.api.nvim_create_autocmd("Filetype", { - pattern = "c", - callback = function() - vim.api.nvim_buf_set_keymap(0, "n", "c", ":exec '!gcc % -o %<'", {}) - vim.api.nvim_buf_set_keymap(0, "n", "", ":exec '!gcc % -o %<'", {}) - vim.api.nvim_buf_set_keymap(0, "i", "", ":exec '!gcc % -o %<'", {}) - vim.api.nvim_buf_set_keymap(0, "v", "", ":exec '!gcc % -o %<'", {}) - end -}) - --- run Python -vim.api.nvim_create_autocmd("Filetype", { - pattern = "python", - callback = function() - vim.api.nvim_buf_set_keymap(0, "n", "c", ":exec '!python3 %'", {}) - vim.api.nvim_buf_set_keymap(0, "n", "", ":exec '!python3 %'", {}) - vim.api.nvim_buf_set_keymap(0, "i", "", ":exec '!python3 %'", {}) - vim.api.nvim_buf_set_keymap(0, "v", "", ":exec '!python3 %'", {}) - end -}) - --- Close nvim if only Nvim-Tree is open -vim.api.nvim_create_autocmd("BufEnter", { - nested = true, - callback = function() - if #vim.api.nvim_list_wins() == 1 and vim.api.nvim_buf_get_name(0):match("NvimTree_") ~= nil then - vim.cmd "quit" - end - end -})