Para eso desarrolle un pequeño script en PHP, cuya finalidad es esa, formatear el codigo PHP y dejarlo listo para que se pueda publicar, con colores y números de lineas.
La uncia desventaja es que tienes que copiar el código fuente directamente cuando lo genera el script (delimitado vía comentarios). El porque de esto es porque si lo pones en una etiqueta PRE, el browser interpreta el código, al igual que si estuviera en un textarea.
La única forma de que se quedara formateado y listo era copiando directamente del codigo fuente, así que para utilizar este script, lo que haces es enviar tu código y presionas Enviar, al recargarse la pagina, debes de seleccionar ver código fuente y copiarlo directamente de ahí.
Espero les sea de ayuda, ya que funciona para publicar cualquier código, pero con colores solo con PHP, aunque se puede expandir para utilizar un sistema mayor de publicación de código y poder publicar casi cualquier tipo de código en Blogger.
Aquí les dejo el código (formateado con el mismo script):
1
<?php
2 if( !empty( $_POST['codigo'] ) ) {
3 $codigo = $_POST['codigo'];
4 $codigo = str_replace( "\t", " ", $codigo );
5 $codigo = highlight_string( stripslashes( $codigo ), true );
6
7 $line = 1;
8 $buffer = array();
9 $cod = explode( "<br />", $codigo );
10 foreach( $cod as $codLine ) {
11 $buffer[] = "<b>$line</b> " . $codLine;
12 $line++;
13 }
14
15 $codigo = implode( "\n", $buffer );
16 // HACK:
17 $codigo = str_replace( "<b>1</b> <code>", "<code><b>1</b> ", $codigo );
18 }
19 ?>
20 <html>
21 <head>
22 <title>Format Code</title>
23 </head>
24 <body>
25
26 <!-- COPY FROM HERE
27
28 <?php echo $codigo; ?>
29
30 TO HERE -->
31
32
33 <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
34 <textarea rows="20" cols="80" name="codigo"></textarea><br />
35 <input type="submit" name="enviar" value="Enviar" />
36 </form>
37 </body>
38 </html>

4 comentarios:
Gracias por el código, me funciono full, voy a ver como lo modifico para otros lenguajes como Python
so many tks!! ^^
No entendi mucho lo que hay que hacer. Podrias aclarar un poc mas.
buena entrada amigo
Publicar un comentario en la entrada