Tạo sơ đồ trong ASCII


141

Tôi đang tìm kiếm một chương trình mà tôi có thể sử dụng để tạo sơ đồ ASCII như sau:

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

Nó tốt nhất nên là một gói có sẵn trong Debian . Sơ đồ tuyệt vời hiển thị ở trên được lấy từ tài liệu nhân Linux. Tôi không thể tin rằng chúng được tạo ra bằng tay. Phải có một số công cụ để tạo ra chúng.


6
Bạn có thể vẽ loại sơ đồ này từ bên trong vimbằng cách sử dụng plugin DrawIt .
dawud

12
"Tôi không thể tin rằng chúng được tạo ra bằng tay. Phải có một số công cụ để tạo ra chúng." Tôi có thể dễ dàng tin rằng chúng được tạo ra bằng tay, đặc biệt nếu bạn, ví dụ, làm việc từ một bản phác thảo hoặc nguồn khác cho sơ đồ. Điều đó sẽ không mất hơn 5 phút.
goldilocks

2
Tôi hoàn toàn có thể dễ dàng tin rằng chúng được tạo ra bằng tay bởi vì chúng thực sự khá dễ thực hiện nếu bạn sử dụng một chút ý nghĩa thông thường và hình dung nó trong đầu trước. Tất nhiên, phải mất vài phút lâu hơn so với Asciio hoặc một cái gì đó.
Miles Rout

Câu trả lời:


138

asciio

Tôi đã sử dụng asciio trong vài năm. Nhiều sơ đồ trên trang web này tôi đã tạo bằng cách sử dụng asciio.

thí dụ

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

GUI trông như thế này.

           ss của Asciio

LƯU Ý: Mọi thứ được điều khiển từ menu chuột phải cũng như các phím tắt.

DrawIt

Sử dụng vimcùng với plugin DrawIt, bạn cũng có thể tạo các sơ đồ cơ bản. Một tổng quan tốt về cách cài đặt và sử dụng nó có sẵn ở đây trong bài viết này có tiêu đề: Cách tạo bản vẽ ASCII trong Vim Editor (Vẽ hộp, đường kẻ, dấu chấm lửng, mũi tên bên trong tệp văn bản) .

asciiflow

Có một trang web được gọi là asciiflow có lẽ là cách dễ nhất để vẽ các loại sơ đồ này.

   ss # 2

JavE

Một công cụ khác, JavE , được viết bằng Java cũng có thể tạo sơ đồ ascii như thế này.

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

GUI trông như thế này:

   ss # 2

Tài nguyên


1
Bạn có thể thêm diiagrams.com nếu bạn muốn
I3ck 17/12/17

Trình cài đặt Windows cho asciio từ liên kết không còn hoạt động. Trình cài đặt nói rằng nó có lỗi 404 và sau đó hủy bỏ. Tôi chỉ sử dụng asciiflow thay thế.
Joseph238

1
@ Joseph238 - cảm ơn bạn đã phản hồi, vì đây là trang web Unix & Linux Tôi không chắc chắn hầu hết người qua đường sẽ quan tâm đến tất cả những điều đó. Nếu bạn đi qua một liên kết đến nó xin vui lòng cho chúng tôi biết.
slm

2
Có thể thêm một ghi chú về: textik.com .
Isaac

27

Có một cái nhìn về chế độ nghệ sĩ hoặc chế độ hình ảnh cho Emacs (xem thêm bản ghi hình này ). Bạn cũng có thể muốn kiểm tra ditaa .


+1 Re: "ditaa" Vì vậy, ai đó có thể làm những việc này bằng tay để họ có thể được chuyển đổi sang định dạng đồ họa ...
goldilocks

2
Vâng, ditaa là một sự kết hợp tuyệt vời với asciio.
Martijn Heemels

Liên kết screencast đã chết.
jcubic

24

Tôi tìm thấy một câu trả lời khác; Tôi không chắc nó hoàn toàn có thể sử dụng được, nhưng hãy nhớ rằng GNU roff (groff) có bộ xử lý cho ngôn ngữ Pic cũng như bộ xử lý hậu ascii; do đó bạn có thể thử một cái gì đó tương tự (nếu bạn sử dụng Linux, mọi thứ có lẽ đã được cài đặt). Viết một tệp có tên test.roff có chứa:

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

Sau đó nhập: groff -Tascii -p test.roffvà bạn sẽ nhận được:

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

Trân trọng.


Người ta có thể muốn xóa các ký tự điều khiển bằng cách sử dụnggroff -Tlatin1 -P-c -P-b -P-u
mlt

groffđược cài đặt sẵn trên Mac OS X :)
Sridhar Sarnobat

15

Có thể bạn sẽ quan tâm đến đồ thị dễ dàng .

Thí dụ:

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

sản xuất:

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

Bạn có thể cài đặt nó với các lệnh sau:

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

(Lưu ý số phiên bản ở hai dòng trên cùng và dòng cuối cùng - chúng có thể thay đổi)

Một số ảnh chụp màn hình đẹp có sẵn trên các trang của lddotdothost (vì cả hai công cụ này đều là trình bao bọc cho graph-easy).


1
Có vẻ như phiên bản mới nhất hiện được lưu trữ trên Github: github.com/ironcamel/Graph-
Easy

1
Tôi đoán điều này hoạt động rất giống với Graphviz, nhưng Graphviz không có đầu ra ASCII, thật đáng xấu hổ.
Sridhar Sarnobat

graph-easy sử dụng ngôn ngữ DOT, giống như Graphviz
ivarec

-1

Đối với bất kỳ ai sử dụng máy Mac (không phải poster gốc), có một công cụ rất hay tên là Monodraw . Tất nhiên bạn sẽ phải trả một vài đô la vì thực tế là nó rất bóng bẩy và mạnh mẽ và trực quan, nhưng nếu đây là việc bạn thường làm, thì đó là một công cụ tiện dụng có sẵn và 10 đô la là đậu phộng so với thời gian bạn sẽ lưu lại. Nếu bạn không làm điều này thường xuyên, sẽ có bản dùng thử miễn phí, vì vậy bạn đã sẵn sàng. Nó thậm chí có thể xuất sang SVG

Không, tôi không làm việc cho công ty. Tôi chỉ là một người dùng hạnh phúc.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.