xref: /vim-8.2.3635/runtime/ftplugin/scheme.vim (revision 3ad8772e)
1" Vim filetype plugin file
2" Language: Scheme (R7RS)
3" Last Change: 2018-01-20
4" Author: Evan Hanson <[email protected]>
5" Maintainer: Evan Hanson <[email protected]>
6" Previous Maintainer: Sergey Khorev <[email protected]>
7" URL: https://foldling.org/vim/ftplugin/scheme.vim
8
9if exists('b:did_ftplugin')
10  finish
11endif
12
13let s:cpo = &cpo
14set cpo&vim
15
16setl lisp
17setl comments=:;;;;,:;;;,:;;,:;,sr:#\|,ex:\|#
18setl commentstring=;%s
19setl define=^\\s*(def\\k*
20setl iskeyword=33,35-39,42-43,45-58,60-90,94,95,97-122,126
21
22let b:undo_ftplugin = 'setl lisp< comments< commentstring< define< iskeyword<'
23
24setl lispwords=begin
25setl lispwords+=case
26setl lispwords+=case-lambda
27setl lispwords+=cond
28setl lispwords+=cond-expand
29setl lispwords+=define
30setl lispwords+=define-record-type
31setl lispwords+=define-syntax
32setl lispwords+=define-values
33setl lispwords+=do
34setl lispwords+=guard
35setl lispwords+=import
36setl lispwords+=lambda
37setl lispwords+=let
38setl lispwords+=let*
39setl lispwords+=let*-values
40setl lispwords+=let-syntax
41setl lispwords+=let-values
42setl lispwords+=letrec
43setl lispwords+=letrec*
44setl lispwords+=letrec-syntax
45setl lispwords+=parameterize
46setl lispwords+=set!
47setl lispwords+=syntax-rules
48setl lispwords+=unless
49setl lispwords+=when
50
51let b:undo_ftplugin = b:undo_ftplugin . ' lispwords<'
52
53let b:did_scheme_ftplugin = 1
54
55if exists('b:is_chicken') || exists('g:is_chicken')
56  exe 'ru! ftplugin/chicken.vim'
57endif
58
59unlet b:did_scheme_ftplugin
60let b:did_ftplugin = 1
61let &cpo = s:cpo
62unlet s:cpo
63