diff options
author | Tim Pope <code@tpope.net> | 2023-12-28 12:49:07 -0500 |
---|---|---|
committer | Christian Brabandt <cb@256bit.org> | 2023-12-28 23:17:54 +0100 |
commit | a907c91992167e41da41008d4370e434e324cbf2 (patch) | |
tree | 40579359e73cbad4efa74dff96a3adbaab2ab6ef | |
parent | fda02d03c0cfe017e465c58b3baf8b3106287578 (diff) |
runtime(sass): Provide sass_recommended_style option
-rw-r--r-- | runtime/ftplugin/sass.vim | 7 | ||||
-rw-r--r-- | runtime/indent/sass.vim | 6 |
2 files changed, 8 insertions, 5 deletions
diff --git a/runtime/ftplugin/sass.vim b/runtime/ftplugin/sass.vim index 9ce446137a..e650be9312 100644 --- a/runtime/ftplugin/sass.vim +++ b/runtime/ftplugin/sass.vim @@ -1,7 +1,7 @@ " Vim filetype plugin " Language: Sass " Maintainer: Tim Pope <vimNOSPAM@tpope.org> -" Last Change: 2019 Dec 05 +" Last Change: 2023 Dec 28 " Only do this when not done yet for this buffer if exists("b:did_ftplugin") @@ -23,6 +23,11 @@ if &filetype =~# '\<s[ac]ss]\>' let b:undo_ftplugin .= ' isk<' endif +if get(g:, 'sass_recommended_style', 1) + setlocal shiftwidth=2 softtabstop=2 expandtab + let b:undo_ftplugin .= ' sw< sts< et<' +endif + let &l:define = '^\C\v\s*%(\@function|\@mixin|\=)|^\s*%(\$[[:alnum:]-]+:|[%.][:alnum:]-]+\s*%(\{|$))@=' let &l:include = '^\s*@import\s\+\%(url(\)\=["'']\=' diff --git a/runtime/indent/sass.vim b/runtime/indent/sass.vim index 8c0ecd0746..45dc869a55 100644 --- a/runtime/indent/sass.vim +++ b/runtime/indent/sass.vim @@ -1,14 +1,14 @@ " Vim indent file " Language: Sass " Maintainer: Tim Pope <vimNOSPAM@tpope.org> -" Last Change: 2022 Mar 15 +" Last Change: 2023 Dec 28 if exists("b:did_indent") finish endif let b:did_indent = 1 -setlocal autoindent sw=2 et +setlocal autoindent setlocal indentexpr=GetSassIndent() setlocal indentkeys=o,O,*<Return>,<:>,!^F @@ -26,10 +26,8 @@ function! GetSassIndent() let lnum = prevnonblank(v:lnum-1) let line = substitute(getline(lnum),'\s\+$','','') let cline = substitute(substitute(getline(v:lnum),'\s\+$','',''),'^\s\+','','') - let lastcol = strlen(line) let line = substitute(line,'^\s\+','','') let indent = indent(lnum) - let cindent = indent(v:lnum) if line !~ s:property && line !~ s:extend && cline =~ s:property return indent + shiftwidth() else |