Last active
October 27, 2024 03:10
-
-
Save airglow923/1fa3bda42f2b193920d7f46ee8345e04 to your computer and use it in GitHub Desktop.
clang-tidy readability-identifier-naming for Google's naming convention
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CheckOptions: | |
- key: readability-identifier-naming.ClassCase | |
value: CamelCase | |
- key: readability-identifier-naming.ClassMemberCase | |
value: lower_case | |
- key: readability-identifier-naming.ConstexprVariableCase | |
value: CamelCase | |
- key: readability-identifier-naming.ConstexprVariablePrefix | |
value: k | |
- key: readability-identifier-naming.EnumCase | |
value: CamelCase | |
- key: readability-identifier-naming.EnumConstantCase | |
value: CamelCase | |
- key: readability-identifier-naming.EnumConstantPrefix | |
value: k | |
- key: readability-identifier-naming.FunctionCase | |
value: CamelCase | |
- key: readability-identifier-naming.GlobalConstantCase | |
value: CamelCase | |
- key: readability-identifier-naming.GlobalConstantPrefix | |
value: k | |
- key: readability-identifier-naming.StaticConstantCase | |
value: CamelCase | |
- key: readability-identifier-naming.StaticConstantPrefix | |
value: k | |
- key: readability-identifier-naming.StaticVariableCase | |
value: lower_case | |
- key: readability-identifier-naming.MacroDefinitionCase | |
value: UPPER_CASE | |
- key: readability-identifier-naming.MacroDefinitionIgnoredRegexp | |
value: '^[A-Z]+(_[A-Z]+)*_$' | |
- key: readability-identifier-naming.MemberCase | |
value: lower_case | |
- key: readability-identifier-naming.PrivateMemberSuffix | |
value: _ | |
- key: readability-identifier-naming.PublicMemberSuffix | |
value: '' | |
- key: readability-identifier-naming.NamespaceCase | |
value: lower_case | |
- key: readability-identifier-naming.ParameterCase | |
value: lower_case | |
- key: readability-identifier-naming.TypeAliasCase | |
value: CamelCase | |
- key: readability-identifier-naming.TypedefCase | |
value: CamelCase | |
- key: readability-identifier-naming.VariableCase | |
value: lower_case | |
- key: readability-identifier-naming.IgnoreMainLikeFunctions | |
value: 1 |
Thank you, it worked for me out-of-the-box after upgrading to v12.
I think it worth adding into your CheckOptions
list
@rsglobal Updated. Thanks
Hello,
To fix this:
Data members of structs, both static and non-static, are named like ordinary nonmember variables. They do not have the trailing underscores that data members in classes have.
the following diff has to be applied:
- - key: readability-identifier-naming.MemberSuffix
+ - key: readability-identifier-naming.PrivateMemberSuffix
value: _
+ - key: readability-identifier-naming.PublicMemberSuffix
+ value: ''
@rsglobal Thank you for pointing that out
How to use it in CMake Project.
@ehds I made a tutorial: https://itnext.io/save-your-sanity-and-time-beyond-clang-format-2b929b9120b8
Thanks, it's work for me.
@airglow923 Do you have any specific license on this repo?
@IshitaTakeshi No, I don't. You can use or modify it as you want.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@rsglobal
UPDATE
I forgot to mention that
IgnoredRegexp
is only supported in clang-tidy 12 onwards.Thanks. I included
ConstexprVariableCase
andPrefix
as well to the file.I think the error is due to the trailing underline. You can make use of MacroDefinitionIgnoredRegexp to allow trailing underline.
For example,
Note that
IgnoredRegexp
uses POSIX Extended Regular Expressions (POSIX ERE) for its regex engine.