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