REPL History Ghosting: Spurious characters (e.g., 'c') appear when cycling through history via Arrow keys
I maintainer di solito rispondono entro 2 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- c, javascript
- Ambito
- cli
Direzione di ricerca
Start by locating the REPL line editor and its history-navigation handling, then reproduce the issue using the listed multi-line input and Up Arrow steps. Check behavior in the reported glibc and musl environments if available. Done means cycling through history no longer adds ghost characters or corrupts the displayed input.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
The REPL line editor fails to properly clear the prompt or calculate cursor position when navigating history with Arrow Keys. This results in "ghost" characters (commonly the letter c) being appended or prepended to the input line. This issue is reproducible across glibc (Fedora, NixOS) and musl (Alpine) environments.
Environment
- Engine:
quickjs-ng(version 0.11.0). - Distros: Fedora, NixOS, Alpine (both
apkand source build).
Steps to Reproduce
- Enter several lines of complex code into the REPL
let b = " hello : 1"
b
console.log(`索引 ${index}: '${char}'`);
[...b].forEach((v, i) => {console.log(`${v} ${i}`)})
console.log(`索引 ${index}: '${char}'`);
console.log(1)
console.log(2)
- Press the Up Arrow key several times to cycle through the history.
- Observe the input line.
Observed Behavior
As you scroll, characters like c (likely remnants of ANSI escape sequences like \x1b[C) begin to leak into the prompt. The line becomes visually corrupted, and the ghost characters do not represent actual code input.
- Lingua principale
- C
- Stelle
- 3.9k
- Fork
- 389
- Merge medio
- 4g 1h
- PR unite (30g)
- 24
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di quickjs-ng/quickjs
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
quickjs-ng/quickjs#1836 ·
I maintainer di solito rispondono entro 2 giorni
-
Array.prototype.find frees an element twice when interrupted between iterationsForse già presa @josefguenther l’ha presa 14 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
quickjs-ng/quickjs#1792 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
Object.prototype.propertyIsEnumerable converts `this` before the property keyForse già presa @SomSamantray l’ha presa 9 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
quickjs-ng/quickjs#1772 ·
I maintainer di solito rispondono entro 2 giorni
-
Deserialization corrupts data or returns `undefined` when a RegExp precedes a shared object referenceForse già presa @Sree24-ui l’ha presa 13 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
quickjs-ng/quickjs#1771 · 2 commenti ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
quickjs-ng/quickjs#1835 · 1 reazione ·
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di quickjs-ng/quickjs
Issue simili
-
[WinReg] update to v12.0.0Apertacategory:port-update
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 2 giorni
-
type-bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
feat(palindrome): add C solutionForse già presa @aadiitya2007 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
techcsispit/code-corner#58 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[LOGO] Add Ruxt Linux LogoApertalogo request
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
fastfetch-cli/fastfetch#2661 ·
I maintainer di solito rispondono entro 1 giorno
-
Mark ignored Mac OS partitions RecoveryOSContainer and iBootSystemContainerForse già presa @meven l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
storaged-project/udisks#1559 ·