Consider adding a Clang-Tidy configuration to enforce some coding conventions
Una pull request collegata è già stata integrata.
- #345 di @walbourn — integrata
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
Direzione di ricerca
Inizia esaminando la pull request aperta #345 e la configurazione attuale di EditorConfig e dello stile di codifica del repository. Confronta i controlli di denominazione proposti per Clang-Tidy e le possibili regole di Clang-Format con le convenzioni esistenti del progetto; il lavoro è completato quando la configurazione concordata viene aggiunta senza entrare in conflitto con gli strumenti attuali.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Take your project DirectXTK as an example, in which you have set these conventions:
PascalCase for class names, methods, functions, and enums.
camelCase for class member variables, struct members
UPPERCASE for preprocessor defines (and nameless enums)
To enforce these naming conventions, you can add readability-* to the checks as shown below:
Checks: >
-*,
readability-*
Then add some of these check options:
CheckOptions:
readability-identifier-naming.ClassCase: 'CamelCase'
readability-identifier-naming.ClassMethodCase: 'CamelCase'
readability-identifier-naming.FunctionCase: 'CamelCase'
readability-identifier-naming.EnumCase: 'CamelCase'
readability-identifier-naming.ClassMemberCase: 'camelBack'
readability-identifier-naming.MemberCase: 'camelBack'
readability-identifier-naming.MacroDefinitionCase: 'UPPER_CASE'
readability-identifier-naming.EnumConstantCase: 'UPPER_CASE'
Microsoft Visual Studio supports Clang-Tidy and Clang-Format out of the box.
P.S.: while EditorConfig is fine, I think you can enforce more specific code-style conventions, such as east const and west const with Clang-Format.
Using Clang-Tidy (and perhaps also Clang-Format) could help maintain greater code consistency.
Reference:
- Lingua principale
- C++
- Stelle
- 1.8k
- Fork
- 264
- Merge medio
- 3g 21h
- PR unite (30g)
- 7
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 microsoft/DirectXMath
-
DirectXMath as a C++ moduleAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
microsoft/DirectXMath#349 ·
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
microsoft/DirectXMath#328 ·
-
simplemath
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
microsoft/DirectXMath#327 · 1 commento ·
-
Project feedbackAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
microsoft/DirectXMath#326 · 2 commenti ·
-
arm64 maintenance
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
microsoft/DirectXMath#309 ·
Tutte le issue di microsoft/DirectXMath
Issue simili
-
CI tracking issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
espressif/esp-matter#1874 ·
-
cudev: Fix MSVC build failures with 64-bit integers (int64_t/uint64_t) in vec_traits.hppForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
opencv/opencv_contrib#4231 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
MiSTer-devel/Main_MiSTer#1341 ·
I maintainer di solito rispondono entro 1 giorno
-
Wrong macro use under MSVCAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
I maintainer di solito rispondono entro 3 giorni