runtime(hlsplaylist): include hlsplaylist ftplugin file Commit: https://github.com/vim/vim/commit/ab03dd2085a37a62864cbf8616ebd52b8bbc3f6b Author: AvidSeeker <avidseek...@protonmail.com> Date: Mon Jul 8 21:10:08 2024 +0200
runtime(hlsplaylist): include hlsplaylist ftplugin file fixes: https://github.com/vim/vim/issues/15156 closes: https://github.com/vim/vim/issues/15162 Co-authored-by: zeertzjq <zeert...@outlook.com> Signed-off-by: AvidSeeker <avidseek...@protonmail.com> Signed-off-by: Christian Brabandt <c...@256bit.org> diff --git a/.github/MAINTAINERS b/.github/MAINTAINERS index 556a47d7f..f546a6782 100644 --- a/.github/MAINTAINERS +++ b/.github/MAINTAINERS @@ -107,7 +107,7 @@ runtime/compiler/zsh.vim @dkearns runtime/doc/ft_hare.txt @selenebun runtime/doc/ps1.txt @heaths runtime/ftplugin/abaqus.vim @costerwi -runtime/ftplugin/apache.vim @dubgeiser +runtime/ftplugin/apache.vim @dubgeiser runtime/ftplugin/arduino.vim @k-takata runtime/ftplugin/astro.vim @romainl runtime/ftplugin/awk.vim @dkearns @@ -165,6 +165,7 @@ runtime/ftplugin/hare.vim @selenebun runtime/ftplugin/haredoc.vim @selenebun runtime/ftplugin/heex.vim @cvincent runtime/ftplugin/hgcommit.vim @k-takata +runtime/ftplugin/hlsplaylist.vim @avidseeker runtime/ftplugin/hog.vim @wtfbbqhax runtime/ftplugin/html.vim @dkearns runtime/ftplugin/hyprlang.vim @ribru17 diff --git a/runtime/ftplugin/hlsplaylist.vim b/runtime/ftplugin/hlsplaylist.vim new file mode 100644 index 000000000..879a04f0f --- /dev/null +++ b/runtime/ftplugin/hlsplaylist.vim @@ -0,0 +1,37 @@ +" Vim filetype plugin +" Language: HLS/M3U Playlist +" Maintainer: AvidSeeker <avidseek...@protonmail.com> +" Last Change: 2024 Jul 07 +" + +if exists("b:did_ftplugin") + finish +endif +let g:did_ftplugin = 1 + +setlocal commentstring=#%s + +let b:undo_ftplugin = "setl commentstring<" + +function! M3UFold() abort + let line = getline(v:lnum) + if line =~# '^#EXTGRP' + return ">1" + endif + return "=" +endfunction + +function! M3UFoldText() abort + let start_line = getline(v:foldstart) + let title = substitute(start_line, '^#EXTGRP:*', '', '') + let foldsize = (v:foldend - v:foldstart + 1) + let linecount = '['.foldsize.' lines]' + return title.' '.linecount +endfunction + +if has("folding") + setlocal foldexpr=M3UFold() + setlocal foldmethod=expr + setlocal foldtext=M3UFoldText() + let b:undo_ftplugin .= "|setl foldexpr< foldmethod< foldtext<" +endif -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1sQtpJ-00BLax-Ml%40256bit.org.