diff --git a/lua/config/black.lua b/lua/config/black.lua index 30bde8e..080e6be 100644 --- a/lua/config/black.lua +++ b/lua/config/black.lua @@ -1,7 +1,12 @@ vim.api.nvim_create_autocmd( { "BufWritePre" }, { pattern = { "*.py", "*.pyi" }, callback = function(ev) + local old_cursor = vim.api.nvim_win_get_cursor(0) vim.api.nvim_command([[ :silent! %!/usr/bin/env black -q --stdin-filename % - ]]) - vim.cmd.normal(vim.api.nvim_replace_termcodes('', true, true, true)) + local new_cursor = vim.api.nvim_win_get_cursor(0) + + if old_cursor[1] ~= new_cursor[1] or old_cursor[2] ~= new_cursor[2] then + vim.cmd.normal(vim.api.nvim_replace_termcodes('', true, true, true)) + end end }) diff --git a/lua/config/clang-format.lua b/lua/config/clang-format.lua index b4e3928..2a29cb7 100644 --- a/lua/config/clang-format.lua +++ b/lua/config/clang-format.lua @@ -1,7 +1,12 @@ vim.api.nvim_create_autocmd( { "BufWritePre" }, { pattern = { "*.c", "*.h" }, callback = function(ev) + local old_cursor = vim.api.nvim_win_get_cursor(0) vim.api.nvim_command([[ :silent! %!/usr/bin/env clang-format ]]) - vim.cmd.normal(vim.api.nvim_replace_termcodes('', true, true, true)) + local new_cursor = vim.api.nvim_win_get_cursor(0) + + if old_cursor[1] ~= new_cursor[1] or old_cursor[2] ~= new_cursor[2] then + vim.cmd.normal(vim.api.nvim_replace_termcodes('', true, true, true)) + end end }) diff --git a/lua/config/isort.lua b/lua/config/isort.lua index c4b4815..9fed769 100644 --- a/lua/config/isort.lua +++ b/lua/config/isort.lua @@ -1,7 +1,12 @@ vim.api.nvim_create_autocmd( { "BufWritePre" }, { pattern = { "*.py", "*.pyi" }, callback = function(ev) + local old_cursor = vim.api.nvim_win_get_cursor(0) vim.api.nvim_command([[ :silent! %!/usr/bin/env isort -q - ]]) - vim.cmd.normal(vim.api.nvim_replace_termcodes('', true, true, true)) + local new_cursor = vim.api.nvim_win_get_cursor(0) + + if old_cursor[1] ~= new_cursor[1] or old_cursor[2] ~= new_cursor[2] then + vim.cmd.normal(vim.api.nvim_replace_termcodes('', true, true, true)) + end end }) diff --git a/lua/config/prettier.lua b/lua/config/prettier.lua index 7605d71..8ff71fe 100644 --- a/lua/config/prettier.lua +++ b/lua/config/prettier.lua @@ -1,7 +1,12 @@ vim.api.nvim_create_autocmd( { "BufWritePre" }, { pattern = { "*.vue", "*.js", "*.ts" }, callback = function(ev) + local old_cursor = vim.api.nvim_win_get_cursor(0) vim.api.nvim_command([[ :silent! %!/usr/bin/env prettier --stdin-filepath % ]]) - vim.cmd.normal(vim.api.nvim_replace_termcodes('', true, true, true)) + local new_cursor = vim.api.nvim_win_get_cursor(0) + + if old_cursor[1] ~= new_cursor[1] or old_cursor[2] ~= new_cursor[2] then + vim.cmd.normal(vim.api.nvim_replace_termcodes('', true, true, true)) + end end })