Phạm Bình An | 3704b5b | 2025-05-10 21:20:57 +0200 | [diff] [blame] | 1 | " Tutor filetype plugin |
| 2 | " Language: Tutor (the new tutor plugin) |
| 3 | " Maintainer: This runtime file is looking for a new maintainer. |
| 4 | " Last Change: 2025 May 10 |
| 5 | " Contributors: Phạm Bình An <phambinhanctb2004@gmail.com> |
| 6 | " Original Author: Felipe Morales <hel.sheep@gmail.com> |
| 7 | " Last Change: |
| 8 | " 2025 May 10 set b:undo_ftplugin |
Phạm Bình An | 13bea58 | 2025-05-12 20:39:24 +0200 | [diff] [blame] | 9 | " 2025 May 12 update b:undo_ftplugin |
Yegappan Lakshmanan | a54816b | 2024-11-03 10:49:23 +0100 | [diff] [blame] | 10 | |
| 11 | " Base: {{{1 |
| 12 | call tutor#SetupVim() |
| 13 | |
| 14 | " Buffer Settings: {{{1 |
| 15 | setlocal noreadonly |
Yegappan Lakshmanan | a54816b | 2024-11-03 10:49:23 +0100 | [diff] [blame] | 16 | setlocal noundofile |
| 17 | |
| 18 | setlocal keywordprg=:help |
| 19 | setlocal iskeyword=@,-,_ |
| 20 | |
| 21 | " The user will have to enable the folds himself, but we provide the foldexpr |
| 22 | " function. |
| 23 | setlocal foldmethod=manual |
| 24 | setlocal foldexpr=tutor#TutorFolds() |
| 25 | setlocal foldlevel=4 |
| 26 | |
| 27 | " Load metadata if it exists: {{{1 |
| 28 | if filereadable(expand('%').'.json') |
| 29 | call tutor#LoadMetadata() |
| 30 | endif |
| 31 | |
| 32 | " Mappings: {{{1 |
| 33 | |
| 34 | call tutor#SetNormalMappings() |
| 35 | |
| 36 | " Checks: {{{1 |
| 37 | |
| 38 | sign define tutorok text=✓ texthl=tutorOK |
| 39 | sign define tutorbad text=✗ texthl=tutorX |
| 40 | |
Phạm Bình An | 13bea58 | 2025-05-12 20:39:24 +0200 | [diff] [blame] | 41 | let b:undo_ftplugin = "setl foldmethod< foldexpr< foldlevel< undofile< keywordprg< iskeyword< |" |
| 42 | \ . "call tutor#EnableInteractive(v:false) |" |
Phạm Bình An | 3704b5b | 2025-05-10 21:20:57 +0200 | [diff] [blame] | 43 | |
| 44 | " vim: fdm=marker |