KXStudio Website https://kx.studio/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

195 lines
8.5KB

  1. <?php
  2. /*************************************************************************************
  3. * avisynth.php
  4. * --------
  5. * Author: Ryan Jones (sciguyryan@gmail.com)
  6. * Copyright: (c) 2008 Ryan Jones
  7. * Release Version: 1.0.8.11
  8. * Date Started: 2008/10/08
  9. *
  10. * AviSynth language file for GeSHi.
  11. *
  12. * CHANGES
  13. * -------
  14. * 2008/10/08 (1.0.8.1)
  15. * - First Release
  16. *
  17. * TODO (updated 2008/10/08)
  18. * -------------------------
  19. * * There are also some special words that can't currently be specified directly in GeSHi as they may
  20. * also be used as variables which would really mess things up.
  21. * * Also there is an issue with the escape character as this language uses a muti-character escape system. Escape char should be """ but has been left
  22. * as empty due to this restiction.
  23. *
  24. *************************************************************************************
  25. *
  26. * This file is part of GeSHi.
  27. *
  28. * GeSHi is free software; you can redistribute it and/or modify
  29. * it under the terms of the GNU General Public License as published by
  30. * the Free Software Foundation; either version 2 of the License, or
  31. * (at your option) any later version.
  32. *
  33. * GeSHi is distributed in the hope that it will be useful,
  34. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  35. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  36. * GNU General Public License for more details.
  37. *
  38. * You should have received a copy of the GNU General Public License
  39. * along with GeSHi; if not, write to the Free Software
  40. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  41. *
  42. ************************************************************************************/
  43. $language_data = array (
  44. 'LANG_NAME' => 'AviSynth',
  45. 'COMMENT_SINGLE' => array(1 => '#'),
  46. 'COMMENT_MULTI' => array('/*' => '*/', '[*' => '*]'),
  47. 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
  48. 'QUOTEMARKS' => array('"'),
  49. 'ESCAPE_CHAR' => '',
  50. 'KEYWORDS' => array(
  51. // Reserved words.
  52. 1 => array(
  53. 'try', 'cache', 'function', 'global', 'return'
  54. ),
  55. // Constants / special variables.
  56. 2 => array(
  57. 'true', 'yes', 'false', 'no', '__END__'
  58. ),
  59. // Internal Filters.
  60. 3 => array(
  61. 'AviSource', 'AviFileSource', 'AddBorders', 'AlignedSplice', 'AssumeFPS', 'AssumeScaledFPS',
  62. 'AssumeFrameBased', 'AssumeFieldBased', 'AssumeBFF', 'AssumeTFF', 'Amplify', 'AmplifydB',
  63. 'AssumeSampleRate', 'AudioDub', 'AudioDubEx', 'Animate', 'ApplyRange',
  64. 'BicubicResize', 'BilinearResize', 'BlackmanResize', 'Blur', 'Bob', 'BlankClip', 'Blackness',
  65. 'ColorYUV', 'ConvertBackToYUY2', 'ConvertToRGB', 'ConvertToRGB24', 'ConvertToRGB32',
  66. 'ConvertToYUY2', 'ConvertToY8', 'ConvertToYV411', 'ConvertToYV12', 'ConvertToYV16', 'ConvertToYV24',
  67. 'ColorKeyMask', 'Crop', 'CropBottom', 'ChangeFPS', 'ConvertFPS', 'ComplementParity', 'ConvertAudioTo8bit',
  68. 'ConvertAudioTo16bit', 'ConvertAudioTo24bit', 'ConvertAudioTo32bit', 'ConvertAudioToFloat', 'ConvertToMono',
  69. 'ConditionalFilter', 'ConditionalReader', 'ColorBars', 'Compare',
  70. 'DirectShowSource', 'DeleteFrame', 'Dissolve', 'DuplicateFrame', 'DoubleWeave', 'DelayAudio',
  71. 'EnsureVBRMP3Sync',
  72. 'FixLuminance', 'FlipHorizontal', 'FlipVertical', 'FixBrokenChromaUpsampling', 'FadeIn0', 'FadeIn',
  73. 'FadeIn2', 'FadeOut0', 'FadeOut', 'FadeOut2', 'FadeIO0', 'FadeIO', 'FadeIO2', 'FreezeFrame', 'FrameEvaluate',
  74. 'GreyScale', 'GaussResize', 'GeneralConvolution', 'GetChannel', 'GetLeftChannel', 'GetRightChannel',
  75. 'HorizontalReduceBy2', 'Histogram',
  76. 'ImageReader', 'ImageSource', 'ImageWriter', 'Invert', 'Interleave', 'Info',
  77. 'KillAudio', 'KillVideo',
  78. 'Levels', 'Limiter', 'Layer', 'Letterbox', 'LanczosResize', 'Lanczos4Resize', 'Loop',
  79. 'MergeARGB', 'MergeRGB', 'MergeChroma', 'MergeLuma', 'Merge', 'Mask', 'MaskHS', 'MergeChannels', 'MixAudio',
  80. 'MonoToStereo', 'MessageClip',
  81. 'Normalize',
  82. 'OpenDMLSource', 'Overlay',
  83. 'PointResize', 'PeculiarBlend', 'Pulldown',
  84. 'RGBAdjust', 'ResetMask', 'Reverse', 'ResampleAudio', 'ReduceBy2',
  85. 'SegmentedAviSource', 'SegmentedDirectShowSource', 'SoundOut', 'ShowAlpha', 'ShowRed', 'ShowGreen',
  86. 'ShowBlue', 'SwapUV', 'Subtract', 'SincResize', 'Spline16Resize', 'Spline36Resize', 'Spline64Resize',
  87. 'SelectEven', 'SelectOdd', 'SelectEvery', 'SelectRangeEvery', 'Sharpen', 'SpatialSoften', 'SeparateFields',
  88. 'ShowFiveVersions', 'ShowFrameNumber', 'ShowSMPTE', 'ShowTime', 'StackHorizontal', 'StackVertical', 'Subtitle',
  89. 'SwapFields', 'SuperEQ', 'SSRC', 'ScriptClip',
  90. 'Tweak', 'TurnLeft', 'TurnRight', 'Turn180', 'TemporalSoften', 'TimeStretch', 'TCPServer', 'TCPSource', 'Trim',
  91. 'Tone',
  92. 'UToY', 'UToY8', 'UnalignedSplice',
  93. 'VToY', 'VToY8', 'VerticalReduceBy2', 'Version',
  94. 'WavSource', 'Weave', 'WriteFile', 'WriteFileIf', 'WriteFileStart', 'WriteFileEnd',
  95. 'YToUV'
  96. ),
  97. // Internal functions.
  98. 4 => array(
  99. 'Abs', 'Apply', 'Assert', 'AverageLuma', 'AverageChromaU', 'AverageChromaV',
  100. 'Ceil', 'Cos', 'Chr', 'ChromaUDifference', 'ChromaVDifference',
  101. 'Defined', 'Default',
  102. 'Exp', 'Exist', 'Eval',
  103. 'Floor', 'Frac', 'Float', 'Findstr', 'GetMTMode',
  104. 'HexValue',
  105. 'Int', 'IsBool', 'IsClip', 'IsFloat', 'IsInt', 'IsString', 'Import',
  106. 'LoadPlugin', 'Log', 'LCase', 'LeftStr', 'LumaDifference', 'LoadVirtualDubPlugin', 'LoadVFAPIPlugin',
  107. 'LoadCPlugin', 'Load_Stdcall_Plugin',
  108. 'Max', 'MulDiv', 'MidStr',
  109. 'NOP',
  110. 'OPT_AllowFloatAudio', 'OPT_UseWaveExtensible',
  111. 'Pi', 'Pow',
  112. 'Round', 'Rand', 'RevStr', 'RightStr', 'RGBDifference', 'RGBDifferenceFromPrevious', 'RGBDifferenceToNext',
  113. 'Sin', 'Sqrt', 'Sign', 'Spline', 'StrLen', 'String', 'Select', 'SetMemoryMax', 'SetWorkingDir', 'SetMTMode',
  114. 'SetPlanarLegacyAlignment',
  115. 'Time',
  116. 'UCase', 'UDifferenceFromPrevious', 'UDifferenceToNext', 'UPlaneMax', 'UPlaneMin', 'UPlaneMedian',
  117. 'UPlaneMinMaxDifference',
  118. 'Value', 'VersionNumber', 'VersionString', 'VDifferenceFromPrevious', 'VDifferenceToNext', 'VPlaneMax',
  119. 'VPlaneMin', 'VPlaneMedian', 'VPlaneMinMaxDifference',
  120. 'YDifferenceFromPrevious', 'YDifferenceToNext', 'YPlaneMax', 'YPlaneMin', 'YPlaneMedian',
  121. 'YPlaneMinMaxDifference'
  122. )
  123. ),
  124. 'SYMBOLS' => array(
  125. '+', '++', '-', '--', '/', '*', '%',
  126. '=', '==', '<', '<=', '>', '>=', '<>', '!=',
  127. '!', '?', ':',
  128. '|', '||', '&&',
  129. '\\',
  130. '(', ')', '{', '}',
  131. '.', ','
  132. ),
  133. 'CASE_SENSITIVE' => array(
  134. GESHI_COMMENTS => false,
  135. 1 => false,
  136. 2 => false,
  137. 3 => false,
  138. 4 => true,
  139. ),
  140. 'STYLES' => array(
  141. 'KEYWORDS' => array(
  142. 1 => 'color:#9966CC; font-weight:bold;',
  143. 2 => 'color:#0000FF; font-weight:bold;',
  144. 3 => 'color:#CC3300; font-weight:bold;',
  145. 4 => 'color:#660000; font-weight:bold;'
  146. ),
  147. 'COMMENTS' => array(
  148. 1 => 'color:#008000; font-style:italic;',
  149. 'MULTI' => 'color:#000080; font-style:italic;'
  150. ),
  151. 'ESCAPE_CHAR' => array(
  152. 0 => 'color:#000099;'
  153. ),
  154. 'BRACKETS' => array(
  155. 0 => 'color:#006600; font-weight:bold;'
  156. ),
  157. 'STRINGS' => array(
  158. 0 => 'color:#996600;'
  159. ),
  160. 'NUMBERS' => array(
  161. 0 => 'color:#006666;'
  162. ),
  163. 'METHODS' => array(
  164. 1 => 'color:#9900CC;'
  165. ),
  166. 'SYMBOLS' => array(
  167. 0 => 'color:#006600; font-weight:bold;'
  168. ),
  169. 'REGEXPS' => array(
  170. ),
  171. 'SCRIPT' => array(
  172. )
  173. ),
  174. 'URLS' => array(
  175. 1 => '',
  176. 2 => '',
  177. 3 => 'http://avisynth.org/mediawiki/{FNAME}',
  178. 4 => ''
  179. ),
  180. 'REGEXPS' => array(
  181. ),
  182. 'OOLANG' => true,
  183. 'OBJECT_SPLITTERS' => array(
  184. 1 => '.'
  185. ),
  186. 'STRICT_MODE_APPLIES' => GESHI_MAYBE,
  187. 'SCRIPT_DELIMITERS' => array(
  188. ),
  189. 'HIGHLIGHT_STRICT_BLOCK' => array(
  190. ),
  191. 'TAB_WIDTH' => 4
  192. );
  193. ?>