summaryrefslogtreecommitdiffstats
path: root/ftplugin/bzl.vim
diff options
context:
space:
mode:
Diffstat (limited to 'ftplugin/bzl.vim')
-rw-r--r--ftplugin/bzl.vim98
1 files changed, 0 insertions, 98 deletions
diff --git a/ftplugin/bzl.vim b/ftplugin/bzl.vim
deleted file mode 100644
index a8cfdc4b..00000000
--- a/ftplugin/bzl.vim
+++ /dev/null
@@ -1,98 +0,0 @@
-if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
-
-" Vim filetype plugin file
-" Language: Bazel (http://bazel.io)
-" Maintainer: David Barnett (https://github.com/google/vim-ft-bzl)
-" Last Change: 2015 Aug 11
-
-""
-" @section Introduction, intro
-" Core settings for the bzl filetype, used for BUILD and *.bzl files for the
-" Bazel build system (http://bazel.io/).
-
-if exists('b:did_ftplugin')
- finish
-endif
-
-
-" Vim 7.4.051 has opinionated settings in ftplugin/python.vim that try to force
-" PEP8 conventions on every python file, but these conflict with Google's
-" indentation guidelines. As a workaround, we explicitly source the system
-" ftplugin, but save indentation settings beforehand and restore them after.
-let s:save_expandtab = &l:expandtab
-let s:save_shiftwidth = &l:shiftwidth
-let s:save_softtabstop = &l:softtabstop
-let s:save_tabstop = &l:tabstop
-
-" NOTE: Vim versions before 7.3.511 had a ftplugin/python.vim that was broken
-" for compatible mode.
-let s:save_cpo = &cpo
-set cpo&vim
-
-" Load base python ftplugin (also defines b:did_ftplugin).
-source $VIMRUNTIME/ftplugin/python.vim
-
-" NOTE: Vim versions before 7.4.104 and later set this in ftplugin/python.vim.
-setlocal comments=b:#,fb:-
-
-" Restore pre-existing indentation settings.
-let &l:expandtab = s:save_expandtab
-let &l:shiftwidth = s:save_shiftwidth
-let &l:softtabstop = s:save_softtabstop
-let &l:tabstop = s:save_tabstop
-
-setlocal formatoptions-=t
-
-" Make gf work with imports in BUILD files.
-setlocal includeexpr=substitute(v:fname,'//','','')
-
-" Enable syntax-based folding, if specified.
-if get(g:, 'ft_bzl_fold', 0)
- setlocal foldmethod=syntax
- setlocal foldtext=BzlFoldText()
-endif
-
-if exists('*BzlFoldText')
- finish
-endif
-
-function BzlFoldText() abort
- let l:start_num = nextnonblank(v:foldstart)
- let l:end_num = prevnonblank(v:foldend)
-
- if l:end_num <= l:start_num + 1
- " If the fold is empty, don't print anything for the contents.
- let l:content = ''
- else
- " Otherwise look for something matching the content regex.
- " And if nothing matches, print an ellipsis.
- let l:content = '...'
- for l:line in getline(l:start_num + 1, l:end_num - 1)
- let l:content_match = matchstr(l:line, '\m\C^\s*name = \zs.*\ze,$')
- if !empty(l:content_match)
- let l:content = l:content_match
- break
- endif
- endfor
- endif
-
- " Enclose content with start and end
- let l:start_text = getline(l:start_num)
- let l:end_text = substitute(getline(l:end_num), '^\s*', '', '')
- let l:text = l:start_text . ' ' . l:content . ' ' . l:end_text
-
- " Compute the available width for the displayed text.
- let l:width = winwidth(0) - &foldcolumn - (&number ? &numberwidth : 0)
- let l:lines_folded = ' ' . string(1 + v:foldend - v:foldstart) . ' lines'
-
- " Expand tabs, truncate, pad, and concatenate
- let l:text = substitute(l:text, '\t', repeat(' ', &tabstop), 'g')
- let l:text = strpart(l:text, 0, l:width - len(l:lines_folded))
- let l:padding = repeat(' ', l:width - len(l:lines_folded) - len(l:text))
- return l:text . l:padding . l:lines_folded
-endfunction
-
-let &cpo = s:save_cpo
-unlet s:save_cpo
-
-endif