- Phiên bản D2 0.7.1 bổ sung khả năng render sơ đồ văn bản sang ASCII
- Có thể dùng sơ đồ ASCII đơn giản trong chú thích mã để giải thích luồng của hàm hoặc lớp
- Mặc định sử dụng ký tự Unicode, nhưng có thể chọn dùng ASCII tiêu chuẩn bằng cờ tùy chọn
- Tính năng này hiện ở giai đoạn alpha, chưa hỗ trợ một số kiểu dáng, ký tự đặc biệt và một số hình dạng nhất định
- Có thể trải nghiệm trực tiếp render ASCII trong D2 Playground và tiện ích mở rộng Vim
Giới thiệu render ASCII trong D2
Từ bản phát hành mới nhất của D2 (phiên bản 0.7.1), tính năng xuất sơ đồ dạng ASCII cho sơ đồ văn bản đã được bổ sung.
Các tệp đầu ra có phần mở rộng .txt sẽ tự động được render bằng bộ render ASCII.
Có thể xem ví dụ trong tiện ích mở rộng D2 cho Vim; khi mở tệp .d2 và lưu qua cửa sổ preview, bạn có thể theo dõi trạng thái đầu ra sơ đồ ASCII theo thời gian thực.
Ứng dụng trong tài liệu hóa mã
Sơ đồ ASCII đặc biệt hữu ích khi được chèn vào chú thích mã nguồn
- Nếu thêm một sơ đồ đơn giản bên cạnh một hàm hoặc lớp nhỏ, nó có thể giúp hiểu mã trực quan hơn so với chỉ mô tả luồng bằng văn bản
- Trong tiện ích mở rộng Vim, có thể viết mã D2 rồi chuyển ngay vùng được chọn thành sơ đồ ASCII
Lựa chọn giữa Unicode và ASCII tiêu chuẩn
Chế độ render ASCII mặc định sử dụng ký tự vẽ khung Unicode để cho đầu ra đẹp mắt hơn
- Nếu muốn tính di động tối đa, có thể render bằng ký tự ASCII thông thường thông qua cờ tùy chọn
--ascii-mode=standard
Các giới hạn hiện tại
Tính năng render ASCII này hiện đang ở giai đoạn alpha
- Có thể còn nhiều trường hợp biên, điểm cần cải thiện và lỗi
- Nhóm phát triển khuyến khích gửi báo lỗi hoặc phản hồi trên website
Các hạn chế chính
- Chưa hỗ trợ kiểu dáng
- Animation, phông chữ và các yếu tố tương tự không có nhiều ý nghĩa trong ASCII
- Trong tương lai có kế hoạch xem xét hỗ trợ một số kiểu dáng giới hạn như màu terminal
- Theme cũng chưa được hỗ trợ
double-border,multiplevà các kiểu tương tự nằm trong danh sách dự kiến cải thiện sau này
- Khoảng cách không đồng đều
- Trong quá trình chuyển sang ASCII, cách sắp xếp các hộp có thể kém đều hơn so với SVG
- Đối tượng không thể render
- Chưa triển khai hỗ trợ văn bản đặc biệt như Markdown, Latex, mã nguồn
- Không thể render hình ảnh, biểu tượng, lớp UML, bảng SQL...
- Với các mục này, việc loại bỏ hoặc hiển thị placeholder sẽ được quyết định sau
- Một số hình dạng chưa được hỗ trợ
- Các hình cong như đám mây, hình tròn khó thể hiện tốt bằng ASCII
- Các hình này sẽ được thay bằng hình chữ nhật và thêm một biểu tượng nhỏ ở góc trên bên trái để phân biệt loại
Tự trải nghiệm
Tính năng này có thể dùng ngay trong D2 Playground
- Có thể mở khối mã được cung cấp để trực tiếp trải nghiệm render ASCII
Chưa có bình luận nào.