WP-Syntax – WordPress Plugin

Chi ha un blog tecnico come questo, ha spesso la necessità di pubblicare righe di codice. Un plugin che può essere utile per questo scopo è WP-Syntax che evidenzia il codice colorandolo a seconda della sintassi.

Il plugin è scaricabile da qui:

http://wordpress.org/extend/plugins/wp-syntax/

e una volta attivato, per utilizzarlo è sufficiente inserire il codice desiderato tra i blocchi  <pre lang="LANGUAGE" line="1"> e </pre>, dove LANGUAGE è uno dei linguaggi supportati, indicati alla fine del post; e line è facoltativo.

Ad esempio:

<pre lang="php">
<?
function foo() {
   echo "Hello World!\n";
}
?>
</pre>

Tutto molto semplice, se non fosse che WordPress trasforma tutti i caratteri particolari come < > " ' nel corrispondente codice html, ed il plugin, poi lo visualizza esattamente come inserito. Quindi  il codice:

diventa

Veramente inguardabile. Soluzioni? si, ce ne sono alcune.

La documentazione del plugin recita che è necessatio lavorare direttamente sul codice html, disabilitando l'editor visuale, Considerando che uno dei vantaggi di lavorare con WordPress è un editor visuale, non mi pare che sia una soluzione percorribile, è meglio cercarne qualcun altra.

Una soluzione possibile e qualla di aggiungere un altro plugin, WP-Syntax Button che aggiunge all'editor visuale un bottone con cui inserire il codice. Molto bello, ma purtroppo funziona solo con l'editor TinyMCE, se si utilizza CKEditor il bottone non sarà visualizzato.

Altra soluzione possibile (quella che uso personalmente) consiste nell'aggiungere la parola chiave escaped="true" all'interno del codice <pre>.

Di conseguenza, il codice per visualizzare correttamente la maggior parte dei nostri post dovrà essere:

<pre lang="LANGUAGE" escaped="true">

Quest'ultima soluzione è di fatto quello che fa il bottone di WP-Syntax Button, ma ha il vantaggio di lasciare utilizzabile CKEditor, molto più avanzato di TinyMCE.

Ognuno può scegliere la soluzione che preferisce, se usare il bottone nell'editor o inserire il codice a mano, l'importante è il risultato finale cioè avere la colorazione sintattica del codice, ben funzionante.

 

Ah, quasi dimenticavo, i linguaggi al momento supportati sono:

abap, actionscript, actionscript3, ada, apache, applescript, apt_sources, asm, asp, autoit, avisynth, bash, bf, bibtex, blitzbasic, bnf, boo, c, c_mac, caddcl, cadlisp, cil, cfdg, cfm, cmake, cobol, cpp-qt, cpp, csharp, css, d, dcs, delphi, diff, div, dos, dot, eiffel, email, erlang, fo, fortran, freebasic, genero, gettext, glsl, gml, bnuplot, groovy, haskell, hq9plus, html4strict, idl, ini, inno, intercal, io, java, java5, javascript, kixtart, klonec, klonecpp, latex, lisp, locobasic, lolcode lotusformulas, lotusscript, lscript, lsl2, lua, m68k, make, matlab, mirc, modula3, mpasm, mxml, mysql, nsis, oberon2, objc, ocaml-brief, ocaml, oobas, oracle11, oracle8, pascal, per, pic16, pixelbender, perl, php-brief, php, plsql, povray, powershell, progress, prolog, properties, providex, python, qbasic, rails, rebol, reg, robots, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, tcl, teraterm, text, thinbasic, tsql, typoscript, vb, vbnet, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, whois, winbatch, xml, xorg_conf, xpp, z80

Tags: , , , , ,

About the Author

Post a Reply

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Top