[Feature] React Native debug configuration completion inserts an extra comma after comments in launch.json
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 75/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- react-native, typescript, vscode
- Ambito
- devtools
Direzione di ricerca
Inizia leggendo LaunchJsonCompletionHelper.isCommaImmediatelyBeforeCursor() e lo scanner JSONC esistente menzionato nell’issue; controlla i test vicini relativi all’inserimento dei completamenti in prossimità dei commenti. Riproduci i passaggi con il file launch.json fornito, quindi verifica che la nuova configurazione venga inserita senza una virgola aggiuntiva e che il documento rimanga JSONC valido.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
Accepting the React Native completion item in launch.json and completing the configuration wizard can insert an extra comma when a comment separates the cursor from an existing comma.
This turns an otherwise valid launch.json into invalid JSONC.
Steps to Reproduce
-
Open a React Native project in VS Code with React Native Tools enabled.
-
Set
.vscode/launch.jsonto the following:{ "version": "0.2.0", "configurations": [ { "name": "Debug Android Hermes", "request": "launch", "type": "reactnativedirect", "cwd": "${workspaceFolder}", "platform": "android" }, // Add another debug configuration here ] } -
Place the cursor on the blank line immediately below the comment, inside the
configurationsarray. -
Open the Command Palette and run Trigger Suggest.
-
Select the React Native completion item.
-
Complete the extension's configuration wizard.
-
Inspect the inserted configuration.
Note: Use Trigger Suggest → React Native, not the Add Configuration… button. In the tested case, the button relocates the insertion point and does not reproduce this issue.
Expected Behavior
The extension should recognize the existing comma after the preceding configuration and insert the new configuration without adding another comma.
},
// Add another debug configuration here
{
"name": "..."
}
The document should remain valid JSONC.
Actual Behavior
An additional comma is inserted before the new configuration:
},
// Add another debug configuration here
,{
"name": "..."
}
There are now two commas between the configuration objects, separated by a comment, making the document invalid.
Possible Cause
LaunchJsonCompletionHelper.isCommaImmediatelyBeforeCursor() checks preceding lines using trim().endsWith(",") and stops at the first non-empty line.
It does not skip comments to identify the preceding significant JSON token. It also treats a comma at the end of a comment as an actual JSON comma.
Using the existing JSONC scanner to ignore comments and whitespace when identifying the preceding token may address both cases.
- Lingua principale
- TypeScript
- Stelle
- 2.7k
- Fork
- 303
- Merge medio
- 20h 33m
- PR unite (30g)
- 33
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
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 microsoft/vscode-react-native
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
microsoft/vscode-react-native#3055 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
microsoft/vscode-react-native#3053 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
microsoft/vscode-react-native#3037 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
microsoft/vscode-react-native#3036 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
microsoft/vscode-react-native#3033 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di microsoft/vscode-react-native
Issue simili
-
unwrapDatabaseError masks real DB errors with TypeError: Cannot convert object to primitive valueAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
NEARBuilders/everything-dev#798 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
vercel-labs/durable-harness#53 ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: Redesign tab bars ignore clicks on Linux: hidden chat layers keep window drag regionsForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
experiência: a doc manda subir para o Micro do Supabase, mas não diz que exige plano pago nem quanto custaForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertaarea/docs area/ui enhancement
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
melgarafael/DeskcommCRM#4098 ·
I maintainer di solito rispondono entro 1 giorno
-
dependencies platform: ios
Difficoltà 1/5 1-3 ore Idoneità per principianti 78/100
software-mansion/react-native-executorch#1617 ·
I maintainer di solito rispondono entro 1 giorno