1# EditorConfig configuration for nixpkgs
2# https://EditorConfig.org
3
4# Top-most EditorConfig file
5root = true
6
7# Unix-style newlines with a newline ending every file, utf-8 charset
8[*]
9end_of_line = lf
10insert_final_newline = true
11trim_trailing_whitespace = true
12charset = utf-8
13
14# Ignore diffs/patches
15[*.{diff,patch}]
16end_of_line = unset
17insert_final_newline = unset
18trim_trailing_whitespace = unset
19
20# see https://nixos.org/nixpkgs/manual/#chap-conventions
21
22# Match json/lockfiles/markdown/nix/perl/python/ruby/shell/docbook files, set indent to spaces
23[*.{json,lock,md,nix,pl,pm,py,rb,sh,xml}]
24indent_style = space
25
26# Match docbook files, set indent width of one
27[*.xml]
28indent_size = 1
29
30# Match json/lockfiles/markdown/nix/ruby files, set indent width of two
31[*.{json,lock,md,nix,rb}]
32indent_size = 2
33
34# Match perl/python/shell scripts, set indent width of four
35[*.{pl,pm,py,sh}]
36indent_size = 4
37
38# Match gemfiles, set indent to spaces with width of two
39[Gemfile]
40indent_size = 2
41indent_style = space
42
43# Disable file types or individual files
44# some of these files may be auto-generated and/or require significant changes
45
46[*.{c,h}]
47insert_final_newline = unset
48trim_trailing_whitespace = unset
49
50[*.{asc,key,ovpn}]
51insert_final_newline = unset
52end_of_line = unset
53trim_trailing_whitespace = unset
54
55[*.lock]
56indent_size = unset
57
58# trailing whitespace is an actual syntax element of classic Markdown/
59# CommonMark to enforce a line break
60[*.md]
61trim_trailing_whitespace = unset
62
63[eggs.nix]
64trim_trailing_whitespace = unset
65
66[nixos/modules/services/networking/ircd-hybrid/*.{conf,in}]
67trim_trailing_whitespace = unset
68
69[pkgs/build-support/dotnetenv/Wrapper/**]
70end_of_line = unset
71indent_style = unset
72insert_final_newline = unset
73trim_trailing_whitespace = unset
74
75[pkgs/development/compilers/elm/registry.dat]
76end_of_line = unset
77insert_final_newline = unset
78
79[pkgs/development/haskell-modules/hackage-packages.nix]
80indent_style = unset
81trim_trailing_whitespace = unset
82
83[pkgs/servers/dict/wordnet_structures.py]
84trim_trailing_whitespace = unset
85
86[pkgs/tools/misc/timidity/timidity.cfg]
87trim_trailing_whitespace = unset