summaryrefslogtreecommitdiff
path: root/.gitattributes
blob: 38cc45f3ee34fe4269c3dd648bc518741ed676fc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# Attributes of Emacs files in the Git repository.

# Copyright 2015-2024 Free Software Foundation, Inc.

# This file is part of GNU Emacs.

# GNU Emacs is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.

# GNU Emacs is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.

# A few UTF-8-compatible text files use CRLF endings,
# even on non-Microsoft platforms.
# Do not warn about trailing whitespace with these files.
*.bat whitespace=cr-at-eol
admin/charsets/mapfiles/PTCP154 whitespace=cr-at-eol
test/manual/etags/c-src/dostorture.c whitespace=cr-at-eol
test/manual/etags/cp-src/c.C whitespace=cr-at-eol
test/manual/etags/html-src/algrthms.html whitespace=cr-at-eol

# The todo-mode file format includes trailing whitespace.
*.tod[aorty] -whitespace=blank-at-eol

# The following text files use encodings incompatible with UTF-8.
# They should not be treated as text when diffing, as that could
# cause the output to mix encodings.
*.tit -diff
admin/charsets/mapfiles/cns2ucsdkw.txt -diff
leim/MISC-DIC/CTLau* -diff
leim/MISC-DIC/cangjie-table.* -diff
leim/MISC-DIC/pinyin.map -diff
leim/MISC-DIC/ziranma.cin -diff
leim/SKK-DIC/SKK-JISYO.L -diff
src/msdos.c -diff
test/lisp/gnus/mm-decode-resources/win1252-multipart.bin -diff

# Some files should not be treated as text when diffing or merging.
*.bmp binary
*.cur binary
*.gif binary
*.gpg binary
*.gz binary
*.icns binary
*.ico binary
*.jpg binary
*.kbx binary
*.key binary
*.pbm binary
*.pdf binary
*.pif binary
*.png binary
*.sig binary
*.tiff binary
*.webp binary
*.zip binary
etc/e/eterm-color binary
etc/e/eterm-direct binary
java/emacs.keystore binary

# Git's builtin diff hunk header styles.
*.ad[abs] diff=ada
*.[Cch] diff=cpp
*.cc diff=cpp
*.[ch]pp diff=cpp
*.hh diff=cpp
*.for diff=fortran
*.html diff=html
*.shtml diff=html
*.xml diff=html
*.java diff=java
*.[HMm] diff=objc
*.pas diff=pascal
*.perl diff=perl
*.pl diff=perl
*.php diff=php
*.py diff=python
*.rb diff=ruby
*.tex diff=tex

# Hooks for non-default diff hunk headers; see autogen.sh.
*.el diff=elisp
*.ac diff=m4
*.m4 diff=m4
*.mk diff=make
*[Mm]akefile diff=make
Makefile.in diff=make
*[-.]sh diff=shell
*.texi diff=texinfo
#
# Diff hunk header special-case file names.
admin/build-configs diff=perl
admin/charsets/mapconv diff=shell
admin/diff-tar-files diff=shell
admin/make-emacs diff=perl
admin/merge-gnulib diff=shell
admin/merge-pkg-config diff=shell
admin/quick-install-emacs diff=shell
admin/update-copyright diff=shell
admin/update_autogen diff=shell
build-aux/config.guess diff=shell
build-aux/config.sub diff=shell
build-aux/git-hooks/commit-msg diff=shell
build-aux/git-hooks/pre-commit diff=shell
build-aux/gitlog-to-emacslog diff=shell
build-aux/make-info-dir diff=shell
build-aux/move-if-change diff=shell
build-aux/msys-to-w32 diff=shell
build-aux/update-subdirs diff=shell
lib-src/rcs2log diff=shell
/make-dist diff=shell

# This file contains in-line diffs, which can include trailing
# whitespace.
java/INSTALL -whitespace