[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241115085150.62d239ae@hermes.local>
Date: Fri, 15 Nov 2024 08:51:50 -0800
From: Stephen Hemminger <stephen@...workplumber.org>
To: Vincent Mailhol <mailhol.vincent@...adoo.fr>
Cc: netdev@...r.kernel.org, David Ahern <dsahern@...il.com>
Subject: Re: [PATCH iproute2-next] add .editorconfig file for basic
formatting
On Sat, 16 Nov 2024 00:08:27 +0900
Vincent Mailhol <mailhol.vincent@...adoo.fr> wrote:
> EditorConfig is a specification to define the most basic code formatting
> stuff, and it is supported by many editors and IDEs, either directly or
> via plugins, including VSCode/VSCodium, Vim, emacs and more.
>
> It allows to define formatting style related to indentation, charset,
> end of lines and trailing whitespaces. It also allows to apply different
> formats for different files based on wildcards, so for example it is
> possible to apply different configurations to *.{c,h}, *.json or *.yaml.
>
> In linux related projects, defining a .editorconfig might help people
> that work on different projects with different indentation styles, so
> they cannot define a global style. Now they will directly see the
> correct indentation on every fresh clone of the project.
>
> Add the .editorconfig file at the root of the iproute2 project. Only
> configuration for the file types currently present are specified. The
> automatic whitespace trimming option caused some issues in the Linux
> kernel [1] and is thus not activated.
>
> See https://editorconfig.org
>
> [1] .editorconfig: remove trim_trailing_whitespace option
> Link: https://git.kernel.org/torvalds/c/7da9dfdd5a3d
>
> Signed-off-by: Vincent Mailhol <mailhol.vincent@...adoo.fr>
> ---
> For reference, here is the .editorconfig of the kernel:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/.editorconfig
> ---
> .editorconfig | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
> create mode 100644 .editorconfig
>
> diff --git a/.editorconfig b/.editorconfig
> new file mode 100644
> index 00000000..4cff39f1
> --- /dev/null
> +++ b/.editorconfig
> @@ -0,0 +1,24 @@
> +# SPDX-License-Identifier: GPL-2.0
> +
> +root = true
Maybe add something generic across all files. Then you only need to specify overrides
[*]
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
charset = utf-8
indent_style = tab
tab_width = 8
max_line_length = 100
> +
> +[{*.{c,h,sh},Makefile}]
> +charset = utf-8
> +end_of_line = lf
> +insert_final_newline = true
> +indent_style = tab
> +indent_size = 8
> +
> +[*.json]
> +charset = utf-8
> +end_of_line = lf
> +insert_final_newline = true
> +indent_style = space
> +indent_size = 4
> +
> +[*.yaml]
> +charset = utf-8
> +end_of_line = lf
> +insert_final_newline = true
> +indent_style = space
> +indent_size = 2
Powered by blists - more mailing lists