En muchos documentos de texto plano, los caracteres de dibujo de cuadro se utilizan para dibujar estos cuadros en figuras y tablas. Tales ejemplos (del RFC 5766 ) se muestran a continuación. ¿Hay una mejor manera de dibujar esto ( por ejemplo, una herramienta de línea de comandos de Unix) , que no sea usar el método de prueba y error?
Ejemplos de RFC 5766 :
+----------------------------+---------------------+
| TURN client to TURN server | TURN server to peer |
+----------------------------+---------------------+
| UDP | UDP |
| TCP | UDP |
| TLS over TCP | UDP |
+----------------------------+---------------------+
Y este, también del RFC 5766 :
Peer A
Server-Reflexive +---------+
Transport Address | |
192.0.2.150:32102 | |
| /| |
TURN | / ^| Peer A |
Client's Server | / || |
Host Transport Transport | // || |
Address Address | // |+---------+
10.1.1.2:49721 192.0.2.15:3478 |+-+ // Peer A
| | ||N| / Host Transport
| +-+ | ||A|/ Address
| | | | v|T| 192.168.100.2:49582
| | | | /+-+
+---------+| | | |+---------+ / +---------+
| || |N| || | // | |
| TURN |v | | v| TURN |/ | |
| Client |----|A|----------| Server |------------------| Peer B |
| | | |^ | |^ ^| |
| | |T|| | || || |
+---------+ | || +---------+| |+---------+
| || | |
| || | |
+-+| | |
| | |
| | |
Client's | Peer B
Server-Reflexive Relayed Transport
Transport Address Transport Address Address
192.0.2.1:7000 192.0.2.15:50000 192.0.2.210:49191
Figure 1
command-line
diagrams
drawing
plaintext
jackxujh
fuente
fuente
Respuestas:
El sitio web gratuito ASCIIflow le permitirá dibujar cuadros de texto, texto, líneas, flechas, líneas de forma libre, borrar, importar, exportar e incluso deshacer / rehacer. ¿Qué más se necesitaría?
Aquí está mi maravillosa creación usando esta herramienta:
fuente
Es posible dibujar tales imágenes usando herramientas que datan de hace 30 años, es decir, una imagen que forma parte del
troff
conjunto de comandos. En estos días, elgroff
paquete de gnu contendrá elpic
comando. El enlace muestra una imagen de una salida PostScript típica, pero usandonroff
o las opciones apropiadas obtendrá una versión de arte ascii. Consulte el manual del usuario (pdf) de 1991 para ver ejemplos.Las tablas en su ejemplo probablemente sean producidas por este mismo conjunto de comandos, usando solo las
tbl
que producen tablas a partir de listas simples.Para una versión gui , puede usar
artist-mode
en emacs para dibujar cuadros y líneas con flechas, etc., usando el mouse o el teclado. Vea la demostración de video de youtube .fuente
pic
similar a la de graphvizdot
?Los cuadros de dibujo u otras formas con caracteres se conocen como arte ASCII (también arte ANSI o ISO). Existen numerosas herramientas para ayudar a crear arte ASCII, como ASCIIFlow en línea , representación de imágenes en ASCII , aplicaciones como figlet, etc. Algunas se han implementado en JavaScript y se pueden ejecutar en un navegador en cualquier sistema operativo.
No hay nada nuevo bajo el sol: la micrografía es un subconjunto de caligrafía con un pedigrí largo, utilizado durante cientos de años, que usa letras para formar imágenes, como el calendario a continuación , con gran parte de la imagen formada a partir de letras.
fuente
¿Cómo puedo dibujar tablas ASCII?
Si solo desea dibujar tablas ASCII (como su primer ejemplo), consulte Generador de tablas de texto sin formato: TablesGenerator.com para obtener una utilidad web que lo ayudará a crear tablas de datos agradables:
fuente
Desde la línea de comando usando terminal-table de GitHub .
Instalar
terminal-table
:Por ejemplo:
Salida de muestra:
Se puede obtener el mismo resultado usando python:
por ejemplo:
fuente
Tengo esto en mi
.vimrc
:Al seleccionar un rectángulo en modo visual de bloques (
<C-v>
) y presionar<leader>[
, se colocan caracteres de dibujo lineal en su borde, fusionándolos con cualquier carácter de dibujo lineal preexistente. Si insiste en ASCII puro+-|
, debería ser fácil de modificar.fuente
Para todos los usuarios de Vim disponibles , hay dos venerables complementos de oldtimer disponibles:
Puede usar ambos complementos en paralelo, pero no tener ambos activos al mismo tiempo.
fuente