1" Vim syntax file
2" This is a GENERATED FILE. Please always refer to source file at the URI below.
3" Language: PoV-Ray(tm) 3.5 configuration/initialization files
4" Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
5" Last Change: 2002-06-01
6" URL: http://physics.muni.cz/~yeti/download/syntax/povini.vim
7" Required Vim Version: 6.0
8
9" Setup
10if version >= 600
11  " Quit when a syntax file was already loaded
12  if exists("b:current_syntax")
13    finish
14  endif
15else
16  " Croak when an old Vim is sourcing us.
17  echo "Sorry, but this syntax file relies on Vim 6 features.  Either upgrade Vim or usea version of " . expand("<sfile>:t:r") . " syntax file appropriate for Vim " . version/100 . "." . version %100 . "."
18  finish
19endif
20
21syn case ignore
22
23" Syntax
24syn match poviniInclude "^\s*[^[+-;]\S*\s*$" contains=poviniSection
25syn match poviniLabel "^.\{-1,}\ze=" transparent contains=poviniKeyword nextgroup=poviniBool,poviniNumber
26syn keyword poviniBool On Off True False Yes No
27syn match poviniNumber "\<\d*\.\=\d\+\>"
28syn keyword poviniKeyword Clock Initial_Frame Final_Frame Initial_Clock Final_Clock Subset_Start_Frame Subset_End_Frame Cyclic_Animation Field_Render Odd_Field
29syn keyword poviniKeyword Width Height Start_Column Start_Row End_Column End_Row Test_Abort Test_Abort_Count Continue_Trace Create_Ini
30syn keyword poviniKeyword Display Video_Mode Palette Display_Gamma Pause_When_Done Verbose Draw_Vistas Preview_Start_Size Preview_End_Size
31syn keyword poviniKeyword Output_to_File Output_File_Type Output_Alpha Bits_Per_Color Output_File_Name Buffer_Output Buffer_Size
32syn keyword poviniKeyword Histogram_Type Histogram_Grid_Size Histogram_Name
33syn keyword poviniKeyword Input_File_Name Include_Header Library_Path Version
34syn keyword poviniKeyword Debug_Console Fatal_Console Render_Console Statistic_Console Warning_Console All_Console Debug_File Fatal_File Render_File Statistic_File Warning_File All_File Warning_Level
35syn keyword poviniKeyword Quality Radiosity Bounding Bounding_Threshold Light_Buffer Vista_Buffer Remove_Bounds Split_Unions Antialias Sampling_Method Antialias_Threshold Jitter Jitter_Amount Antialias_Depth
36syn keyword poviniKeyword Pre_Scene_Return Pre_Frame_Return Post_Scene_Return Post_Frame_Return User_Abort_Return Fatal_Error_Return
37syn match poviniShellOut "^\s*\(Pre_Scene_Command\|Pre_Frame_Command\|Post_Scene_Command\|Post_Frame_Command\|User_Abort_Command\|Fatal_Error_Command\)\>" nextgroup=poviniShellOutEq skipwhite
38syn match poviniShellOutEq "=" nextgroup=poviniShellOutRHS skipwhite contained
39syn match poviniShellOutRHS "[^;]\+" skipwhite contained contains=poviniShellOutSpecial
40syn match poviniShellOutSpecial "%[osnkhw%]" contained
41syn keyword poviniDeclare Declare
42syn match poviniComment ";.*$"
43syn match poviniOption "^\s*[+-]\S*"
44syn match poviniIncludeLabel "^\s*Include_INI\s*=" nextgroup=poviniIncludedFile skipwhite
45syn match poviniIncludedFile "[^;]\+" contains=poviniSection contained
46syn region poviniSection start="\[" end="\]"
47
48" Define the default highlighting
49hi def link poviniSection Special
50hi def link poviniComment Comment
51hi def link poviniDeclare poviniKeyword
52hi def link poviniShellOut poviniKeyword
53hi def link poviniIncludeLabel poviniKeyword
54hi def link poviniKeyword Type
55hi def link poviniShellOutSpecial Special
56hi def link poviniIncludedFile poviniInclude
57hi def link poviniInclude Include
58hi def link poviniOption Keyword
59hi def link poviniBool Constant
60hi def link poviniNumber Number
61
62let b:current_syntax = "povini"
63