" Vim syntax file " Language: C " Maintainer: Julien Nadeau source $VIMRUNTIME/syntax/c.vim set nocindent set nocompatible " For cadtools (http://hypertriton.com/cadtools/) if !exists("c_no_cadtools") || exists("c_cadtools_typedefs") syn keyword cType CAD_Part CAD_Stock CAD_Feature CAM_Chuck syn keyword cType CAD_ExtrudedBoss CAM_Machine CAM_Program syn keyword cType CAM_Lathe CAM_Mill CAM_Drill CAM_Laser endif " For the new Agar-GI subsystem of Agar-1.4 (http://libagar.org/) if !exists("c_no_agar_gi") || exists("c_agar_gi_typedefs") syn keyword cType GI GI_Class GI_Pos GI_Primitive GI_Real syn keyword cType GI_PixelFormat GI_Palette GI_Color GI_Surface syn keyword cType GI_SDL GI_GL endif " For the Open Dynamics Engine (http://ode.org/) if !exists("c_no_ode") || exists("c_ode_typedefs") syn keyword cType dWorldID dSpaceID dBodyID dGeomID dJointID dJointGroupID syn keyword cType dReal dVector3 dVector4 dMatrix3 dMatrix4 dQuaternion syn keyword cType dMass endif " For the FreeSG Math library (http://freesg.org/) if !exists("c_no_freesg_m") || exists("c_freesg_m_typedefs") syn keyword cType M_Real M_Complex M_Quaternion M_Range M_Color syn keyword cType M_Vector M_Vector2 M_Vector3 M_Vector4 M_VectorN syn keyword cType M_Matrix M_Matrix44 M_MatrixMN syn keyword cType M_Rectangular M_Polar M_Parabolic syn keyword cType M_Spherical M_Cylindrical syn keyword cType M_VectorOps2 M_VectorOps3 M_VectorOps4 syn keyword cType M_MatrixOps44 M_MatrixOpsMN syn keyword cType M_GeomType M_Geom2 M_Geom3 M_Geom syn keyword cType M_GeomSet M_GeomSet2 M_GeomSet3 syn keyword cType M_PointSet M_PointSet2 M_PointSet3 syn keyword cType M_Line M_Line2 M_Line3 M_Plane M_Hyperplane syn keyword cType M_Circle M_Circle2 M_Circle3 syn keyword cType M_Polygon M_Polygon2 M_Polygon3 syn keyword cType M_Triangle M_Triangle2 M_Triangle3 syn keyword cType M_Rectangle M_Rectangle2 M_Rectangle3 syn keyword cType M_Sphere endif " For the FreeSG 3D engine library (http://freesg.org/) if !exists("c_no_freesg") || exists("c_freesg_typedefs") syn keyword cType SG SG_Version syn keyword cType SG_VectorOps4 SG_Version syn keyword cType SG_View SG_Vertex SG_TriStrip syn keyword cType SG_Node SG_NodeClass SG_Dummy SG_Object syn keyword cType SG_Point SG_Sphere SG_Camera SG_Light syn keyword cType SG_Solid SG_PlaneObj SG_Contour SG_Surface syn keyword cType SG_Box SG_Facet SG_Edge syn keyword cType SG_BSPTree SG_BSPNode SG_Octree SG_Octnode syn keyword cType SG_ExtrudeMode SG_EdgeEnt SG_Voxel syn keyword cType PLY_Property PLY_Element PLY_Prop syn keyword cType PLY_OtherData PLY_OtherElem PLY_OtherElems syn keyword cType PLY_PropRules PLY_RuleList PLY_File PLY_Info syn keyword cType SG_Matview SG_Program SG_Material syn keyword cType SG_Texture SG_MaterialTexture SG_CameraInsn syn keyword cType SG_ProgramClass SG_CgProgram syn keyword cType SK SK_Node SK_NodeOps SK_View SK_Tool SK_ToolOps syn keyword cType SK_ToolMouseBinding SK_ToolKeyBinding syn keyword cType SK_Dummy SK_Point SK_Line SK_Circle SK_Arc syn keyword cType SK_Text SK_Constraint SK_Cluster SK_Polygon syn keyword cType SK_SelectTool SK_Insn SK_Status SK_NodePair syn keyword cType SK_ConstraintPairFn SK_ConstraintRingFn syn keyword cType SK_Annot SK_Dimension SK_Group SK_IntersectFn syn keyword cType SK_GeometryFn syn keyword cType PE PE_Class PE_Ode PE_OdeNodeData endif " For the nVidia Cg runtime library. if !exists("c_no_cg") || exists("c_cg_typedefs") syn keyword cType CGcontext CGprogram CGparameter CGprofile CGGLenum endif " For the Agar-EDA circuit simulator (http://hypertriton.com/agar-eda/) if !exists("c_no_agar_eda") || exists("c_agar_eda_typedefs") syn keyword cType ES_Branch ES_Node ES_Loop ES_Circuit ES_Port syn keyword cType ES_Pair ES_Conductor ES_SemiResistor ES_Ground syn keyword cType ES_Component ES_ComponentClass ES_Resistor ES_Spec syn keyword cType ES_Digital ES_DigitalClass ES_DigitalFamily syn keyword cType ES_Spdt ES_Spst ES_Inverter ES_LogicState ES_And ES_Or syn keyword cType ES_Sim ES_SimOps ES_Scope ES_SpecCondition syn keyword cType ES_Vsource ES_VSquare ES_VSine ES_DigitalSpec ES_Led syn keyword cType ES_LogicProbe ES_Wire ES_Sym ES_Schem syn keyword cType ES_SimDC ES_SimAC ES_SimSP ES_SimHB ES_SimSweep syn keyword cType ES_SchemLineTool ES_SchemPointTool ES_SchemCircleTool syn keyword cType ES_SchemArcTool ES_SchemTextTool ES_SchemPolygonTool syn keyword cType ES_SchemSelectTool ES_SchemPortTool ES_SchemPort syn keyword cType ES_SchemWire ES_SchemWireTool endif " For the csoft-mon monitoring tool. if !exists("c_no_csoft_mon") || exists("c_csoft_mon_typedefs") syn keyword cType CM_Monitor CM_MonitorOps endif " For the Agar-SC library (http://libagar.org/) if !exists("c_no_agar_sc") || exists("c_agar_sc_typedefs") syn keyword cType SC_Real SC_Vector SC_Ivector SC_Matrix SC_QTime syn keyword cType SC_Time SC_Range SC_QTimeRange SC_Plot syn keyword cType SC_Plotter SC_PlotLabel SC_Matview endif " For the Agar-NET library (http://libagar.org/) if !exists("c_no_agar_net") || exists("c_agar_net_typedefs") syn keyword cType NC_Session NC_Result NS_Cmd NS_Auth syn keyword cType NS_CommandArg NC_CommandArg NC_Command syn keyword cType NS_Command NS_Server NS_LoginFn NS_LogoutFn syn keyword cType NS_SigCheckFn NS_AuthFn NS_PeriodicFn syn keyword cType NS_ErrorFn NS_CommandFn NS_Client endif " For the Agar-Core library (http://libagar.org/) if !exists("c_no_agar_core") || exists("c_agar_core_typedefs") syn keyword cType Uchar Uint Ulong syn keyword cType AG_Object AG_ObjectClass AG_ObjectDep syn keyword cType AG_ObjectLoadCallbackFn AG_Config syn keyword cType AG_CPUInfo AG_AgarVersion syn keyword cType AG_Event AG_EvArg AG_EvArgs AG_EventFn syn keyword cType AG_Input AG_InputOps AG_RCSLog AG_RCSLogEntry syn keyword cType AG_Joystick AG_Keyboard AG_Mouse AG_Prop syn keyword cType AG_Timeout AG_PropReadFn AG_RCSList syn keyword cType AG_PropWriteFn AG_PropClass AG_RCSListEntry syn keyword cType AG_Den AG_DenMember AG_DataSource AG_Version syn keyword cType AG_Mutex AG_Thread AG_RWLock AG_Cond syn keyword cType AG_ThreadAttr AG_MutexAttr AG_ThreadKey syn keyword cType AG_Dir AG_FileInfo AG_IOStatus AG_FileSource syn keyword cType AG_CoreSource AG_ConstCoreSource syn keyword cType AG_TextCache AG_CachedText syn keyword cType AG_TextCacheBucket syn keyword cType AG_Surface AG_PixelFormat AG_Palette AG_Color syn keyword cType AG_ColorRGB syn keyword cConstant AG_INT_MIN AG_INT_MAX AG_UINT_MIN AG_UINT_MAX syn keyword cConstant AG_FLT_MIN AG_FLT_MAX AG_DBL_MIN AG_DBL_MAX syn keyword cConstant AG_LDBL_MIN AG_LDBL_MAX AG_LONG_MIN AG_LONG_MAX syn keyword cConstant AG_ULONG_MIN AG_ULONG_MAX AG_LONGLONG_MIN syn keyword cConstant AG_LONGLONG_MAX endif " For the Agar-GUI library (http://libagar.org/) if !exists("c_no_agar_gui") || exists("c_agar_gui_typedefs") syn keyword cType AG_Display AG_TTFFont AG_TTFGlyph AG_IconMgr syn keyword cType AG_Toolbar AG_Animview AG_Bitmap AG_Box syn keyword cType AG_Button AG_Checkbox AG_Combo AG_MenuView syn keyword cType AG_FileDlg AG_FileType AG_FixedPlotterValue syn keyword cType AG_FSpinbutton AG_FixedPlotter AG_Numerical syn keyword cType AG_FixedPlotterItem AG_HBox AG_FlagDescr syn keyword cType AG_HSVPal AG_Label AG_Matview AG_Menu syn keyword cType AG_MenuItem AG_Menuview AG_MFSpinbutton syn keyword cType AG_MSpinbutton AG_Notebook AG_HPane AG_MPane syn keyword cType AG_NotebookTab AG_ObjSelector syn keyword cType AG_Scrollbar AG_Separator AG_RadioItem syn keyword cType AG_Spinbutton AG_Statusbar AG_Tableview syn keyword cType AG_Textbox AG_Textview AG_Titlebar AG_UCombo syn keyword cType AG_Pixmap AG_TextLine AG_TextChar AG_BlendFn syn keyword cType AG_VBox AG_VPane AG_HPane AG_Window AG_MPane syn keyword cType AG_Tlist AG_TlistItem AG_VPaneDiv AG_HPaneDiv syn keyword cType AG_ObjectSelector AG_PrimitiveOps AG_MPaneDiv syn keyword cType AG_TableviewColID AG_TableviewRowID syn keyword cType AG_TableviewDataFn AG_TableviewSortFn AG_Unit syn keyword cType AG_TableviewCol AG_TableviewRow AG_Radio syn keyword cType AG_Widget AG_WidgetBinding AG_Style syn keyword cType AG_Font AG_Glyph AG_WidgetClass AG_Fixed syn keyword cType AG_Table AG_TableRow AG_TableCol AG_TableCell syn keyword cType AG_GLView AG_WidgetClipState AG_PopupMenu syn keyword cType AG_Pane AG_PaneDiv AG_Console AG_ConsoleLine syn keyword cType AG_TlistPopup AG_TablePopup AG_ColorSel syn keyword cType AG_Graph AG_GraphVertex AG_GraphEdge syn keyword cType AG_WidgetBindingType AG_TextState AG_Slider syn keyword cType AG_StaticFont syn keyword cType AG_SizeReq AG_SizeAlloc AG_Socket AG_Icon syn keyword cType AG_FileOption AG_ProgressBar AG_StaticIcon syn keyword cType AG_Rect AG_PixmapSurface AG_Editable endif " For the Agar-VG library (http://libagar.org/) if !exists("c_no_agar_vg") || exists("c_agar_vg_typedefs") syn keyword cType VG VG_Node VG_NodeOps VG_Layer VG_Matrix syn keyword cType VG_LineStyle VG_FillingStyle VG_TextStyle syn keyword cType VG_Style VG_Vector VG_Block VG_Rect AG_Drawing syn keyword cType VG_View VG_Tool VG_ToolOps VG_ToolKeyBinding syn keyword cType VG_ToolMouseBinding VG_Color VG_Point VG_Line syn keyword cType VG_Circle VG_Arc VG_Text VG_Polygon syn keyword cType VG_IndexedColor endif " For the Agar-RG library (http://libagar.org/) if !exists("c_no_agar_rg") || exists("c_agar_rg_typedefs") syn keyword cType RG_Anim RG_AnimFrame RG_AnimInsn syn keyword cType RG_Feature RG_FeatureOps RG_FeatureSketch syn keyword cType RG_FeaturePixmap RG_Pixmap RG_Sketch RG_Brush syn keyword cType RG_TextureSelector RG_Texture syn keyword cType RG_Tileset RG_Tile RG_TileElement syn keyword cType RG_TileviewCtrl RG_TileviewToolOps syn keyword cType RG_TileviewTool RG_TileviewBitmapToolOps syn keyword cType RG_TileviewSketchToolOps RG_Tileview syn keyword cType RG_TileviewHandle syn keyword cType RG_Animview RG_PixmapUndoBlk RG_PixmapMod syn keyword cType RG_SketchMod RG_SketchUndoBlk RG_Transform syn keyword cType RG_TransformChain RG_TileVariant RG_AnimVariant endif " For the Agar-MAP library (http://libagar.org/) if !exists("c_no_agar_map") || exists("c_agar_map_typedefs") syn keyword cType MAP MAP_View MAP_Node MAP_Item MAP_Tool syn keyword cType MAP_View MAP_ViewDrawCb MAP_Editor syn keyword cType MAP_Mod MAP_ModBlk MAP_Layer MAP_Camera syn keyword cType MAP_ToolKeyBinding MAP_ToolMouseBinding syn keyword cType MAP_ToolOps MAP_Actor MAP_ActorClass syn keyword cType MAP_NodeMask MAP_NodeMaskQ endif " For the SDL library (http://libsdl.org/) if !exists("c_no_sdl") || exists("c_sdl_typedefs") syn keyword cType Uint8 Sint8 Uint16 Sint16 Uint32 Sint32 syn keyword cType Uint64 Sint64 syn keyword cType SDL_Surface SDL_Rect SDL_Event SDL_Color syn keyword cType SDL_TimerID SDL_Palette SDL_Joystick syn keyword cType SDLKey SDLMod SDL_AudioSpec SDL_AudioCVT syn keyword cType SDL_PixelFormat SDL_Cursor SDL_VideoInfo syn keyword cType SDL_ActiveEvent SDL_KeyboardEvent syn keyword cType SDL_MouseMotionEvent SDL_MouseButtonEvent syn keyword cType SDL_JoyAxisEvent SDL_JoyBallEvent syn keyword cType SDL_JoyHatEvent SDL_JoyButtonEvent syn keyword cType SDL_ResizeEvent SDL_ExposeEvent syn keyword cType SDL_QuitEvent SDL_UserEvent syn keyword cType SDL_SysWMEvent endif " For OpenGL (http://opengl.org/) if !exists("c_no_gl") || exists("c_gl_typedefs") syn keyword cType GLbyte GLshort GLint GLsizei syn keyword cType GLfloat GLclampf syn keyword cType GLdouble GLclampd syn keyword cType GLubyte GLboolean GLushort GLuint syn keyword cType GLenum GLbitfield GLvoid endif " For the GLU library (http://opengl.org/) if !exists("c_no_glu") || exists("c_glu_typedefs") syn keyword cType GLUnurbs GLUquadric GLUtesselator syn keyword cType GLUnurbsObj GLUquadricObj GLUtesselatorObj syn keyword cType GLUtriangulatorObj endif " For POSIX threads if !exists("c_no_pthread") || exists("c_pthread_typedefs") syn keyword cType pthread_mutex_t pthread_mutexattr_t syn keyword cType pthread_rwlock_t pthread_rwlockattr_t syn keyword cType pthread_cond_t pthread_condattr_t syn keyword cType pthread_key_t pthread_t syn keyword cType rwlock_t rwlockattr_t pthread_attr_t endif " For BSD types if !exists("c_no_bsdsys") || exists("c_bsdsys_typedefs") syn keyword cType u_char u_short u_int u_long syn keyword cType u_int8_t u_int16_t u_int32_t u_int64_t syn keyword cType u_quad_t quad_t fixpt_t syn keyword cType mode_t uid_t gid_t sigset_t pid_t syn keyword cType ssize_t off_t in_addr_t in_port_t sa_family_t syn keyword cType socklen_t bitstr_t endif " For csoft-cgi (http://hypertriton.com/csoft-cgi/) if !exists("c_no_csoftcgi") || exists("c_csoftcgi_typedefs") syn keyword cType VAR CGI_Query CGI_Session syn keyword cType HTML_Notebook HTML_NotebookTab syn keyword cType AUTH_Sess AUTH_SessVar syn keyword cType IndexEntry PartInfo endif " For mailprocd structures (http://hypertriton.com/mailprocd/) if !exists("c_no_mailprocd") || exists("c_mailprocd_typedefs") syn keyword cType SF_LogicOp SF_MsgStatus SF_Message SF_Rule syn keyword cType SF_Ruleset POL_Attrib POL_Request SF_Recipient syn keyword cType SMTP_Session ML_MailListReq CTL_Session syn keyword cType QMGR_MetaData endif " For OpenMGI structures (http://hypertriton.com/openmgi/) if !exists("c_no_openmgi") || exists("c_openmgi_typedefs") syn keyword cType MGI_Library MGI MGI_List MGI_Data syn keyword cType CLI_Command MGI_Library CLI_Module syn keyword cType MGI_MailAddress MGI_MailInsn MGI_MailMacro syn keyword cType MGI_MailCond MGI_MailDeliveryCfg endif " For AgarWM (http://libagar.org/agarwm/) if !exists("c_no_agarwm") || exists("c_agarwm_typedefs") syn keyword cType WM_Client endif