From 6a54dcbbd68e70ee067348d1d9c1898befc56972 Mon Sep 17 00:00:00 2001 From: markmacode Date: Tue, 16 Jul 2024 21:18:06 +0200 Subject: [PATCH] runtime(gdscript): add recommended indent options to ftplugin related: #15264 Signed-off-by: markmacode Signed-off-by: Maxim Kim Signed-off-by: Christian Brabandt --- runtime/doc/filetype.txt | 11 +++++++++++ runtime/ftplugin/gdscript.vim | 6 ++++++ 2 files changed, 17 insertions(+) diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt index a342ba4640..1885f86882 100644 --- a/runtime/doc/filetype.txt +++ b/runtime/doc/filetype.txt @@ -623,6 +623,17 @@ any #lang directive overrides, use the following command: > let g:freebasic_lang = "fblite" +GDSCRIPT *ft-gdscript-plugin* + +By default the following options are set, based on Godot official docs: > + + setlocal noexpandtab softtabstop=0 shiftwidth=0 + +To disable this behavior, set the following variable in your vimrc: > + + let g:gdscript_recommended_style = 0 + + GIT COMMIT *ft-gitcommit-plugin* One command, :DiffGitCached, is provided to show a diff of the current commit diff --git a/runtime/ftplugin/gdscript.vim b/runtime/ftplugin/gdscript.vim index 93519d8afe..d1f41c8eaf 100644 --- a/runtime/ftplugin/gdscript.vim +++ b/runtime/ftplugin/gdscript.vim @@ -4,6 +4,7 @@ vim9script # Language: gdscript (Godot game engine scripting language) # Maintainer: Maxim Kim # Website: https://github.com/habamax/vim-gdscript +# Last Change: 2024 Jul 14 if exists("b:did_ftplugin") | finish | endif @@ -22,6 +23,11 @@ setlocal commentstring=#\ %s setlocal foldignore= setlocal foldexpr=GDScriptFoldLevel() +if get(g:, 'gdscript_recommended_style', 1) + setlocal noexpandtab tabstop=4 softtabstop=0 shiftwidth=0 + b:undo_ftplugin ..= ' | setlocal expandtab< tabstop< softtabstop< shiftwidth<' +endif + def GDScriptFoldLevel(): string var line = getline(v:lnum)