neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

idlang.vim (13542B)


      1 " Interactive Data Language syntax file (IDL, too  [:-)]
      2 " Maintainer: Aleksandar Jelenak <ajelenak AT yahoo.com>
      3 " Created By: Hermann Rochholz <Hermann.Rochholz AT gmx.de>
      4 " Last Change: 2011 Apr 11
      5 "  2024 Sep 10 by Vim Project: update syntax script, #15419
      6 
      7 " Remove any old syntax stuff hanging around
      8 " quit when a syntax file was already loaded
      9 if exists("b:current_syntax")
     10  finish
     11 endif
     12 
     13 syntax case ignore
     14 
     15 syn match idlangStatement "^\s*pro\s"
     16 syn match idlangStatement "^\s*function\s"
     17 syn keyword idlangStatement return continue mod do break
     18 syn keyword idlangStatement compile_opt forward_function goto
     19 syn keyword idlangStatement begin common end of
     20 syn keyword idlangStatement inherits on_error on_ioerror begin
     21 
     22 syn keyword idlangConditional if else then for while case switch
     23 syn keyword idlangConditional endcase endelse endfor endswitch
     24 syn keyword idlangConditional endif endrep endwhile repeat until
     25 
     26 syn match idlangOperator "\ and\ "
     27 syn match idlangOperator "\ eq\ "
     28 syn match idlangOperator "\ ge\ "
     29 syn match idlangOperator "\ gt\ "
     30 syn match idlangOperator "\ le\ "
     31 syn match idlangOperator "\ lt\ "
     32 syn match idlangOperator "\ ne\ "
     33 syn match idlangOperator /\(\ \|(\)not\ /hs=e-3
     34 syn match idlangOperator "\ or\ "
     35 syn match idlangOperator "\ xor\ "
     36 
     37 syn keyword idlangStop stop pause
     38 
     39 syn match idlangStrucvar "\h\w*\(\.\h\w*\)\+"
     40 syn match idlangStrucvar "[),\]]\(\.\h\w*\)\+"hs=s+1
     41 
     42 syn match idlangSystem "\!\a\w*\(\.\w*\)\="
     43 
     44 syn match idlangKeyword "\([(,]\s*\(\$\_s*\)\=\)\@<=/\h\w*"
     45 syn match idlangKeyword "\([(,]\s*\(\$\_s*\)\=\)\@<=\h\w*\s*="
     46 
     47 syn keyword idlangTodo contained TODO
     48 
     49 syn region idlangString start=+"+ end=+"+
     50 syn region idlangString start=+'+ end=+'+
     51 
     52 syn match idlangPreCondit "^\s*@\w*\(\.\a\{3}\)\="
     53 
     54 syn match idlangRealNumber "\<\d\+\(\.\=\d*e[+-]\=\d\+\|\.\d*d\|\.\d*\|d\)"
     55 syn match idlangRealNumber "\.\d\+\(d\|e[+-]\=\d\+\)\="
     56 
     57 syn match idlangNumber "\<\.\@!\d\+\.\@!\(b\|u\|us\|s\|l\|ul\|ll\|ull\)\=\>"
     58 
     59 syn match  idlangComment "[\;].*$" contains=idlangTodo
     60 
     61 syn match idlangContinueLine "\$\s*\($\|;\)"he=s+1 contains=idlangComment
     62 syn match idlangContinueLine "&\s*\(\h\|;\)"he=s+1 contains=ALL
     63 
     64 syn match  idlangDblCommaError "\,\s*\,"
     65 
     66 " List of standard routines as of IDL version 5.4.
     67 syn match idlangRoutine "EOS_\a*"
     68 syn match idlangRoutine "HDF_\a*"
     69 syn match idlangRoutine "CDF_\a*"
     70 syn match idlangRoutine "NCDF_\a*"
     71 syn match idlangRoutine "QUERY_\a*"
     72 syn match idlangRoutine "\<MAX\s*("he=e-1
     73 syn match idlangRoutine "\<MIN\s*("he=e-1
     74 
     75 syn keyword idlangRoutine A_CORRELATE ABS ACOS ADAPT_HIST_EQUAL ALOG ALOG10
     76 syn keyword idlangRoutine AMOEBA ANNOTATE ARG_PRESENT ARRAY_EQUAL ARROW
     77 syn keyword idlangRoutine ASCII_TEMPLATE ASIN ASSOC ATAN AXIS BAR_PLOT
     78 syn keyword idlangRoutine BESELI BESELJ BESELK BESELY BETA BILINEAR BIN_DATE
     79 syn keyword idlangRoutine BINARY_TEMPLATE BINDGEN BINOMIAL BLAS_AXPY BLK_CON
     80 syn keyword idlangRoutine BOX_CURSOR BREAK BREAKPOINT BROYDEN BYTARR BYTE
     81 syn keyword idlangRoutine BYTEORDER BYTSCL C_CORRELATE CALDAT CALENDAR
     82 syn keyword idlangRoutine CALL_EXTERNAL CALL_FUNCTION CALL_METHOD
     83 syn keyword idlangRoutine CALL_PROCEDURE CATCH CD CEIL CHEBYSHEV CHECK_MATH
     84 syn keyword idlangRoutine CHISQR_CVF CHISQR_PDF CHOLDC CHOLSOL CINDGEN
     85 syn keyword idlangRoutine CIR_3PNT CLOSE CLUST_WTS CLUSTER COLOR_CONVERT
     86 syn keyword idlangRoutine COLOR_QUAN COLORMAP_APPLICABLE COMFIT
     87 syn keyword idlangRoutine COMPLEX COMPLEXARR COMPLEXROUND
     88 syn keyword idlangRoutine COMPUTE_MESH_NORMALS COND CONGRID CONJ
     89 syn keyword idlangRoutine CONSTRAINED_MIN CONTOUR CONVERT_COORD CONVOL
     90 syn keyword idlangRoutine COORD2TO3 CORRELATE COS COSH CRAMER CREATE_STRUCT
     91 syn keyword idlangRoutine CREATE_VIEW CROSSP CRVLENGTH CT_LUMINANCE CTI_TEST
     92 syn keyword idlangRoutine CURSOR CURVEFIT CV_COORD CVTTOBM CW_ANIMATE
     93 syn keyword idlangRoutine CW_ANIMATE_GETP CW_ANIMATE_LOAD CW_ANIMATE_RUN
     94 syn keyword idlangRoutine CW_ARCBALL CW_BGROUP CW_CLR_INDEX CW_COLORSEL
     95 syn keyword idlangRoutine CW_DEFROI CW_FIELD CW_FILESEL CW_FORM CW_FSLIDER
     96 syn keyword idlangRoutine CW_LIGHT_EDITOR CW_LIGHT_EDITOR_GET
     97 syn keyword idlangRoutine CW_LIGHT_EDITOR_SET CW_ORIENT CW_PALETTE_EDITOR
     98 syn keyword idlangRoutine CW_PALETTE_EDITOR_GET CW_PALETTE_EDITOR_SET
     99 syn keyword idlangRoutine CW_PDMENU CW_RGBSLIDER CW_TMPL CW_ZOOM DBLARR
    100 syn keyword idlangRoutine DCINDGEN DCOMPLEX DCOMPLEXARR DEFINE_KEY DEFROI
    101 syn keyword idlangRoutine DEFSYSV DELETE_SYMBOL DELLOG DELVAR DERIV DERIVSIG
    102 syn keyword idlangRoutine DETERM DEVICE DFPMIN DIAG_MATRIX DIALOG_MESSAGE
    103 syn keyword idlangRoutine DIALOG_PICKFILE DIALOG_PRINTERSETUP
    104 syn keyword idlangRoutine DIALOG_PRINTJOB DIALOG_READ_IMAGE
    105 syn keyword idlangRoutine DIALOG_WRITE_IMAGE DIGITAL_FILTER DILATE DINDGEN
    106 syn keyword idlangRoutine DISSOLVE DIST DLM_LOAD DLM_REGISTER
    107 syn keyword idlangRoutine DO_APPLE_SCRIPT DOC_LIBRARY DOUBLE DRAW_ROI EFONT
    108 syn keyword idlangRoutine EIGENQL EIGENVEC ELMHES EMPTY ENABLE_SYSRTN EOF
    109 syn keyword idlangRoutine ERASE ERODE ERRORF ERRPLOT EXECUTE EXIT EXP EXPAND
    110 syn keyword idlangRoutine EXPAND_PATH EXPINT EXTRAC EXTRACT_SLICE F_CVF
    111 syn keyword idlangRoutine F_PDF FACTORIAL FFT FILE_CHMOD FILE_DELETE
    112 syn keyword idlangRoutine FILE_EXPAND_PATH FILE_MKDIR FILE_TEST FILE_WHICH
    113 syn keyword idlangRoutine FILEPATH FINDFILE FINDGEN FINITE FIX FLICK FLOAT
    114 syn keyword idlangRoutine FLOOR FLOW3 FLTARR FLUSH FORMAT_AXIS_VALUES
    115 syn keyword idlangRoutine FORWARD_FUNCTION FREE_LUN FSTAT FULSTR FUNCT
    116 syn keyword idlangRoutine FV_TEST FX_ROOT FZ_ROOTS GAMMA GAMMA_CT
    117 syn keyword idlangRoutine GAUSS_CVF GAUSS_PDF GAUSS2DFIT GAUSSFIT GAUSSINT
    118 syn keyword idlangRoutine GET_DRIVE_LIST GET_KBRD GET_LUN GET_SCREEN_SIZE
    119 syn keyword idlangRoutine GET_SYMBOL GETENV GOTO GRID_TPS GRID3 GS_ITER
    120 syn keyword idlangRoutine H_EQ_CT H_EQ_INT HANNING HEAP_GC HELP HILBERT
    121 syn keyword idlangRoutine HIST_2D HIST_EQUAL HISTOGRAM HLS HOUGH HQR HSV
    122 syn keyword idlangRoutine IBETA IDENTITY IDL_Container IDLanROI
    123 syn keyword idlangRoutine IDLanROIGroup IDLffDICOM IDLffDXF IDLffLanguageCat
    124 syn keyword idlangRoutine IDLffShape IDLgrAxis IDLgrBuffer IDLgrClipboard
    125 syn keyword idlangRoutine IDLgrColorbar IDLgrContour IDLgrFont IDLgrImage
    126 syn keyword idlangRoutine IDLgrLegend IDLgrLight IDLgrModel IDLgrMPEG
    127 syn keyword idlangRoutine IDLgrPalette IDLgrPattern IDLgrPlot IDLgrPolygon
    128 syn keyword idlangRoutine IDLgrPolyline IDLgrPrinter IDLgrROI IDLgrROIGroup
    129 syn keyword idlangRoutine IDLgrScene IDLgrSurface IDLgrSymbol
    130 syn keyword idlangRoutine IDLgrTessellator IDLgrText IDLgrView
    131 syn keyword idlangRoutine IDLgrViewgroup IDLgrVolume IDLgrVRML IDLgrWindow
    132 syn keyword idlangRoutine IGAMMA IMAGE_CONT IMAGE_STATISTICS IMAGINARY
    133 syn keyword idlangRoutine INDGEN INT_2D INT_3D INT_TABULATED INTARR INTERPOL
    134 syn keyword idlangRoutine INTERPOLATE INVERT IOCTL ISHFT ISOCONTOUR
    135 syn keyword idlangRoutine ISOSURFACE JOURNAL JULDAY KEYWORD_SET KRIG2D
    136 syn keyword idlangRoutine KURTOSIS KW_TEST L64INDGEN LABEL_DATE LABEL_REGION
    137 syn keyword idlangRoutine LADFIT LAGUERRE LEEFILT LEGENDRE LINBCG LINDGEN
    138 syn keyword idlangRoutine LINFIT LINKIMAGE LIVE_CONTOUR LIVE_CONTROL
    139 syn keyword idlangRoutine LIVE_DESTROY LIVE_EXPORT LIVE_IMAGE LIVE_INFO
    140 syn keyword idlangRoutine LIVE_LINE LIVE_LOAD LIVE_OPLOT LIVE_PLOT
    141 syn keyword idlangRoutine LIVE_PRINT LIVE_RECT LIVE_STYLE LIVE_SURFACE
    142 syn keyword idlangRoutine LIVE_TEXT LJLCT LL_ARC_DISTANCE LMFIT LMGR LNGAMMA
    143 syn keyword idlangRoutine LNP_TEST LOADCT LOCALE_GET LON64ARR LONARR LONG
    144 syn keyword idlangRoutine LONG64 LSODE LU_COMPLEX LUDC LUMPROVE LUSOL
    145 syn keyword idlangRoutine M_CORRELATE MACHAR MAKE_ARRAY MAKE_DLL MAP_2POINTS
    146 syn keyword idlangRoutine MAP_CONTINENTS MAP_GRID MAP_IMAGE MAP_PATCH
    147 syn keyword idlangRoutine MAP_PROJ_INFO MAP_SET MATRIX_MULTIPLY MD_TEST MEAN
    148 syn keyword idlangRoutine MEANABSDEV MEDIAN MEMORY MESH_CLIP MESH_DECIMATE
    149 syn keyword idlangRoutine MESH_ISSOLID MESH_MERGE MESH_NUMTRIANGLES MESH_OBJ
    150 syn keyword idlangRoutine MESH_SMOOTH MESH_SURFACEAREA MESH_VALIDATE
    151 syn keyword idlangRoutine MESH_VOLUME MESSAGE MIN_CURVE_SURF MK_HTML_HELP
    152 syn keyword idlangRoutine MODIFYCT MOMENT MORPH_CLOSE MORPH_DISTANCE
    153 syn keyword idlangRoutine MORPH_GRADIENT MORPH_HITORMISS MORPH_OPEN
    154 syn keyword idlangRoutine MORPH_THIN MORPH_TOPHAT MPEG_CLOSE MPEG_OPEN
    155 syn keyword idlangRoutine MPEG_PUT MPEG_SAVE MSG_CAT_CLOSE MSG_CAT_COMPILE
    156 syn keyword idlangRoutine MSG_CAT_OPEN MULTI N_ELEMENTS N_PARAMS N_TAGS
    157 syn keyword idlangRoutine NEWTON NORM OBJ_CLASS OBJ_DESTROY OBJ_ISA OBJ_NEW
    158 syn keyword idlangRoutine OBJ_VALID OBJARR ON_ERROR ON_IOERROR ONLINE_HELP
    159 syn keyword idlangRoutine OPEN OPENR OPENW OPENU OPLOT OPLOTERR P_CORRELATE
    160 syn keyword idlangRoutine PARTICLE_TRACE PCOMP PLOT PLOT_3DBOX PLOT_FIELD
    161 syn keyword idlangRoutine PLOTERR PLOTS PNT_LINE POINT_LUN POLAR_CONTOUR
    162 syn keyword idlangRoutine POLAR_SURFACE POLY POLY_2D POLY_AREA POLY_FIT
    163 syn keyword idlangRoutine POLYFILL POLYFILLV POLYSHADE POLYWARP POPD POWELL
    164 syn keyword idlangRoutine PRIMES PRINT PRINTF PRINTD PROFILE PROFILER
    165 syn keyword idlangRoutine PROFILES PROJECT_VOL PS_SHOW_FONTS PSAFM PSEUDO
    166 syn keyword idlangRoutine PTR_FREE PTR_NEW PTR_VALID PTRARR PUSHD QROMB
    167 syn keyword idlangRoutine QROMO QSIMP R_CORRELATE R_TEST RADON RANDOMN
    168 syn keyword idlangRoutine RANDOMU RANKS RDPIX READ READF READ_ASCII
    169 syn keyword idlangRoutine READ_BINARY READ_BMP READ_DICOM READ_IMAGE
    170 syn keyword idlangRoutine READ_INTERFILE READ_JPEG READ_PICT READ_PNG
    171 syn keyword idlangRoutine READ_PPM READ_SPR READ_SRF READ_SYLK READ_TIFF
    172 syn keyword idlangRoutine READ_WAV READ_WAVE READ_X11_BITMAP READ_XWD READS
    173 syn keyword idlangRoutine READU REBIN RECALL_COMMANDS RECON3 REDUCE_COLORS
    174 syn keyword idlangRoutine REFORM REGRESS REPLICATE REPLICATE_INPLACE
    175 syn keyword idlangRoutine RESOLVE_ALL RESOLVE_ROUTINE RESTORE RETALL RETURN
    176 syn keyword idlangRoutine REVERSE REWIND RK4 ROBERTS ROT ROTATE ROUND
    177 syn keyword idlangRoutine ROUTINE_INFO RS_TEST S_TEST SAVE SAVGOL SCALE3
    178 syn keyword idlangRoutine SCALE3D SEARCH2D SEARCH3D SET_PLOT SET_SHADING
    179 syn keyword idlangRoutine SET_SYMBOL SETENV SETLOG SETUP_KEYS SFIT
    180 syn keyword idlangRoutine SHADE_SURF SHADE_SURF_IRR SHADE_VOLUME SHIFT SHOW3
    181 syn keyword idlangRoutine SHOWFONT SIN SINDGEN SINH SIZE SKEWNESS SKIPF
    182 syn keyword idlangRoutine SLICER3 SLIDE_IMAGE SMOOTH SOBEL SOCKET SORT SPAWN
    183 syn keyword idlangRoutine SPH_4PNT SPH_SCAT SPHER_HARM SPL_INIT SPL_INTERP
    184 syn keyword idlangRoutine SPLINE SPLINE_P SPRSAB SPRSAX SPRSIN SPRSTP SQRT
    185 syn keyword idlangRoutine STANDARDIZE STDDEV STOP STRARR STRCMP STRCOMPRESS
    186 syn keyword idlangRoutine STREAMLINE STREGEX STRETCH STRING STRJOIN STRLEN
    187 syn keyword idlangRoutine STRLOWCASE STRMATCH STRMESSAGE STRMID STRPOS
    188 syn keyword idlangRoutine STRPUT STRSPLIT STRTRIM STRUCT_ASSIGN STRUCT_HIDE
    189 syn keyword idlangRoutine STRUPCASE SURFACE SURFR SVDC SVDFIT SVSOL
    190 syn keyword idlangRoutine SWAP_ENDIAN SWITCH SYSTIME T_CVF T_PDF T3D
    191 syn keyword idlangRoutine TAG_NAMES TAN TANH TAPRD TAPWRT TEK_COLOR
    192 syn keyword idlangRoutine TEMPORARY TETRA_CLIP TETRA_SURFACE TETRA_VOLUME
    193 syn keyword idlangRoutine THIN THREED TIME_TEST2 TIMEGEN TM_TEST TOTAL TRACE
    194 syn keyword idlangRoutine TRANSPOSE TRI_SURF TRIANGULATE TRIGRID TRIQL
    195 syn keyword idlangRoutine TRIRED TRISOL TRNLOG TS_COEF TS_DIFF TS_FCAST
    196 syn keyword idlangRoutine TS_SMOOTH TV TVCRS TVLCT TVRD TVSCL UINDGEN UINT
    197 syn keyword idlangRoutine UINTARR UL64INDGEN ULINDGEN ULON64ARR ULONARR
    198 syn keyword idlangRoutine ULONG ULONG64 UNIQ USERSYM VALUE_LOCATE VARIANCE
    199 syn keyword idlangRoutine VAX_FLOAT VECTOR_FIELD VEL VELOVECT VERT_T3D VOIGT
    200 syn keyword idlangRoutine VORONOI VOXEL_PROJ WAIT WARP_TRI WATERSHED WDELETE
    201 syn keyword idlangRoutine WEOF WF_DRAW WHERE WIDGET_BASE WIDGET_BUTTON
    202 syn keyword idlangRoutine WIDGET_CONTROL WIDGET_DRAW WIDGET_DROPLIST
    203 syn keyword idlangRoutine WIDGET_EVENT WIDGET_INFO WIDGET_LABEL WIDGET_LIST
    204 syn keyword idlangRoutine WIDGET_SLIDER WIDGET_TABLE WIDGET_TEXT WINDOW
    205 syn keyword idlangRoutine WRITE_BMP WRITE_IMAGE WRITE_JPEG WRITE_NRIF
    206 syn keyword idlangRoutine WRITE_PICT WRITE_PNG WRITE_PPM WRITE_SPR WRITE_SRF
    207 syn keyword idlangRoutine WRITE_SYLK WRITE_TIFF WRITE_WAV WRITE_WAVE WRITEU
    208 syn keyword idlangRoutine WSET WSHOW WTN WV_APPLET WV_CW_WAVELET WV_CWT
    209 syn keyword idlangRoutine WV_DENOISE WV_DWT WV_FN_COIFLET WV_FN_DAUBECHIES
    210 syn keyword idlangRoutine WV_FN_GAUSSIAN WV_FN_HAAR WV_FN_MORLET WV_FN_PAUL
    211 syn keyword idlangRoutine WV_FN_SYMLET WV_IMPORT_DATA WV_IMPORT_WAVELET
    212 syn keyword idlangRoutine WV_PLOT3D_WPS WV_PLOT_MULTIRES WV_PWT
    213 syn keyword idlangRoutine WV_TOOL_DENOISE XBM_EDIT XDISPLAYFILE XDXF XFONT
    214 syn keyword idlangRoutine XINTERANIMATE XLOADCT XMANAGER XMNG_TMPL XMTOOL
    215 syn keyword idlangRoutine XOBJVIEW XPALETTE XPCOLOR XPLOT3D XREGISTERED XROI
    216 syn keyword idlangRoutine XSQ_TEST XSURFACE XVAREDIT XVOLUME XVOLUME_ROTATE
    217 syn keyword idlangRoutine XVOLUME_WRITE_IMAGE XYOUTS ZOOM ZOOM_24
    218 
    219 " Define the default highlighting.
    220 " Only when an item doesn't have highlighting yet
    221 
    222 hi def link idlangConditional	Conditional
    223 hi def link idlangRoutine	Type
    224 hi def link idlangStatement	Statement
    225 hi def link idlangContinueLine	Todo
    226 hi def link idlangRealNumber	Float
    227 hi def link idlangNumber	Number
    228 hi def link idlangString	String
    229 hi def link idlangOperator	Operator
    230 hi def link idlangComment	Comment
    231 hi def link idlangTodo	Todo
    232 hi def link idlangPreCondit	Identifier
    233 hi def link idlangDblCommaError	Error
    234 hi def link idlangStop	Error
    235 hi def link idlangStrucvar	PreProc
    236 hi def link idlangSystem	Identifier
    237 hi def link idlangKeyword	Special
    238 
    239 
    240 let b:current_syntax = "idlang"
    241 " vim: ts=18