annotate runtime/syntax/chicken.vim @ 29227:a10714fe6372

Added tag v8.2.5132 for changeset 699fbccbeab8912c59c900a8e49dd24a3c8e8d95
author Bram Moolenaar <Bram@vim.org>
date Sun, 19 Jun 2022 18:30:03 +0200
parents 9c221ad9634a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
13231
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1 " Vim syntax file
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2 " Language: Scheme (CHICKEN)
25880
9c221ad9634a Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 25619
diff changeset
3 " Last Change: 2021 Oct 01
13231
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
4 " Author: Evan Hanson <evhan@foldling.org>
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
5 " Maintainer: Evan Hanson <evhan@foldling.org>
25619
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
6 " Repository: https://git.foldling.org/vim-scheme.git
13231
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
7 " URL: https://foldling.org/vim/syntax/chicken.vim
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
8 " Notes: This is supplemental syntax, to be loaded after the core Scheme
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
9 " syntax file (syntax/scheme.vim). Enable it by setting b:is_chicken=1
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
10 " and filetype=scheme.
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
11
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
12 " Only to be used on top of the Scheme syntax.
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
13 if !exists('b:did_scheme_syntax')
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
14 finish
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
15 endif
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
16
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
17 " Lighten parentheses.
13437
02b3f719eacb Update runtime files.
Christian Brabandt <cb@256bit.org>
parents: 13231
diff changeset
18 hi! def link schemeParentheses Comment
13231
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
19
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
20 " foo#bar
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
21 syn match schemeExtraSyntax /[^ #'`\t\n()\[\]"|;]\+#[^ '`\t\n()\[\]"|;]\+/
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
22
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
23 " ##foo#bar
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
24 syn match schemeExtraSyntax /##[^ '`\t\n()\[\]"|;]\+/
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
25
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
26 " Heredocs.
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
27 syn region schemeString start=/#<[<#]\s*\z(.*\)/ end=/^\z1$/
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
28
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
29 " Keywords.
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
30 syn match schemeKeyword /#[!:][a-zA-Z0-9!$%&*+-./:<=>?@^_~#]\+/
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
31 syn match schemeKeyword /[a-zA-Z0-9!$%&*+-./:<=>?@^_~#]\+:\>/
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
32
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
33 " C/C++ syntax.
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
34 let s:c = globpath(&rtp, 'syntax/cpp.vim', 0, 1)
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
35 if len(s:c)
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
36 exe 'syn include @c ' s:c[0]
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
37 syn region c matchgroup=schemeComment start=/#>/ end=/<#/ contains=@c
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
38 endif
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
39
25880
9c221ad9634a Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 25619
diff changeset
40 " SRFI 26
25619
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
41 syn match schemeSyntax /\(([ \t\n]*\)\@<=\(cut\|cute\)\>/
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
42
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
43 syn keyword schemeSyntax and-let*
13231
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
44 syn keyword schemeSyntax define-record
25619
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
45 syn keyword schemeSyntax set!-values
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
46 syn keyword schemeSyntax fluid-let
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
47 syn keyword schemeSyntax let-optionals
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
48 syn keyword schemeSyntax let-optionals*
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
49 syn keyword schemeSyntax letrec-values
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
50 syn keyword schemeSyntax nth-value
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
51 syn keyword schemeSyntax receive
13231
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
52
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
53 syn keyword schemeLibrarySyntax declare
25619
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
54 syn keyword schemeLibrarySyntax define-interface
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
55 syn keyword schemeLibrarySyntax functor
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
56 syn keyword schemeLibrarySyntax include-relative
13231
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
57 syn keyword schemeLibrarySyntax module
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
58 syn keyword schemeLibrarySyntax reexport
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
59 syn keyword schemeLibrarySyntax require-library
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
60
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
61 syn keyword schemeTypeSyntax -->
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
62 syn keyword schemeTypeSyntax ->
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
63 syn keyword schemeTypeSyntax :
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
64 syn keyword schemeTypeSyntax assume
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
65 syn keyword schemeTypeSyntax compiler-typecase
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
66 syn keyword schemeTypeSyntax define-specialization
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
67 syn keyword schemeTypeSyntax define-type
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
68 syn keyword schemeTypeSyntax the
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
69
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
70 syn keyword schemeExtraSyntax match
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
71 syn keyword schemeExtraSyntax match-lambda
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
72 syn keyword schemeExtraSyntax match-lambda*
25619
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
73 syn keyword schemeExtraSyntax match-let
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
74 syn keyword schemeExtraSyntax match-let*
29ec2c198c8d Update runtime files
Bram Moolenaar <Bram@vim.org>
parents: 13437
diff changeset
75 syn keyword schemeExtraSyntax match-letrec
13231
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
76
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
77 syn keyword schemeSpecialSyntax define-compiler-syntax
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
78 syn keyword schemeSpecialSyntax define-constant
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
79 syn keyword schemeSpecialSyntax define-external
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
80 syn keyword schemeSpecialSyntax define-inline
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
81 syn keyword schemeSpecialSyntax foreign-code
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
82 syn keyword schemeSpecialSyntax foreign-declare
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
83 syn keyword schemeSpecialSyntax foreign-lambda
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
84 syn keyword schemeSpecialSyntax foreign-lambda*
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
85 syn keyword schemeSpecialSyntax foreign-primitive
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
86 syn keyword schemeSpecialSyntax foreign-safe-lambda
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
87 syn keyword schemeSpecialSyntax foreign-safe-lambda*
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
88 syn keyword schemeSpecialSyntax foreign-value
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
89
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
90 syn keyword schemeSyntaxSyntax begin-for-syntax
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
91 syn keyword schemeSyntaxSyntax define-for-syntax
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
92 syn keyword schemeSyntaxSyntax er-macro-transformer
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
93 syn keyword schemeSyntaxSyntax ir-macro-transformer
167a030448fa Update runtime files.
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
94 syn keyword schemeSyntaxSyntax require-library-for-syntax