Diagramme in ASCII erstellen

141

Ich suche ein Programm, mit dem ich ASCII-Diagramme erstellen kann:

    +---------+
    |         |                        +--------------+
    |   NFS   |--+                     |              |
    |         |  |                 +-->|   CacheFS    |
    +---------+  |   +----------+  |   |  /dev/hda5   |
                 |   |          |  |   +--------------+
    +---------+  +-->|          |  |
    |         |      |          |--+
    |   AFS   |----->| FS-Cache |
    |         |      |          |--+
    +---------+  +-->|          |  |
                 |   |          |  |   +--------------+
    +---------+  |   +----------+  |   |              |
    |         |  |                 +-->|  CacheFiles  |
    |  ISOFS  |--+                     |  /var/cache  |
    |         |                        +--------------+
    +---------+

Es sollte vorzugsweise ein Paket sein, das in Debian verfügbar ist . Das oben gezeigte wundervolle Diagramm stammt aus der Dokumentation des Linux-Kernels. Ich kann nicht glauben, dass sie von Hand geschaffen wurden. Es muss ein Werkzeug geben, um sie zu erstellen.

Martin Vegter
quelle
6
Sie können diese Art von Diagrammen vimmit dem DrawIt- Plugin von innen zeichnen .
Dawud
12
"Ich kann nicht glauben, dass sie von Hand erstellt wurden. Es muss ein Werkzeug geben, um sie zu erstellen." Ich kann leicht glauben, dass sie von Hand erstellt wurden, besonders wenn Sie z. B. nach einer Skizze oder einer anderen Quelle für das Diagramm gearbeitet haben. Das würde nicht länger als 5 Minuten dauern.
Goldlöckchen
2
Ich kann ziemlich leicht glauben, dass sie von Hand erstellt wurden, weil sie eigentlich ziemlich einfach zu machen sind, wenn Sie ein bisschen gesunden Menschenverstand verwenden und es in Ihrem Kopf zuerst visualisieren. Natürlich dauert es ein paar Minuten länger als bei Asciio oder so.
Miles Rout

Antworten:

138

asciio

Ich habe Asciio für mehrere Jahre verwendet. Viele der Diagramme auf dieser Site habe ich mit erstellt asciio.

Beispiel

  vncviewer         .-,(  ),-.    
   __  _         .-(          )-.           gateway           vncserver 
  [__]|=|  ---->(    internet    )-------> __________ ------> ____   __ 
  /::/|_|        '-(          ).-'        [_...__...°]       |    | |==|
                     '-.( ).-'                               |____| |  |
                                                             /::::/ |__|

Die GUI sieht so aus.

           ss von asciio

ANMERKUNG: Alles wird über das Kontextmenü sowie über Tastenkombinationen gesteuert.

Zeichne es

Mit vimdem DrawIt-Plugin können Sie auch grundlegende Diagramme erstellen. Eine gute Übersicht über die Installation und Verwendung finden Sie hier in diesem Artikel mit dem Titel: Erstellen von ASCII-Zeichnungen im Vim-Editor (Zeichnen von Feldern, Linien, Ellipsen, Pfeilen in Textdateien) .

asciiflow

Es gibt eine Website namens asciiflow, die wahrscheinlich der einfachste Weg ist, solche Diagramme zu zeichnen.

   ss # 2

JavE

