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