Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Bug]: 聊天区超长行内代码横向溢出被裁切——既无折行也无横向滚动

クローズ
#3,121 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

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

調査の方向性

Start at the markdown component registration and rendering paths for the codePre and codeContent parts, then reproduce the long inline-code case in the desktop chat message view. Compare it with the existing fenced-code scrolling behavior; done means long inline code remains fully viewable by wrapping or horizontal scrolling without regressing fenced code blocks.

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

説明

EN TL;DR — A long inline code span overflows the chat message container and gets clipped: there is no wrapping and no horizontal scrollbar, so the overflowing content is simply lost. Fenced code blocks in the same container scroll correctly, so this is specific to inline code.

环境

  • OpenBitFun 1.0.1 桌面版
  • Windows 10 22H2(19045)/ WebView2
  • 消息区宽度:默认(未调窄)

复现步骤

  1. 让模型输出一条包含超长行内代码的消息(例如一整条长路径、长命令或长标识符串,约 80 字符以上)
  2. 观察该行内代码的渲染结果

实际结果

行内代码横向溢出消息容器边界,超出部分被裁切——既看不到,也无法横向滚动查看。表现为:那一行文字在容器的右边缘处被硬切断,右侧没有出现任何滚动条,超出部分无法通过任何方式查看。

对照:同一容器中的围栏代码块表现正常(可以横向滚动),问题只出现在行内代码上。

预期行为

行内代码应在容器内折行,或至少提供横向滚动,不应静默丢失内容。

补充信息(供定位参考)

以下是从当前版本可查证的信息:

  • markdown 组件注册的 parts 共有 14 个,其中代码相关的是 codeBlock / codeToolbar / codeBody / codePre / codeContent,没有行内代码对应的 part;
  • 从渲染实现看,codePre 对应 <pre> 元素、codeContent 对应 <code> 元素;行内代码同样是 <code> 元素,其是否归属于 codeContent part 无法从 registry 或前端产物中确认;
  • 当前未给行内代码提供 overflow 兜底(既没有折行,也没有横向滚动),因此溢出内容既不可见也不可滚。

参考:外观包契约中 markdown 组件的 codeContent / codePre 属于 paint 属性档,该档允许 whiteSpace、wordBreak、overflowWrap(枚举包含 pre-wrap / anywhere / break-word),也就是说如果行内代码归属于这两个 part 之一,用户可以通过外观包从样式层缓解该问题。但目前注册表没有暴露行内代码的 part 归属,用户侧无法确认。

主要言語
Rust
スター
2.3k
フォーク
236
平均マージ
2時間 51分
マージ済み PR(30日)
425

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

GCWing/OpenBitFun のほかの issue

GCWing/OpenBitFun の issue をすべて見る

似ている issue

Rust の issue をもっと見る

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

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