Blogs como o pBlog, onde vez ou outra aparecem códigos nos posts a fim de auxiliar os leitores, precisam dar mais atenção a este aspecto. Foi pensando nisso que implementamos por aqui o plugin SyntaxHighlighter, uma solução elegante e muito funcional para essa velha problemática.
Este plugin, na realidade, simplesmente traz para o WordPress, de maneira facilitada, o excelente JavaScript syntaxhighlighter, criado por Alex Gorbatchev. Isso quer dizer que as mesmas facilidades que este plugin traz podem ser usufruídas em outros projetos; basta pegar o código original, e adaptá-la, tal qual os desenvolvedores do plugin que ora explico fizeram.
A instalação segue o bom e velho esquema padrão do WordPress: baixe o plugin, descompacte-o, e envie a pasta (inteira) syntaxhighlighter para a /wp-content/plugins/. Depois, ative-o no painel administrativo, na guia Plugins, e ele estará pronto para uso.
O uso é simples. Quando for escrever um código, basta colocá-lo entre as tags especiais do plugin, e automaticamente o código gerado na saída estará formatado de acordo com a linguagem escolhida. O código tem uma estrutura própria: [ source language='css' ] /* aqui vai o código inteiro! */ [ /source ]. Note que utilizei espaços apenas para que o código não fosse convertido, pois caso fizesse certo, ou seja, tudo grudado, o resultado seria esse abaixo:
/* aqui vai o código inteiro! */
Há suporte a várias linguagens, cada uma com um código próprio, que deve ser inserido no atributo language='', de acordo com a desejada. Confira as linguagens suportadas, e seus respectivos códigos:
- C++ —
cpp,c,c++ - C# —
c#,c-sharp,csharp - CSS —
css - Delphi —
delphi,pascal - Java —
java - JavaScript —
js,jscript,javascript - PHP —
php - Python —
py,python - Ruby —
rb,ruby,rails,ror - SQL —
sql - VB —
vb,vb.net - XML/HTML —
xml,html,xhtml,xslt
Outro detalhe legal do plugin, é que no topo há atalhos úteis, como imprimir (print), copiar o código para a área de transferência (copy to clipboard) e ver em modo texto normal (view plain). No pBlog, aparentemente tais atalhos não estão funcionando; estamos averiguando o porquê disso, e logo todos estarão funcionais - assim esperamos :D .
E para a galera do WordPress.com, uma boa notícia: o syntaxhighlighter está disponível lá também! Aliás, foi graças a um blogger de lá, o Flavio Granero, que utiliza esse recurso nativo do WordPress.com, que descobri o plugin - valeu, Flavio!
Para fechar, confira alguns exemplos, usando linguagens diversas. Espero que esse plugin lhes seja útil, e até a próxima!
<?php
// ** MySQL settings ** //
define('DB_NAME', 'wordpress'); // The name of the database
define('DB_USER', 'root'); // Your MySQL username
define('DB_PASSWORD', ''); // ...and password
define('DB_HOST', 'localhost'); // 99% chance you won't need to change this value
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
var WPAjax = Class.create();
Object.extend(WPAjax.prototype, Ajax.Request.prototype);
Object.extend(WPAjax.prototype, {
WPComplete: false, // onComplete function
WPError: false, // onWPError function
defaultUrl: '', // We get these from WPAjaxL10n
permText: '',
strangeText: '',
whoaText: '',
