From 210a538cdda8a36b8cda798d7c897fd70a192d8d Mon Sep 17 00:00:00 2001 From: Zachary Yedidia Date: Sat, 10 Sep 2016 10:32:21 -0400 Subject: [PATCH] Improve performance for xml and html files --- cmd/micro/runtime.go | 4 ++-- runtime/syntax/html.micro | 2 +- runtime/syntax/xml.micro | 3 +-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/cmd/micro/runtime.go b/cmd/micro/runtime.go index 69043519..d99032b4 100644 --- a/cmd/micro/runtime.go +++ b/cmd/micro/runtime.go @@ -1321,7 +1321,7 @@ func runtimeSyntaxHaskellMicro() (*asset, error) { return a, nil } -var _runtimeSyntaxHtmlMicro = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x3c\xcc\x41\x4e\xeb\x30\x10\x80\xe1\x7d\x4e\x31\x72\x9e\x9e\xa0\x8b\x1e\xa0\xa5\xb0\xed\x02\x76\xec\xd2\x54\x9a\x3a\x93\xd8\xc2\xf6\xa4\x9e\x69\x69\xd0\x1c\x1e\x81\x54\xb6\xbf\x3e\xfd\x6d\x0b\x7b\xaa\x04\x51\x00\x41\x02\x57\x85\x98\xe7\xca\x57\x1a\x80\x6e\x98\xe7\x44\x30\x72\x85\xfd\xfb\xdb\xeb\xba\x69\xdb\x46\x96\xa2\x78\x03\x17\x34\x27\x07\xee\xb0\x0e\x9a\xbb\xd4\xbf\xfc\x73\x8d\xe7\xc4\x15\xe2\x40\x45\xe3\x18\xa9\x82\x28\x56\xdd\xb9\x27\x07\x54\x86\x9d\x7b\xbe\x13\x99\xc9\x47\x4c\xe0\xfe\x77\xc7\x6d\xd7\x6d\x64\x46\x4f\x9b\xbe\xef\x57\xdb\x3b\xf1\x5c\x44\xb1\x28\x38\xd7\x1d\x5d\xbf\x72\x76\x3e\x1f\x6c\xbd\x3a\xd8\xdf\x44\x51\x29\xd3\x0f\x79\xc0\xa4\x76\x9a\x7e\xbb\x05\x8a\x53\x50\x0b\x95\x46\x4b\x78\xa2\x64\x89\xcb\x34\x90\x78\x2b\x98\xc9\xb8\xf8\x14\xfd\x87\x71\x19\xd9\x5f\xc4\xb8\x24\xc6\xc1\xb8\x64\xbe\x08\xf1\x95\xaa\x49\xfc\x22\x93\x19\x8b\x49\xf5\x26\xba\x24\x32\xc5\x3a\x91\x9a\x2e\x33\xd9\x15\xd3\x85\xec\x33\x0e\x1a\x1e\x77\xae\xf9\x0e\x00\x00\xff\xff\x76\xc8\x16\xc6\x44\x01\x00\x00") +var _runtimeSyntaxHtmlMicro = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x3c\xcc\xb1\x6e\xe3\x30\x0c\xc6\xf1\xdd\x4f\x41\xc8\x87\xc3\x9d\x07\x3f\x40\x72\xd7\xac\x19\xda\xad\x9b\xe3\x00\x8c\x4c\x5b\x42\x25\xd1\x11\x99\x34\x29\xf8\xf0\x45\x0b\xa4\xeb\xf7\xfd\xf0\x6f\x5b\xd8\x53\x25\x88\x02\x08\x12\xb8\x2a\xc4\xbc\x56\xbe\xd2\x04\x74\xc3\xbc\x26\x82\x99\x2b\xec\x5f\x5f\x9e\xfb\xa6\x6d\x1b\xb9\x17\xc5\x1b\xb8\xa0\x39\x39\x70\x87\x3e\x68\x1e\xd2\xb8\xfb\xe5\x1a\xcf\x89\x2b\xc4\x89\x8a\xc6\x39\x52\x05\xf7\xaf\xef\x76\x4f\x8f\x43\x56\xf2\x11\x13\xb8\xdf\xc3\x71\x3b\x0c\x1b\x59\xd1\xd3\x66\x1c\xc7\x6e\xfb\x20\x9e\x8b\x28\x16\x05\xe7\x86\xa3\x1b\x3b\x67\xe7\xf3\xc1\xfa\xee\x60\x3f\x11\x45\xa5\x4c\x5f\xe4\x0f\x26\xb5\xd3\xf2\xbd\x5b\xa0\xb8\x04\xb5\x50\x69\xb6\x84\x27\x4a\x96\xb8\x2c\x13\x89\xb7\x82\x99\x8c\x8b\x4f\xd1\xbf\x19\x97\x99\xfd\x45\x8c\x4b\x62\x9c\x8c\x4b\xe6\x8b\x10\x5f\xa9\x9a\xc4\x0f\x32\x59\xb1\x98\x54\x6f\xa2\xf7\x44\xa6\x58\x17\x52\xd3\xfb\x4a\x76\xc5\x74\x21\x7b\x8f\x93\x86\xbf\xff\x5d\xf3\x19\x00\x00\xff\xff\xc7\x68\x09\x7e\x3a\x01\x00\x00") func runtimeSyntaxHtmlMicroBytes() ([]byte, error) { return bindataRead( @@ -2361,7 +2361,7 @@ func runtimeSyntaxViMicro() (*asset, error) { return a, nil } -var _runtimeSyntaxXmlMicro = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x74\xcd\xcd\x4a\xc4\x30\x14\xc5\xf1\x7d\x9e\xe2\x78\x47\xc4\x0f\x32\x3e\xc0\x4c\xdb\x85\x0a\xee\x74\xe1\x46\x6a\x0b\xa1\xde\x96\xc0\x4d\x52\x72\xb3\x88\xd0\x87\x17\x45\x5d\x39\xdb\xff\xf9\xc1\xd9\xed\xf0\xc8\x99\xe1\x15\x2e\x82\xab\x0b\xab\x30\xe6\x94\x51\x83\x60\xf6\xc2\xba\x37\x46\x3f\x62\x71\x15\x54\x83\x10\xe8\x6d\x7f\x59\x83\x6c\xba\x04\xe9\xb6\x1c\x97\x6d\x15\xaf\xe5\xea\x9c\xcc\x94\x24\x65\x68\x71\x85\x03\xc7\x02\x80\x8e\xfd\xd8\x62\xb8\xf9\x77\x6b\x7f\xeb\x94\xc2\x77\xd3\xe2\x72\x69\xe8\x78\x76\xff\x74\xf7\xf2\xfa\xfc\x40\xe0\xf8\xde\x50\x7f\x3b\x74\xa7\xad\xb5\x3f\xcc\xda\x3f\xa4\x2b\x4f\xde\x09\xbe\x5e\x2e\xfa\xf1\x30\x5c\x1f\xc8\x7c\x06\x00\x00\xff\xff\x1a\x6e\x79\xd4\xec\x00\x00\x00") +var _runtimeSyntaxXmlMicro = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x7c\xca\xb1\x4a\xc5\x30\x14\x06\xe0\x3d\x4f\xf1\x7b\x2a\xa2\x85\xd4\x07\x68\x6b\x07\x15\xdc\x74\x70\x91\x5a\x21\xb4\xa7\x25\x70\x92\x94\x24\x43\x84\x3e\xfc\x5d\xee\xbd\xe3\x9d\xbf\xaf\xaa\xf0\xc1\x91\x61\x13\x8c\x07\x17\xe3\x76\x61\xac\x21\xa2\x38\xc1\x6a\x85\x53\xa3\x54\xfa\xf7\xd9\x14\x50\x71\x42\xa0\xdf\xe6\xb1\x38\x39\xd2\xe6\x64\x38\xa2\xdf\x8e\x5d\x6c\xca\x4f\xf7\xa4\xe6\x20\x21\xc2\x2e\xec\xb3\x5d\x2d\x47\x50\xd7\xd4\xc3\xcb\x05\xe6\xe0\x1c\xfb\x8c\x94\x4d\xcc\x3d\x75\x77\x6f\x9f\xaf\xdf\x3f\x5f\xef\x04\xf6\x4b\x4f\xe3\xf3\x74\xe3\x6a\x7d\x6e\x5a\x5f\x53\xda\x79\xb6\x46\x00\x80\x1e\xc6\xbf\x76\xaa\x5b\x52\xa7\x00\x00\x00\xff\xff\x18\x22\x4c\xcc\xd3\x00\x00\x00") func runtimeSyntaxXmlMicroBytes() ([]byte, error) { return bindataRead( diff --git a/runtime/syntax/html.micro b/runtime/syntax/html.micro index 44e5972f..00b60f2a 100644 --- a/runtime/syntax/html.micro +++ b/runtime/syntax/html.micro @@ -1,7 +1,7 @@ ## Here is a short improved example for HTML. ## syntax "html" "\.htm[l]?$" -color identifier start="<" end=">" +color identifier "<.*?>" color special "&[^;[[:space:]]]*;" color constant ""[^"]*"|qq\|.*\|" color statement "(alt|bgcolor|height|href|label|longdesc|name|onclick|onfocus|onload|onmouseover|size|span|src|style|target|type|value|width)=" diff --git a/runtime/syntax/xml.micro b/runtime/syntax/xml.micro index 595871d1..3cdccf1a 100644 --- a/runtime/syntax/xml.micro +++ b/runtime/syntax/xml.micro @@ -1,8 +1,7 @@ ## Here is an example for xml files. syntax "xml" "\.(xml|sgml?|rng|plist)$" -color statement "<[^> ]+" -color statement ">" +color identifier "<.*?>" color comment start="" color comment start="" color special "&[^;]*;"