/nvim-toggler

invert text in vim, purely with lua.

Primary LanguageLuaMIT LicenseMIT

nvim-toggler

Invert text in vim, purely with lua.

demo

Install  ·  Run  ·  Custom inverses  ·  Custom keymaps

Install

Using packer.nvim

use { 'nguyenvukhang/nvim-toggler' }

Using vim-plug

Plug 'nguyenvukhang/nvim-toggler'

Run

-- init.lua
require('nvim-toggler')
" init.vim or .vimrc
lua << EOF
require('nvim-toggler')
EOF

Once that is set, the default binding is <leader>i to invert the word under your cursor.

Custom inverses

You can specify custom togglables with the setup() function:

-- init.lua
require('nvim-toggler').setup({
  global_inversions = {
   ['vim'] = 'emacs'
   ['=='] = '!='
  },
  filetype_inversions = {  -- overwrite inversions in specific filetypes
    lua = {
      ['=='] = '~='
    }
  }
})

The defaults are defined in the one and only lua file

Custom keymaps

To remap toggling to something else like <leader>cl, simply do

-- init.lua
require('nvim-toggler').setup({
  toggle_mapping = '<leader>cl'
})