diff options
Diffstat (limited to 'runtime/ftplugin/awk.vim')
-rw-r--r-- | runtime/ftplugin/awk.vim | 41 |
1 files changed, 39 insertions, 2 deletions
diff --git a/runtime/ftplugin/awk.vim b/runtime/ftplugin/awk.vim index dcefc85ec3..9809fec383 100644 --- a/runtime/ftplugin/awk.vim +++ b/runtime/ftplugin/awk.vim @@ -1,9 +1,10 @@ " Vim filetype plugin " Language: awk, nawk, gawk, mawk " Maintainer: Antonio Colombo <azc100@gmail.com> -" Last Change: 2017 Feb 17 +" Last Change: 2020 Sep 28 " This plugin was prepared by Mark Sikora +" This plugin was updated as proposed by Doug Kearns " Only do this when not done yet for this buffer if exists("b:did_ftplugin") @@ -13,6 +14,42 @@ endif " Don't load another plugin for this buffer let b:did_ftplugin = 1 -let b:undo_ftplugin = "setl commentstring<" +let s:cpo_save = &cpo +set cpo&vim +setlocal comments=:# setlocal commentstring=#\ %s +setlocal formatoptions-=t formatoptions+=croql + +setlocal define=function +setlocal suffixesadd+=.awk + +let b:undo_ftplugin = "setl fo< com< cms< def< sua<" . + \ " | unlet! b:browsefilter" + +" TODO: set this in scripts.vim? +if exists("g:awk_is_gawk") + setlocal include=@include + setlocal suffixesadd+=.gawk + if has("unix") || has("win32unix") + setlocal formatprg=gawk\ -f-\ -o/dev/stdout + let b:undo_ftplugin .= " | setl fp<" + endif + + let path = system("gawk 'BEGIN { printf ENVIRON[\"AWKPATH\"] }'") + let path = substitute(path, '^\.\=:\|:\.\=$\|:\.\=:', ',,', 'g') " POSIX cwd + let path = substitute(path, ':', ',', 'g') + + let &l:path = path + let b:undo_ftplugin .= " | setl inc< path<" +endif + +if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter") + let b:browsefilter = "Awk Source Files (*.awk,*.gawk)\t*.awk;*.gawk\n" . + \ "All Files (*.*)\t*.*\n" +endif + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: nowrap sw=2 sts=2 ts=8 |