15dfecf96Smrg;; 25dfecf96Smrg;; Copyright (c) 2003 by The XFree86 Project, Inc. 35dfecf96Smrg;; 45dfecf96Smrg;; Permission is hereby granted, free of charge, to any person obtaining a 55dfecf96Smrg;; copy of this software and associated documentation files (the "Software"), 65dfecf96Smrg;; to deal in the Software without restriction, including without limitation 75dfecf96Smrg;; the rights to use, copy, modify, merge, publish, distribute, sublicense, 85dfecf96Smrg;; and/or sell copies of the Software, and to permit persons to whom the 95dfecf96Smrg;; Software is furnished to do so, subject to the following conditions: 105dfecf96Smrg;; 115dfecf96Smrg;; The above copyright notice and this permission notice shall be included in 125dfecf96Smrg;; all copies or substantial portions of the Software. 135dfecf96Smrg;; 145dfecf96Smrg;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 155dfecf96Smrg;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 165dfecf96Smrg;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 175dfecf96Smrg;; THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 185dfecf96Smrg;; WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF 195dfecf96Smrg;; OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 205dfecf96Smrg;; SOFTWARE. 215dfecf96Smrg;; 225dfecf96Smrg;; Except as contained in this notice, the name of the XFree86 Project shall 235dfecf96Smrg;; not be used in advertising or otherwise to promote the sale, use or other 245dfecf96Smrg;; dealings in this Software without prior written authorization from the 255dfecf96Smrg;; XFree86 Project. 265dfecf96Smrg;; 275dfecf96Smrg;; Author: Paulo César Pereira de Andrade 285dfecf96Smrg;; 295dfecf96Smrg;; 305dfecf96Smrg;; $XFree86$ 315dfecf96Smrg;; 325dfecf96Smrg 335dfecf96Smrg(require "syntax") 345dfecf96Smrg(require "indent") 355dfecf96Smrg(in-package "XEDIT") 365dfecf96Smrg 375dfecf96Smrg(defsyntax *xconf-mode* :main nil #'default-indent nil 385dfecf96Smrg ;; section start 395dfecf96Smrg (syntoken "\\<(Section|SubSection)\\>" 405dfecf96Smrg :property *prop-keyword* :icase t :begin :section) 415dfecf96Smrg ;; just for fun, highlight the section name differently 425dfecf96Smrg (syntable :section *prop-constant* #'default-indent 435dfecf96Smrg (syntoken "\"" :nospec t :begin :name) 445dfecf96Smrg (syntable :name *prop-constant* nil 455dfecf96Smrg ;; ignore escaped characters 465dfecf96Smrg (syntoken "\\\\.") 475dfecf96Smrg (syntoken "\"" :nospec t :switch -2) 485dfecf96Smrg ) 495dfecf96Smrg ) 505dfecf96Smrg 515dfecf96Smrg ;; section end 525dfecf96Smrg (syntoken "\\<(EndSection|EndSubSection)\\>" 535dfecf96Smrg :property *prop-keyword* :icase t) 545dfecf96Smrg 555dfecf96Smrg ;; numeric options 565dfecf96Smrg (syntoken "\\<\\d+(\\.\\d+)?\\>" :property *prop-number*) 575dfecf96Smrg 585dfecf96Smrg ;; comments 595dfecf96Smrg (syntoken "#.*$" :property *prop-comment*) 605dfecf96Smrg 615dfecf96Smrg ;; strings 625dfecf96Smrg (syntoken "\"" :nospec t :begin :string :contained t) 635dfecf96Smrg (syntable :string *prop-string* #'default-indent 645dfecf96Smrg ;; ignore escaped characters 655dfecf96Smrg (syntoken "\\\\.") 665dfecf96Smrg (syntoken "\"" :nospec t :switch -1) 675dfecf96Smrg ) 685dfecf96Smrg) 69