<?xml version="1.0" encoding="UTF-8"?> <!--***********************************************************************--> <!-- $Id: systemverilog.xml 10 2009-06-25 03:41:39Z seanoboyle $ --> <!--***********************************************************************--> <!-- This program is free software: you can redistribute it and/or modify --> <!-- it under the terms of the GNU General Public License as published by --> <!-- the Free Software Foundation, either version 3 of the License, or --> <!-- (at your option) any later version. --> <!-- --> <!-- This program is distributed in the hope that it will be useful, --> <!-- but WITHOUT ANY WARRANTY; without even the implied warranty of --> <!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --> <!-- GNU General Public License for more details. --> <!-- --> <!-- You should have received a copy of the GNU General Public License --> <!-- along with this program. If not, see <http://www.gnu.org/licenses/>.--> <!-- --> <!--***********************************************************************--> <!-- Title: SystemVerilog Language Keywords File for Kate Editor --> <!-- Description: This file contains the SV keywords defined in the --> <!-- IEEE1800-2009 Draft Standard in the format expected by --> <!-- the Kate Editor. --> <!-- --> <!-- Original Author: Sean O'Boyle --> <!-- Contact: seanoboyle@intelligentdv.com --> <!-- Company: Intelligent Design Verification --> <!-- Company URL: http://intelligentdv.com --> <!-- --> <!-- Download the most recent version here: --> <!-- http://intelligentdv.com/downloads --> <!-- --> <!-- File Bugs Here: http://bugs.intelligentdv.com --> <!-- Project: SyntaxFiles --> <!-- --> <!-- File: systemverilog.xml --> <!-- $LastChangedBy: seanoboyle $ --> <!-- $LastChangedDate: 2009-06-24 20:41:39 -0700 (Wed, 24 Jun 2009) $ --> <!-- $LastChangedRevision: 10 $ --> <!-- --> <!--***********************************************************************--> <!DOCTYPE language SYSTEM "language.dtd"> <language name="SystemVerilog" version="2" kateversion="2.4" section="Hardware" extensions="*.sv;*.svh" mimetype="text/x-systemverilog-src" author="Sean O'Boyle (seanoboyle@intelligentdv.com)" license="GPL"> <highlighting> <list name="key_deprecated"> <item> defparam </item> <item> deassign </item> </list> <list name="key_dpi"> <item> DPI </item> <item> DPI-C </item> <item> import </item> <item> export </item> <item> context </item> </list> <list name="key_assert"> <item> assert </item> <item> assume </item> <item> cover </item> <item> expect </item> <item> disable </item> <item> iff </item> <item> binsof </item> <item> intersect </item> <item> first_match </item> <item> throughout </item> <item> within </item> </list> <list name="key_coverage"> <item> coverpoint </item> <item> cross </item> <item> wildcard </item> <item> bins </item> <item> ignore_bins </item> <item> illegal_bins </item> </list> <list name="key_generator"> <item> genvar </item> </list> <list name="key_conditional"> <item> if </item> <item> else </item> <item> unique </item> <item> priority </item> <item> matches </item> </list> <list name="key_case"> <item> default </item> </list> <list name="key_loop"> <item> forever </item> <item> repeat </item> <item> while </item> <item> for </item> <item> do </item> <item> foreach </item> <item> break </item> <item> continue </item> <item> return </item> </list> <list name="key_specify"> <item> pulsestyle_onevent </item> <item> pulsestyle_ondetect </item> <item> noshowcancelled </item> <item> showcancelled </item> <item> ifnone </item> </list> <list name="key_procblock"> <item> initial </item> <item> final </item> <item> always </item> <item> always_comb </item> <item> always_ff </item> <item> always_latch </item> </list> <list name="key_contassign"> <item> alias </item> <item> assign </item> <item> force </item> <item> release </item> </list> <list name="key_event"> <item> posedge </item> <item> negedge </item> <item> edge </item> <item> wait </item> <item> wait_order </item> </list> <list name="key_time"> <item> timeunit </item> <item> timeprecision </item> <item> s </item> <item> ms </item> <item> ns </item> <item> us </item> <item> ns </item> <item> ps </item> <item> fs </item> <item> step </item> </list> <list name="key_class"> <item> new </item> <item> extends </item> <item> this </item> <item> super </item> <item> protected </item> <item> local </item> <item> rand </item> <item> randc </item> <item> bind </item> </list> <list name="key_constraint"> <item> constraint </item> <item> solve </item> <item> before </item> <item> dist </item> <item> inside </item> <item> with </item> </list> <list name="key_methods"> <item> virtual </item> <item> pure </item> <item> extern </item> <item> forkjoin </item> </list> <list name="key_config"> <item> design </item> <item> instance </item> <item> cell </item> <item> liblist </item> <item> use </item> </list> <list name="key_library"> <item> library </item> <item> incdir </item> <item> include </item> </list> <list name="key_interface"> <item> modport </item> </list> <list name="key_checker"> <item> sync_accept_on </item> <item> reject_on </item> <item> accept_on </item> <item> sync_reject_on </item> <item> restrict </item> <item> let </item> <item> until </item> <item> until_with </item> <item> unique0 </item> <item> eventually </item> <item> s_until </item> <item> s_always </item> <item> s_eventually </item> <item> s_nexttime </item> <item> s_until_with </item> <item> global </item> <item> untyped </item> <item> implies </item> <item> weak </item> <item> strong </item> <item> nexttime </item> </list> <list name="key_types"> <!-- parameters --> <item> parameter </item> <item> localparam </item> <item> specparam </item> <!-- port direction --> <item> input </item> <item> output </item> <item> inout </item> <item> ref </item> <!-- integer atom type --> <item> byte </item> <item> shortint </item> <item> int </item> <item> integer </item> <item> longint </item> <item> time </item> <!-- integer vector type --> <item> bit </item> <item> logic </item> <item> reg </item> <!-- net type --> <item> supply0 </item> <item> supply1 </item> <item> tri </item> <item> triand </item> <item> trior </item> <item> trireg </item> <item> tri0 </item> <item> tri1 </item> <item> wire </item> <item> uwire </item> <item> wand </item> <item> wor </item> <!-- signing --> <item> signed </item> <item> unsigned </item> <!-- noninteger type --> <item> shortreal </item> <item> real </item> <item> realtime </item> <!-- type reference --> <item> type </item> <item> void </item> <!-- struct union --> <item> struct </item> <item> union </item> <item> tagged </item> <!-- modifier --> <item> const </item> <item> var </item> <item> automatic </item> <item> static </item> <item> packed </item> <item> vectored </item> <item> scalared </item> <!-- other types --> <item> typedef </item> <item> enum </item> <item> string </item> <item> chandle </item> <item> event </item> <!-- misc --> <item> null </item> </list> <list name="key_preprocessor"> <item> `__FILE__ </item> <item> `__LINE__ </item> <item> `begin_keywords </item> <item> `celldefine </item> <item> `default_nettype </item> <item> `define </item> <item> `else </item> <item> `elsif </item> <item> `end_keywords </item> <item> `endcelldefine </item> <item> `endif </item> <item> `ifdef </item> <item> `ifndef </item> <item> `include </item> <item> `line </item> <item> `nounconnected_drive </item> <item> `pragma </item> <item> `resetall </item> <item> `timescale </item> <item> `unconnected_drive </item> <item> `undef </item> <item> `undefineall </item> </list> <list name="key_system"> <item> $finish </item> <item> $stop </item> <item> $exit </item> <item> $realtime </item> <item> $stime </item> <item> $time </item> <item> $printtimescale </item> <item> $timeformat </item> <item> $bitstoreal </item> <item> $realtobits </item> <item> $bitstoshortreal </item> <item> $shortrealtobits </item> <item> $itor </item> <item> $rtoi </item> <item> $signed </item> <item> $unsigned </item> <item> $cast </item> <item> $bits </item> <item> $isunbounded </item> <item> $typename </item> <item> $unpacked_dimensions </item> <item> $dimensions </item> <item> $left </item> <item> $right </item> <item> $low </item> <item> $high </item> <item> $increment </item> <item> $size </item> <item> $clog2 </item> <item> $asin </item> <item> $ln </item> <item> $acos </item> <item> $log10 </item> <item> $atan </item> <item> $exp </item> <item> $atan2 </item> <item> $sqrt </item> <item> $hypot </item> <item> $pow </item> <item> $sinh </item> <item> $floor </item> <item> $cosh </item> <item> $ceil </item> <item> $tanh </item> <item> $sin </item> <item> $asinh </item> <item> $cos </item> <item> $acosh </item> <item> $tan </item> <item> $atanh </item> <item> $fatal </item> <item> $error </item> <item> $warning </item> <item> $info </item> <item> $fatal </item> <item> $error </item> <item> $warning </item> <item> $info </item> <item> $asserton </item> <item> $assertoff </item> <item> $assertkill </item> <item> $assertpasson </item> <item> $assertpassoff </item> <item> $assertfailon </item> <item> $assertfailoff </item> <item> $assertnonvacuouson </item> <item> $assertvacuousoff </item> <item> $onehot </item> <item> $onehot0 </item> <item> $isunknown </item> <item> $sampled </item> <item> $rose </item> <item> $fell </item> <item> $stable </item> <item> $changed </item> <item> $past </item> <item> $countones </item> <item> $past_gclk </item> <item> $rose_gclk </item> <item> $fell_gclk </item> <item> $stable_gclk </item> <item> $changed_gclk </item> <item> $future_gclk </item> <item> $rising_gclk </item> <item> $falling_gclk </item> <item> $steady_gclk </item> <item> $changing_gclk </item> <item> $coverage_control </item> <item> $coverage_get_max </item> <item> $coverage_get </item> <item> $coverage_merge </item> <item> $coverage_save </item> <item> $get_coverage </item> <item> $set_coverage_db_name </item> <item> $load_coverage_db </item> <item> $random </item> <item> $dist_chi_square </item> <item> $dist_erlang </item> <item> $dist_exponential </item> <item> $dist_normal </item> <item> $dist_poisson </item> <item> $dist_t </item> <item> $dist_uniform </item> <item> $q_initialize </item> <item> $q_add </item> <item> $q_remove </item> <item> $q_full </item> <item> $q_exam </item> <item> $async$and$array </item> <item> $async$and$plane </item> <item> $async$nand$array </item> <item> $async$nand$plane </item> <item> $async$or$array </item> <item> $async$or$plane </item> <item> $async$nor$array </item> <item> $async$nor$plane </item> <item> $sync$and$array </item> <item> $sync$and$plane </item> <item> $sync$nand$array </item> <item> $sync$nand$plane </item> <item> $sync$or$array </item> <item> $sync$or$plane </item> <item> $sync$nor$array </item> <item> $sync$nor$plane </item> <item> $system </item> <item> $display </item> <item> $write </item> <item> $displayb </item> <item> $writeb </item> <item> $displayh </item> <item> $writeh </item> <item> $displayo </item> <item> $writeo </item> <item> $strobe </item> <item> $monitor </item> <item> $strobeb </item> <item> $monitorb </item> <item> $strobeh </item> <item> $monitorh </item> <item> $strobeo </item> <item> $monitoro </item> <item> $monitoroff </item> <item> $monitoron </item> <item> $fclose </item> <item> $fopen </item> <item> $fdisplay </item> <item> $fwrite </item> <item> $fdisplayb </item> <item> $fwriteb </item> <item> $fdisplayh </item> <item> $fwriteh </item> <item> $fdisplayo </item> <item> $fwriteo </item> <item> $fstrobe </item> <item> $fmonitor </item> <item> $fstrobeb </item> <item> $fmonitorb </item> <item> $fstrobeh </item> <item> $fmonitorh </item> <item> $fstrobeo </item> <item> $fmonitoro </item> <item> $swrite </item> <item> $sformat </item> <item> $swriteb </item> <item> $sformatf </item> <item> $swriteh </item> <item> $fgetc </item> <item> $swriteo </item> <item> $ungetc </item> <item> $fscanf </item> <item> $fgets </item> <item> $fread </item> <item> $sscanf </item> <item> $fseek </item> <item> $rewind </item> <item> $fflush </item> <item> $ftell </item> <item> $feof </item> <item> $ferror </item> <item> $readmemb </item> <item> $readmemh </item> <item> $writememb </item> <item> $writememh </item> <item> $test$plusargs </item> <item> $value$plusargs </item> <item> $dumpfile </item> <item> $dumpvars </item> <item> $dumpoff </item> <item> $dumpon </item> <item> $dumpall </item> <item> $dumplimit </item> <item> $dumpflush </item> <item> $dumpports </item> <item> $dumpportsoff </item> <item> $dumpportson </item> <item> $dumpportsall </item> <item> $dumpportslimit </item> <item> $dumpportsflush </item> </list> <list name="key_gates"> <item> pullup </item> <item> pulldown </item> <item> cmos </item> <item> rcmos </item> <item> nmos </item> <item> pmos </item> <item> rnmos </item> <item> rpmos </item> <item> and </item> <item> nand </item> <item> or </item> <item> nor </item> <item> xor </item> <item> xnor </item> <item> not </item> <item> buf </item> <item> tran </item> <item> rtran </item> <item> tranif0 </item> <item> tranif1 </item> <item> rtranif0 </item> <item> rtranif1 </item> <item> bufif0 </item> <item> bufif1 </item> <item> notif0 </item> <item> notif1 </item> </list> <list name="key_strength"> <!-- drive strength --> <item> strong0 </item> <item> strong1 </item> <item> pull0 </item> <item> pull1 </item> <item> weak0 </item> <item> weak1 </item> <item> highz0 </item> <item> highz1 </item> <!-- charge strength --> <item> small </item> <item> medium </item> <item> large </item> </list> <list name="key_stdlib"> <item> randomize </item> <item> mailbox </item> <item> semaphore </item> <item> put </item> <item> get </item> <item> try_put </item> <item> try_get </item> <item> peek </item> <item> try_peek </item> <item> process </item> <item> state </item> <item> self </item> <item> status </item> <item> kill </item> <item> await </item> <item> suspend </item> <item> resume </item> <!-- Array --> <item> size </item> <item> delete </item> <item> insert </item> <item> num </item> <item> first </item> <item> last </item> <item> next </item> <item> prev </item> <item> pop_front </item> <item> pop_back </item> <item> push_front </item> <item> push_back </item> <item> find </item> <item> find_index </item> <item> find_first </item> <item> find_last </item> <item> find_last_index </item> <item> min </item> <item> max </item> <item> unique_index </item> <item> reverse </item> <item> sort </item> <item> rsort </item> <item> shuffle </item> <item> sum </item> <item> product </item> <!-- List_pkg --> <item> List </item> <item> List_Iterator </item> <item> neq </item> <item> eq </item> <item> data </item> <item> empty </item> <item> front </item> <item> back </item> <item> start </item> <item> finish </item> <item> insert_range </item> <item> erase </item> <item> erase_range </item> <item> set </item> <item> swap </item> <item> clear </item> <item> purge </item> </list> <list name="begin"> <item>begin</item> </list> <list name="end"> <item>end</item> </list> <list name="package"> <item> package </item> </list> <list name="endpackage"> <item> endpackage </item> </list> <list name="macromodule"> <item> macromodule </item> </list> <list name="module"> <item> module </item> </list> <list name="endmodule"> <item> endmodule </item> </list> <list name="generate"> <item> generate </item> </list> <list name="endgenerate"> <item> endgenerate </item> </list> <list name="program"> <item> program </item> </list> <list name="endprogram"> <item> endprogram </item> </list> <list name="class"> <item> class </item> </list> <list name="endclass"> <item> endclass </item> </list> <list name="function"> <item> function </item> </list> <list name="endfunction"> <item> endfunction </item> </list> <list name="case"> <item> case </item> </list> <list name="casex"> <item> casex </item> </list> <list name="casez"> <item> casez </item> </list> <list name="randcase"> <item> randcase </item> </list> <list name="endcase"> <item> endcase </item> </list> <list name="interface"> <item> interface </item> </list> <list name="endinterface"> <item> endinterface </item> </list> <list name="clocking"> <item> clocking </item> </list> <list name="endclocking"> <item> endclocking </item> </list> <list name="task"> <item> task </item> </list> <list name="endtask"> <item> endtask </item> </list> <list name="primitive"> <item> primitive </item> </list> <list name="endprimitive"> <item> endprimitive </item> </list> <list name="fork"> <item> fork </item> </list> <list name="join"> <item> join </item> </list> <list name="join_any"> <item> join_any </item> </list> <list name="join_none"> <item> join_none </item> </list> <list name="covergroup"> <item> covergroup </item> </list> <list name="endgroup"> <item> endgroup </item> </list> <list name="checker"> <item> checker </item> </list> <list name="endchecker"> <item> endchecker </item> </list> <list name="property"> <item> property </item> </list> <list name="endproperty"> <item> endproperty </item> </list> <list name="randsequence"> <item> randsequence </item> </list> <list name="sequence"> <item> sequence </item> </list> <list name="endsequence"> <item> endsequence </item> </list> <list name="specify"> <item> specify </item> </list> <list name="endspecify"> <item> endspecify </item> </list> <list name="config"> <item> config </item> </list> <list name="endconfig"> <item> endconfig </item> </list> <list name="table"> <item> table </item> </list> <list name="endtable"> <item> endtable </item> </list> <list name="extern"> <item> extern </item> </list> <list name="pure"> <item> pure </item> </list> <list name="typedef"> <item> typedef </item> </list> <list name="import"> <item> import </item> </list> <contexts> <context attribute="Normal Text" lineEndContext="#stay" name="Normal"> <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1"/> <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1"/> <RegExpr attribute="Block Keyword" context="Block Name" String="begin\ *:" beginRegion="beginEnd"/> <keyword attribute="Method Keyword" context="Extern Context" String="extern"/> <keyword attribute="Method Keyword" context="Extern Context" String="pure"/> <keyword attribute="Method Keyword" context="Extern Context" String="import"/> <keyword attribute="Type Keyword" context="Typedef Context" String="typedef"/> <keyword attribute="Block Keyword" context="#stay" String="begin" beginRegion="beginEnd"/> <keyword attribute="Block Keyword" context="#stay" String="end" endRegion="beginEnd"/> <keyword attribute="Block Keyword" context="#stay" String="package" beginRegion="packageEndpackage"/> <keyword attribute="Block Keyword" context="#stay" String="endpackage" endRegion="packageEndpackage"/> <keyword attribute="Block Keyword" context="#stay" String="macromodule" beginRegion="moduleEndmodule"/> <keyword attribute="Block Keyword" context="#stay" String="module" beginRegion="moduleEndmodule"/> <keyword attribute="Block Keyword" context="#stay" String="endmodule" endRegion="moduleEndmodule"/> <keyword attribute="Block Keyword" context="#stay" String="generate" beginRegion="generateEndgenerate"/> <keyword attribute="Block Keyword" context="#stay" String="endgenerate" endRegion="generateEndgenerate"/> <keyword attribute="Block Keyword" context="#stay" String="program" beginRegion="programEndprogram"/> <keyword attribute="Block Keyword" context="#stay" String="endprogram" endRegion="programEndprogram"/> <keyword attribute="Block Keyword" context="#stay" String="class" beginRegion="classEndclass"/> <keyword attribute="Block Keyword" context="#stay" String="endclass" endRegion="classEndclass"/> <keyword attribute="Block Keyword" context="#stay" String="function" beginRegion="functionEndfunction"/> <keyword attribute="Block Keyword" context="#stay" String="endfunction" endRegion="functionEndfunction"/> <keyword attribute="Block Keyword" context="#stay" String="case" beginRegion="caseEndcase"/> <keyword attribute="Block Keyword" context="#stay" String="casex" beginRegion="caseEndcase"/> <keyword attribute="Block Keyword" context="#stay" String="casez" beginRegion="caseEndcase"/> <keyword attribute="Block Keyword" context="#stay" String="randcase" beginRegion="caseEndcase"/> <keyword attribute="Block Keyword" context="#stay" String="endcase" endRegion="caseEndcase"/> <keyword attribute="Block Keyword" context="#stay" String="interface" beginRegion="interfaceEndinterface"/> <keyword attribute="Block Keyword" context="#stay" String="endinterface" endRegion="interfaceEndinterface"/> <keyword attribute="Block Keyword" context="#stay" String="clocking" beginRegion="clockingEndclocking"/> <keyword attribute="Block Keyword" context="#stay" String="endclocking" endRegion="clockingEndclocking"/> <keyword attribute="Block Keyword" context="#stay" String="task" beginRegion="taskEndtask"/> <keyword attribute="Block Keyword" context="#stay" String="endtask" endRegion="taskEndtask"/> <keyword attribute="Block Keyword" context="#stay" String="primitive" beginRegion="primitiveEndprimitive"/> <keyword attribute="Block Keyword" context="#stay" String="endprimitive" endRegion="primitiveEndprimitive"/> <keyword attribute="Block Keyword" context="#stay" String="fork" beginRegion="forkJoin"/> <keyword attribute="Block Keyword" context="#stay" String="join" endRegion="forkJoin"/> <keyword attribute="Block Keyword" context="#stay" String="join_any" endRegion="forkJoin"/> <keyword attribute="Block Keyword" context="#stay" String="join_none" endRegion="forkJoin"/> <keyword attribute="Block Keyword" context="#stay" String="covergroup" beginRegion="covergroupEndgroup"/> <keyword attribute="Block Keyword" context="#stay" String="endgroup" endRegion="covergroupEndgroup"/> <keyword attribute="Block Keyword" context="#stay" String="checker" beginRegion="checkerEndchecker"/> <keyword attribute="Block Keyword" context="#stay" String="endchecker" endRegion="checkerEndchecker"/> <keyword attribute="Block Keyword" context="#stay" String="property" beginRegion="propertyEndproperty"/> <keyword attribute="Block Keyword" context="#stay" String="endproperty" endRegion="propertyEndproperty"/> <keyword attribute="Block Keyword" context="#stay" String="randsequence" beginRegion="sequenceEndsequence"/> <keyword attribute="Block Keyword" context="#stay" String="sequence" beginRegion="sequenceEndsequence"/> <keyword attribute="Block Keyword" context="#stay" String="endsequence" endRegion="sequenceEndsequence"/> <keyword attribute="Block Keyword" context="#stay" String="specify" beginRegion="specifyEndspecify"/> <keyword attribute="Block Keyword" context="#stay" String="endspecify" endRegion="specifyEndspecify"/> <keyword attribute="Block Keyword" context="#stay" String="config" beginRegion="configEndconfig"/> <keyword attribute="Block Keyword" context="#stay" String="endconfig" endRegion="configEndconfig"/> <keyword attribute="Block Keyword" context="#stay" String="table" beginRegion="tableEndtable"/> <keyword attribute="Block Keyword" context="#stay" String="endtable" endRegion="tableEndtable"/> <keyword attribute="Deprecated Keyword" context="#stay" String="key_deprecated"/> <keyword attribute="DPI Keyword" context="#stay" String="key_dpi"/> <keyword attribute="Assert Keyword" context="#stay" String="key_assert"/> <keyword attribute="Coverage Keyword" context="#stay" String="key_coverage"/> <keyword attribute="Generator Keyword" context="#stay" String="key_generator"/> <keyword attribute="Confitional Keyword" context="#stay" String="key_conditional"/> <keyword attribute="Case Keyword" context="#stay" String="key_case"/> <keyword attribute="Loop Keyword" context="#stay" String="key_loop"/> <keyword attribute="Specify Keyword" context="#stay" String="key_specify"/> <keyword attribute="Process Block Keyword" context="#stay" String="key_procblock"/> <keyword attribute="Continuous Assign Keyword" context="#stay" String="key_contassign"/> <keyword attribute="Event Keyword" context="#stay" String="key_event"/> <keyword attribute="Time Keyword" context="#stay" String="key_time"/> <keyword attribute="Class Keyword" context="#stay" String="key_class"/> <keyword attribute="Constraint Keyword" context="#stay" String="key_constraint"/> <keyword attribute="Method Keyword" context="#stay" String="key_methods"/> <keyword attribute="Config Keyword" context="#stay" String="key_config"/> <keyword attribute="Library Keyword" context="#stay" String="key_library"/> <keyword attribute="Interface Keyword" context="#stay" String="key_interface"/> <keyword attribute="Checker Keyword" context="#stay" String="key_checker"/> <keyword attribute="Type Keyword" context="#stay" String="key_types"/> <keyword attribute="Preprocessor Keyword" context="#stay" String="key_preprocessor"/> <keyword attribute="System Task Keyword" context="#stay" String="key_system"/> <keyword attribute="Data Type Keyword" context="#stay" String="key_types"/> <keyword attribute="Drive/Charge Strength Keyword" context="#stay" String="key_strength"/> <keyword attribute="Gate Instantiation Keyword" context="#stay" String="key_gates"/> <keyword attribute="Standard Library" context="#stay" String="key_stdlib"/> <RegExpr attribute="Decimal" context="#stay" String="[\d_]*'d[\d_]+"/> <RegExpr attribute="Octal" context="#stay" String="[\d_]*'o[0-7xXzZ_]+"/> <RegExpr attribute="Hex" context="#stay" String="[\d_]*'h[\da-fA-FxXzZ_]+"/> <RegExpr attribute="Binary" context="#stay" String="[\d_]*'b[01_zZxX]+"/> <Float attribute="Float" context="#stay"/> <Int attribute="Integer" context="#stay"/> <RegExpr attribute="Port Connection" context="#stay" String="[^\w$]\.[a-zA-Z]+[\w$]*"/> <DetectChar attribute="String" context="String" char="""/> <IncludeRules context="##Doxygen" /> <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/> <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/> <AnyChar attribute="Symbol" context="#stay" String="!%&()+,-<=+/:;>?[]^{|}~@"/> <DetectChar attribute="Preprocessor" context="Preprocessor" char="`" column="0"/> <RegExpr attribute="Preprocessor" context="#stay" String="\`[a-zA-Z_]+\w*" /> <RegExpr attribute="PLI Task" context="#stay" String="\$[a-zA-Z_]+\w*"/> <RegExpr attribute="Delay" context="#stay" String="#[\d_]+"/> </context> <context attribute="Extern Context" lineEndContext="#pop" name="Extern Context"> <keyword attribute="Method Keyword" context="#stay" String="key_methods"/> <keyword attribute="DPI Keyword" context="#stay" String="key_dpi"/> <keyword attribute="Class Keyword" context="#stay" String="key_class"/> <keyword attribute="Constraint Keyword" context="#stay" String="key_constraint"/> <keyword attribute="Block Keyword" context="#pop" String="function"/> <keyword attribute="Block Keyword" context="#pop" String="task"/> </context> <context attribute="Typedef Context" lineEndContext="#pop" name="Typedef Context"> <keyword attribute="Block Keyword" context="#pop" String="class"/> <keyword attribute="Type Keyword" context="#pop" String="key_types"/> <keyword attribute="Interface Keyword" context="#pop" String="key_interface"/> <keyword attribute="Checker Keyword" context="#pop" String="key_checker"/> </context> <context attribute="String" lineEndContext="#pop" name="String"> <LineContinue attribute="String" context="#stay"/> <HlCStringChar attribute="String Char" context="#stay"/> <DetectChar attribute="String" context="#pop" char="""/> </context> <context attribute="Comment" lineEndContext="#pop" name="Commentar 1"> <LineContinue attribute="Comment" context="#stay"/> <DetectSpaces /> <IncludeRules context="##Alerts" /> <DetectIdentifier /> </context> <context attribute="Comment" lineEndContext="#stay" name="Commentar 2"> <DetectSpaces /> <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> <IncludeRules context="##Alerts" /> <DetectIdentifier /> </context> <context attribute="Preprocessor" lineEndContext="#pop" name="Preprocessor"> <LineContinue attribute="Preprocessor" context="#stay"/> <RangeDetect attribute="Prep. Lib" context="#stay" char=""" char1="""/> <RangeDetect attribute="Prep. Lib" context="#stay" char="<" char1=">"/> <IncludeRules context="##Doxygen" /> <Detect2Chars attribute="Comment" context="Commentar/Preprocessor" char="/" char1="*" beginRegion="Comment2" /> <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/> </context> <context attribute="Preprocessor" lineEndContext="#pop" name="Define"> <LineContinue attribute="Preprocessor" context="#stay"/> </context> <context attribute="Comment" lineEndContext="#stay" name="Commentar/Preprocessor"> <DetectSpaces /> <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment2" /> <DetectIdentifier /> </context> <context attribute="Comment" lineEndContext="#stay" name="Outscoped" > <DetectSpaces /> <IncludeRules context="##Alerts" /> <DetectIdentifier /> <DetectChar attribute="String" context="String" char="""/> <IncludeRules context="##Doxygen" /> <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/> <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/> <RegExpr attribute="Comment" context="Outscoped intern" String="#\s*if" beginRegion="PP" firstNonSpace="true" /> <RegExpr attribute="Preprocessor" context="#pop" String="#\s*el(?:se|if)" firstNonSpace="true" /> <RegExpr attribute="Preprocessor" context="#pop" String="#\s*endif" endRegion="PP" firstNonSpace="true" /> </context> <context attribute="Comment" lineEndContext="#stay" name="Outscoped intern"> <DetectSpaces /> <IncludeRules context="##Alerts" /> <DetectIdentifier /> <DetectChar attribute="String" context="String" char="""/> <IncludeRules context="##Doxygen" /> <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/> <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/> <RegExpr attribute="Comment" context="Outscoped intern" String="#\s*if" beginRegion="PP" firstNonSpace="true" /> <RegExpr attribute="Comment" context="#pop" String="#\s*endif" endRegion="PP" firstNonSpace="true" /> </context> <context attribute="Block Name" lineEndContext="#pop" name="Block Name"> <RegExpr attribute="Data Type Keyword" context="#pop" String="[^ ]+"/> </context> </contexts> <itemDatas> <itemData name="Normal Text" defStyleNum="dsNormal"/> <itemData name="Keyword" defStyleNum="dsKeyword"/> <itemData name="Block Keyword" defStyleNum="dsKeyword"/> <itemData name="DPI Keyword" defStyleNum="dsKeyword"/> <itemData name="Assert Keyword" defStyleNum="dsKeyword"/> <itemData name="Coverage Keyword" defStyleNum="dsKeyword"/> <itemData name="Generator Keyword" defStyleNum="dsKeyword"/> <itemData name="Confitional Keyword" defStyleNum="dsKeyword"/> <itemData name="Case Keyword" defStyleNum="dsKeyword"/> <itemData name="Loop Keyword" defStyleNum="dsKeyword"/> <itemData name="Specify Keyword" defStyleNum="dsKeyword"/> <itemData name="Process Block Keyword" defStyleNum="dsKeyword"/> <itemData name="Continuous Assign Keyword" defStyleNum="dsKeyword"/> <itemData name="Event Keyword" defStyleNum="dsKeyword"/> <itemData name="Time Keyword" defStyleNum="dsKeyword"/> <itemData name="Class Keyword" defStyleNum="dsKeyword"/> <itemData name="Constraint Keyword" defStyleNum="dsKeyword"/> <itemData name="Method Keyword" defStyleNum="dsKeyword"/> <itemData name="Config Keyword" defStyleNum="dsKeyword"/> <itemData name="Library Keyword" defStyleNum="dsKeyword"/> <itemData name="Interface Keyword" defStyleNum="dsKeyword"/> <itemData name="Checker Keyword" defStyleNum="dsKeyword"/> <itemData name="Type Keyword" defStyleNum="dsKeyword"/> <itemData name="Preprocessor Keyword" defStyleNum="dsOthers"/> <itemData name="Preprocessor" defStyleNum="dsOthers"/> <itemData name="System Task Keyword" defStyleNum="dsKeyword"/> <itemData name="Data Type Keyword" defStyleNum="dsKeyword"/> <itemData name="Drive/Charge Strength Keyword" defStyleNum="dsKeyword"/> <itemData name="Gate Instantiation Keyword" defStyleNum="dsKeyword"/> <itemData name="Data Type Keyword" defStyleNum="dsDataType"/> <itemData name="Decimal" defStyleNum="dsBaseN"/> <itemData name="Octal" defStyleNum="dsBaseN"/> <itemData name="Hex" defStyleNum="dsBaseN"/> <itemData name="Binary" defStyleNum="dsBaseN"/> <itemData name="Float" defStyleNum="dsFloat"/> <itemData name="String" defStyleNum="dsString"/> <itemData name="String Char" defStyleNum="dsChar"/> <itemData name="Comment" defStyleNum="dsComment"/> <itemData name="Deprecated Keyword" defStyleNum="dsError"/> <itemData name="Symbol" defStyleNum="dsNormal"/> <itemData name="Preprocessor Keyword" defStyleNum="dsOthers"/> <itemData name="Prep. Lib" defStyleNum="dsFloat"/> <itemData name="PLI Task" defStyleNum="dsDataType"/> <itemData name="System Task Keyword" defStyleNum="dsDataType"/> <itemData name="Integer" defStyleNum="dsDecVal"/> <itemData name="Delay" defStyleNum="dsBaseN"/> <itemData name="Block Name" defStyleNum="dsDataType"/> <itemData name="Drive/Charge Strength Keyword" defStyleNum="dsBaseN"/> <itemData name="Gate Instantiation Keyword" defStyleNum="dsDataType"/> <itemData name="Port Connection" defStyleNum="dsDataType"/> <itemData name="Standard Library" defStyleNum="dsOthers"/> </itemDatas> </highlighting> <general> <comments> <comment name="singleLine" start="//" /> <comment name="multiLine" start="/*" end="*/" region="Comment"/> </comments> <keywords casesensitive="1"/> </general> </language>