From dafb375026c30911dace5bd5d576d2f137f3c496 Mon Sep 17 00:00:00 2001 From: Thomas Schmucker Date: Tue, 8 Sep 2026 08:26:55 +0200 Subject: Dateityp-Erkennung verbessert --- nvim/lua/config/filetypes.lua | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) (limited to 'nvim/lua/config') diff --git a/nvim/lua/config/filetypes.lua b/nvim/lua/config/filetypes.lua index 56810d9..2537750 100644 --- a/nvim/lua/config/filetypes.lua +++ b/nvim/lua/config/filetypes.lua @@ -13,20 +13,26 @@ M.ANSIBLE_YAML = "yaml.ansible" -- Treesitter-Aktivierung). M.extra = { M.ANSIBLE_YAML, "jsonc" } --- Ansible-Dateien haben die Endung .yml/.yaml wie normales YAML, sind aber --- ueber ihren Pfad erkennbar. +-- Ansible-Dateien haben die Endung .yml/.yaml wie normales YAML und sind nur +-- am Dateinamen bzw. am Pfad erkennbar. Die Patterns sind mit "$" verankert, +-- damit Jinja-Templates (z.B. tasks/main.yml.j2) weiter als jinja gelten. vim.filetype.add({ + filename = { + ["playbook.yml"] = M.ANSIBLE_YAML, + ["playbook.yaml"] = M.ANSIBLE_YAML, + ["site.yml"] = M.ANSIBLE_YAML, + ["site.yaml"] = M.ANSIBLE_YAML, + ["requirements.yml"] = M.ANSIBLE_YAML, + ["requirements.yaml"] = M.ANSIBLE_YAML, + }, pattern = { - [".*/roles/.*/tasks/.*%.ya?ml"] = M.ANSIBLE_YAML, - [".*/roles/.*/handlers/.*%.ya?ml"] = M.ANSIBLE_YAML, - [".*/tasks/.*%.ya?ml"] = M.ANSIBLE_YAML, - [".*/handlers/.*%.ya?ml"] = M.ANSIBLE_YAML, - [".*/group_vars/.*%.ya?ml"] = M.ANSIBLE_YAML, - [".*/host_vars/.*%.ya?ml"] = M.ANSIBLE_YAML, - [".*/playbooks/.*%.ya?ml"] = M.ANSIBLE_YAML, - ["playbook%.ya?ml"] = M.ANSIBLE_YAML, - ["site%.ya?ml"] = M.ANSIBLE_YAML, - ["requirements%.ya?ml"] = M.ANSIBLE_YAML, + [".*/roles/.*/tasks/.*%.ya?ml$"] = M.ANSIBLE_YAML, + [".*/roles/.*/handlers/.*%.ya?ml$"] = M.ANSIBLE_YAML, + [".*/tasks/.*%.ya?ml$"] = M.ANSIBLE_YAML, + [".*/handlers/.*%.ya?ml$"] = M.ANSIBLE_YAML, + [".*/group_vars/.*%.ya?ml$"] = M.ANSIBLE_YAML, + [".*/host_vars/.*%.ya?ml$"] = M.ANSIBLE_YAML, + [".*/playbooks/.*%.ya?ml$"] = M.ANSIBLE_YAML, }, extension = { j2 = "jinja", @@ -36,9 +42,6 @@ vim.filetype.add({ }, }) --- yaml.ansible soll den regulaeren yaml-Parser von Treesitter verwenden. -vim.treesitter.language.register("yaml", M.ANSIBLE_YAML) - -- nvim-treesitter stellt keinen eigenen jsonc-Parser bereit. Der json-Parser -- versteht // und /* */ Kommentare, deshalb wird er fuer jsonc mitbenutzt. vim.treesitter.language.register("json", "jsonc") -- cgit v1.3