-- https://docs.astronvim.com/recipes/mappings/ return { { "AstroNvim/astrocore", opts = { mappings = { -- first key is the mode n = { ["*br"] = { "O{jo}k", desc = "Braces" }, [""] = { ":mode", desc = "Refresh screen" }, [""] = { ":w!", desc = "Save File" }, ["*1"] = { "set ts=1 sw=1", desc = "Tabstops every 1 column" }, ["*2"] = { "set ts=2 sw=2", desc = "Tabstops every 2 columns" }, ["*3"] = { "set ts=3 sw=3", desc = "Tabstops every 3 columns" }, ["*4"] = { "set ts=4 sw=4", desc = "Tabstops every 4 columns" }, ["*5"] = { "set ts=5 sw=5", desc = "Tabstops every 5 columns" }, ["*6"] = { "set ts=6 sw=6", desc = "Tabstops every 6 columns" }, ["*7"] = { "set ts=7 sw=7", desc = "Tabstops every 7 columns" }, ["*8"] = { "set ts=8 sw=8", desc = "Tabstops every 8 columns" }, ["*9"] = { "set ts=9 sw=9", desc = "Tabstops every 9 columns" }, ["*br"] = { "O{jo}k", desc = "Add curly braces" }, ["*co"] = { "I/* A */", desc = "Comment" }, ["*ma"] = { "w!!make", desc = "Save and run make" }, ["*ww"] = { "!chmod u+w %", desc = "Make writeable" }, ["*un"] = { "^3x$hh3x", desc = "Uncomment" }, ["*if"] = { "$aif True:", desc = "Add a Python if" }, ["*ei"] = { "<<$aelif: True", desc = "Add a Python elif" }, ["*el"] = { "<<$aelse:", desc = "Add a Python else" }, ["*fn"] = { '$adef function(): """."""kk0wcw', desc = "Add a Python function def", }, ["*cl"] = { '$aclass Klass() """."""def __init__(self): """."""kkkk0wcw', desc = "Add Python class", }, ["*ex"] = { "!chmod 755 %", desc = "Make file mode 755" }, ["*rw"] = { "!chmod 644 %", desc = "Make file mode 644" }, ["*js"] = { "%!python3 -m json.tool", desc = "JSON format with indentation" }, ["*fm"] = { "lua vim.lsp.buf.format { async = true }", desc = "Format buffer" }, ["*tt"] = { "TroubleToggle", desc = "Toggle Trouble" }, ["*ta"] = { "!ctags `find . -type f -print | grep -E '\\.py$|\\.c$|\\.h$|\\.cpp$|\\.ts$|\\.js$'`", desc = "Create tags file", }, }, }, }, }, }