blob: 726fe1fc74f3c435a247e11618dcaff4f742145e [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
Bram Moolenaar8e5af3e2011-04-28 19:02:44 +02002" Language: PoV-Ray(tm) 3.7 configuration/initialization files
3" Maintainer: David Necas (Yeti) <yeti@physics.muni.cz>
4" Last Change: 2011-04-24
Bram Moolenaar071d4272004-06-13 20:20:40 +00005" Required Vim Version: 6.0
6
7" Setup
8if version >= 600
9 " Quit when a syntax file was already loaded
10 if exists("b:current_syntax")
11 finish
12 endif
13else
14 " Croak when an old Vim is sourcing us.
15 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 . "."
16 finish
17endif
18
19syn case ignore
20
21" Syntax
22syn match poviniInclude "^\s*[^[+-;]\S*\s*$" contains=poviniSection
23syn match poviniLabel "^.\{-1,}\ze=" transparent contains=poviniKeyword nextgroup=poviniBool,poviniNumber
24syn keyword poviniBool On Off True False Yes No
25syn match poviniNumber "\<\d*\.\=\d\+\>"
Bram Moolenaar8e5af3e2011-04-28 19:02:44 +020026syn keyword poviniKeyword Clock Initial_Frame Final_Frame Frame_Final Frame_Step Initial_Clock Final_Clock Subset_Start_Frame Subset_End_Frame Cyclic_Animation Clockless_Animation Real_Time_Raytracing Field_Render Odd_Field Work_Threads
Bram Moolenaar071d4272004-06-13 20:20:40 +000027syn keyword poviniKeyword Width Height Start_Column Start_Row End_Column End_Row Test_Abort Test_Abort_Count Continue_Trace Create_Ini
Bram Moolenaar8e5af3e2011-04-28 19:02:44 +020028syn keyword poviniKeyword Display Video_Mode Palette Display_Gamma Pause_When_Done Verbose Draw_Vistas Preview_Start_Size Preview_End_Size Render_Block_Size Render_Block_Step Render_Pattern Max_Image_Buffer_Memory
29syn keyword poviniKeyword Output_to_File Output_File_Type Output_Alpha Bits_Per_Color Output_File_Name Buffer_Output Buffer_Size Dither Dither_Method File_Gamma
30syn keyword poviniKeyword BSP_Base BSP_Child BSP_Isect BSP_Max BSP_Miss
Bram Moolenaar071d4272004-06-13 20:20:40 +000031syn keyword poviniKeyword Histogram_Type Histogram_Grid_Size Histogram_Name
32syn keyword poviniKeyword Input_File_Name Include_Header Library_Path Version
33syn 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
Bram Moolenaar8e5af3e2011-04-28 19:02:44 +020034syn keyword poviniKeyword Quality Bounding Bounding_Method Bounding_Threshold Light_Buffer Vista_Buffer Remove_Bounds Split_Unions Antialias Sampling_Method Antialias_Threshold Jitter Jitter_Amount Antialias_Depth Antialias_Gamma
Bram Moolenaar071d4272004-06-13 20:20:40 +000035syn keyword poviniKeyword Pre_Scene_Return Pre_Frame_Return Post_Scene_Return Post_Frame_Return User_Abort_Return Fatal_Error_Return
Bram Moolenaar8e5af3e2011-04-28 19:02:44 +020036syn keyword poviniKeyword Radiosity Radiosity_File_Name Radiosity_From_File Radiosity_To_File Radiosity_Vain_Pretrace High_Reproducibility
Bram Moolenaar071d4272004-06-13 20:20:40 +000037syn 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"