qwen-code/docs/users/ide-integration
pomelo a756676b21
fix(cli): replace all emoji with Unicode text symbols in TUI rendering (#5999)
* fix(cli): replace all emoji status icons with Unicode text symbols

Comprehensive cleanup of emoji in TUI rendering paths (follow-up to
#5787 / #5788). Replaces width-2 emoji with width-1 Unicode text symbols
from the project's existing glyph vocabulary.

## Source changes (25 source files)

Status indicators:
- McpStatus: 🟢→● 🔄→◐ 🔴→● (colors preserved via Text color prop)
- ideCommand: 🟢→● 🟡→◐ 🔴→● (both getIdeStatusMessage functions)
- Footer: 🔒 removed (sandbox text label is self-explanatory)
- Footer: ⚙→▷ (workflow active indicator)
- ToolMessage: →◌ (progress + queued approval)
- McpStatus: →◌ (server startup message)
- LiveAgentPanel: ⏸→‖ (pause glyph)

Text prefixes and labels:
- StatusMessages: 🔎→◎ (vision bridge gutter prefix)
- Session: 🚫→✗ (blocked notifications)
- useGeminiStream: 🔎→◎ 🚫→✗ 💡→★ (prefixes and headers)
- useContextualTips: 💡→★ (tip prefix)
- WelcomeBackDialog: 👋🎯📋 removed (text labels are self-explanatory)
- CreationSummary: →✓ →✗
- summaryCommand: →✗
- AppContainer: →✗
- AgentEditStep: →✗
- useAutoAcceptIndicator: ℹ️→i
- McpStatus Tips: 💡→★

Core package:
- agent-statistics: 📋→▸ 🔧→● ⏱️→(stripped) 🔁→● 🔢→● →✓ 🚀→● 💡→★
- shell: 🤖 removed from PR attribution footer
- artifact-tool: 📄 removed from publish display
- coreToolScheduler: ⚠️→⚠ (strip VS16)

Standardized ⚠️ (U+26A0+VS16, width-2) → ⚠ (U+26A0, width-1):
- CommandFormatMigrationNudge, command-migration-tool, useGeminiStream

i18n: all 9 locale files updated for changed keys.

## Test changes (5 test files)

- ideCommand.test.ts: 5 emoji assertions updated
- McpStatus.test.tsx: 13 snapshots updated
- HistoryItemDisplay.test.tsx: 🔎→◎ assertions
- useGeminiStream.test.tsx: VS16 + 🔄 assertions
- agent-statistics.test.ts: all emoji assertions updated

* fix(cli): address review feedback — fix docs, tests, and glyph issues

- Fix McpStatus test snapshots to actually exercise connecting/disconnected
  states via serverStatus prop instead of ineffective vi.spyOn mock
- Update user docs (status-line.md, ide-integration.md) to match new symbols
- Change Footer workflow indicator from ⚙ to ▷ for consistency
- Fix Duration line leading space in agent-statistics formatCompact/formatDetailed
- Revert ‖ (U+2016, EAW=Ambiguous) back to ⏸ (EAW=Narrow) for CJK terminals
- Restore 🤖 in PR attribution (GitHub web UI, not TUI)
- Add old emoji to lspCommand.test.ts negative assertion
- Tighten Footer test to assert full ▷ glyph text

* fix(cli): sync JSDoc with code for shell attribution and regenerate McpStatus snapshot

* fix(cli): distinct IDE status glyphs + mark LLM-facing retry directives

- ideCommand: Connected and Disconnected both rendered an identical bullet
  differing only by color, indistinguishable under deuteranopia/protanopia, in
  NO_COLOR terminals, or when copy-pasted. Use the PR's established ✓/✗
  vocabulary (✓ Connected, ✗ Disconnected); Connecting keeps ◐.
- coreToolScheduler: note that the ⚠ in the two RETRY_LOOP directives is an
  LLM-facing prompt string, not a TUI glyph, so it isn't 'fixed' for width later.

Co-Authored-By: Qwen-Coder <noreply@qwen.ai>

---------

Co-authored-by: pomelo.lcw <pomelo.lcw@alibaba-inc.com>
Co-authored-by: Shaojin Wen <shaojin.wensj@alibaba-inc.com>
Co-authored-by: Qwen-Coder <noreply@qwen.ai>
2026-06-30 15:18:01 +00:00
..
_meta.ts feat: restructure docs 2025-12-04 18:26:05 +08:00
ide-companion-spec.md update documentation 2025-12-19 18:16:59 +08:00
ide-integration.md fix(cli): replace all emoji with Unicode text symbols in TUI rendering (#5999) 2026-06-30 15:18:01 +00:00