diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..15977c64e --- /dev/null +++ b/.editorconfig @@ -0,0 +1,34 @@ +# EditorConfig helps developers define and maintain consistent +# coding styles between different editors and IDEs +# http://editorconfig.org + +root = true + +[*] +indent_style = space +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[{*.md,*.rst}] +trim_trailing_whitespace = false + +[{Makefile,*.mk,*.bat}] +indent_style = tab +indent_size = 2 + +[*/freertos/**] +indent_style = tab +indent_size = 4 + +[{*/freertos/**.S,**/FreeRTOSConfig.h}] +indent_style = space +indent_size = 4 + +[*.pem] +insert_final_newline = false + +[*.py] +max_line_length = 119 diff --git a/docs/contribute/style-guide.rst b/docs/contribute/style-guide.rst index 9bf00f1f7..bf0a2a018 100644 --- a/docs/contribute/style-guide.rst +++ b/docs/contribute/style-guide.rst @@ -169,6 +169,15 @@ To re-format a file, run:: tools/format.sh components/my_component/file.c + +Configuring the code style for a project using EditorConfig +----------------------------------------------------------- + +EditorConfig helps developers define and maintain consistent coding styles between different editors and IDEs. The EditorConfig project consists of a file format for defining coding styles and a collection of text editor plugins that enable editors to read the file format and adhere to defined styles. EditorConfig files are easily readable and they work nicely with version control systems. + +For more information, see `EditorConfig `_ Website. + + Documenting code ----------------