133 lines · 6.0 KB · Text
RawDownload
" Vim syntax file" Language:	Hercules" Maintainer:	Dana Edwards <Dana_Edwards@avanticorp.com>" Extensions:   *.vc,*.ev,*.rs" Last change:  Nov. 9, 2001" Comment:      Hercules physical IC design verification software ensures"		that an IC's physical design matches its logical design and"		satisfies manufacturing rules. " For version 5.x: Clear all syntax items" For version 6.x: Quit when a syntax file was already loadedif version < 600  syntax clearelseif exists("b:current_syntax")  finishendif " Ignore casesyn case ignore " Hercules runset sectionssyn keyword   herculesType	  header assign_property alias assignsyn keyword   herculesType	  options preprocess_optionssyn keyword   herculesType	  explode_options technology_optionssyn keyword   herculesType	  drc_options database_optionssyn keyword   herculesType	  text_options lpe_options evaccess_optionssyn keyword   herculesType	  check_point compare_group environmentsyn keyword   herculesType	  grid_check include layer_stats load_groupsyn keyword   herculesType	  restart run_only self_intersect set snapsyn keyword   herculesType	  system variable waiver " Hercules commandssyn keyword   herculesStatement   attach_property boolean cell_extentsyn keyword   herculesStatement   common_hierarchy connection_pointssyn keyword   herculesStatement   copy data_filter alternate deletesyn keyword   herculesStatement   explode explode_all fill_pattern find_netsyn keyword   herculesStatement   flattensyn keyword   herculesStatement   level negate polygon_features pushsyn keyword   herculesStatement   rectangles relocate remove_overlap reverse selectsyn keyword   herculesStatement   select_cell select_contains select_edge select_net sizesyn keyword   herculesStatement   text_polygon text_property vertex area cutsyn keyword   herculesStatement   density enclose external inside_edgesyn keyword   herculesStatement   internal notch vectorize center_to_centersyn keyword   herculesStatement   length mask_align moscheck reschecksyn keyword   herculesStatement   analysis buildsub init_lpe_db capacitorsyn keyword   herculesStatement   device gendev nmos pmos diode npn pnpsyn keyword   herculesStatement   resistor set_param save_propertysyn keyword   herculesStatement   connect disconnect text  text_booleansyn keyword   herculesStatement   replace_text create_ports label graphicssyn keyword   herculesStatement   save_netlist_database lpe_stats netlistsyn keyword   herculesStatement   spice graphics_property graphics_netlistsyn keyword   herculesStatement   write_milkyway multi_rule_enclosesyn keyword   herculesStatement   if error_property equate comparesyn keyword   herculesStatement   antenna_fix c_thru dev_connect_checksyn keyword   herculesStatement   dev_net_count device_count net_filtersyn keyword   herculesStatement   net_path_check ratio process_text_opens " Hercules keywordssyn keyword   herculesStatement   black_box_file block compare_dir equivalencesyn keyword   herculesStatement   format gdsin_dir group_dir group_dir_usagesyn keyword   herculesStatement   inlib layout_path outlib output_formatsyn keyword   herculesStatement   output_layout_path schematic schematic_formatsyn keyword   herculesStatement   scheme_file output_block elsesyn keyword   herculesStatement   and or not xor andoverlap inside outside by tosyn keyword   herculesStatement   with connected connected_all texted_with textedsyn keyword   herculesStatement   by_property cutting edge_touch enclosing insidesyn keyword   herculesStatement   inside_hole interact touching vertex " Hercules commentssyn region    herculesComment		start="/\*" skip="/\*" end="\*/" contains=herculesTodosyn match     herculesComment		"//.*" contains=herculesTodo " Preprocessor directivessyn match     herculesPreProc "^#.*"syn match     herculesPreProc "^@.*"syn match     herculesPreProc "macros" " Hercules COMMENT optionsyn match     herculesCmdCmnt "comment.*=.*" " Spacings, Resolutions, Ranges, Ratios, etc.syn match     herculesNumber	      "-\=\<[0-9]\+L\=\>\|0[xX][0-9]\+\>" " Parenthesis sanity checkersyn region    herculesZone       matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" transparent contains=ALLBUT,herculesError,herculesBraceError,herculesCurlyErrorsyn region    herculesZone       matchgroup=Delimiter start="{" matchgroup=Delimiter end="}" transparent contains=ALLBUT,herculesError,herculesBraceError,herculesParenErrorsyn region    herculesZone       matchgroup=Delimiter start="\[" matchgroup=Delimiter end="]" transparent contains=ALLBUT,herculesError,herculesCurlyError,herculesParenErrorsyn match     herculesError      "[)\]}]"syn match     herculesBraceError "[)}]"  containedsyn match     herculesCurlyError "[)\]]" containedsyn match     herculesParenError "[\]}]" contained " Hercules output format"syn match  herculesOutput "([0-9].*)""syn match  herculesOutput "([0-9].*\;.*)"syn match     herculesOutput "perm\s*=.*(.*)"syn match     herculesOutput "temp\s*=\s*"syn match     herculesOutput "error\s*=\s*(.*)" "Modify the following as needed.  The trade-off is performance versus functionality.syn sync      lines=100 " Define the default highlighting." For version 5.7 and earlier: only when not done already" For version 5.8 and later: only when an item doesn't have highlighting yetif version >= 508 || !exists("did_hercules_syntax_inits")  if version < 508    let did_hercules_syntax_inits = 1    " Default methods for highlighting.    command -nargs=+ HiLink hi link <args>  else    command -nargs=+ HiLink hi def link <args>  endif   HiLink herculesStatement  Statement  HiLink herculesType       Type  HiLink herculesComment    Comment  HiLink herculesPreProc    PreProc  HiLink herculesTodo       Todo  HiLink herculesOutput     Include  HiLink herculesCmdCmnt    Identifier  HiLink herculesNumber     Number  HiLink herculesBraceError herculesError  HiLink herculesCurlyError herculesError  HiLink herculesParenError herculesError  HiLink herculesError      Error   delcommand HiLinkendif let b:current_syntax = "hercules" " vim: ts=8