feat: Sync complete config - Fish, Ghostty, Neovim Scratch
- 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
This commit is contained in:
103
.config/nvim/lua/plugins/treesitter.lua
Normal file
103
.config/nvim/lua/plugins/treesitter.lua
Normal file
@@ -0,0 +1,103 @@
|
||||
-- ============================================================================
|
||||
-- Treesitter - Syntax Highlighting
|
||||
-- ============================================================================
|
||||
|
||||
return {
|
||||
{
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
build = ':TSUpdate',
|
||||
event = { 'BufReadPost', 'BufNewFile' },
|
||||
dependencies = {
|
||||
'nvim-treesitter/nvim-treesitter-textobjects',
|
||||
},
|
||||
config = function()
|
||||
require('nvim-treesitter.configs').setup({
|
||||
-- Parser die automatisch installiert werden
|
||||
ensure_installed = {
|
||||
-- Primary
|
||||
'typescript',
|
||||
'tsx',
|
||||
'javascript',
|
||||
'go',
|
||||
|
||||
-- Supporting
|
||||
'lua',
|
||||
'vim',
|
||||
'vimdoc',
|
||||
'html',
|
||||
'css',
|
||||
'json',
|
||||
'yaml',
|
||||
'toml',
|
||||
'markdown',
|
||||
'markdown_inline',
|
||||
'bash',
|
||||
'dockerfile',
|
||||
'git_config',
|
||||
'git_rebase',
|
||||
'gitcommit',
|
||||
'gitignore',
|
||||
},
|
||||
|
||||
-- Auto-install parser wenn fehlt
|
||||
auto_install = true,
|
||||
|
||||
-- Syntax highlighting
|
||||
highlight = {
|
||||
enable = true,
|
||||
additional_vim_regex_highlighting = false,
|
||||
},
|
||||
|
||||
-- Indentation
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
|
||||
-- Incremental selection
|
||||
incremental_selection = {
|
||||
enable = true,
|
||||
keymaps = {
|
||||
init_selection = '<C-space>',
|
||||
node_incremental = '<C-space>',
|
||||
scope_incremental = false,
|
||||
node_decremental = '<bs>',
|
||||
},
|
||||
},
|
||||
|
||||
-- Text objects
|
||||
textobjects = {
|
||||
select = {
|
||||
enable = true,
|
||||
lookahead = true,
|
||||
keymaps = {
|
||||
['af'] = '@function.outer',
|
||||
['if'] = '@function.inner',
|
||||
['ac'] = '@class.outer',
|
||||
['ic'] = '@class.inner',
|
||||
},
|
||||
},
|
||||
move = {
|
||||
enable = true,
|
||||
set_jumps = true,
|
||||
goto_next_start = {
|
||||
[']f'] = '@function.outer',
|
||||
[']c'] = '@class.outer',
|
||||
},
|
||||
goto_next_end = {
|
||||
[']F'] = '@function.outer',
|
||||
[']C'] = '@class.outer',
|
||||
},
|
||||
goto_previous_start = {
|
||||
['[f'] = '@function.outer',
|
||||
['[c'] = '@class.outer',
|
||||
},
|
||||
goto_previous_end = {
|
||||
['[F'] = '@function.outer',
|
||||
['[C'] = '@class.outer',
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
Reference in New Issue
Block a user