summaryrefslogtreecommitdiffstats
path: root/polyglot.vim
diff options
context:
space:
mode:
authorAdam Stankiewicz <sheerun@sher.pl>2020-09-24 22:52:50 +0200
committerAdam Stankiewicz <sheerun@sher.pl>2020-09-24 22:52:50 +0200
commita6a6aeab76bef135d9f76534efa5ee7391c4ed2a (patch)
tree5185bc4f10e43058b3565c3eeef827327b26eab4 /polyglot.vim
parent444e7f184df91f1605f06242ad68defb33c2f454 (diff)
downloadvim-polyglot-4.12.0.tar.gz
vim-polyglot-4.12.0.zip
Improve django filetype detection, closes #560v4.12.0
Diffstat (limited to 'polyglot.vim')
-rw-r--r--polyglot.vim17
1 files changed, 9 insertions, 8 deletions
diff --git a/polyglot.vim b/polyglot.vim
index 9199a207..3ac6ef38 100644
--- a/polyglot.vim
+++ b/polyglot.vim
@@ -4,13 +4,6 @@
let s:cpo_save = &cpo
set cpo&vim
-func! polyglot#ObserveShebang()
- augroup polyglot-observer
- au! CursorHold,CursorHoldI,BufWritePost <buffer>
- \ if polyglot#Shebang() | au! polyglot-observer CursorHold,CursorHoldI,BufWritePost | endif
- augroup END
-endfunc
-
func! polyglot#Shebang()
if getline(1) =~# "^#!"
let ft = polyglot#ShebangFiletype()
@@ -84,6 +77,14 @@ if exists('g:polyglot_test')
autocmd!
endif
+func! polyglot#Observe(fn)
+ let b:polyglot_observe = a:fn
+ augroup polyglot-observer
+ au! CursorHold,CursorHoldI,BufWritePost <buffer>
+ \ execute('if polyglot#' . b:polyglot_observe . '() | au! polyglot-observer | endif')
+ augroup END
+endfunc
+
let s:disabled_packages = {}
let s:new_polyglot_disabled = []
@@ -170,7 +171,7 @@ au! BufNewFile,BufRead,StdinReadPost * if expand("<afile>") !~ g:ft_ignore_pat |
\ call polyglot#Shebang() | endif
au BufEnter * if &ft == "" && expand("<afile>") !~ g:ft_ignore_pat |
- \ call polyglot#ObserveShebang() | endif
+ \ call polyglot#Observe('Shebang') | endif
augroup END