php.lang file



Attached is my initial php.lang file for use with GtkSourceView. A bit
buggy but works..
Place in your /usr/share/gtksourceview-1.0/language-specs


Enjoy
-  - -- ----  ----------------------------------------- --- -- -   -
Ahmad Baitalmal
BitBuilder
web: http://www.bitbuilder.com
-------------------------------------------------------------- --- -- -
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<language name="HTML" version="1.0" section="Markup" mimetypes="text/x-php">
	<escape-char>\</escape-char>
	<line-comment name="PHP # Line Comment" style="Comment">
		<start-regex>#</start-regex>
	</line-comment>
	<line-comment name="PHP // Line Comment" style="Comment">
		<start-regex>//</start-regex>
	</line-comment>
	<block-comment name="Block Comment" style="Comment">
		<start-regex>&lt;!--</start-regex>
        <end-regex>--&gt;</end-regex>
	</block-comment>
	<block-comment name="PHP Block Comment" style="Comment">
		<start-regex>/\*</start-regex>
        <end-regex>\*/</end-regex>
	</block-comment>
	<syntax-item name="DTD" style="Preprocessor">
		<start-regex>&lt;!</start-regex>
		<end-regex>&gt;</end-regex>
	</syntax-item>

	<string name="String" style ="String" end-at-line-end="FALSE">
		<start-regex>&quot;</start-regex>
		<end-regex>&quot;</end-regex>
	</string>
	<string name="Single String" style ="Others 2" end-at-line-end="FALSE">
		<start-regex>&apos;</start-regex>
		<end-regex>&apos;</end-regex>
	</string>
	<pattern-item name="Entity" style="Character">
		<regex>&amp;[a-zA-Z]+;</regex>
	</pattern-item>
	<pattern-item name="PHP Variable" style="Others">
		<regex>\$[-_a-zA-Z]+</regex>
	</pattern-item>
	
	<pattern-item name="PHP Open Bracket" style="Comment">
		<regex>&lt;?php</regex>
	</pattern-item>
	
	<pattern-item name="PHP Close Bracket" style="Comment">
		<regex>\?&gt;</regex>
	</pattern-item>
	<pattern-item name="Closing Bracket" style="Keyword">
		<regex>&gt;</regex>
	</pattern-item>

	<keyword-list name="Tags" style = "Keyword" case-sensitive="FALSE"
		match-empty-string-at-beginning = "FALSE"
		match-empty-string-at-end = "FALSE"
		beginning-regex="&lt;/?"
		end-regex="(\b|&gt;)">
		<keyword>a</keyword>
		<keyword>abbr</keyword>
		<keyword>acronym</keyword>
		<keyword>address</keyword>
		<keyword>applet</keyword>
		<keyword>area</keyword>
      		<keyword>b</keyword>
      		<keyword>base</keyword>
		<keyword>basefont</keyword>
		<keyword>bdo</keyword>
		<keyword>big</keyword>
		<keyword>blockquote</keyword>
		<keyword>body</keyword>
		<keyword>br</keyword>
		<keyword>button</keyword>
		<keyword>caption</keyword>
		<keyword>center</keyword>
		<keyword>cite</keyword>
		<keyword>code</keyword>
		<keyword>col</keyword>
		<keyword>colgroup</keyword>
		<keyword>dd</keyword>
		<keyword>dfn</keyword>
		<keyword>dir</keyword>
		<keyword>div</keyword>
      		<keyword>dl</keyword>
      		<keyword>dt</keyword>
		<keyword>em</keyword>
		<keyword>fieldset</keyword>
		<keyword>font</keyword>
		<keyword>form</keyword>
		<keyword>frame</keyword>
		<keyword>frameset</keyword>
		<keyword>h[1-6]</keyword>
		<keyword>head</keyword>
		<keyword>hr</keyword>
		<keyword>html</keyword>
		<keyword>i</keyword>
		<keyword>input</keyword>
		<keyword>kbd</keyword>
		<keyword>label</keyword>
		<keyword>legend</keyword>
		<keyword>li</keyword>
		<keyword>link</keyword>
		<keyword>map</keyword>
      		<keyword>menu</keyword>
      		<keyword>meta</keyword>
		<keyword>noframes</keyword>
		<keyword>noscript</keyword>
		<keyword>object</keyword>
		<keyword>ol</keyword>
		<keyword>optgroup</keyword>
		<keyword>option</keyword>
		<keyword>p</keyword>
		<keyword>param</keyword>
		<keyword>pre</keyword>
		<keyword>q</keyword>
		<keyword>s</keyword>
		<keyword>samp</keyword>
		<keyword>script</keyword>
		<keyword>select</keyword>
		<keyword>small</keyword>
		<keyword>span</keyword>
		<keyword>strike</keyword>
      		<keyword>strong</keyword>
      		<keyword>style</keyword>
		<keyword>sub</keyword>
		<keyword>sup</keyword>
		<keyword>table</keyword>
		<keyword>tbody</keyword>
		<keyword>td</keyword>
		<keyword>text</keyword>
		<keyword>textarea</keyword>
		<keyword>tfoot</keyword>
		<keyword>th</keyword>
		<keyword>thead</keyword>
		<keyword>title</keyword>
      		<keyword>tr</keyword>
		<keyword>tt</keyword>
		<keyword>u</keyword>
		<keyword>ul</keyword>
		<keyword>var</keyword>
	</keyword-list>

	<keyword-list name="Attributes" style = "Others" case-sensitive="FALSE"
		match-empty-string-at-beginning = "TRUE"
		match-empty-string-at-end = "FALSE"
		end-regex="[ \t]*=">
		<keyword>abbr</keyword>
		<keyword>accept-charset</keyword>
		<keyword>accept</keyword>
		<keyword>accesskey</keyword>
		<keyword>action</keyword>
		<keyword>align</keyword>
		<keyword>alink</keyword>
		<keyword>alt</keyword>
		<keyword>archive</keyword>
		<keyword>axis</keyword>
		<keyword>background</keyword>
		<keyword>bgcolor</keyword>
		<keyword>border</keyword>
		<keyword>cellpadding</keyword>
		<keyword>cellspacing</keyword>
		<keyword>char</keyword>
		<keyword>charoff</keyword>
		<keyword>charset</keyword>
		<keyword>cite</keyword>
		<keyword>class</keyword>
		<keyword>classid</keyword>
		<keyword>clear</keyword>
		<keyword>code</keyword>
		<keyword>codebase</keyword>
		<keyword>codetype</keyword>
		<keyword>color</keyword>
		<keyword>cols</keyword>
		<keyword>colspan</keyword>
		<keyword>content</keyword>
		<keyword>coords</keyword>
		<keyword>data</keyword>
		<keyword>datetime</keyword>
		<keyword>dir</keyword>
		<keyword>enctype</keyword>
		<keyword>face</keyword>
		<keyword>for</keyword>
		<keyword>frame</keyword>
		<keyword>frameborder</keyword>
		<keyword>headers</keyword>
		<keyword>height</keyword>
		<keyword>href</keyword>
		<keyword>hreflang</keyword>
		<keyword>hspace</keyword>
		<keyword>http-equiv</keyword>
		<keyword>id</keyword>
		<keyword>ismap</keyword>
		<keyword>label</keyword>
		<keyword>lang</keyword>
		<keyword>language</keyword>
		<keyword>link</keyword>
		<keyword>longdesc</keyword>
		<keyword>marginheight</keyword>
		<keyword>marginwidth</keyword>
		<keyword>maxlength</keyword>
		<keyword>media</keyword>
		<keyword>method</keyword>
		<keyword>name</keyword>
		<keyword>object</keyword>
		<keyword>onblur</keyword>
		<keyword>onchange</keyword>
		<keyword>onclick</keyword>
		<keyword>ondlbclick</keyword>
		<keyword>onfocus</keyword>
		<keyword>onkeydown</keyword>
		<keyword>onkeypress</keyword>
		<keyword>onkeyup</keyword>
		<keyword>onload</keyword>
		<keyword>onmousedown</keyword>
		<keyword>onmousemove</keyword>
		<keyword>onmouseout</keyword>
		<keyword>onmouseover</keyword>
		<keyword>onmouseup</keyword>
		<keyword>onreset</keyword>
		<keyword>onselect</keyword>
		<keyword>onsubmit</keyword>
		<keyword>onunload</keyword>
		<keyword>profile</keyword>
		<keyword>prompt</keyword>
		<keyword>rel</keyword>
		<keyword>rev</keyword>
		<keyword>rows</keyword>
		<keyword>rowspan</keyword>
		<keyword>rules</keyword>
		<keyword>scheme</keyword>
		<keyword>scope</keyword>
		<keyword>scrolling</keyword>
		<keyword>shape</keyword>
		<keyword>size</keyword>
		<keyword>span</keyword>
		<keyword>src</keyword>
		<keyword>standby</keyword>
		<keyword>start</keyword>
		<keyword>style</keyword>
		<keyword>summary</keyword>
		<keyword>tabindex</keyword>
		<keyword>target</keyword>
		<keyword>text</keyword>
		<keyword>title</keyword>
		<keyword>type</keyword>
		<keyword>usemap</keyword>
		<keyword>valign</keyword>
		<keyword>value</keyword>
		<keyword>valuetype</keyword>
		<keyword>version</keyword>
		<keyword>vlink</keyword>
		<keyword>vspace</keyword>
		<keyword>width</keyword>
	</keyword-list>
	<keyword-list name="Operators" style="Keyword" case-sensitive="FALSE">
		<keyword>!</keyword>
		<keyword>!=</keyword>
		<keyword>%</keyword>
		<keyword>&amp;</keyword>
		<keyword>&amp;&amp;</keyword>
		<keyword>\*</keyword>
		<keyword>\*=</keyword>
		<keyword>\+</keyword>
		<keyword>\+\+</keyword>
		<keyword>\+=</keyword>
		<keyword>-</keyword>
		<keyword>--</keyword>
		<keyword>-=</keyword>
		<keyword>-&gt;</keyword>
		<keyword>\.</keyword>
		<keyword>\.=</keyword>
		<keyword>//</keyword>
		<keyword>/</keyword>
		<keyword>/=</keyword>
		<keyword>:</keyword>
		<keyword>&lt;</keyword>
		<keyword>&lt;&lt;</keyword>
		<keyword>&lt;=</keyword>
		<keyword>=</keyword>
		<keyword>==</keyword>
		<keyword>=&gt;</keyword>
		<keyword>&gt;</keyword>
		<keyword>&gt;&gt;</keyword>
		<keyword>\?</keyword>
		<keyword>@</keyword>
		<keyword>AND</keyword>
		<keyword>OR</keyword>
		<keyword>XOR</keyword>
		<keyword>\^</keyword>
		<keyword>\|</keyword>
		<keyword>\|\|</keyword>
		<keyword>~</keyword>
	</keyword-list>
</language>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]