User:Remember the dot/Syntax highlighter/ca

He creat un script que fa que la sintaxi ressalti coloridament en la caixa d'edició. A diferència d'altres scripts de ressalt com a wikEd, AceWikiEditor i CodeMirror, aquest:

  • Actualitza el ressalt automàticament mentre escrius.
  • No espatlla els botons Desfés i Refés.
  • No espatlla la correcció ortogràfica.
  • És compatible amb la majoria de scripts que afecten la caixa d'edició.

Instal·lació

edit

Assegura't de llegir la secció "Problemes coneguts" abaix abans d'instal·lar el script.

Per l'usuari si està instal·lat en la wiki

edit

Si el ressaltador de sintaxi ja està disponible com a giny en la teva wiki, vés a les teves preferències i activa-ho.

Per l'usuari si no està instal·lat en la wiki

edit

Si instal·lació com a giny no està disponible, afegeix aquestes línies a la teva pàgina de common.js:

//ressalt de sintaxi
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

Per exemple, si la Wikipedia catalana no proporcionés el ressaltador com a giny, el afegiries a

https://ca.wikipedia.org/wiki/Usuari:El_teu_nom_d'usuari/common.js

Pels administradors de sitis de Wikimedia

edit

En la teva wiki, crea la pàgina MediaWiki:Gadget-DotsSyntaxHighlighter.js‎ amb el codi

mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

Llavors afegeix a la pàgina MediaWiki:Gadgets-definition‎ una nova línia

*DotsSyntaxHighlighter[ResourceLoader]|DotsSyntaxHighlighter.js

i crea la pàgina MediaWiki:Gadget-DotsSyntaxHighlighter‎ amb el text

[[mw:User:Remember the dot/Syntax highlighter/ca|Ressalt de sintaxis]]: Fa que la sintaxi ressalti coloridament en la caixa d'edició.

Pels administradors de sitis no de Wikimedia

edit

En la teva wiki, crea la pàgina MediaWiki:Gadget-DotsSyntaxHighlighter.js‎ i copia-hi el codi font d'User:Remember the dot/Syntax highlighter.js. Llavors afegeix a la pàgina MediaWiki:Gadgets-definition‎ una nova línia

*DotsSyntaxHighlighter[ResourceLoader]|DotsSyntaxHighlighter.js

i crea la pàgina MediaWiki:Gadget-DotsSyntaxHighlighter‎ amb el text

