microsoft / microsoft/vscode-cpptools
Code folding with `//#region` and `//#endregion`
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 6.2k
- Fork
- 1.7k
- Merge medio
- 14h 46m
- PR unite (30g)
- 61
Descrizione
Type: Feature Request
Please make //#region and //#endregion folding available on VSCode for C/C++ too.
Feature request suggested by @Colengms in https://github.com/microsoft/vscode/issues/123016#issuecomment-837074185_
The documentation describes that C/C++ region should be defined with #pragma region and #pragma endregion, although many C/C++ application complain about unknown pragma, generating many warnings. In the very same documentation, the default for many languages is //#region and //#endregion which is definitely the very best choice for C/C++. There are VS Code extensions like this that try to fix these annoying issue, but they create other problems, since single line comments should never use /* */, it makes harder to comment out a block with regions inside.
- Using
#pragma regionalmost always require to disable unknown pragmas with the compiler flag-Wno-unknown-pragmas, which may hide useful warnings such as the typo#pragma ocne. - GCC is one of the most famous compiler, and still there are recently complaining about the need to disable unknown pragmas in order to use
#pragma region. - There are even cases of compilations bugs with the use of
#pragma regionsuch as this. Which would never happen if//#regionwould be a default. - The number of people trying to find workarounds are getting ridiculous at this point, there are people even using
#ifndef MY_REGION_NAME...#endif, which may lead to pieces of code being ignored by the compiler if the region is a duplicate name. - This issue uses an example of C/C++ where it tries the intuitive region folding (
#regioninside line comment), but VSCode fails to fold, since#pragma regionshould have been used instead.
VS Code version: Code 1.55.2 (3c4e3df, 2021-04-13T09:35:57.887Z)
OS version: Windows_NT x64 6.1.7601
ms-vscode.cpptools Version 1.3.1: April 19, 2021
Guida per i contributori
Apri 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.
Direzione di ricerca
Inizia dal supporto al folding di C/C++ nell’estensione e confronta la sua gestione con la sintassi delle regioni descritta nella documentazione codebasics di VS Code e con gli esempi di folding collegati. Il lavoro è terminato quando //#region e //#endregion vengono chiusi correttamente per C/C++ senza richiedere direttive #pragma e il comportamento è stato verificato nell’estensione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp, typescript
- Ambito
- tooling
- Tipo di issue
- Funzionalità
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 48/100