Add Lisp dark mode syntax highlighting

This commit is contained in:
ema
2025-07-05 02:53:24 +08:00
parent 7456cbc3a5
commit 04247db107

View File

@@ -0,0 +1,243 @@
<?xml version="1.0" encoding="utf-8"?>
<SyntaxDefinition name="Lisp" extensions=".lisp;.lsp">
<Environment>
<Default color="#D4D4D4" bgcolor="#1E1E1E"/>
<Selection color="#FFFFFF" bgcolor="#264F78"/>
<LineNumbers color="#858585" bgcolor="#1E1E1E"/>
<CaretMarker color="#2F2F2F"/>
<VRuler color="#404040"/>
<FoldLine color="#5F5F5F" bgcolor="#1E1E1E"/>
<FoldMarker color="#D4D4D4" bgcolor="#1E1E1E"/>
<SelectedFoldLine color="#FFFFFF" bgcolor="#1E1E1E"/>
<EOLMarkers color="#404040"/>
<SpaceMarkers color="#505050"/>
<TabMarkers color="#505050"/>
<InvalidLines color="#505050"/>
</Environment>
<Properties>
<Property name="LineComment" value=";"/>
<Property name="BlockCommentBegin" value="#|"/>
<Property name="BlockCommentEnd" value="|#"/>
</Properties>
<Digits name="Digits" color="#B5CEA8"/>
<RuleSets>
<RuleSet ignorecase="false">
<Delimiters>`*()[]{}=|\/:;"'</Delimiters>
<Span name="LineComment" stopateol="true" color="#6A9955" bold="false" italic="false">
<Begin>;</Begin>
</Span>
<Span name="BlockComment" stopateol="false" color="#6A9955" bold="false" italic="false">
<Begin>#|</Begin>
<End>|#</End>
</Span>
<Span name="MultiLineString" stopateol="false" color="#CE9178" bold="false" italic="false" escapecharacter='"'>
<Begin singleword="true">"</Begin>
<End>"</End>
</Span>
<MarkFollowing color="#569CD6" bold="false" italic="false">:</MarkFollowing>
<MarkFollowing color="#C586C0" bold="false" italic="false">defun</MarkFollowing>
<MarkFollowing color="#C586C0" bold="false" italic="false">defsetf</MarkFollowing>
<MarkFollowing color="#C586C0" bold="false" italic="false">defmacro</MarkFollowing>
<MarkFollowing color="#C586C0" bold="false" italic="false">defmethod</MarkFollowing>
<MarkFollowing color="#C586C0" bold="false" italic="false">defconstant</MarkFollowing>
<KeyWords name="Keywords1" color="#569CD6" bold="false">
<Key word="abs"/>
<Key word="and"/>
<Key word="append"/>
<Key word="apply"/>
<Key word="aref"/>
<Key word="array"/>
<Key word="assoc"/>
<Key word="atom"/>
<Key word="backquote"/>
<Key word="baktrace"/>
<Key word="bignums"/>
<Key word="boundp"/>
<Key word="break"/>
<Key word="caaaar"/>
<Key word="caaadr"/>
<Key word="caaar"/>
<Key word="caadar"/>
<Key word="caaddr"/>
<Key word="caadr"/>
<Key word="caar"/>
<Key word="cadaar"/>
<Key word="cadadr"/>
<Key word="cadar"/>
<Key word="caddar"/>
<Key word="cadddr"/>
<Key word="caddr"/>
<Key word="cadr"/>
<Key word="car"/>
<Key word="case"/>
<Key word="catch"/>
<Key word="cdaaar"/>
<Key word="cdaadr"/>
<Key word="cdaar"/>
<Key word="cdadar"/>
<Key word="cdaddr"/>
<Key word="cdadr"/>
<Key word="cdar"/>
<Key word="cddaar"/>
<Key word="cddadr"/>
<Key word="cddar"/>
<Key word="cdddar"/>
<Key word="cddddr"/>
<Key word="cdddr"/>
<Key word="cddr"/>
<Key word="cdr"/>
<Key word="cerror"/>
<Key word="check-type"/>
<Key word="compile"/>
<Key word="complement"/>
<Key word="cond"/>
<Key word="cons"/>
<Key word="consp"/>
<Key word="continue"/>
<Key word="cos"/>
<Key word="create-queue"/>
<Key word="declare"/>
<Key word="defconstant"/>
<Key word="defmacro"/>
<Key word="defmethod"/>
<Key word="defparameter"/>
<Key word="defsetf"/>
<Key word="defstruct"/>
<Key word="defun"/>
<Key word="defun"/>
<Key word="delete"/>
<Key word="do"/>
<Key word="dolist"/>
<Key word="dotimes"/>
<Key word="eq"/>
<Key word="eql"/>
<Key word="equal"/>
<Key word="error"/>
<Key word="errset"/>
<Key word="eval"/>
<Key word="eval-when"/>
<Key word="evalhook"/>
<Key word="evenp"/>
<Key word="exp"/>
<Key word="expt"/>
<Key word="float"/>
<Key word="format"/>
<Key word="funcall"/>
<Key word="function"/>
<Key word="gensym"/>
<Key word="get"/>
<Key word="getf"/>
<Key word="go"/>
<Key word="hash"/>
<Key word="identity"/>
<Key word="if"/>
<Key word="ignore"/>
<Key word="in-package"/>
<Key word="inline"/>
<Key word="integer"/>
<Key word="intern"/>
<Key word="lables"/>
<Key word="lambda"/>
<Key word="last"/>
<Key word="length"/>
<Key word="length"/>
<Key word="length"/>
<Key word="let"/>
<Key word="list"/>
<Key word="list"/>
<Key word="listp"/>
<Key word="logand"/>
<Key word="logbitp"/>
<Key word="logcount"/>
<Key word="logeqv"/>
<Key word="logior"/>
<Key word="lognand"/>
<Key word="lognor"/>
<Key word="lognot"/>
<Key word="logorc2"/>
<Key word="logtest"/>
<Key word="logxor"/>
<Key word="loop"/>
<Key word="make"/>
<Key word="make"/>
<Key word="make-array"/>
<Key word="mapc"/>
<Key word="mapcan"/>
<Key word="mapcar"/>
<Key word="mapcon"/>
<Key word="mapl"/>
<Key word="maplist"/>
<Key word="max"/>
<Key word="member"/>
<Key word="min"/>
<Key word="minusp"/>
<Key word="mod"/>
<Key word="name"/>
<Key word="nconc"/>
<Key word="nil"/>
<Key word="not"/>
<Key word="nsublis"/>
<Key word="nsubst"/>
<Key word="nth"/>
<Key word="nthcdr"/>
<Key word="null"/>
<Key word="numberp"/>
<Key word="oddp"/>
<Key word="or"/>
<Key word="plist"/>
<Key word="plusp"/>
<Key word="princ"/>
<Key word="proclaim"/>
<Key word="prog"/>
<Key word="prog1"/>
<Key word="prog2"/>
<Key word="progn"/>
<Key word="putprop"/>
<Key word="quote"/>
<Key word="random"/>
<Key word="rem"/>
<Key word="remove"/>
<Key word="remprop"/>
<Key word="return"/>
<Key word="return-from"/>
<Key word="reverse"/>
<Key word="rplaca"/>
<Key word="rplacd"/>
<Key word="set"/>
<Key word="setf"/>
<Key word="setq"/>
<Key word="sin"/>
<Key word="sqrt"/>
<Key word="sublis"/>
<Key word="subst"/>
<Key word="svref"/>
<Key word="symbol"/>
<Key word="symbol"/>
<Key word="symbol"/>
<Key word="symbol"/>
<Key word="symbolp"/>
<Key word="tan"/>
<Key word="throw"/>
<Key word="truncate"/>
<Key word="unless"/>
<Key word="value"/>
<Key word="values"/>
<Key word="when"/>
<Key word="zerop"/>
</KeyWords>
</RuleSet>
</RuleSets>
</SyntaxDefinition>