[https://www.mediawiki.org/wiki/User:Remember_the_dot/Syntax_highlighter/es Ressalt de sintaxis]: Fa que la sintaxi ressalti coloridament en la caixa d'edició.

Cal MediaWiki 1.22 o més nou.

Problemes coneguts

edit

Compatabilitat

edit
  1. El ressaltador funciona millor en la versió més actual de Firefox.
  2. El ressaltador funciona casi sempre en el Chrome, el Safari i l'Opera, però no funciona correctament amb text en certs alfabets, notablement tailandès i tibetà.
  3. El ressaltador no funciona en l'Internet Explorer ni l'Edge (les seves fallades són massa greus). El ressaltador ni intenta executar si es detecta un d'aquests navegadors web.
  4. El ressaltador no és compatible amb alguns ginys, extensions de navegador i altres personalitzacions.

Sintaxis

edit
  1. Per motius de rendiment, el ressaltador exigeix que totes les etiquetes siguin etiquetes vàlides XML. Per exemple, assegura't que si comences una etiqueta <p> que la terminis amb </p>, i usa <br/> en lloc de <br>.
  2. Per motius de rendimient, el ressaltador no pot manecar '''apòstrof cursiva'' o ''cursiva apòstrof'''—els considera sintaxis invàlida. Suggereixo usar '<i>apòstrof cursiva</i> y <i>cursiva apòstrof'</i> en lloc.
  3. Una etiqueta <pre> creada col·locant un espai al principi d'una línia no es ressaltarà. Això es deu a que el ressaltador no es prou intel·ligent per a saber si l'espai compta com a espai en blanc dins d'una plantilla o no.
  4. Controladors de comportament com __NOTOC__ no es ressalten.
  5. Els enllaços externs creats amb {{fullurl:}} o plantilles no es ressalten. Veuràs [{{fullurl:Mi pàgina}} enllaç extern] en lloc de [{{fullurl:Mi pàgina}} enllaç extern].

Miscel·lània

edit
  1. El ressaltador no funciona ràpidament al editar articles llargs i es desactivarà automàticament si triga més de 50ms.
  2. El ressaltador no funciona en pujar fitxers.
  3. El ressaltador pot anular els teus estils personals relacionats a la caixa d'edició.

Personalització

edit

Colors

edit

És fàcil canviar els colors de ressalt o fer que no es ressaltin certs sintaxis. Els següents personalitzacions de color estan disponibles:

defaultColor per als elements sintàctics que no tenen color específic
boldOrItalicColor '''negreta''' ''cursiva''
wikilinkColor [[enllaç wiki]]
externalLinkColor [http:// enllaç extern anomenat], http://enllaç-extern-nu.cat
headingColor ==Encapçalament==, ;Encapçalament petit
listOrIndentColor * llista no ordenada, # llista ordenada, : sagnia
signatureColor ~~~~
tableColor {| taula |}
templateColor {{plantilla}}
parameterColor {{{paràmetre de plantilla}}}
hrColor ----
tagColor <etiqueta>...</etiqueta>, <etiqueta/>
commentColor <!-- comment -->
entityColor &entitat;

Per exemple, per a fer cians els enllaces wiki i taronges els enllaces externs, posa ho següent en el teu common.js (si has instal·lat el ressaltador com a giny, omet les primeres dues línies o el teu navegador web s'immobilitzarà):

//ressalt de sintaxi
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

//configuració de ressalt de sintaxi
syntaxHighlighterConfig = {
    externalLinkColor: "#FFCC66", //color d'enllaços externs: taronja
    wikilinkColor: "#E6FFFF", //color d'enllaços wiki: cian
}

Per a no ressaltar un sintaxi, fes el seu color "". Per exemple, per a desactivar el ressalt d'enllaços externs:

//ressalt de sintaxi
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

//configuració de ressalt de sintaxi
syntaxHighlighterConfig = {
    externalLinkColor: "", //color d'enllaços externs: cap
}

Per a no ressaltar cap sintaxi a més dels que explícitament vulguis, fes que defaultColor sigui "" i especifica el color de cada sintaxi que vulguis ressaltar. Si només vols el color usual, posa "normal". Per exemple, per a només ressaltar les etiquetes:

//ressalt de sintaxi
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

//configuració de ressalt de sintaxi
syntaxHighlighterConfig = {
    defaultColor: "", //color per defecte: cap
    tagColor: "normal", //color d'etiquetes: el usual
}

Temps d'espera

edit

Pots especificar un timeout que reemplaça el temps d'espera per defecte de 20ms. Per exemple, si no et molesta la lentitud en teclejar i vols inhabilitar el ressalt només si triga més de 30ms, posa ho següent en el teu common.js:

//ressalt de sintaxi
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

//configuració de ressalt de sintaxi
syntaxHighlighterConfig = {
    timeout: 30,
}

Si has instal·lat el ressaltador com a giny, omet les primeres dues línies o el teu navegador web s'immobilitzarà.

Etiquetes no de wikitext

edit

Diverses etiquetes, per exemple <math> i <source>, no usen wikitext i per tant, no es ressalta cap sintaxi dins d'aquestes etiquetes. Pots personalitzar la llista d'etiquetes com source establint sourceTags a un vector de noms d'etiquetes. Per exemple, per a inhabilitar el ressalt de sintaxis dins l'etiqueta hipotètica <foo> a més de les per defecte, posa ho següent en el teu common.js:

//ressalt de sintaxi
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

syntaxHighlighterConfig = {
    sourceTags: ["math", "syntaxhighlight", "source", "timeline", "hiero", "foo"],
}

Altres etiquetes, com <pre> i <nowiki>, no usen wikitext però si processen entitats de càracter (&nbsp; per exemple). La propietat nowikiTags controla la llista d'etiquetes com nowiki. Per exemple, per a ressaltar només les entitats de càracter dins de l'etiqueta, posa ho següent en el teu common.js:

//ressalt de sintaxi
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

syntaxHighlighterConfig = {
    nowikiTags: ["nowiki", "pre", "abbr"],
}

En ambdues exemples, si has instal·lat el ressaltador com a giny, omet les primeres dues línies o el teu navegador web s'immobilitzarà.

Valors per defecte del lloc

edit

Totes les propietats que es poden especificar en la variable syntaxHighlighterConfig també es poden especificar en la variablesyntaxHighlighterSiteConfig. syntaxHighlighterSiteConfig es proposa per als valors per defecte del lloc i syntaxHighlighterConfig per a les preferències de l'usuari. Les propietats de syntaxHighlighterConfig prevalen sobre les propietats de syntaxHighlighterSiteConfig, i les propietats de syntaxHighlighterSiteConfig prevalen sobre els valors interns per defecte.

Per exemple, si el teu lloc no té cap extensió de MediaWiki instal·lada, potser que vols eliminar el suport per a etiquetes com source. Per a fer això, afegeix ho següent al final de MediaWiki:Gadget-DotsSyntaxHighlighter‎:

syntaxHighlighterSiteConfig = {
    sourceTags: [],
}

Reportació d'errors

edit
Nota: Acorda't de comprovar si el error que voleu reportar ja és un problema conegut.

En reportar-me un error, si's plau inclou:

Més informació

edit

Per més informació, incloent com obtenir el codi font i un resum del mètode del script, veges User:Remember the dot/Syntax highlighter.