| " Vim script for exists() function test |
| " Script-local variables are checked here |
| |
| " Existing script-local variable |
| let s:script_var = 1 |
| echo 's:script_var: 1' |
| if exists('s:script_var') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Non-existing script-local variable |
| unlet s:script_var |
| echo 's:script_var: 0' |
| if !exists('s:script_var') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Existing script-local list |
| let s:script_list = ["blue", "orange"] |
| echo 's:script_list: 1' |
| if exists('s:script_list') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Non-existing script-local list |
| unlet s:script_list |
| echo 's:script_list: 0' |
| if !exists('s:script_list') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Existing script-local dictionary |
| let s:script_dict = {"xcord":100, "ycord":2} |
| echo 's:script_dict: 1' |
| if exists('s:script_dict') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Non-existing script-local dictionary |
| unlet s:script_dict |
| echo 's:script_dict: 0' |
| if !exists('s:script_dict') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Existing script curly-brace variable |
| let str = "script" |
| let s:curly_{str}_var = 1 |
| echo 's:curly_' . str . '_var: 1' |
| if exists('s:curly_{str}_var') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Non-existing script-local curly-brace variable |
| unlet s:curly_{str}_var |
| echo 's:curly_' . str . '_var: 0' |
| if !exists('s:curly_{str}_var') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Existing script-local function |
| function! s:my_script_func() |
| endfunction |
| |
| echo '*s:my_script_func: 1' |
| if exists('*s:my_script_func') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| |
| " Non-existing script-local function |
| delfunction s:my_script_func |
| |
| echo '*s:my_script_func: 0' |
| if !exists('*s:my_script_func') |
| echo "OK" |
| else |
| echo "FAILED" |
| endif |
| unlet str |
| |