- Add missing Fish configs (direnv, ssh function) - Add Tokyo Night theme for Ghostty - Complete Neovim scratch config sync - Rewrite install.sh for new structure - Add comprehensive README.md
51 lines
2.3 KiB
Lua
51 lines
2.3 KiB
Lua
-- ============================================================================
|
|
-- Keymaps - Tastenkombinationen
|
|
-- ============================================================================
|
|
|
|
local keymap = vim.keymap.set
|
|
|
|
-- ESC clear search highlighting
|
|
keymap('n', '<Esc>', '<cmd>nohlsearch<CR>', { desc = 'Clear search highlighting' })
|
|
|
|
-- Better window navigation
|
|
keymap('n', '<C-h>', '<C-w>h', { desc = 'Navigate to left window' })
|
|
keymap('n', '<C-j>', '<C-w>j', { desc = 'Navigate to bottom window' })
|
|
keymap('n', '<C-k>', '<C-w>k', { desc = 'Navigate to top window' })
|
|
keymap('n', '<C-l>', '<C-w>l', { desc = 'Navigate to right window' })
|
|
|
|
-- Resize windows
|
|
keymap('n', '<C-Up>', ':resize +2<CR>', { desc = 'Increase window height' })
|
|
keymap('n', '<C-Down>', ':resize -2<CR>', { desc = 'Decrease window height' })
|
|
keymap('n', '<C-Left>', ':vertical resize -2<CR>', { desc = 'Decrease window width' })
|
|
keymap('n', '<C-Right>', ':vertical resize +2<CR>', { desc = 'Increase window width' })
|
|
|
|
-- Buffer navigation
|
|
keymap('n', '<S-h>', '<cmd>bprevious<CR>', { desc = 'Previous buffer' })
|
|
keymap('n', '<S-l>', '<cmd>bnext<CR>', { desc = 'Next buffer' })
|
|
keymap('n', '<leader>bd', '<cmd>bdelete<CR>', { desc = 'Delete buffer' })
|
|
|
|
-- Better indenting (bleibt in visual mode)
|
|
keymap('v', '<', '<gv', { desc = 'Indent left' })
|
|
keymap('v', '>', '>gv', { desc = 'Indent right' })
|
|
|
|
-- Move lines up/down
|
|
keymap('n', '<A-j>', ':m .+1<CR>==', { desc = 'Move line down' })
|
|
keymap('n', '<A-k>', ':m .-2<CR>==', { desc = 'Move line up' })
|
|
keymap('v', '<A-j>', ":m '>+1<CR>gv=gv", { desc = 'Move selection down' })
|
|
keymap('v', '<A-k>', ":m '<-2<CR>gv=gv", { desc = 'Move selection up' })
|
|
|
|
-- Go error handling (dein Shortcut!)
|
|
keymap('n', '<leader>ee', 'oif err != nil {<CR>}<Esc>Oreturn err<Esc>', { desc = 'Go error handling' })
|
|
|
|
-- Quick save
|
|
keymap('n', '<leader>w', '<cmd>w<CR>', { desc = 'Save file' })
|
|
|
|
-- Diagnostic keymaps (LSP errors)
|
|
keymap('n', '[d', vim.diagnostic.goto_prev, { desc = 'Previous diagnostic' })
|
|
keymap('n', ']d', vim.diagnostic.goto_next, { desc = 'Next diagnostic' })
|
|
keymap('n', '<leader>cd', vim.diagnostic.open_float, { desc = 'Show diagnostic' })
|
|
keymap('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Diagnostic list' })
|
|
|
|
-- Terminal
|
|
keymap('t', '<Esc><Esc>', '<C-\\><C-n>', { desc = 'Exit terminal mode' })
|