Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 1 | " Vim filetype plugin file |
| 2 | " Language: Scheme (R7RS) |
Bram Moolenaar | 403f3eb | 2019-11-20 22:31:13 +0100 | [diff] [blame] | 3 | " Last Change: 2019 Nov 18 |
Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 4 | " Author: Evan Hanson <evhan@foldling.org> |
| 5 | " Maintainer: Evan Hanson <evhan@foldling.org> |
| 6 | " Previous Maintainer: Sergey Khorev <sergey.khorev@gmail.com> |
| 7 | " URL: https://foldling.org/vim/ftplugin/scheme.vim |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 8 | |
Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 9 | if exists('b:did_ftplugin') |
Bram Moolenaar | 6ee8d89 | 2012-01-10 14:55:01 +0100 | [diff] [blame] | 10 | finish |
| 11 | endif |
Bram Moolenaar | 293ee4d | 2004-12-09 21:34:53 +0000 | [diff] [blame] | 12 | |
Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 13 | let s:cpo = &cpo |
| 14 | set cpo&vim |
Bram Moolenaar | 6ee8d89 | 2012-01-10 14:55:01 +0100 | [diff] [blame] | 15 | |
Bram Moolenaar | 6ee8d89 | 2012-01-10 14:55:01 +0100 | [diff] [blame] | 16 | setl lisp |
Bram Moolenaar | b5b7562 | 2018-03-09 22:22:21 +0100 | [diff] [blame] | 17 | setl comments=:;;;;,:;;;,:;;,:;,sr:#\|,mb:\|,ex:\|# |
Bram Moolenaar | 0015450 | 2013-02-13 16:15:55 +0100 | [diff] [blame] | 18 | setl commentstring=;%s |
Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 19 | setl define=^\\s*(def\\k* |
| 20 | setl iskeyword=33,35-39,42-43,45-58,60-90,94,95,97-122,126 |
Bram Moolenaar | 6ee8d89 | 2012-01-10 14:55:01 +0100 | [diff] [blame] | 21 | |
Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 22 | let b:undo_ftplugin = 'setl lisp< comments< commentstring< define< iskeyword<' |
Bram Moolenaar | 6ee8d89 | 2012-01-10 14:55:01 +0100 | [diff] [blame] | 23 | |
Bram Moolenaar | 403f3eb | 2019-11-20 22:31:13 +0100 | [diff] [blame] | 24 | setl lispwords+=case |
Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 25 | setl lispwords+=define |
| 26 | setl lispwords+=define-record-type |
| 27 | setl lispwords+=define-syntax |
| 28 | setl lispwords+=define-values |
| 29 | setl lispwords+=do |
| 30 | setl lispwords+=guard |
Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 31 | setl lispwords+=lambda |
| 32 | setl lispwords+=let |
| 33 | setl lispwords+=let* |
| 34 | setl lispwords+=let*-values |
| 35 | setl lispwords+=let-syntax |
| 36 | setl lispwords+=let-values |
| 37 | setl lispwords+=letrec |
| 38 | setl lispwords+=letrec* |
| 39 | setl lispwords+=letrec-syntax |
| 40 | setl lispwords+=parameterize |
| 41 | setl lispwords+=set! |
| 42 | setl lispwords+=syntax-rules |
| 43 | setl lispwords+=unless |
| 44 | setl lispwords+=when |
| 45 | |
| 46 | let b:undo_ftplugin = b:undo_ftplugin . ' lispwords<' |
| 47 | |
| 48 | let b:did_scheme_ftplugin = 1 |
| 49 | |
| 50 | if exists('b:is_chicken') || exists('g:is_chicken') |
| 51 | exe 'ru! ftplugin/chicken.vim' |
Bram Moolenaar | 293ee4d | 2004-12-09 21:34:53 +0000 | [diff] [blame] | 52 | endif |
| 53 | |
Bram Moolenaar | 7254067 | 2018-02-09 22:00:53 +0100 | [diff] [blame] | 54 | unlet b:did_scheme_ftplugin |
| 55 | let b:did_ftplugin = 1 |
| 56 | let &cpo = s:cpo |
| 57 | unlet s:cpo |