Secciones de la página

Sfk. Wrap


Árbol de ficheros


Declaraciones


Constantes


Proceso


Finalización


Time oriented language

Tol

Artículos del sitio

Presentación de Tol

Todos los programas

Simuladores visuales

Sitios que me gustan

Por categorías

Algoritmia

Búsqueda y ordenación

Computación fisiológica

Editorial y edición

Gráficos de datos

Herramientas y utilidades

Hipertexto

Informática forense

Lectura óptica de datos

Metaprogramación

No determinista

Ofimática

Recursión e iteración

Reglas y restricciones

Series y estadística









make.tol de Sfk.Wrap

Sfk.Wrap es un programa formateador de textos Ascii a lineas de 78 caracteres que lee del clipboard dejando su resultado tambien en el clipboard, tambien puede funcionar con otros textos procedentes de procesadores y editores que se convierten a Ascii al salir del clipboard hacia un fichero de texto. Los textos a los que da formato pueden estar en una o en varias lineas. El numero de caracteres blancos que hay al inicio de la primer linea de entrada se conserva en la primera linea de salida y es heredado por las siguientes lineas siendo este la forma de fijar el sangrado con Sfk.Wrap. El programa funciona considerando: a) que varias lineas, aun con sus saltos de linea al final, constituyen un solo parrafo y b) que los parrafos terminan en el primer punto tras el cual haya un salto de linea, esto es, como si se tratara de un punto y a parte. Sfk.Wrap es util, por ejemplo, para dar formato a los textos de contenido que aparecen dentro de las agendas de post, de las paginas Html, etc. También es util para pasar a ficheros de codigo fuente textos que por proceder de Word u otros procesadores ocupan una sola linea, muy larga, por cada parrafo.

Para que el uso de este conversor sea muy rapido los textos se leen y escriben en el clipboard de forma que se obtiene seleccionando y copiando el texto al que hay que dar formato, por ejemplo, de Notepad2, se ejecuta este conversor que lee el clipboard y escribe el resultado en el clipboard y se pega el texto formateado resultante, en el mismo Notepad 2 en el que el texto estaba seleccionado, cambiandose, por tanto, por uno ya con formato. Si bien ha de hacerse notar que internamente la informacion pasa a traves de ficheros temporales que el usuario no observa.

Para simplificar la programacion este conversor emplea un unico fichero temporal y un solo clipboard por lo que este programa no soporta ejecuciones paralelas. Para el manejo del clipboard se utiliza una herramienta de sfk169.exe de las Swiss File Knife, Sfk, que pueden encontrarse en la direccion http://stahlworks.com/dev/swiss-file-knife.html. El programa sfk169.exe no se invoca directamente, se hace a traves de 2 programas de mandatos que permiten fijar un conjunto de caracteres que no de problemas con las eñes y enmascarar el uso de los ficheros temporales.

Árbol de ficheros

Sfk.Wrap formateador a lineas de 78 caracteres de textos en Ascii

  • make.tol formatea textos a lineas de 78 caracteres a traves del clipboard
  • wrap.bat mandato de ejecucion del programa de formateo tipo wrap
  • tol directorios de codigo fuente en el lenguaje de programacion Tol
    • cmm funciones comunes de textos y de gestion del clipboard
      • txt.tol funciones de textos, por ejemplo, para realizar wrap
      • sfk.tol funciones para manejar sfk169.exe de Swiss File Knife
    • inc.tol para la inclusion de ficheros en lenguaje Tol
  • ../../Bin/sfk directorio para mandatos y ejecutables de Swiss File Knife
  • sfk_wrap.pdf documento resumen de funciones del programa de formateo

Declaraciones

Constantes

  • Real linLen
    Longitud de linea que es la que uso para programar.

Proceso

  • Text cliInp
    Lee clipboard.
  • Text cliWra
    Da formato al texto.
  • Real cliOut
    Guarda en el clipboard.

Constantes

Real linLen

//////////////////////////////////////////////////////////////////////////////
Real linLen = 78;
//////////////////////////////////////////////////////////////////////////////
PutDescription("Longitud de linea que es la que uso para programar.", linLen);
//////////////////////////////////////////////////////////////////////////////

Proceso

Text cliInp

//////////////////////////////////////////////////////////////////////////////
Text cliInp = SfkReadClipboard("error leyendo el clipboard");
//////////////////////////////////////////////////////////////////////////////
PutDescription("Lee clipboard.", cliInp);
//////////////////////////////////////////////////////////////////////////////

Text cliWra

//////////////////////////////////////////////////////////////////////////////
Text cliWra = TxtParagraphsWrap(cliInp, linLen);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Da formato al texto.", cliWra);
//////////////////////////////////////////////////////////////////////////////

