annotate runtime/ftplugin/modula2.vim @ 33825:d515e012d713 v9.0.2128

patch 9.0.2128: runtime(swig): add syntax and filetype plugins Commit: https://github.com/vim/vim/commit/2e31065a650015892179e520038bf2083a9519b6 Author: Julien Marrec <julien.marrec@gmail.com> Date: Sat Nov 25 15:30:46 2023 +0100 patch 9.0.2128: runtime(swig): add syntax and filetype plugins Add syntax and filetype plugins for SWIG (Simplified Wrapper Interface Generator) description files. The default syntax for .i files highlights comments in a reverse color scheme which doesn't look well. This syntax builds on vim's c++ syntax by adding highlighting for common swig directives and user defined directives. For an alternative syntax, see vimscript #1247 (which I found after writing this). closes: #13562 Co-authored-by: Mat?j Cepl <mcepl@cepl.eu> Co-authored-by: Julien Marrec <julien.marrec@gmail.com> Signed-off-by: Julien Marrec <julien.marrec@gmail.com> Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sat, 25 Nov 2023 15:45:06 +0100
parents 9f41bfdbc6fc
children ff27442e7851
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
24468
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
1 " Vim filetype plugin file
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
2 " Language: Modula-2
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
3 " Maintainer: Doug Kearns <dougkearns@gmail.com>
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
4 " Last Change: 2021 Apr 08
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
5
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
6 if exists("b:did_ftplugin")
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
7 finish
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
8 endif
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
9 let b:did_ftplugin = 1
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
10
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
11 let s:cpo_save = &cpo
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
12 set cpo&vim
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
13
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
14 setlocal comments=s0:(*,mb:\ ,ex:*)
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
15 setlocal commentstring=(*%s*)
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
16 setlocal formatoptions-=t formatoptions+=croql
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
17
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
18 if exists("loaded_matchit") && !exists("b:match_words")
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
19 " The second branch of the middle pattern is intended to match CASE labels
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
20 let b:match_words = '\<REPEAT\>:\<UNTIL\>,' ..
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
21 \ '\<\%(BEGIN\|CASE\|FOR\|IF\|LOOP\|WHILE\|WITH\)\>' ..
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
22 \ ':' ..
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
23 \ '\<\%(ELSIF\|ELSE\)\>\|\%(^\s*\)\@<=\w\+\%(\s*\,\s*\w\+\)\=\s*\:=\@!' ..
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
24 \ ':' ..
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
25 \ '\<END\>'
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
26 endif
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
27
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
28 if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
29 let b:browsefilter = "Modula-2 Source Files (*.def *.mod)\t*.def;*.mod\n" ..
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
30 \ "All Files (*.*)\t*.*\n"
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
31 endif
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
32
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
33 let b:undo_ftplugin = "setl com< cms< fo< " ..
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
34 \ "| unlet! b:browsefilter b:match_words"
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
35
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
36 let &cpo = s:cpo_save
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
37 unlet s:cpo_save
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
38
9f41bfdbc6fc Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
39 " vim: nowrap sw=2 sts=2 ts=8 noet: