Tratamiento de Texto en Unix I

Teclado

Unix y Linux son sistemas operativos que tiene muchas herramientas utiles para hacer una infinidad de tareas, para ello uno de sus secretos es que deberemos perderle el miedo a usar la consola o terminal, para realizar estas tareas deberemos ingresar comandos de consola para la manipulacion de archivos de texto plano. En esta seccion aprenderemos algunos trucos utiles.

Como convertir HTML a PDF

No vamos a comentar en que circunstancias es necesario hacer esto, pero es evidente, sobre todo cuando existen manuales en html queremos pasarlo a un formato mas universal como pdf.

Si editamos un html, nos encontraremos con un texto rodeado de un monton de sentancias y simbolos que si tratamos de leerlo dificilmente entenderemos algo, pero si el mismo archivo lo llevamos en PDF, veremos una gran diferencia.

Para realizar esta conversion con una sola linea en una consola deberemos instalar en nuestra maquina el paquete htmldoc.

# aptitude install htmldoc --> Para Debian

Ahora ya que lo tenemos instalado usaremos el siguiente comando, suponiendo que tenemos un archivo HTML (origen.html) en el mismo directorio en donde estamos parados.

$ htmldoc -t pdf14  origen.html --size letter  --title  --links \
 --linkstyle plain  --linkcolor blue --left 10mm  \
--right  10mm  > destino.pdf

Con esto le hemos indicado al comando htmldoc que:

  • La salida del documento usara <pdf14>.
  • El tama~no de la pagina es Carta
  • Que ponga las URL en color azul.
  • Que use 10mm para el borde derecho e izquierdo.
  • Genere un archivo de salida llamado destino.pdf

Hay una opcion que permite convertir una pagina WEB a un formato PDF, esto es especialmente util si sacamos el codigo HTML de la pagina y lo guardamos en un archivo, posteriormente editamos ese archivo y podemos modificar su contenido, pero el htmldoc requiere que se le informe que el html es de una pagina web, por ejemplo con el mismo comando anterior pero agregando la opcion –webpage.

$ htmldoc -t pdf14  origen.html --webpage --size letter  --title  --links \
 --linkstyle plain  --linkcolor blue --left 10mm  \
--right  10mm  > destino.pdf

Como Imprimir Codigo en Formato PDF's Agradable

Salida en hoja tama~no carta

Salida de Impresora

Podemos encontrar en muchas partes el texto plano, de hecho fue uno de las primeros formatos de texto, el problema con esto es que carecen de formato, no tiene alineacion de texto, no tiene fonts, solo el por default lo que no hace del todo grato su uso frente a otras herramientas, pero como lo importante es su contenido, es indispensable tratarlo un poco para mejorar su aspecto.

Para el tratamiento de texto plano a ps (postscript), usaremos una estupenda herramienta llamada a2ps, para mayor detalle ver el *man a2ps*. Esta herramienta que en realidad en un programa con un monton de opciones interesantes, permite imprimir un texto plano de origen a un formato mas enriquecido, buscando la mejor forma de imprimirlo, a un archivo a la impresora. Uno de los usos mas interesantes es cuando quiero imprimir codigo fuente de un programa, ya que permite resaltar las palabras claves del lenguaje dejando mucho mas atractiva su lectura o impresion.

Personalizar el Encabezado y Pie de Pagina

Si por ejemplo deseamos imprimir un programa que tenemos en codigo fuente, y deseamos enriquecer un poco mas el texto, podemos imprimirle informacion de encabezado y pie de pagina, con datos de fecha, autor o numeros de linea. Esto lo hacemos con el siguiente comando en consola:

$ a2ps -1 --header="Electrolinux" --footer="Desarrollo proyecto válvul" \
--line-numbers 1 valvula.c -o valvula.ps 

Otra manera de obtener un mejor resultado del archivo de origen es el comando:

a2ps -v --line-numbers=1 --font-si--landscape --chars-per-line=120 --truncate-lines=1 \
--highlight-level=normal -E --media=letter -2 --printer=printer \
archivo_origen.c -o archivo_destino.ps 

Debemos indicar tambien que a2ps,aun no maneja bien el encoding UTF-8 por lo que los archivos de texto plano deben ser evitados en la medida de lo posible los acentos o tildes o e~nes.

Es inevitable usar Tildes o E~nes

En los casos en que requieramos usar los acentos o tildes y las e~nes de nuestro lenguaje, tambien existe solucion para ese problema, que requiere solo algunos segundos mas de tiempo, lo que deberemos hacer es un paso previo que es el siguiente:

$ recode UTF-8..ISO-8859-1  main_origen.c

Otra forma de convertir el texto de un set de caracteres a otro es usar iconv, para ello en un terminal podemos utilizar este comando:

$ iconv -f utf-8 -t iso-8859-1 origen_file.txt > output-file-iso8859-1.txt

Con esto hemos convertido de UTF-8 que es el encoding de practicamente todos los Unix o Linux actuales al encoding ISO-8859-1. Este paso es previo para codificar correctamente el archivo plano y pasarlo al formato que maneja bien a2ps.

Y ahora ejecutamos el comando a2ps de la siguiente forma:

a2ps -1 --header="www.electrolinux.cl" --footer="Proyecto SmartValvule" \
main_origen.c -o salida_main.ps

Como Convertimos de PS a PDF

Ahora tendremos un archivo *PostScript* llamado *salida_main.ps*, y por ultimo lo convertimos a PDF, con el comando siguiente, para nuestro ejemplo:

$ ps2pdf14  salida_main.ps
informatica/linux-tratexto1.txt · Última modificación: 2020/05/29 17:33 por 127.0.0.1
Recent changes RSS feed Creative Commons License Donate Minima Template by Wikidesign Driven by DokuWiki