From 9bdf67e3206fae623bbd62dd80c56c8e0caea810 Mon Sep 17 00:00:00 2001 From: Fernando Schauenburg Date: Sun, 18 Feb 2024 03:16:14 +0100 Subject: [PATCH] vim: move more code to `utils` --- config/nvim/lua/fschauen/keymap.lua | 26 ++++++++------------ config/nvim/lua/fschauen/util/icons.lua | 1 + config/nvim/lua/fschauen/util/options.lua | 29 +++++++++++++++++++++++ 3 files changed, 40 insertions(+), 16 deletions(-) create mode 100644 config/nvim/lua/fschauen/util/options.lua diff --git a/config/nvim/lua/fschauen/keymap.lua b/config/nvim/lua/fschauen/keymap.lua index 68fbccb..917a48c 100644 --- a/config/nvim/lua/fschauen/keymap.lua +++ b/config/nvim/lua/fschauen/keymap.lua @@ -99,26 +99,20 @@ M.setup = function() map('n', 'j', 'lnextzz') map('n', 'k', 'lpreviouszz') + local toggle = require('fschauen.util.icons').ui.Toggle .. ' toggle ' + -- toggle quickfix and loclist - map('n', 'll', window.toggle_quickfix, { desc = 'Toggle quickfix' }) - map('n', 'll', window.toggle_loclist, { desc = 'Toggle loclist' }) + map('n', 'll', window.toggle_quickfix, { desc = toggle .. 'quickfix' }) + map('n', 'll', window.toggle_loclist, { desc = toggle .. 'loclist' }) - local toggle_number = function() - vim.wo.number = not vim.wo.number - vim.wo.relativenumber = false - end - - local toggle_relativenumber = function() - vim.wo.relativenumber = not vim.wo.relativenumber - vim.wo.number = vim.wo.relativenumber or vim.wo.number - end + local options = require('fschauen.util.options') -- toggle options - map('n', 'sn', toggle_number) - map('n', 'sr', toggle_relativenumber) - map('n', 'sl', 'set list! | set list?') - map('n', 'sw', 'set wrap! | set wrap?') - map('n', 'ss', 'set spell! | set spell?') + map('n', 'sn', options.toggle_number, { desc = toggle .. "'number'" }) + map('n', 'sr', options.toggle_relativenumber, { desc = toggle .. "'relativenumber'" }) + map('n', 'sl', options.toggle_list, { desc = toggle .. "'list'" }) + map('n', 'sw', options.toggle_wrap, { desc = toggle .. "'wrap'" }) + map('n', 'ss', options.toggle_spell, { desc = toggle .. "'spell'" }) end return M diff --git a/config/nvim/lua/fschauen/util/icons.lua b/config/nvim/lua/fschauen/util/icons.lua index 02f8a87..181e8c2 100644 --- a/config/nvim/lua/fschauen/util/icons.lua +++ b/config/nvim/lua/fschauen/util/icons.lua @@ -125,6 +125,7 @@ M.ui = { Search = '', --  Sleep = '󰒲', TestTube = '󰙨', -- 󰤑 + Toggle = '󰨚', Warning = '', } diff --git a/config/nvim/lua/fschauen/util/options.lua b/config/nvim/lua/fschauen/util/options.lua new file mode 100644 index 0000000..b78f657 --- /dev/null +++ b/config/nvim/lua/fschauen/util/options.lua @@ -0,0 +1,29 @@ +local M = {} + +M.toggle_number = function() + vim.wo.number = not vim.wo.number + vim.wo.relativenumber = false +end + +M.toggle_relativenumber = function() + vim.wo.relativenumber = not vim.wo.relativenumber + vim.wo.number = vim.wo.relativenumber or vim.wo.number +end + +M.toggle_list = function() + vim.wo.list = not vim.wo.list + vim.cmd [[set list?]] +end + +M.toggle_wrap = function() + vim.wo.wrap = not vim.wo.wrap + vim.cmd [[set wrap?]] +end + +M.toggle_spell = function() + vim.wo.spell = not vim.wo.spell + vim.cmd [[set spell?]] +end + +return M +