Skip to content

Commit

Permalink
[neovim] Disabled arrows, backspace and delete
Browse files Browse the repository at this point in the history
  • Loading branch information
missingcharacter committed Mar 29, 2024
1 parent 27925f8 commit af55cd1
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions nvim/lua/missingcharacter/remap.lua
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,26 @@ end)

-- F3 toggles paste mode
vim.keymap.set("n", "<F3>", "<cmd>set paste!<CR>")

-- Disable arrow keys in normal and insert mode
local hardmode = true
if hardmode then
-- Show an error message if a disabled key is pressed
local msg = [[<cmd>echohl Error | echo "KEY DISABLED" | echohl None<CR>]]

-- Disable arrow keys in insert mode with a styled message
vim.api.nvim_set_keymap("i", "<Up>", "<C-o>" .. msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("i", "<Down>", "<C-o>" .. msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("i", "<Left>", "<C-o>" .. msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("i", "<Right>", "<C-o>" .. msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("i", "<Del>", "<C-o>" .. msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("i", "<BS>", "<C-o>" .. msg, { noremap = true, silent = false })

-- Disable arrow keys in normal mode with a styled message
vim.api.nvim_set_keymap("n", "<Up>", msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("n", "<Down>", msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("n", "<Left>", msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("n", "<Right>", msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("n", "<Del>", msg, { noremap = true, silent = false })
vim.api.nvim_set_keymap("n", "<BS>", msg, { noremap = true, silent = false })
end

0 comments on commit af55cd1

Please sign in to comment.