vim.keymap.set('n', '<leader>fm', function() vim.cmd [[FzfLua marks]] end)
-- Buffers/Windows (inplace)
+function open_term()
+ vim.cmd [[term]]
+ vim.cmd [[startinsert]]
+end
+
vim.keymap.set('n', '<leader>e', function() vim.cmd [[Explore]] end)
vim.keymap.set('n', '<leader>c', function() vim.cmd [[confirm quit]] end)
+vim.keymap.set('n', '<leader>T', open_term)
vim.keymap.set('n', '<leader>q', function()
local win_count = #vim.api.nvim_list_wins()
vim.cmd [[confirm qa]]
vim.keymap.set('n', '<leader>tt', last_tab)
vim.keymap.set('n', '<leader>tT', open_tterm)
vim.keymap.set('n', '<leader>tc', close_tab)
+
+-- Code
+function compile_rust() vim.cmd [[!cargo check]] end
+function run_rust()
+ tab_next = true
+ vim.cmd [[tabnew]]
+ vim.cmd [[term cargo run]]
+ vim.cmd [[startinsert]]
+end
+
+local code = {
+ rust = {
+ compile = compile_rust,
+ run = run_rust,
+ }
+}
+
+vim.keymap.set('n', '<leader>xc', function()
+ local c = code[vim.bo.filetype]
+ if(c) then c.compile() end
+end)
+vim.keymap.set('n', '<leader>xr', function()
+ local c = code[vim.bo.filetype]
+ if(c) then c.run() end
+end)