patch 9.1.0592: runtime: filetype: Mediawiki files are not recognized
Problem: filetype: Mediawiki files are not recognized
Solution: detect "*.mw" and "*.wiki" as mediawiki filetype,
include basic syntax and filetype plugins.
(AvidSeeker)
closes: #15266
Signed-off-by: AvidSeeker <avidseeker7@protonmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
c6d7dc0393
commit
b5844104ab
42
runtime/ftplugin/mediawiki.vim
Normal file
42
runtime/ftplugin/mediawiki.vim
Normal file
@ -0,0 +1,42 @@
|
||||
" Language: MediaWiki
|
||||
" Maintainer: Avid Seeker <avidseeker7@protonmail.com>
|
||||
" Home: http://en.wikipedia.org/wiki/Wikipedia:Text_editor_support#Vim
|
||||
" Last Change: 2024 Jul 14
|
||||
" Credits: chikamichi
|
||||
"
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let g:did_ftplugin = 1
|
||||
|
||||
" Many MediaWiki wikis prefer line breaks only at the end of paragraphs
|
||||
" (like in a text processor), which results in long, wrapping lines.
|
||||
setlocal wrap linebreak
|
||||
setlocal textwidth=0
|
||||
|
||||
setlocal formatoptions-=tc formatoptions+=l formatoptions+=roq
|
||||
setlocal matchpairs+=<:>
|
||||
|
||||
" Treat lists, indented text and tables as comment lines and continue with the
|
||||
" same formatting in the next line (i.e. insert the comment leader) when hitting
|
||||
" <CR> or using "o".
|
||||
setlocal comments=n:#,n:*,n:\:,s:{\|,m:\|,ex:\|},s:<!--,m:\ \ \ \ ,e:-->
|
||||
setlocal commentstring=<!--\ %s\ -->
|
||||
|
||||
" match HTML tags (taken directly from $VIM/ftplugin/html.vim)
|
||||
if exists("loaded_matchit")
|
||||
let b:match_ignorecase=0
|
||||
let b:match_skip = 's:Comment'
|
||||
let b:match_words = '<:>,' .
|
||||
\ '<\@<=[ou]l\>[^>]*\%(>\|$\):<\@<=li\>:<\@<=/[ou]l>,' .
|
||||
\ '<\@<=dl\>[^>]*\%(>\|$\):<\@<=d[td]\>:<\@<=/dl>,' .
|
||||
\ '<\@<=\([^/][^ \t>]*\)[^>]*\%(>\|$\):<\@<=/\1>'
|
||||
endif
|
||||
|
||||
" Enable folding based on ==sections==
|
||||
setlocal foldexpr=getline(v:lnum)=~'^\\(=\\+\\)[^=]\\+\\1\\(\\s*<!--.*-->\\)\\=\\s*$'?\">\".(len(matchstr(getline(v:lnum),'^=\\+'))-1):\"=\"
|
||||
setlocal foldmethod=expr
|
||||
|
||||
let b:undo_ftplugin = "setl commentstring< comments< formatoptions< foldexpr< foldmethod<"
|
||||
let b:undo_ftplugin += " matchpairs< linebreak< wrap< textwidth<"
|
||||
Reference in New Issue
Block a user