[英]VS Code HTML and JS syntax highlighting/intellisense inside strings in PHP
[英]Javascript or PHP syntax highlighting of query strings?
有很多语法高亮显示器,但我没有看到的是支持突出显示查询字符串!
我正在寻找在记录我的API时使用的东西,并且作为一个API,涉及到很多查询字符串。 所以。 有什么好的javascript或PHP语法高亮显示器支持查询字符串?
我查看了Google代码美化 , highlight.js , prismjs和其他几个,但似乎没有人能够强调这一点:
/oauth/authorize?client_id=wG2X7q1qz74zdSbgiFkyL5JFOeloQwg2opfrPfaJ&response_type=code&redirect_uri=https%3A%2F%2Fmyapplication.com%2Foauth&scope=account%2Ccompetition%2Cvideos&state=d41d8cd98f00b204e9800998ecf8427e
哪一个应该突出显示一种颜色上的所有键,而另一种颜色中的所有值都用&?=再次显示不同的颜色...类似于:
就我而言,所有字符如'?','&'和'='都应该替换为正确URL中的名称/值。 这使得它非常容易解析。
那么为什么不自己发明一些东西:
function parseQuery(query){
parsed = query.split('?');
if (parsed.length > 1) {
parsed[1] = parsed[1].split('&');
for(i in parsed[1]) {
parsed[1][i] = parsed[1][i].split('=');
}
}
retStr = '<span class="path">' + parsed[0] + '</span>';
if (parsed.length > 1) {
retStr += '<span class="qm">?</span>';
first = true;
for(i in parsed[1]) {
if (first) {
first = false;
} else {
retStr += '<span class="amp">&</span>';
}
retStr += '<span class="name">' + parsed[1][i][0] + '</span>';
if (parsed[1][i].length > 1) {
retStr += '<span class="eq">=</span>' +
'<span class="value">' + parsed[1][i][1] + '</span>';
}
if (parsed[1][i].length > 2) {
for (var j = 2; j < parsed[1][i].length; j++) {
retStr += '<span class="eq">=</span>';
retStr += '<span class="error">' + parsed[1][i][j] + '</span>';
}
}
}
}
if (parsed.length > 2) {
for (var i = 2; i < parsed.length; i++) {
retStr += '<span class="qm">?</span>';
retStr += '<span class="error">' + parsed[i] + '</span>';
}
}
return retStr;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.