SyCODE Syntax Highlighter es un programa de resaltado de sintaxis basado en javascript. El método de implementación se basa en el famoso db.SyntaxHighlighter para utilizar expresiones regulares para la coincidencia de palabras clave. La velocidad de procesamiento es de 5 a 10 veces mayor que la de db.SyntaxHighlighter. Velocidad. Programa rápido de resaltado de sintaxis de JavaScript.
SyCODE Syntax Highlighter tiene las características de alta velocidad y gran escalabilidad. Puede completar fácilmente el procesamiento de resaltado de código de 32 KB en una PC convencional y puede completar el procesamiento de resaltado de código de 64 KB al mismo tiempo sin que el script pueda implementar un aviso lento. resaltado de sintaxis en cualquier lenguaje de programación.
SyCODE Syntax Highlighter 1.0 ha implementado internamente el resaltado de sintaxis para más de 20 idiomas, incluidos:
1.C/C++
2.C#
3. CSS
4. Delfos/Kylix
5. Pascal
6.Java
7. Vb/Vb.net
8.J(ava)Script
9. Escritura de acción
10. PHP
11.Python
12. Rubí/Rieles
13.perla
14. Asamblea
15. Procesamiento por lotes de murciélagos
16. Carcasa UNIX
18.AWK
19.SQL
20.
Ejemplo xml/xhtml: Highlighter.Execute(cleanCode, idioma Efecto)
:
var Resaltador = {
Pinceles: {},
Biblioteca de expresiones regulares: {
Comentarios MultiLineC: new RegExp('/\*[\s\S]*?\*/', 'gm'),
SingleLineCComments: nueva RegExp('//.*$', 'gm'),
SingleLinePerlComments: nueva RegExp('#.*$', 'gm'),
DoubleQuotedString: nueva expresión regular('"(?:\.|( \\\")|[^\""\n])*"','g' ),
SingleQuotedString: nueva expresión regular("'(?:\.|( \\\')|[^\''\n])*' ", 'g')
},
Coincidencia: función (valor, índice, css) {
this.value = valor;
this.index = índice;
this.length = valor.length;
esto.css = css;
},
Ejecutar: función(cadena,idioma) {
var registrado = nuevo Objeto();
para (var pincel en Highlighter.Brushes)
{
var alias = Highlighter.Brushes[pincel].Aliases;
if(alias == null) continuar;
for(var i=0;i<aliases.length;i++) registrado[aliases[i].toLowerCase()] = pincel;
};
if(!!registered[lang.toLowerCase()]) {
var ht = nuevo Highlighter.Brushes[registered[lang.toLowerCase()]]();
return ht.Highlight(cadena);
}
demás {
str = str.replace(/&/g, '&');
str = str.replace(/</g, '<');
str = str.replace(/>/g, '>');
str = str.replace(/t/g, ' ');
str = str.replace(/[ ]{2}/g, ' ');
return str.replace(/n/g, '<br/>');
}
}
};