Skip to content

Commit f2c6652

Browse files
authored
enh(xml) better support processing directives (#3492)
1 parent a2bfcce commit f2c6652

File tree

6 files changed

+32
-8
lines changed

6 files changed

+32
-8
lines changed

CHANGES.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ New Grammars:
1111

1212
Grammars:
1313

14+
- enh(xml) support processing instructions (#3492) [Josh Goebel][]
1415
- enh(ruby ) better support multi-line IRB prompts
1516
- enh(bash) improved keyword `$pattern` (numbers allowed in command names) [Martin Mattel][]
1617
- add `meta.prompt` scope for REPL prompts, etc [Josh Goebel][]

src/languages/php.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,10 @@ export default function(hljs) {
2929
const PREPROCESSOR = {
3030
scope: 'meta',
3131
variants: [
32-
{
33-
begin: /<\?php/,
34-
relevance: 10
35-
}, // boost for obvious PHP
36-
{ begin: /<\?[=]?/ },
32+
{ begin: /<\?php/, relevance: 10 }, // boost for obvious PHP
33+
{ begin: /<\?=/ },
34+
// less relevant per PSR-1 which says not to use short-tags
35+
{ begin: /<\?/, relevance: 0.1 },
3736
{ begin: /\?>/ } // end php tag
3837
]
3938
};

src/languages/xml.js

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,11 +122,23 @@ export default function(hljs) {
122122
relevance: 10
123123
},
124124
XML_ENTITIES,
125+
// xml processing instructions
125126
{
126127
className: 'meta',
127-
begin: /<\?xml/,
128128
end: /\?>/,
129-
relevance: 10
129+
variants: [
130+
{
131+
begin: /<\?xml/,
132+
relevance: 10,
133+
contains: [
134+
QUOTE_META_STRING_MODE
135+
]
136+
},
137+
{
138+
begin: /<\?[a-z][a-z0-9]+/,
139+
}
140+
]
141+
130142
},
131143
{
132144
className: 'tag',
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
<span class="hljs-meta">&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot; ?&gt;</span>
1+
<span class="hljs-meta">&lt;?xml version=<span class="hljs-string">&quot;1.0&quot;</span> encoding=<span class="hljs-string">&quot;ISO-8859-1&quot;</span> ?&gt;</span>
22
<span class="hljs-tag">&lt;<span class="hljs-name">xs:schema</span> <span class="hljs-attr">xmlns:xs</span>=<span class="hljs-string">&quot;http://www.w3.org/2001/XMLSchema&quot;</span>&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">xs:schema</span>&gt;</span>
33
<span class="hljs-tag">&lt;<span class="hljs-name">s:schema</span> <span class="hljs-attr">xmlns:s</span>=<span class="hljs-string">&quot;http://www.w3.org/2001/XMLSchema&quot;</span>&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">s:schema</span>&gt;</span>
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<span class="hljs-meta">&lt;?xml version=<span class="hljs-string">&quot;1.0&quot;</span> encoding=<span class="hljs-string">&quot;ISO-8859-1&quot;</span> ?&gt;</span>
2+
<span class="hljs-meta">&lt;?PITarget PIContent?&gt;</span>
3+
<span class="hljs-meta">&lt;?xml-stylesheet type=<span class="hljs-string">&quot;text/xsl&quot;</span> href=<span class="hljs-string">&quot;style.xsl&quot;</span>?&gt;</span>
4+
<span class="hljs-meta">&lt;?xml-stylesheet type=<span class="hljs-string">&quot;text/css&quot;</span> href=<span class="hljs-string">&quot;style.css&quot;</span>?&gt;</span>
5+
Some <span class="hljs-meta">&lt;?Pub _font FontColor=&quot;green&quot;?&gt;</span>green<span class="hljs-meta">&lt;?Pub /_font?&gt;</span> text.
6+
<span class="hljs-meta">&lt;?mso-application progid=&quot;Excel.Sheet&quot;?&gt;</span>

test/markup/xml/processing.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="ISO-8859-1" ?>
2+
<?PITarget PIContent?>
3+
<?xml-stylesheet type="text/xsl" href="style.xsl"?>
4+
<?xml-stylesheet type="text/css" href="style.css"?>
5+
Some <?Pub _font FontColor="green"?>green<?Pub /_font?> text.
6+
<?mso-application progid="Excel.Sheet"?>

0 commit comments

Comments
 (0)