Real cliOut

//////////////////////////////////////////////////////////////////////////////
Real cliOut = SfkWriteClipboard(cliWra);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Guarda en el clipboard.", cliOut);
//////////////////////////////////////////////////////////////////////////////

Finalización

Text WriteLn("\nSfk.Wrap make: end");

Time oriented language

//////////////////////////////////////////////////////////////////////////////
// FILE    : make.tol
// AUTHOR  : http://www.asolver.com
// CLASS   : Editorial; Sfk
// VERSION : Tol 1.1.1; Tol 1.1.5; Tol 1.1.6; Tol 2.0.1
// PURPOSE : Sfk.Wrap es un programa formateador de textos Ascii a lineas de
// 78 caracteres que lee del clipboard dejando su resultado tambien en el
// clipboard, tambien puede funcionar con otros textos procedentes de 
// procesadores y editores que se convierten a Ascii al salir del clipboard
// hacia un fichero de texto.
// 
// Los textos a los que da formato pueden estar en una o en varias lineas.
// 
// El numero de caracteres blancos que hay al inicio de la primer linea de
// entrada se conserva en la primera linea de salida y es heredado por las
// siguientes lineas siendo este la forma de fijar el sangrado con Sfk.Wrap.
// 
// El programa funciona considerando:
// a) que varias lineas, aun con sus saltos de linea al final, constituyen un
//    solo parrafo y
// b) que los parrafos terminan en el primer punto tras el cual haya un salto
//    de linea, esto es, como si se tratara de un punto y a parte.
// 
// Sfk.Wrap es util, por ejemplo, para dar formato a los textos de contenido
// que aparecen dentro de las agendas de post, de las paginas Html, etc.
// También es util para pasar a ficheros de codigo fuente textos que por
// proceder de Word u otros procesadores ocupan una sola linea, muy larga,
// por cada parrafo.
// _
// Para que el uso de este conversor sea muy rapido los textos se leen y
// escriben en el clipboard de forma que se obtiene seleccionando y copiando
// el texto al que hay que dar formato, por ejemplo, de Notepad2,
// se ejecuta este conversor que lee el clipboard y
// escribe el resultado en el clipboard y
// se pega el texto formateado resultante,
// en el mismo Notepad 2 en el que el texto estaba seleccionado,
// cambiandose, por tanto, por uno ya con formato.
// Si bien ha de hacerse notar que internamente la informacion pasa a traves
// de ficheros temporales que el usuario no observa.
// _
// Para simplificar la programacion este conversor emplea un unico fichero
// temporal y un solo clipboard por lo que este programa no soporta
// ejecuciones paralelas.
// 
// Para el manejo del clipboard se utiliza una herramienta de sfk169.exe de
// las Swiss File Knife, Sfk, que pueden encontrarse en la direccion
// http://stahlworks.com/dev/swiss-file-knife.html. El programa sfk169.exe
// no se invoca directamente, se hace a traves de 2 programas de mandatos
// que permiten fijar un conjunto de caracteres que no de problemas con las
// eñes y enmascarar el uso de los ficheros temporales.
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
// INCLUDE
//////////////////////////////////////////////////////////////////////////////
Text WriteLn("\nSfk.Wrap make: begin");

//////////////////////////////////////////////////////////////////////////////
Set  allInc = Include("tol/inc.tol"); // Funciones comunes
//////////////////////////////////////////////////////////////////////////////
PutDescription("Inclusion de las funciones comunes y de aplicacion.", allInc);
//////////////////////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////////////////////
// CONSTANTS
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
Real linLen = 78;
//////////////////////////////////////////////////////////////////////////////
PutDescription("Longitud de linea que es la que uso para programar.", linLen);
//////////////////////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////////////////////
// MAKE
//////////////////////////////////////////////////////////////////////////////
Text WriteLn("\nSfk.Wrap make: process");

//////////////////////////////////////////////////////////////////////////////
Text cliInp = SfkReadClipboard("error leyendo el clipboard");
//////////////////////////////////////////////////////////////////////////////
PutDescription("Lee clipboard.", cliInp);
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
Text cliWra = TxtParagraphsWrap(cliInp, linLen);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Da formato al texto.", cliWra);
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
Real cliOut = SfkWriteClipboard(cliWra);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Guarda en el clipboard.", cliOut);
//////////////////////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////////////////////
// END
//////////////////////////////////////////////////////////////////////////////
Text WriteLn("\nSfk.Wrap make: end");

2015 asolver.com | Aviso legal | XHTML | Δ Θ Ξ | Creative Commons | Mapa y funciones del sitio

Tol