github / github/app

Keep Markdown source editable in the composer

Đang mở
#2,310 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Không có dữ liệu ngôn ngữ
Star
2.1k
Fork
153
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

### Feature summary

Use a Discord-style Markdown editor that renders formatting while keeping the Markdown source markers visible and editable.

### What problem are you trying to solve?

The GitHub Copilot app composer now renders Markdown as WYSIWYG, but it hides the source syntax after applying formatting. This affects all of the Markdown forms I tested:

- Inline code hides its backticks.
- Bold, italic, and strikethrough hide their asterisks, underscores, or tildes.
- Headings and blockquotes hide their `#` and `>` markers.
- Ordered, unordered, and task lists hide their list markers, including when used inside blockquotes.
- Fenced multiline code blocks are not rendered as WYSIWYG at all.
- Links show only the label from `[label](URL)`. The parentheses, URL, and all other link syntax are completely hidden.

The rendered result can look correct, and task-list checkboxes remain clickable, but the underlying Markdown is difficult or impossible to inspect, change, or remove. Links are especially problematic because there is no visible indication of the destination URL or an obvious way to edit it.

Nested blockquotes entered as `> >` also do not render at the correct nesting level.

### Proposed solution

Render Markdown formatting while preserving its source markers in the editable text, similar to Discord. Keep backticks, asterisks, underscores, tildes, heading markers, list markers, quote markers, link destinations, and code fences visible and directly editable while still showing the resulting formatting.

Add WYSIWYG rendering for fenced multiline code blocks while keeping their fences visible. Interactive behavior such as clickable task-list checkboxes should remain. Formatting should also be reversible by deleting or changing the visible Markdown rather than requiring users to select text and guess its current state.

Nested blockquotes should render at the correct nesting level.

### Workflow impact

This would make formatting easier to inspect, edit, and undo. It would prevent hidden links and accidental formatting changes, and improve the experience of composing technical messages with code, emphasis, lists, links, headings, and quotes.

### Installation context

GitHub Copilot desktop app composer, current release.

### Additional context

Confirmed affected examples:

````markdown
`code`
**bold**
*italic*
_italic_
~~strikethrough~~
# heading
- unordered item
1. ordered item
- [ ] task item
[link text](https://example.com)
```js
const value = 1;
```
> quote
> > nested quote
> - list inside quote
````

Multiline fenced code blocks currently remain unrendered. Lists inside blockquotes have the same hidden-marker behavior as lists outside blockquotes.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách xác định composer của ứng dụng desktop GitHub Copilot và điểm truy cập chỉnh sửa Markdown của nó. Tái hiện các ví dụ được liệt kê, bao gồm liên kết, các khối mã được phân cách bằng fences, danh sách tác vụ và blockquote lồng nhau, sau đó so sánh kết quả đã render với mã nguồn hiển thị có thể chỉnh sửa. Công việc được hoàn tất khi các dấu đánh dấu trong mã nguồn vẫn có thể chỉnh sửa, đồng thời việc định dạng, tương tác với checkbox và hiển thị các trích dẫn lồng nhau hoạt động như mô tả.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
markdown
Lĩnh vực
desktop
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.