diff options
Diffstat (limited to 'mnv/runtime/ftplugin/scheme.mnv')
| -rw-r--r-- | mnv/runtime/ftplugin/scheme.mnv | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/mnv/runtime/ftplugin/scheme.mnv b/mnv/runtime/ftplugin/scheme.mnv new file mode 100644 index 0000000000..e76b696aaf --- /dev/null +++ b/mnv/runtime/ftplugin/scheme.mnv @@ -0,0 +1,61 @@ +" MNV filetype plugin file +" Language: Scheme (R7RS) +" Last Change: 2024 Jun 21 +" 2024 May 23 by Riley Bruins <ribru17@gmail.com> ('commentstring') +" Author: Evan Hanson <evhan@foldling.org> +" Maintainer: Evan Hanson <evhan@foldling.org> +" Previous Maintainer: Sergey Khorev <sergey.khorev@gmail.com> +" Repository: https://git.foldling.org/mnv-scheme.git +" URL: https://foldling.org/mnv/ftplugin/scheme.mnv + +if exists('b:did_ftplugin') + finish +endif + +let s:cpo = &cpo +set cpo&mnv + +setl lisp +setl comments=:;;;;,:;;;,:;;,:;,sr:#\|,mb:\|,ex:\|# +setl commentstring=;\ %s +setl define=^\\s*(def\\k* +setl iskeyword=33,35-39,42-43,45-58,60-90,94,95,97-122,126 +setl formatoptions-=t + +let b:undo_ftplugin = 'setl lisp< comments< commentstring< define< iskeyword< formatoptions<' + +setl lispwords+=case +setl lispwords+=define +setl lispwords+=define-library +setl lispwords+=define-record-type +setl lispwords+=define-syntax +setl lispwords+=define-values +setl lispwords+=do +setl lispwords+=guard +setl lispwords+=lambda +setl lispwords+=let +setl lispwords+=let* +setl lispwords+=let*-values +setl lispwords+=let-syntax +setl lispwords+=let-values +setl lispwords+=letrec +setl lispwords+=letrec* +setl lispwords+=letrec-syntax +setl lispwords+=parameterize +setl lispwords+=set! +setl lispwords+=syntax-rules +setl lispwords+=unless +setl lispwords+=when + +let b:undo_ftplugin = b:undo_ftplugin . ' lispwords<' + +let b:did_scheme_ftplugin = 1 + +if exists('b:is_chicken') || exists('g:is_chicken') + runtime! ftplugin/chicken.mnv +endif + +unlet b:did_scheme_ftplugin +let b:did_ftplugin = 1 +let &cpo = s:cpo +unlet s:cpo |
