Warning, /frameworks/syntax-highlighting/data/syntax/spice.xml is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0" encoding="UTF-8"?>
0002 <!DOCTYPE language [
0003   <!ENTITY scale "([fpnumckgt]|mil|meg)">
0004   <!ENTITY units "(Hz?|sec|Amp|[sAvCF]|dB|DRV[FZ])">
0005 ]>
0006 
0007 <language name="Spice" section="Hardware" version="7" kateversion="5.62" extensions="*.sp;*.hsp;*.cir" mimetype="text/spice" author="Steven Robson (s.a.robson@sms.ed.ac.uk) and Anders Lund" license="LGPL">
0008     <highlighting>
0009 
0010         <list name="A-devices model">
0011             <item>and</item>
0012             <item>buf</item>
0013             <item>counter</item>
0014             <item>dflop</item>
0015             <item>inv</item>
0016             <item>modulator</item>
0017             <item>xor</item>
0018             <item>or</item>
0019             <item>ota</item>
0020             <item>phasedet</item>
0021             <item>samplehold</item>
0022             <item>schmitbuf</item>
0023             <item>schmitinv</item>
0024             <item>schmitt</item>
0025             <item>srflop</item>
0026             <item>varistor</item>
0027         </list>
0028 
0029         <list name="directives">
0030             <item>.nodealias</item>
0031             <item>.nodeset</item>
0032             <item>.meas</item>
0033             <item>.options</item>
0034             <item>.option</item>
0035             <item>.opts</item>
0036             <item>.opt</item>
0037             <item>.ic</item>
0038             <item>.step</item>
0039             <item>.lib</item>
0040             <item>.include</item>
0041             <item>.inc</item>
0042             <item>.backanno</item>
0043             <item>.savebias</item>
0044             <item>.save</item>
0045             <item>.loadbias</item>
0046             <item>.load</item>
0047             <item>.global</item>
0048             <item>.temp</item>
0049             <item>.ferret</item>
0050             <item>.wave</item>
0051             <item>.mach</item>
0052             <item>.machine</item>
0053             <item>.endmach</item>
0054             <item>.endmachine</item>
0055         </list>
0056 
0057         <list name="state-machine">
0058             <item>.state</item>
0059             <item>.rule</item>
0060             <item>.output</item>
0061         </list>
0062 
0063         <list name="simulation commands">
0064             <item>.ac</item>
0065             <item>.dc</item>
0066             <item>.disto</item>
0067             <item>.endl</item>
0068             <item>.four</item>
0069             <item>.global</item>
0070             <item>.net</item>
0071             <item>.noise</item>
0072             <item>.op</item>
0073             <item>.option</item>
0074             <item>.plot</item>
0075             <item>.print</item>
0076             <item>.pz</item>
0077             <item>.sens</item>
0078             <item>.temp</item>
0079             <item>.tf</item>
0080             <item>.tran</item>
0081         </list>
0082 
0083         <list name="subckt model">
0084             <item>.ends</item>
0085             <item>.subckt</item>
0086             <item>.model</item>
0087         </list>
0088 
0089         <list name="commands">
0090             <item>.include</item>
0091             <item>.lib</item>
0092             <item>.param</item>
0093             <item>.probe</item>
0094             <item>.nodeset</item>
0095             <item>.ic</item>
0096             <item>.end</item>
0097         </list>
0098 
0099         <list name="functions">
0100             <item>abs</item>
0101             <item>ac</item>
0102             <item>acos</item>
0103             <item>asin</item>
0104             <item>atan</item>
0105             <item>cos</item>
0106             <item>cosh</item>
0107             <item>db</item>
0108             <item>dc</item>
0109             <item>dec</item>
0110             <item>exp</item>
0111             <item>int</item>
0112             <item>lin</item>
0113             <item>log</item>
0114             <item>log10</item>
0115             <item>lv</item>
0116             <item>lx</item>
0117             <item>max</item>
0118             <item>min</item>
0119             <item>oct</item>
0120             <item>pow</item>
0121             <item>pulse</item>
0122             <item>pwl</item>
0123             <item>pwr</item>
0124             <item>sffm</item>
0125             <item>sgn</item>
0126             <item>sign</item>
0127             <item>sin</item>
0128             <item>sinh</item>
0129             <item>sqrt</item>
0130             <item>tan</item>
0131             <item>tanh</item>
0132         </list>
0133 
0134         <contexts>
0135 
0136             <!--
0137             Note:
0138 
0139             SpiceComment := ^ '*' text
0140             PSpice Comments := ';' text
0141             Pnspice Comments := '$ ' text
0142             -->
0143 
0144             <context attribute="Normal Text" lineEndContext="#stay" name="Normal" fallthroughContext="Command">
0145                 <keyword context="Function" String="functions" lookAhead="1"/>
0146                 <AnyChar context="Source" String="VIEFGHSviefghs" lookAhead="1"/>
0147                 <AnyChar context="Passives" String="RCLKYTrclkyt" lookAhead="1"/>
0148                 <AnyChar context="Actives" String="DQMJXdqmjx" lookAhead="1"/>
0149                 <AnyChar attribute="Comment" context="Commentar 1" String="$*#;"/>
0150                 <keyword attribute="Directive" context="Command" String="directives"/>
0151                 <keyword attribute="State Machine" context="Command" String="state-machine"/>
0152                 <keyword attribute="Simulation Command" context="Command" String="simulation commands"/>
0153                 <keyword attribute="Keyword" context="Command" String="commands"/>
0154                 <keyword attribute="Preprocessor" context="subckt" String="subckt model"/>
0155                 <DetectChar attribute="Normal Text" context="Command" char="+"/>
0156                 <DetectIdentifier attribute="Normal Text" context="Command"/>
0157                 <RegExpr attribute="Unknown Command" context="Command" String="[.]\w+|"/>
0158             </context>
0159 
0160             <context attribute="Normal Text" lineEndContext="#pop" name="Function">
0161                 <RegExpr attribute="Function" context="#pop!Command" String="\w+(?=\s*\()|"/>
0162                 <AnyChar context="#pop!Source" String="VIEFGHSviefghs" lookAhead="1"/>
0163                 <AnyChar context="#pop!Passives" String="RCLKYTrclkyt" lookAhead="1"/>
0164                 <AnyChar context="#pop!Actives" String="DQMJXdqmjx" lookAhead="1"/>
0165                 <DetectIdentifier attribute="Unknown Command" context="#pop!Command"/>
0166             </context>
0167 
0168             <context attribute="Normal Text" lineEndContext="#pop" name="findLiteral">
0169                 <AnyChar attribute="Symbol Operator" String="&gt;&lt;&amp;+-*^/=!~|"/>
0170                 <AnyChar attribute="Symbol" String="(){}[],"/>
0171                 <RegExpr attribute="Number" context="Unit" String="(\b[0-9]+\.[0-9]*|\.?\b[0-9]+)([eE][-+]?[0-9]+)?(?![a-zA-Z_]+[0-9])"/>
0172                 <DetectChar attribute="String" context="String" char="&quot;"/>
0173                 <DetectChar attribute="String" context="TickString" char="'"/>
0174                 <DetectChar attribute="Comment" context="#pop!Commentar 1" char=";"/>
0175                 <Detect2Chars attribute="Comment" context="#pop!Commentar 1" char="$" char1=" "/>
0176             </context>
0177             <context attribute="Normal Text" lineEndContext="#pop" name="findOther">
0178                 <RegExpr attribute="Variable" context="Variable" String="\b[^\s&gt;&lt;&amp;(){}[];,=/+\-*\^~!]+\s*(?==(?!=))"/>
0179                 <keyword attribute="Function" String="functions"/>
0180                 <keyword attribute="A-device" String="A-devices model"/>
0181                 <DetectIdentifier attribute="Normal Text"/>
0182             </context>
0183 
0184             <context attribute="Source" lineEndContext="#pop" name="Source" fallthroughContext="#pop!Command">
0185                 <DetectIdentifier attribute="Source" context="#pop!Command"/>
0186             </context>
0187             <context attribute="Passives" lineEndContext="#pop" name="Passives">
0188                 <DetectIdentifier attribute="Passives" context="#pop!Command"/>
0189             </context>
0190             <context attribute="Actives" lineEndContext="#pop" name="Actives">
0191                 <DetectIdentifier attribute="Actives" context="#pop!Command"/>
0192             </context>
0193 
0194             <context attribute="Normal Text" lineEndContext="checkContinuation" name="Command">
0195                 <DetectSpaces attribute="Normal Text"/>
0196                 <IncludeRules context="findLiteral"/>
0197                 <IncludeRules context="findOther"/>
0198             </context>
0199             <context attribute="Normal Text" lineEndContext="#stay" name="checkContinuation" fallthroughContext="#pop#pop">
0200                 <DetectChar attribute="Normal Text" context="#pop" char="+"/>
0201             </context>
0202             <context attribute="Normal Text" lineEndContext="#pop" name="Variable">
0203                 <DetectSpaces attribute="Normal Text"/>
0204                 <DetectChar attribute="Variable Separator" context="#pop" char="="/>
0205             </context>
0206 
0207             <context attribute="Comment" lineEndContext="#pop" name="Commentar 1">
0208                 <DetectSpaces/>
0209                 <IncludeRules context="##Comments"/>
0210                 <DetectIdentifier/>
0211             </context>
0212 
0213             <context attribute="String" lineEndContext="#pop" name="String">
0214                 <LineContinue attribute="String"/>
0215                 <HlCStringChar attribute="String Char"/>
0216                 <DetectChar attribute="String" context="#pop" char="&quot;"/>
0217             </context>
0218 
0219             <context attribute="String" lineEndContext="#pop" name="TickString">
0220                 <LineContinue attribute="String"/>
0221                 <HlCStringChar attribute="String Char"/>
0222                 <DetectChar attribute="String" context="#pop" char="'"/>
0223             </context>
0224 
0225             <context attribute="Unit" lineEndContext="#pop" name="Unit" fallthroughContext="#pop">
0226                 <RegExpr attribute="Unit" context="#pop" String="(&scale;&units;?|&units;)\b" insensitive="1"/>
0227             </context>
0228 
0229             <context attribute="Normal Text" lineEndContext="checkContinuation" name="subckt" fallthroughContext="subcktParams">
0230                 <DetectSpaces attribute="Normal Text"/>
0231                 <RegExpr attribute="Subckt Note" context="#pop!subcktParams" String="(?!params:\s)[^\s{}(),;'=]+|" insensitive="1"/>
0232             </context>
0233             <context attribute="Normal Text" lineEndContext="checkContinuation" name="subcktParams">
0234                 <DetectSpaces attribute="Normal Text"/>
0235                 <IncludeRules context="findLiteral"/>
0236                 <WordDetect attribute="Subckt Params" String="params:" insensitive="1"/>
0237                 <IncludeRules context="findOther"/>
0238             </context>
0239 
0240         </contexts>
0241 
0242         <itemDatas>
0243             <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="0"/>
0244             <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="0"/>
0245             <itemData name="State Machine" defStyleNum="dsKeyword" spellChecking="0" italic="1"/>
0246             <itemData name="Simulation Command" defStyleNum="dsKeyword" spellChecking="0"/>
0247             <itemData name="Unknown Command" defStyleNum="dsSpecialString" spellChecking="0"/>
0248             <itemData name="Preprocessor" defStyleNum="dsPreprocessor" spellChecking="0" bold="1"/>
0249             <itemData name="Directive" defStyleNum="dsOperator" spellChecking="0"/>
0250             <itemData name="Source" defStyleNum="dsAttribute" spellChecking="0"/>
0251             <itemData name="Actives" defStyleNum="dsAttribute" spellChecking="0"/>
0252             <itemData name="Passives" defStyleNum="dsAttribute" spellChecking="0"/>
0253             <itemData name="Subckt Note" defStyleNum="dsAnnotation" spellChecking="0"/>
0254             <itemData name="String" defStyleNum="dsString"/>
0255             <itemData name="String Char" defStyleNum="dsSpecialChar"/>
0256             <itemData name="Comment" defStyleNum="dsComment"/>
0257             <itemData name="Number" defStyleNum="dsDecVal" spellChecking="0"/>
0258             <itemData name="Unit" defStyleNum="dsDataType" spellChecking="0"/>
0259             <itemData name="Symbol Operator" defStyleNum="dsOperator" spellChecking="0"/>
0260             <itemData name="Symbol" defStyleNum="dsNormal" spellChecking="0"/>
0261             <itemData name="Function" defStyleNum="dsFunction" spellChecking="0"/>
0262             <itemData name="A-device" defStyleNum="dsOthers" spellChecking="0"/>
0263             <itemData name="Subckt Params" defStyleNum="dsConstant" spellChecking="0"/>
0264             <itemData name="Variable" defStyleNum="dsVariable" spellChecking="0"/>
0265             <itemData name="Variable Separator" defStyleNum="dsOperator" spellChecking="0"/>
0266         </itemDatas>
0267 
0268     </highlighting>
0269 
0270     <general>
0271         <comments>
0272             <comment name="singleLine" start="*" />
0273         </comments>
0274         <keywords casesensitive="0" weakDeliminator="."/>
0275     </general>
0276 </language>
0277 <!-- kate: replace-tabs on; tab-width 4; indent-width 4; -->