Xem trước Markdown
Riêng tư — file của bạn không bao giờ bị lưu trữ
383 ký tự · 20 dòng
Cách hoạt động
Viết hoặc dán
Hoặc thả file .md vào. Bản xem trước cập nhật khi bạn gõ.
Xem đúng như khi hiển thị
Bảng, danh sách việc cần làm, gạch ngang chữ, chú thích cuối trang và khối mã có màu — kiểu GitHub, không phải CommonMark thuần.
Mang đi dùng
Sao chép HTML, hoặc lưu thành một trang web độc lập mở được ở mọi nơi và in đúng chuẩn.
Markdown nào, và vì sao HTML được làm sạch
Markdown là một họ ngôn ngữ chứ không phải một đặc tả duy nhất, và biến thể được dùng ở đây là bộ Markdown kiểu GitHub được thống nhất rộng rãi: tiêu đề, nhấn mạnh, danh sách, liên kết, hình ảnh, trích dẫn, bảng, khối mã có tô màu cú pháp, danh sách việc cần làm, gạch ngang chữ, chú thích cuối trang và liên kết tự động. Đó là thứ gần như ai cũng viết và là những gì một README sẽ chứa. Các biến thể lạ hơn và plugin tùy chỉnh mà một trang cụ thể thêm vào — khối admonition, shortcode, templating — thì không, nên một tài liệu viết cho một trình tạo trang cụ thể có thể hiển thị nguyên văn một phần cú pháp của nó.
HTML thô được hiển thị nhưng đã được làm sạch trước, và đây là phần đáng hiểu rõ. Markdown cố ý cho phép HTML bên trong, nghĩa là một file Markdown từ bất cứ đâu cũng có thể chứa thẻ script, trình xử lý sự kiện nội tuyến, iframe hoặc liên kết javascript:. Hiển thị nguyên trạng sẽ chạy mã của người lạ trong phiên của bạn chỉ vì bạn dán README của họ vào để xem. Mọi thứ có thể thực thi đều bị loại bỏ trước khi hiển thị, nên định dạng được giữ lại còn mã thì không.
Đó là một bài học chung chứ không phải chi tiết riêng của trang này. Bất kỳ hệ thống nào hiển thị Markdown do người dùng cung cấp — ô bình luận, wiki, phiếu hỗ trợ — đều đang hiển thị HTML do người dùng cung cấp nếu không làm sạch, và câu “chỉ là Markdown thôi mà” chính là cách điều đó bị bỏ qua. Chuyển đổi Markdown không phải là ranh giới bảo mật; bước làm sạch mới là.
Thứ bạn nhận được là bản xem trước nội dung, không phải của một trang cụ thể nào. GitHub, GitLab và mỗi trình tạo tài liệu đều áp dụng stylesheet, anchor tiêu đề và phần mở rộng riêng, nên cùng một file trông khác nhau ở mỗi nơi — cấu trúc hiển thị ở đây là phần tất cả đều thống nhất. Không tải gì về, nên ảnh được tham chiếu bằng địa chỉ web chỉ tải được nếu máy chủ đó cho phép, còn đường dẫn tương đối đến file trong repository thì hoàn toàn không phân giải được.
Khi bạn cần công cụ khác
Với một README bạn đang thực sự viết, hãy xem trước ở nơi nó sẽ nằm. Trình soạn thảo của chính GitHub xem trước với đúng cách hiển thị, phần mở rộng và anchor của nó, và GitHub CLI — gh markdown-preview — làm điều đó ngay trên máy bạn với cùng trình hiển thị. Với tài liệu, chính trình tạo trang (MkDocs, Docusaurus, Hugo) có bản xem trước tự tải lại, hiển thị đúng style và điều hướng thật, tức là những gì người đọc sẽ thấy.
Để chỉnh sửa thay vì kiểm tra, một trình soạn thảo Markdown có khung xem trực tiếp — Obsidian, Typora, VS Code với tính năng xem trước tích hợp — tốt hơn việc lần nào cũng dán vào một trang, vì bản xem trước cập nhật khi bạn gõ và file vẫn nằm nguyên chỗ cũ. Trang này dành cho việc đọc Markdown của người khác, hoặc xem nhanh thứ gì đó bạn được gửi.
Câu hỏi thường gặp
Tài liệu của tôi có bị lưu ở đâu không?
Không. Không lưu trữ gì cả, không giữ lại gì cả, và công cụ vẫn hoạt động khi đã tắt Wi-Fi sau khi trang tải xong. Ghi chú, bản nháp và tài liệu nội bộ đúng là loại nội dung người ta dán vào trình xem trước mà không suy nghĩ.
Đây là biến thể Markdown nào?
Kiểu GitHub, vì đó là ý nghĩa thực tế của “Markdown” hiện nay. Bảng, danh sách việc cần làm, gạch ngang chữ, liên kết tự động, chú thích cuối trang và khối mã có tô màu cú pháp đều hoạt động. Các trình xem trước CommonMark thuần không có những thứ đó, vì vậy một README trông đúng trên GitHub lại trông lỗi trong chúng.
Tôi có thể dùng HTML thô không?
Có, và nó được làm sạch trước khi hiển thị. Markdown cho phép HTML thô, và bản xem trước này hiển thị nó — nhưng mọi thứ có thể chạy script đều bị loại bỏ trước, vì dán README của người khác vào không bao giờ được phép thực thi mã của họ. Định dạng, liên kết và hình ảnh đều được giữ lại.
Khối mã có được tô màu không?
Có, kèm nhận diện ngôn ngữ, cho các ngôn ngữ bạn thường gặp trong một README — cùng bộ tô màu mà các trình hiển thị kiểu GitHub sử dụng. Ghi tên ngôn ngữ sau dấu mở khối mã và nó sẽ được tô màu tương ứng.
Tôi có thể chuyển nó thành PDF không?
Công cụ [Chuyển Markdown sang PDF](markdown-to-pdf) của chúng tôi làm đúng việc đó, với ngắt trang và kiểu chữ chuẩn chỉnh. Trang này dùng để đọc và kiểm tra; công cụ kia dùng để tạo ra tài liệu.
Còn ảnh trong Markdown của tôi thì sao?
Ảnh được tham chiếu bằng địa chỉ web tải bình thường. Ảnh được tham chiếu bằng đường dẫn tương đối — "" — thì không đọc được, vì trang web không có quyền truy cập thư mục chứa file của bạn. Những ảnh đó hiển thị dưới dạng ô giữ chỗ ghi tên file bị thiếu, thay vì biểu tượng ảnh lỗi.
Nên biết: HTML thô trong Markdown được hiển thị nhưng đã được làm sạch trước — script, trình xử lý sự kiện và mọi thứ có thể chạy đều bị loại bỏ, nên dán README của người khác vào không thể thực thi mã của họ. Hỗ trợ Markdown kiểu GitHub; các biến thể lạ hơn và plugin tùy chỉnh thì không.
Đặt công cụ này lên website của bạn
Miễn phí cho mọi blog, trang lớp học hay bài viết hướng dẫn. Chỉ cần dán một đoạn mã là khách truy cập có thể dùng ngay trên trang của bạn.
Công cụ liên quan
Chuyển Markdown sang PDF
Markdown thành PDF trình bày đẹp mắt
Xem file CSV
Đọc CSV mà không bị Excel làm thay đổi
Xem file XML
Đọc XML dạng cây thu gọn được
Đếm số từ
Số từ, số câu và thời gian đọc
Đếm ký tự
Số ký tự, số byte và giới hạn thực sự đếm gì
So sánh văn bản
Thấy chính xác chỗ thay đổi giữa hai phiên bản