Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

[Bug]: No RTL support - Persian/Arabic/Hebrew text renders left-to-right

Aberta
#131 1 comentário 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
52/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
css, html, javascript

Direção de pesquisa

Start by tracing the Settings interface-language picker and the locale helper referenced in the renderer bundle at out/renderer/assets, including its existing document.documentElement.lang assignment. Check the renderer’s layout CSS and code, terminal, and file-path surfaces; done means RTL locales are selectable, the root direction and mirrored layout work, and code-related content remains LTR.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

GUI version

0.1.46

Operating system

Linux (Debian/Ubuntu)

Reproduction steps
  1. Open Command Code Desktop.
  2. Go to Settings → General → Language and open the Interface language picker. Only English and 简体中文 are offered.
  3. Type Persian (or any other RTL-script language such as Arabic or Hebrew) into the chat composer, or paste it into an agent message.
  4. Observe the direction/alignment of the text and how it mixes with Latin text and code.
Expected behavior
  • RTL-script text (Persian/Arabic/Hebrew) should render right-aligned with correct bidirectional ordering.
  • When an RTL interface language is selected, the app layout should flip to RTL (i.e. <html dir="rtl">), and mirrored UI (sidebar, icons that indicate direction, popovers, etc.) should follow.
  • Code blocks and inline code should stay LTR even inside RTL content.
Actual behavior
  • Interface languages are limited to en and zh (UZ = ["en","zh"] in the renderer bundle), so there is no Persian/RTL locale.
  • The root element never receives a dir attribute. The locale helper only sets document.documentElement.lang (C2[e].htmlLang, e.g. en, zh-Hans) and there is no [dir=rtl] / logical-property CSS in the renderer bundle.
  • As a result, Persian text typed into the composer and messages is laid out left-to-right and mixed Persian/Latin/code content breaks bidi ordering (punctuation and numbers jump to the wrong side).
Proposed fix
  1. Add RTL locales (at minimum fa, plus ar, he, ur) to the interface-language list in Settings.
  2. Mirror the layout when the active language direction is RTL: set document.documentElement.dir = i18next.dir(lng) (i18next already returns "rtl" for these languages) alongside the existing lang assignment.
  3. Use CSS logical properties (margin-inline-start, padding-inline, inset-inline, text-align: start/end) instead of hard-coded left/right, and add [dir=rtl] overrides where mirroring is needed.
  4. Force dir="ltr" on code blocks / inline code / terminal and file-path surfaces so code stays readable.
Screenshots, recordings, or sanitized logs

Not attached. The behavior is reproducible from the steps above; the code references (UZ = ["en","zh"], no dir assignment, no [dir=rtl] rules) are from the installed renderer bundle at out/renderer/assets.

Safety check
  • I removed credentials and private project information from this report.
Linguagem predominante
Shell
Estrelas
85
Forks
5
Merge médio
2h 46min
PRs com merge (30d)
1

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de CommandCodeAI/desktop

Todas as issues de CommandCodeAI/desktop

Issues semelhantes

Mais issues de Shell/Bash

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.