[📝] Mi lista de "normas" para trabajar con texto plano geniales

Presentación

Esta es una descripción de la serie de "normas" que sigo a la hora de escribir archivos de texto plano geniales a los que llamo CTF. En algún momento futuro habrá un sript bash (finalizado) que permita automatizar la creación de este tipo de archivos.

Descripción del documento

 ____                      _            _             
|  _ \  ___  ___  ___ _ __(_)_ __   ___(_) ___  _ __  
| | | |/ _ \/ __|/ __| '__| | '_ \ / __| |/ _ \| '_ \ 
| |_| |  __/\__ \ (__| |  | | |_) | (__| | (_) | | | |
|____/ \___||___/\___|_|  |_| .__/ \___|_|\___/|_| |_|
                            |_|                       

v 1.0 - 25/02/2024

ÍNDICE
== Descripción de las reglas para hacer Cool Text files
  -- Especificaciones del documento
    .. Citando Rutas o archivos
    .. Ancho variable
    .. Resaltando texto
  -- Títulos e índices
  -- Listas
    .. Separadores
  -- Citas y Bloques
  -- Tablas
  -- Pie de documento
== Estructura del documento
== Licencia
== Final
  -- Contacto
  
    
# Descripción de las reglas para hacer Cool Text files
======================================================


## Especificaciones del documento
---------------------------------

Los documentos serán escritos pensando en fuentes mono espaciadas y con 
un máximo de líneas de 80 caracteres (El mínimo habitual en cualquier 
terminal actual). NOTA: Este ajuste ha de hacerse y no dejar un párrafo 
en "una única línea" salvo en archivos que se vayan a distribuir vía 
teléfono, etc. debido a que mostrar el readme en un navegador web por 
ejemplo lo haría verse demasiado ancho.

-> Se dejará un "salto de carro" entre el Título y el contenido.
-> Se dejarán dos "saltos de carro" entre el contenido y el siguiente 
título.


### Ancho variable
..................

Las listas ordenadas, tablas, bloques, citas, separadores etc. tendrán 
un ancho variable, al igual que el subrayado de los títulos. Con el fin 
de no escribir más de lo necesario, esto es una recomendación.


### Citando Rutas o archivos
............................

Para hacer mención a cualquier archivo o ruta siempre habrán de 
colocarse comillas "". Por ejemplo: "www.haiku-os.org"


### Resaltando texto
....................

El texto que queramos resaltar irá con el siguiente formato:

 
 *-> Texto resaltado 1 <-*
  -> Texto resaltado 2 <-


## Títulos e índices
--------------------

Disponer de un índice es importante si el documento es grande.

Respecto a los títulos se ha decidido usar la siguiente fórmula:

Marcar con almohadillas (#) como en el markdown y añadir un subrayado, 
cada vez menos evidentes según se suben niveles. "=" para el TÍTULO 
1, "-" para el TÍTULO 2 y "." para el TÍTULO 3. Observa el siguiete 
ejemplo:

 EJEMPLO -----------------------------------------------------
|                                                             |
| # Título 1                                                  | 
| ==========                                                  |
| ## Título 2                                                 |
| -----------                                                 |
| ### Título 3                                                |
| ............                                                |
|                                                             |
 -------------------------------------------------------------
 
 De esta forma tenemos 2 estímulos visuales a la hora de saber qué 
 estamos leyendo. Si necesitamos montar un índice para indicar al 
 lector el orden del texto podremos hacerlo de la siguiente forma:

 EJEMPLO -----------------------------------------------------
|                                                             |
| Índice                                                      | 
| == TÍTULO 1                                                 |
|   -- TÍTULO 2                                               |
|     .. TÍTULO 3                                             |
|                                                             |
 -------------------------------------------------------------

Como podemos ver en el INDICE se aplica la siguiente fórmula: 

== Título 1, con el indicador de subrayado de título 1.
-- Título 2, dejando dos espacio entre el inicio del documento y el 
título .
.. Título 3, dejando cuatro espacios entre el inicio del documento y el 
título.

## Listas
---------
 
 Es muy fácil crear listas siguiendo estas normas, empezaremos con las 
 listas desordenadas y las 3 formas básicas de inserción:

 EJEMPLO -----------------------------------------------------
|                                                             |
| - Item de lista desordenada                                 |
| - Item de lista desordenada                                 |
|                                                             |
| -> Item de lista desordenada tipo flecha                    |
| -> Item de lista desordenada tipo flecha                    |
|                                                             |
| 1 Lista numeral desordenada                                 |
| 2 Lista numeral desordenada                                 |
|                                                             |
 -------------------------------------------------------------

Ahora pasaremos a las listas ordenadas:

 EJEMPLO -----------------------------------------------------
|                                                             |
| _________________________                                   |
| Título de lista ordenada:                                   |
| _________________________                                   |
| -  | Item Lista ordenada                                    |
| -  | Item Lista ordenada                                    |
| -> | Item Lista ordenada                                    |
| -> | Item Lista ordenada                                    |
| 1  | Item Lista numeral ordenada                            |
| 2  | Item Lista numeral ordenada                            |
| ___|_____________________                                   |
|                                                             |
 -------------------------------------------------------------


### Separadores
...............

Los separadores son útiles para organizar información, algo como datos 
e contacto del autor de un programa, glosarios de términos o lista de 
webs, todo esto siguiendo el formato de lista.

Ejemplo de glosario:

 EJEMPLO -----------------------------------------------------
|                                                             |
| _________________________                                   |
| Título del glosario:                                        |
| _________________________                                   |
| Termino    | Significado del término                        |
| Termino 2  | Significado del término                        |
| Termino 3  | Significado del término                        |
| Termino 4  | Significado del término                        |
| Termino 5  | Significado del término                        |
| ___________|_____________                                   |
|                                                             |
 -------------------------------------------------------------

Enlaces: Los enlaces que tengan que ver con nuestra vida digital que 
estén listados siempre irán con => como en el protocolo Gemini pero al 
revés: "=> Título | enlace".

NOTA: Ambas columnas deben tener el mismo ancho en el decorador "-", es 
decir que cuando terminemos de redactarla, tomaremos como guía la parte 
izquierda de la columna para dibujar la parte derecha. En el siguiente 
ejemplo verás diferentes enlaces, el decorador de esta lista tiene 19 
caracteres a la izquierda y a la derecha del separador para mantener la 
consistencia. No es recomendable "cerrar a modo de tabla" la lista 
personalizada.

 EJEMPLO -----------------------------------------------------
|                                                             |
| _________________________                                   |
| Lista de enlaces:                                           |
| _____________________________________                       |
| => Haiku-OS       | https://haiku-os.org                    |
| => Blog Personal  | http://tanausugg.blogspot.com           |
| => Repòsitorio    | https://codeberg.org/_-Caleb-_          |
| => Capsula Gemini | gemini://gemlog.blue/users/Caleb/       |
| => Enviar Correo  | mailto:correo-arroba-dominio.com        |
| => Gopherpedia    | gopher://gopherpedia.com/70/            |
| __________________|__________________                       |
|                                                             |
 -------------------------------------------------------------


## Citas y bloques
------------------

Hay varias formas de llamar la atención sobre algo concreto o de 
mostrar una información determinada al lector.

En este caso se han elegido dos formas, el primero el cuadro de 
información importante o cita:

 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- "El hombre que mueve montañas empieza apartando piedras pequeñas."-
-  Confucio.                                                        -
 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
Luego los bloques, como los que hemos visto durante todo el documento 
con ejemplos, si bien la cita no irá con título en el cuadro, los 
bloques sí, en el caso de este documento han sido todo EJEMPLOS pero 
bien podrían haber sido COMANDOS, BASH SCRIPT, CODIGO FUENTE y 
cualquier otro dato de interés y ayuda al usuario, es decir, este tipo 
de bloques son para que el lector haga "copiar/pegar" mientras que el de 
*-> Información importante o cita <-* es sólo para mostrar 
información importante o relevante.


## Tablas
---------

Si bien no es una tabla real, es una forma de mostrar información 
bastante útil.

 ___________________________________________________________
|                   TITULO DE LA TABLA                      |
|___________________________________________________________|
|Título del campo | Título del campo 2 | Título del campo 3 |
|_________________|____________________|____________________|
| Contenido 1     | Contenido 2        |Contenido 3         |
|_________________|____________________|____________________|


## Pie de documento
-------------------

Es una forma de mostrar al lector más información útil en el lugar 
último del documento, de fácil acceso tanto en PC como en papel.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                       FOOTER TEXT - CENTERED                     
                      Useful links  - CENTERED        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


# Estructura del documento
==========================

Ahora que ya sabemos más o menos cuales son nuestras -> "herramientas" 
<- vamos a hablar de cómo estructurar el documento. Si bien esto es 
sólo una recomendación.

- ASCIIART
- TÍTULO
- VERSIÓN DEL DOCUMENTO - FECHA
- ÍNDICE
- CONTENIDO
  - Instrucciones de compilación/instalación
  - Instrucciones de la cosa o programa
- DATOS DE CONTACTO
- LICENCIA
- FOOTER

Para la creación de las herramientas no usaremos tabulaciones ya que no 
se muestran correctamente ni igual en todos los editores/lugares, 
siplemente usaremos la barra espaciadora como si no hubiera un mañana.


# Licencia
==========

Este documento y sus especificaciones forman parte del Dominio Público,
Al no ser una pieza de software si no una serie de "sugerencias" e "ideas",
es muy difícil aplicarle una licencia de Software.

Así que he decidido licenciarlo como Dominio Público sin ningún punto 
especial.


# Final
=======

Creo que estas herramientas básicas y esta guía pueda servir de ayuda 
a aquellos que, como yo, se han agotado de las webs que tienen 400 kb de 
texto y ocupan docenas de megas entre rastreadores y scripts, es útil 
para hacer READMES, es útil para escribir blogs en texto plano, incluso 
para el protocolo Gopher y Gemini (Modificando un poco las listas de 
enlaces quitando el =>)

MarkDown está genial, pero trabajar con un markdown e imprimirlo sin 
procesar es bastante incoherente y lioso.

Es por esto que espero que les guste esta tonta idea de fin de semana.

Un saludo.


## Contacto
-----------
_____________________________________
Lista de enlaces de contacto
_____________________________________
=> Blog Personal  | https://caleb.smol.pub
=> Gophlog	  | gopher://smol.pub/1/caleb
=> Repòsitorio    | https://codeberg.org/_-Caleb-_
=> Capsula Gemini | gemini://caleb.smol.pub
=> Enviar Correo  | mailto:tgomez-arroba-duck.com
__________________|__________________

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                           ESPECIFICACIONES                     
                               _-Caleb-_        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

--

⬅️ Volver a la lista de entradas