From 7b8ac2345efe2ee051f37043ed2de84d85381026 Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Thu, 16 May 2024 19:07:23 +0100 Subject: [PATCH] Update keymaps Replace usages of custom keybinding functions with `vim.keymap.set()`. --- lua/opdavies/keymaps.lua | 85 +++++++++++++++++++--------------------- 1 file changed, 40 insertions(+), 45 deletions(-) diff --git a/lua/opdavies/keymaps.lua b/lua/opdavies/keymaps.lua index c1cf6db..50341ae 100644 --- a/lua/opdavies/keymaps.lua +++ b/lua/opdavies/keymaps.lua @@ -1,74 +1,69 @@ -local keymap = require "opdavies.keymap" +local set = vim.keymap.set -local imap = keymap.imap -local nmap = keymap.nmap -local vmap = keymap.vmap -local xmap = keymap.xmap - -nmap { "so", ":call opdavies#save_and_exec()" } +set("n", "so", ":call opdavies#save_and_exec()") -- Format paragraphs to an 80 character line length. -nmap { "g", "gqap" } -xmap { "g", "gqa" } +set("n", "g", "gqap") +set("x", "g", "gqa") -- Make the current file executable -nmap { "x", ":!chmod +x %" } +set("n", "x", ":!chmod +x %") -- Yank from the current column to the end of the line -nmap { "Y", "yg$" } +set("n", "Y", "yg$") -- Keep things centred -nmap { "n", "nzzzv" } -nmap { "N", "Nzzzv" } +set("n", "n", "nzzzv") +set("n", "N", "Nzzzv") -- Disable arrow keys -vmap { "", "" } -vmap { "", "" } -vmap { "", "" } -vmap { "", "" } +set("v", "", "") +set("v", "", "") +set("v", "", "") +set("v", "", "") -nmap { "", ":silent !tmux neww t", { noremap = true, silent = true } } +set("n", "", ":silent !tmux neww t", { noremap = true, silent = true }) -- Easy insertion of a trailing ; or , from insert mode -imap { ",,", "A," } -imap { ";;", "A;" } +set("i", ",,", "A,") +set("i", ";;", "A;") -nmap { "ga", "(EasyAlign)" } -xmap { "ga", "(EasyAlign)" } +set("n", "ga", "(EasyAlign)") +set("x", "ga", "(EasyAlign)") -- Focus on the current buffer. -nmap { "-", ":wincmd _:wincmd |", { noremap = true, silent = true } } +set("n", "-", ":wincmd _:wincmd |", { noremap = true, silent = true }) -- Automatically resize buffers. -nmap { "=", ":wincmd =", { noremap = true, silent = true } } +set("n", "=", ":wincmd =", { noremap = true, silent = true }) -- Move line(s) up and down. local opts = { noremap = true, silent = true } -imap { "", ":m .+1==gi", opts } -imap { "", ":m .-2==gi", opts } -nmap { "", ":m .+1==", opts } -nmap { "", ":m .-2==", opts } -vmap { "", ":m '>+1gv=gv", opts } -vmap { "", ":m '<-2gv=gv", opts } +set("i", "", ":m .+1==gi", opts) +set("i", "", ":m .-2==gi", opts) +set("n", "", ":m .+1==", opts) +set("n", "", ":m .-2==", opts) +set("v", "", ":m '>+1gv=gv", opts) +set("v", "", ":m '<-2gv=gv", opts) -- Re-centre when navigating. -nmap { "#", "#zz", opts } -nmap { "%", "%zz", opts } -nmap { "*", "*zz", opts } -nmap { "", "zz", opts } -nmap { "", "zz", opts } -nmap { "", "zz", opts } -nmap { "", "zz", opts } -nmap { "G", "Gzz", opts } -nmap { "N", "Nzz", opts } -nmap { "gg", "ggzz", opts } -nmap { "n", "Nzz", opts } -nmap { "{", "{zz", opts } -nmap { "}", "}zz", opts } +set("n", "#", "#zz", opts) +set("n", "%", "%zz", opts) +set("n", "*", "*zz", opts) +set("n", "", "zz", opts) +set("n", "", "zz", opts) +set("n", "", "zz", opts) +set("n", "", "zz", opts) +set("n", "G", "Gzz", opts) +set("n", "N", "Nzz", opts) +set("n", "gg", "ggzz", opts) +set("n", "n", "Nzz", opts) +set("n", "{", "{zz", opts) +set("n", "}", "}zz", opts) -- Clears hlsearch after doing a search, otherwise just does normal stuff vim.cmd [[ nnoremap {-> v:hlsearch ? ":nohl\" : "\"}() ]] -- Quicker macro playback. -nmap { "Q", "@qj" } -xmap { "Q", ":norm @q" } +set("n", "Q", "@qj") +set("x", "Q", ":norm @q")