patch 9.1.1384: still some problem with the new tutors filetype plugin
Problem: still some problem with the new tutors filetype plugin
Solution: refactor code to enable/disable tutor mode into
tutor#EnableInteractive() function, include a test
(Phạm Bình An)
I find it annoying that Tutor's interactive mode is always on (or debug
mode is off) even when I open a tutor file with :edit command.
I think it makes more sense to make this "interactive mode":
- Always on when it is opened with :Tutor command
- Off otherwise
For more references, see `:help` feature, it is a much better than
:Tutor, since I don't have to run `:let g:help_debug = 1` just to be able
to edit and save a help file
Therefore, I remove `g:tutor_debug`
closes: #17299
Signed-off-by: Phạm Bình An <phambinhanctb2004@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/ftplugin/tutor.vim b/runtime/ftplugin/tutor.vim
index 5660cbf..92bca8d 100644
--- a/runtime/ftplugin/tutor.vim
+++ b/runtime/ftplugin/tutor.vim
@@ -6,21 +6,13 @@
" Original Author: Felipe Morales <hel.sheep@gmail.com>
" Last Change:
" 2025 May 10 set b:undo_ftplugin
+" 2025 May 12 update b:undo_ftplugin
" Base: {{{1
call tutor#SetupVim()
" Buffer Settings: {{{1
setlocal noreadonly
-if !exists('g:tutor_debug') || g:tutor_debug == 0
- setlocal buftype=nofile
- setlocal concealcursor+=inv
- setlocal conceallevel=2
-else
- setlocal buftype=
- setlocal concealcursor&
- setlocal conceallevel=0
-endif
setlocal noundofile
setlocal keywordprg=:help
@@ -46,14 +38,7 @@
sign define tutorok text=✓ texthl=tutorOK
sign define tutorbad text=✗ texthl=tutorX
-if !exists('g:tutor_debug') || g:tutor_debug == 0
- call tutor#ApplyMarks()
- autocmd! TextChanged,TextChangedI <buffer> call tutor#ApplyMarksOnChanged()
-endif
-
-let b:undo_ftplugin = 'unlet! g:tutor_debug |'
-let b:undo_ftplugin ..= 'setl concealcursor< conceallevel< |'
-let b:undo_ftplugin ..= 'setl foldmethod< foldexpr< foldlevel< |'
-let b:undo_ftplugin ..= 'setl buftype< undofile< keywordprg< iskeyword< |'
+let b:undo_ftplugin = "setl foldmethod< foldexpr< foldlevel< undofile< keywordprg< iskeyword< |"
+ \ . "call tutor#EnableInteractive(v:false) |"
" vim: fdm=marker