annotate runtime/ftplugin/freebasic.vim @ 27459:5825405e4e2c

Update runtime files Commit: https://github.com/vim/vim/commit/f10911e5db16f1fe6ab519c5d091ad0c1df0d063 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jan 29 22:20:48 2022 +0000 Update runtime files
author Bram Moolenaar <Bram@vim.org>
date Sat, 29 Jan 2022 23:30:04 +0100
parents 34b4eb3a8458
children 912224cab37f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23737
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
1 " Vim filetype plugin file
27459
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
2 " Language: FreeBASIC
23737
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
3 " Maintainer: Doug Kearns <dougkearns@gmail.com>
27459
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
4 " Last Change: 2021 Mar 16
23737
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
5
27459
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
6 " Setup {{{1
23737
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
7 if exists("b:did_ftplugin")
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
8 finish
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
9 endif
27459
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
10
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
11 let s:cpo_save = &cpo
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
12 set cpo&vim
23737
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
13
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
14 runtime! ftplugin/basic.vim
34b4eb3a8458 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
15
27459
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
16 let s:dialect = freebasic#GetDialect()
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
17
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
18 " Comments {{{1
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
19 " add ''comments before 'comments
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
20 let &l:comments = "sO:*\ -,mO:*\ \ ,exO:*/,s1:/',mb:',ex:'/,:''," .. &l:comments
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
21
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
22 " Match words {{{1
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
23 if exists("loaded_matchit")
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
24 let s:not_end = '\%(end\s\+\)\@<!'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
25
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
26 let b:match_words ..= ','
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
27
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
28 if s:dialect == 'fb'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
29 let b:match_words ..= s:not_end .. '\<constructor\>:\<end\s\+constructor\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
30 \ s:not_end .. '\<destructor\>:\<end\s\+destructor\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
31 \ s:not_end .. '\<property\>:\<end\s\+property\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
32 \ s:not_end .. '\<operator\>:\<end\s\+operator\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
33 \ s:not_end .. '\<extern\%(\s\+"\)\@=:\<end\s\+extern\>,'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
34 endif
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
35
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
36 if s:dialect == 'fb' || s:dialect == 'deprecated'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
37 let b:match_words ..= s:not_end .. '\<scope\>:\<end\s\+scope\>,'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
38 endif
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
39
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
40 if s:dialect == 'qb'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
41 let b:match_words ..= s:not_end .. '\<__asm\>:\<end\s\+__asm\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
42 \ s:not_end .. '\<__union\>:\<end\s\+__union\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
43 \ s:not_end .. '\<__with\>:\<end\s\+__with\>,'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
44 else
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
45 let b:match_words ..= s:not_end .. '\<asm\>:\<end\s\+asm\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
46 \ s:not_end .. '\<namespace\>:\<end\s\+namespace\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
47 \ s:not_end .. '\<union\>:\<end\s\+union\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
48 \ s:not_end .. '\<with\>:\<end\s\+with\>,'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
49 endif
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
50
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
51 let b:match_words ..= s:not_end .. '\<enum\>:\<end\s\+enum\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
52 \ '^#\s*\%(if\|ifdef\|ifndef\)\>:^#\s*\%(else\|elseif\)\>:^#\s*endif\>,' ..
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
53 \ '^#\s*macro\>:^#\s*endmacro\>'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
54
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
55 " skip "function = <retval>"
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
56 let b:match_skip ..= '|| strpart(getline("."), col(".") - 1) =~? "^\\<function\\s\\+="'
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
57
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
58 unlet s:not_end
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
59 endif
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
60
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
61 " Cleanup {{{1
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
62 let &cpo = s:cpo_save
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
63 unlet s:cpo_save
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
64
5825405e4e2c Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 23737
diff changeset
65 " vim: nowrap sw=2 sts=2 ts=8 noet fdm=marker: