dotfiles
shell, editor, ssh.
git clone https://owenrusk.dev/dotfiles.git
commit 9d822a1534b8e8a2ea2b3adf2feddfaa3fe70a45 parent 3d91695bea5afd94399994a6cf214c7feb2a5145 author Owen Rusk <owen@papermothgames.com> date 2025-01-08 14:02:36 -0600
nvim: strip trailing whitespace on save, except markdown
| nvim/lua/owen/autocmds.lua | +12 | -0 |
diff --git a/nvim/lua/owen/autocmds.lua b/nvim/lua/owen/autocmds.lua
index b615f78..4695b3f 100644
--- a/nvim/lua/owen/autocmds.lua
+++ b/nvim/lua/owen/autocmds.lua
@@ -25,6 +25,18 @@ au("FileType", {
end,
})
+-- trailing whitespace goes on save. not in markdown, where two spaces mean a line break. sadly.
+au("BufWritePre", {
+ callback = function(args)
+ if vim.bo[args.buf].filetype == "markdown" then
+ return
+ end
+ local view = vim.fn.winsaveview()
+ vim.cmd([[keeppatterns %s/\s\+$//e]])
+ vim.fn.winrestview(view)
+ end,
+})
+
au("TextYankPost", {
callback = function()
vim.highlight.on_yank({ timeout = 150 })