Attached is a tiny patch to update sh.vim to support ksh93's ${!var[*]}
associative array index key list dereference syntax.
Basically, if foo is an associative array, print ${!foo[*]} would output
all the index keys associated with foo.
--
Will Fiveash
Oracle Solaris Software Engineer
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.
diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim
--- a/runtime/syntax/sh.vim
+++ b/runtime/syntax/sh.vim
@@ -438,6 +438,12 @@
syn region shDeref matchgroup=PreProc start="\${\$\$" end="}"
contains=@shDerefList
endif
+" ksh: ${!var[*]} array index list syntax: {{{1
+" ========================================
+if exists("b:is_kornshell")
+ syn region shDeref matchgroup=PreProc start="\${!" end="}"
contains=@shDerefVarArray
+endif
+
" bash: ${!prefix*} and ${#parameter}: {{{1
" ====================================
if exists("b:is_bash")