view runtime/ftplugin/sh.vim @ 22812:1ef3b04875ff v8.2.1954

patch 8.2.1954: Vim9: not all command modifiers are tested Commit: https://github.com/vim/vim/commit/f65b35b4465d3622128bd82bd3775f833542eb1f Author: Bram Moolenaar <Bram@vim.org> Date: Wed Nov 4 18:02:44 2020 +0100 patch 8.2.1954: Vim9: not all command modifiers are tested Problem: Vim9: not all command modifiers are tested. Solution: Add tests for "keep" modifiers. Fix that marks are lost even though ":lockmarks" is used.
author Bram Moolenaar <Bram@vim.org>
date Wed, 04 Nov 2020 18:15:03 +0100
parents 94601b379f38
children c968191a8557
line wrap: on
line source

" Vim filetype plugin file
" Language:	sh
" Maintainer:	Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL:		http://dwsharp.users.sourceforge.net/vim/ftplugin

if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1

" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C

setlocal commentstring=#%s

" Shell:  thanks to Johannes Zellner
if exists("loaded_matchit")
    let s:sol = '\%(;\s*\|^\s*\)\@<='  " start of line
    let b:match_words =
    \ s:sol.'if\>:' . s:sol.'elif\>:' . s:sol.'else\>:' . s:sol. 'fi\>,' .
    \ s:sol.'\%(for\|while\)\>:' . s:sol. 'done\>,' .
    \ s:sol.'case\>:' . s:sol. 'esac\>'
endif

" Change the :browse e filter to primarily show shell-related files.
if has("gui_win32")
    let  b:browsefilter="Bourne Shell Scripts (*.sh)\t*.sh\n" .
		\	"Korn Shell Scripts (*.ksh)\t*.ksh\n" .
		\	"Bash Shell Scripts (*.bash)\t*.bash\n" .
		\	"All Files (*.*)\t*.*\n"
endif

" Undo the stuff we changed.
let b:undo_ftplugin = "setlocal cms< | unlet! b:browsefilter b:match_words"

" Restore the saved compatibility options.
let &cpo = s:save_cpo
unlet s:save_cpo