xref: /vim-8.2.3635/runtime/ftplugin/sass.vim (revision c08ee747)
1" Vim filetype plugin
2" Language:	Sass
3" Maintainer:	Tim Pope <[email protected]>
4" Last Change:	2019 Dec 05
5
6" Only do this when not done yet for this buffer
7if exists("b:did_ftplugin")
8  finish
9endif
10let b:did_ftplugin = 1
11
12let b:undo_ftplugin = "setl com< cms< def< inc< inex< ofu< sua<"
13
14setlocal comments=://
15setlocal commentstring=//\ %s
16setlocal includeexpr=SassIncludeExpr(v:fname)
17setlocal omnifunc=csscomplete#CompleteCSS
18setlocal suffixesadd=.sass,.scss,.css
19if &filetype =~# '\<s[ac]ss]\>'
20  setlocal iskeyword+=-
21  setlocal iskeyword+=$
22  setlocal iskeyword+=%
23  let b:undo_ftplugin .= ' isk<'
24endif
25
26let &l:define = '^\C\v\s*%(\@function|\@mixin|\=)|^\s*%(\$[[:alnum:]-]+:|[%.][:alnum:]-]+\s*%(\{|$))@='
27let &l:include = '^\s*@import\s\+\%(url(\)\=["'']\='
28
29function! SassIncludeExpr(file) abort
30  let partial = substitute(a:file, '\%(.*/\|^\)\zs', '_', '')
31  if !empty(findfile(partial))
32    return partial
33  endif
34  return a:file
35endfunction
36
37" vim:set sw=2:
38