Mercurial > vim
annotate runtime/ftplugin.vim @ 27538:f37561549ec2
Update runtime files; use compiled functions
Commit: https://github.com/vim/vim/commit/3e79c97c18c50f97797ab13ed81c4011eba9aba0
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Feb 4 19:48:06 2022 +0000
Update runtime files; use compiled functions
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 04 Feb 2022 21:00:05 +0100 |
parents | 8cd729851562 |
children | 179c118424a6 |
rev | line source |
---|---|
7 | 1 " Vim support file to switch on loading plugins for file types |
2 " | |
3 " Maintainer: Bram Moolenaar <Bram@vim.org> | |
27538
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
4 " Last change: 2022 Feb 04 |
7 | 5 |
6 if exists("did_load_ftplugin") | |
7 finish | |
8 endif | |
9 let did_load_ftplugin = 1 | |
10 | |
11 augroup filetypeplugin | |
12 au FileType * call s:LoadFTPlugin() | |
27538
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
13 augroup END |
856 | 14 |
27538
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
15 def s:LoadFTPlugin() |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
16 if exists("b:undo_ftplugin") |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
17 exe b:undo_ftplugin |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
18 unlet! b:undo_ftplugin b:did_ftplugin |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
19 endif |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
20 |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
21 var s = expand("<amatch>") |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
22 if s != "" |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
23 if &cpo =~# "S" && exists("b:did_ftplugin") |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
24 # In compatible mode options are reset to the global values, need to |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
25 # set the local values also when a plugin was already used. |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
26 unlet b:did_ftplugin |
230 | 27 endif |
856 | 28 |
27538
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
29 # When there is a dot it is used to separate filetype names. Thus for |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
30 # "aaa.bbb" load "aaa" and then "bbb". |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
31 for name in split(s, '\.') |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
32 exe 'runtime! ftplugin/' .. name .. '.vim ftplugin/' .. name .. '_*.vim ftplugin/' .. name .. '/*.vim' |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
33 endfor |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
34 endif |
f37561549ec2
Update runtime files; use compiled functions
Bram Moolenaar <Bram@vim.org>
parents:
856
diff
changeset
|
35 enddef |