| 
									
										
										
										
											2015-10-13 23:21:27 +02:00
										 |  |  | " Vim filetype plugin file | 
					
						
							| 
									
										
										
										
											2020-04-20 19:52:53 +02:00
										 |  |  | " Language:			systemd.unit(5) | 
					
						
							|  |  |  | " Keyword Lookup Support:	Enno Nagel <enno.nagel+vim@gmail.com> | 
					
						
							| 
									
										
										
										
											2015-10-13 23:21:27 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | if !exists('b:did_ftplugin') | 
					
						
							|  |  |  |   " Looks a lot like dosini files. | 
					
						
							|  |  |  |   runtime! ftplugin/dosini.vim | 
					
						
							|  |  |  | endif | 
					
						
							| 
									
										
										
										
											2020-04-20 19:52:53 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | if !has('unix') | 
					
						
							|  |  |  |   finish | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if !has('gui_running') | 
					
						
							|  |  |  |   command! -buffer -nargs=1 Sman silent exe '!' . KeywordLookup_systemd(<q-args>) | redraw! | 
					
						
							|  |  |  | elseif has('terminal') | 
					
						
							|  |  |  |   command! -buffer -nargs=1 Sman silent exe 'term ' . KeywordLookup_systemd(<q-args>) | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  |   finish | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if !exists('*KeywordLookup_systemd') | 
					
						
							|  |  |  |   function KeywordLookup_systemd(keyword) abort | 
					
						
							|  |  |  |     let matches = matchlist(getline(search('\v^\s*\[\s*.+\s*\]\s*$', 'nbWz')), '\v^\s*\[\s*(\k+).*\]\s*$') | 
					
						
							|  |  |  |     if len(matches) > 1 | 
					
						
							|  |  |  |       let section = matches[1] | 
					
						
							|  |  |  |       return 'LESS= MANPAGER="less --pattern=''(^|,)\s+' . a:keyword . '=$'' --hilite-search" man ' . 'systemd.' . section | 
					
						
							|  |  |  |     else | 
					
						
							|  |  |  |       return 'LESS= MANPAGER="less --pattern=''(^|,)\s+' . a:keyword . '=$'' --hilite-search" man ' . 'systemd' | 
					
						
							|  |  |  |     endif | 
					
						
							|  |  |  |   endfunction | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | setlocal iskeyword+=- | 
					
						
							|  |  |  | setlocal keywordprg=:Sman | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if !exists('b:undo_ftplugin') || empty(b:undo_ftplugin) | 
					
						
							|  |  |  |   let b:undo_ftplugin = 'setlocal keywordprg< iskeyword<' | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  |   let b:undo_ftplugin .= '| setlocal keywordprg< iskeyword<' | 
					
						
							|  |  |  | endif |