python / python/cpython

Pasting zero-width characters into PyREPL results in incorrect cursor position

Aberta
#139,246 16 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

stdlib topic-repl type-bug
Linguagem predominante
Python
Estrelas
77.2k
Forks
35.9k
Métricas de merge de PRs
Métricas de PR pendentes

Descrição

Bug report

Bug description:

To reproduce

Tested with Python 3.14 rc3 on Linux

  1. Open the new REPL
  2. Paste: ééééé

The paste-able string above is five letter 'e's each followed by \u0301. To create it use:

print('e\u0301' * 5)

The \u0301 is a combining mark with zero-width display length

Current behavior

The cursor position is five spaces after the pasted string

Expected behavior

The cursor position is immediately after the pasted string

CPython versions tested on:

3.14

Operating systems tested on:

Linux

Linked PRs
  • gh-139254
  • gh-140796
  • gh-141166

Guia de contribuição

Abrir o guia de contribuição

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.

Direção de pesquisa

Comece com a nova reprodução do REPL no Linux, cole a string com marcas combinantes descrita na issue e verifique a posição do cursor depois. Revise os PRs vinculados gh-139254, gh-140796 e gh-141166 antes de tomar qualquer ação; concluído significa que o cursor está imediatamente após a string colada.

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

Avaliação

Stack de tecnologia
python
Domínio
cli
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Claramente especificada
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

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