Ein weiteres in Java geschriebenes Tool, JavE , das auch solche ASCII-Diagramme erstellen kann.

                                 ,'''''''''''''|
                                 | Controller  |
                                 |             |
                                 '`'i''''''''''
                                  ,'        `.
                                ,'            `.
                               -                -
                     ,'''''''''''''|      ,''''''''''''`.
                     |    Model    |______|    View     |
                     |             |      |             |
                      `''''''''''''       '`'''''''''''''

Die GUI sieht folgendermaßen aus:

   ss # 2

Ressourcen

slm
quelle
1
Sie könnten diiagrams.com hinzufügen, wenn Sie möchten
I3ck
Das Windows-Installationsprogramm für ASCIO über den Link funktioniert nicht mehr. Das Installationsprogramm meldet einen 404-Fehler und bricht den Vorgang ab. Ich habe stattdessen einfach Asciiflow verwendet.
Joseph238
1
@ Joseph238 - danke für das Feedback, da es sich um eine Unix- und Linux-Website handelt, bin ich mir nicht sicher, ob es die meisten Passanten so sehr interessieren werden. Wenn Sie auf einen Link stoßen, teilen Sie uns dies bitte mit.
SLM
2
Vielleicht einen Hinweis hinzufügen zu: textik.com .
Isaac
27

Schauen Sie sich den Künstlermodus oder den Bildmodus für Emacs an (siehe auch diesen Screencast ). Vielleicht möchten Sie auch ditaa überprüfen .

tkrennwa
quelle
+1 Re: "ditaa" Also könnte jemand diese von Hand machen, damit sie in ein grafisches Format konvertiert werden können ...
Goldlöckchen
2
Ja, Ditaa ist eine großartige Kombination mit Asciio.
Martijn Heemels
Der Screencast-Link ist nicht mehr verfügbar.
jcubic
24

Ich fand eine andere Antwort; Ich bin nicht sicher, ob es voll verwendbar ist, aber denke daran, dass GNU roff (groff) einen Prozessor für die Pic-Sprache sowie einen ASCII-Postprozessor hat. vielleicht probierst du so etwas aus (wenn du Linux verwendest, sollte wahrscheinlich schon alles installiert sein). Schreiben Sie eine Datei mit dem Namen test.roff, die Folgendes enthält:

.PS
box "box1";
line
box "box2";
.PE

Dann tippe:, groff -Tascii -p test.roffund du solltest bekommen:

+------+     +------+
|      +-----|      |
| box1 |     |box2  |
+------+     +------+

Grüße.

Thomas Baruchel
quelle
Möglicherweise möchten Sie Steuerzeichen entfernen, indem Siegroff -Tlatin1 -P-c -P-b -P-u
mlt am
groffist unter Mac OS X vorinstalliert :)
Sridhar Sarnobat
15

Vielleicht interessiert dich graph-easy .

Beispiel:

   echo "[ Bonn ] -- car --> [ Berlin ], [ Ulm ]" | graph-easy

produziert:

    +--------+  car   +-----+
    |  Bonn  | -----> | Ulm |
    +--------+        +-----+
      |
      | car
      v
    +--------+
    | Berlin |
    +--------+

Sie können es mit den folgenden Befehlen installieren:

wget http://search.cpan.org/CPAN/authors/id/T/TE/TELS/graph/Graph-Easy-0.64.tar.gz
tar -xzf Graph-Easy-0.64.tar.gz
cd Graph-Easy-0.64
perl Makefile.PL
make test
sudo make install
PATH=$PATH:/opt/local/libexec/perl5.12/sitebin/graph-easy

(Notieren Sie sich die Versionsnummern in den beiden obersten und letzten Zeilen - sie können sich ändern.)

Einige schöne Screenshots sind auf den Seiten von lddot und dothost verfügbar (da beide Tools Wrapper für sind graph-easy).

Thomas Baruchel
quelle
1
Es sieht so aus, als ob die neueste Version jetzt auf Github gehostet wird: github.com/ironcamel/Graph-Easy
Sridhar Sarnobat
1
Ich denke, dies funktioniert ähnlich wie Graphviz, aber Graphviz hat keine ASCII-Ausgabe, was eine Schande ist.
Sridhar Sarnobat
graph-easy verwendet die gleiche DOT-Sprache wie Graphviz
ivarec
-1

Für alle, die einen Mac verwenden (nicht das Originalposter), gibt es ein sehr schönes Tool namens Monodraw . Natürlich zahlen Sie ein paar Dollar für die Tatsache, dass es hochglanzpoliert und leistungsstark und intuitiv ist, aber wenn Sie dies häufig tun, ist es ein praktisches Werkzeug, das Sie zur Verfügung haben, und 10 US-Dollar sind Erdnüsse im Vergleich zu der Zeit, die Sie benötigen sparen. Wenn Sie dies nicht oft tun, steht Ihnen eine kostenlose Testversion zur Verfügung. Es kann sogar nach SVG exportieren

Nein, ich arbeite nicht für die Firma. Ich bin nur ein glücklicher Benutzer.

Bilderstürmer
quelle