runtime(groff,nroff): improve ftplugin

Commit: 
https://github.com/vim/vim/commit/e36a931d9b67110b918604d4e2ebe8aa643ecc03
Author: Eisuke Kawashima <e-k...@users.noreply.github.com>
Date:   Thu Apr 24 22:26:02 2025 +0200

    runtime(groff,nroff): improve ftplugin
    
    - set options in ftplugin but not in syntax
    - implement ftplugin/groff.vim (wrapper of ftplugin/nroff.vim)
    
    closes: #17174
    
    Signed-off-by: Eisuke Kawashima <e-k...@users.noreply.github.com>
    Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/.github/MAINTAINERS b/.github/MAINTAINERS
index 132585e83..13c45daf8 100644
--- a/.github/MAINTAINERS
+++ b/.github/MAINTAINERS
@@ -187,6 +187,7 @@ runtime/ftplugin/goaccess.vim               @meonkeys
 runtime/ftplugin/gomod.vim             @yu-yk
 runtime/ftplugin/gprof.vim             @dpelle
 runtime/ftplugin/graphql.vim           @jparise
+runtime/ftplugin/groff.vim             @e-kwsm
 runtime/ftplugin/gyp.vim               @ObserverOfTime
 runtime/ftplugin/haml.vim              @tpope
 runtime/ftplugin/hare.vim              @selenebun
diff --git a/runtime/ftplugin/groff.vim b/runtime/ftplugin/groff.vim
new file mode 100644
index 000000000..3ebfa03c6
--- /dev/null
+++ b/runtime/ftplugin/groff.vim
@@ -0,0 +1,15 @@
+" Vim syntax file
+" Language:  groff(7)
+" Maintainer: Eisuke Kawashima ( e.kawaschima+vim AT gmail.com )
+" Last Change: 2025 Apr 24
+
+if exists('b:did_ftplugin')
+  finish
+endif
+
+let b:nroff_is_groff = 1
+
+runtime! ftplugin/nroff.vim
+
+let b:undo_ftplugin .= '| unlet! b:nroff_is_groff'
+let b:did_ftplugin = 1
diff --git a/runtime/ftplugin/nroff.vim b/runtime/ftplugin/nroff.vim
index 1c6d4ebc7..cd2680ef5 100644
--- a/runtime/ftplugin/nroff.vim
+++ b/runtime/ftplugin/nroff.vim
@@ -8,6 +8,7 @@
 "      2024 May 24 by Riley Bruins <ribr...@gmail.com> ('commentstring' #14843)
 "      2025 Feb 12 by Wu, Zhenyu <wuzhe...@ustc.edu> (matchit configuration 
#16619)
 "      2025 Apr 16 by Eisuke Kawashima (cpoptions #17121)
+"      2025 Apr 24 by Eisuke Kawashima (move options from syntax to ftplugin 
#17174)
 
 if exists("b:did_ftplugin")
   finish
@@ -22,7 +23,17 @@ setlocal comments=:.\\"
 setlocal sections+=Sh
 setlocal define=.\s*de
 
-let b:undo_ftplugin = 'setlocal commentstring< comments< sections< define<'
+if get(b:, 'preprocs_as_sections')
+  setlocal sections=EQTSPS[\ G1GS
+endif
+
+let b:undo_ftplugin = 'setlocal commentstring< comments< sections& define<'
+
+if get(b:, 'nroff_is_groff')
+  " groff_ms exdented paragraphs are not in the default paragraphs list.
+  setlocal paragraphs+=XP
+  let b:undo_ftplugin .= ' paragraphs&'
+endif
 
 if exists('loaded_matchit')
   let b:match_words = '^\.\s*ie\>:^\.\s*el\>'
diff --git a/runtime/syntax/nroff.vim b/runtime/syntax/nroff.vim
index 566704251..fec966f33 100644
--- a/runtime/syntax/nroff.vim
+++ b/runtime/syntax/nroff.vim
@@ -4,6 +4,7 @@
 " Previous Maintainer: Pedro Alejandro López-Valencia <palop...@gmail.com>
 " Previous Maintainer: Jérôme Plût <jerome.p...@ens.fr>
 " Last Change: 2021 Mar 28
+"      2025 Apr 24 by Eisuke Kawashima (move options from syntax to ftplugin 
#17174)
 "
 " {{{1 Todo
 "
@@ -40,19 +41,6 @@ if exists("nroff_space_errors")
        syn match nroffError /\s\+$/
        syn match nroffSpaceError /[.,:;!?]\s\{2,}/
 endif
-"
-"
-" {{{1 Special file settings
-"
-" {{{2  ms exdented paragraphs are not in the default paragraphs list.
-"
-setlocal paragraphs+=XP
-"
-" {{{2 Activate navigation to preprocessor sections.
-"
-if exists("b:preprocs_as_sections")
-       setlocal sections=EQTSPS[\ G1GS
-endif
 
 " {{{1 Escape sequences
 " ------------------------------------------------------------

-- 
-- 
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 visit 
https://groups.google.com/d/msgid/vim_dev/E1u83Ct-005gMw-GY%40256bit.org.

Raspunde prin e-mail lui