| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | " Vim support file to switch on loading plugins for file types | 
					
						
							|  |  |  | " | 
					
						
							|  |  |  | " Maintainer:	Bram Moolenaar <Bram@vim.org> | 
					
						
							| 
									
										
										
										
											2006-04-30 18:54:39 +00:00
										 |  |  | " Last change:	2006 Apr 30 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | if exists("did_load_ftplugin") | 
					
						
							|  |  |  |   finish | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | let did_load_ftplugin = 1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | augroup filetypeplugin | 
					
						
							|  |  |  |   au FileType * call s:LoadFTPlugin() | 
					
						
							| 
									
										
										
										
											2006-04-30 18:54:39 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |   func! s:LoadFTPlugin() | 
					
						
							| 
									
										
										
										
											2005-03-25 21:53:48 +00:00
										 |  |  |     if exists("b:undo_ftplugin") | 
					
						
							|  |  |  |       exe b:undo_ftplugin | 
					
						
							|  |  |  |       unlet! b:undo_ftplugin b:did_ftplugin | 
					
						
							|  |  |  |     endif | 
					
						
							| 
									
										
										
										
											2006-04-30 18:54:39 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-03-18 21:40:56 +00:00
										 |  |  |     let s = expand("<amatch>") | 
					
						
							|  |  |  |     if s != "" | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |       if &cpo =~# "S" && exists("b:did_ftplugin") | 
					
						
							|  |  |  | 	" In compatible mode options are reset to the global values, need to | 
					
						
							|  |  |  | 	" set the local values also when a plugin was already used. | 
					
						
							|  |  |  | 	unlet b:did_ftplugin | 
					
						
							|  |  |  |       endif | 
					
						
							| 
									
										
										
										
											2006-03-18 21:40:56 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |       " When there is a dot it is used to separate filetype names.  Thus for | 
					
						
							|  |  |  |       " "aaa.bbb" load "aaa" and then "bbb". | 
					
						
							|  |  |  |       for name in split(s, '\.') | 
					
						
							|  |  |  | 	exe 'runtime! ftplugin/' . name . '.vim ftplugin/' . name . '_*.vim ftplugin/' . name . '/*.vim' | 
					
						
							|  |  |  |       endfor | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |     endif | 
					
						
							|  |  |  |   endfunc | 
					
						
							|  |  |  | augroup END |