github / github/copilot-cli

Markdown blockquotes wrap mid-sentence and orphan words onto their own line

オープン
#3,193 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
area:terminal-rendering
主要言語
Shell
スター
11.2k
フォーク
1.9k
平均マージ
14時間 16分
マージ済み PR(30日)
6

説明

## Description

When the agent's response contains a markdown blockquote (`> ...`) that runs longer than the terminal width, the renderer wraps the line in a way that puts the last word or two of a sentence onto its own line, with the rest of the paragraph continuing on a subsequent line. This makes the output look broken and is hard to copy-paste cleanly into another app (Slack, email, GitHub comment).

It happens consistently with blockquoted paragraphs of more than ~1.5 terminal lines. I've hit it in many sessions over several months across different repos and tasks. Asking the agent to "stop using blockquotes" works as a session-local workaround, but the underlying renderer behaviour is the bug.

## Steps to reproduce

1. In a terminal of any width (seen at 120 and 180 chars).
2. Ask the agent to draft a message, comment, or email so it produces a markdown blockquote with at least two sentences:

```
> Thanks Dave. Dropped an issue on the repo with the detail.
>
> Short version: we're early days on this, still designing and building, no real traffic yet. The one thing we know for certain is that both our inbound and outbound HTTP will be with external vendors, so getting a clean way to tag spans and metrics with the caller (inbound) and the target (outbound) from day one is what we're after, rather than retrofitting it later. Happy to jump on the chat you set up whenever suits.
```

## Expected behaviour

Blockquote wraps cleanly at word boundaries near the right margin, like a normal paragraph would.

## Actual behaviour

Words near the end of a logical line get pushed onto their own line, leaving large blank gaps. Example from a real session:

```
Short version: we're early days on this, still designing and building, no real traffic yet. The one thing we know for certain is that both our inbound and outbound HTTP will be with external vendors, so
getting
a clean way to tag spans and metrics with the caller (inbound) and the target (outbound) from day one is what we're after, rather than retrofitting it later. Happy to jump on the chat you set up whenever
suits.
```

Note `getting` and `suits` end up alone on a line with leading whitespace.

## Environment

- CLI version: `1.0.34`
- OS: macOS (Darwin)
- Terminal: Ghostty
- Frequency: every session that uses blockquotes for prose

## Additional context

- Numbered lists and bullet lists render fine for me at the same widths.
- Plain paragraphs (no `> `) render fine.
- Code fences render fine.
- The issue is specific to blockquoted prose.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Start by reproducing the issue in the CLI with the supplied blockquoted prose at terminal widths of 120 and 180, then trace the markdown blockquote rendering and wrapping path. Compare it with plain paragraphs, numbered lists, bullet lists, and code fences, which reportedly render correctly. Done means blockquoted prose wraps at word boundaries without orphaned words or large gaps, while preserving the existing correct behavior for other content.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
shell
領域
cli
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
55/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。