Illegal control characters in XML output
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 25/100
Hướng nghiên cứu
Báo cáo không nêu tệp nguồn, bài kiểm thử hay điểm vào nào. Trước tiên, hãy tái hiện đầu vào chứa ký tự điều khiển được hiển thị thông qua trình kết xuất XML, sau đó tìm trình kết xuất và các bài kiểm thử đầu ra của nó; xác định cách xử lý dự kiến và kiểm tra rằng XML thu được được libxml2 chấp nhận.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Hi, I maintain the R bindings for cmark. One popular use case is converting commonmark to xml for processing the AST.
We are running into a problem when input markdown contains control characters (often captured from a tty), which makes xml output invalid. For example if the markdown text contains \033 and we convert that to xml, we get:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE document SYSTEM "CommonMark.dtd">
<document xmlns="http://commonmark.org/xml/1.0">
<paragraph>
<text xml:space="preserve"></text>
</paragraph>
</document>
However, trying to parse this with libxml2 fails:
Error in read_xml.raw(charToRaw(enc2utf8(x)), "UTF-8", ..., as_html = as_html, :
PCDATA invalid Char value 27 [9]
A real world example is this readme file. This was done with the gfm fork, but I think the problem appears the same.
Is this a bug in cmark, or is markdown text not supposed to contain c0 characters in the first place?
cc @nwellnhof
- Ngôn ngữ chính
- C
- Star
- 2k
- Fork
- 698
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của commonmark/cmark
-
Incorrect `parser->offset` advancement for closing fenced code blocks in `parse_code_block_prefix`Có thể đã có người làm @cpruijsen đã nhận 24 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
commonmark/cmark#590 · 3 bình luận ·
-
API documentation is missing an explanation of CMARK_NODE_CUSTOM_BLOCK and CMARK_NODE_CUSTOM_INLINEĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
commonmark/cmark#441 · 2 bình luận ·
-
Inline code languageĐang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
commonmark/cmark#626 · 4 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
commonmark/cmark#624 ·
-
Single-space blank line evicts a list-item continuationCó thể đã có người làm @afonsojanu đã nhận 34 ngày trước. Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 65/100
commonmark/cmark#618 ·
Tất cả issue của commonmark/cmark
Issue tương tự
-
rc_runtime_activate_richpresence leaves a half-initialised entry when the buffer allocation failsĐang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
RetroAchievements/rcheevos#558 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
libsdl-org/SDL#16464 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
chore(gateway): emit INFO budget reserved/settled logs for proactivity v2 (chip task_2855f4ec)Có thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mởbackend
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
BasedHardware/omi#20940 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày