xref: /freebsd/contrib/file/magic/Magdir/tex (revision 898496ee09ed2b7d25f6807edc4515628196ec0a)
1b6cee71dSXin LI
2b6cee71dSXin LI#------------------------------------------------------------------------------
3*898496eeSXin LI# $File: tex,v 1.22 2022/12/21 16:50:04 christos Exp $
4b6cee71dSXin LI# tex:  file(1) magic for TeX files
5b6cee71dSXin LI#
6b6cee71dSXin LI# XXX - needs byte-endian stuff (big-endian and little-endian DVI?)
7b6cee71dSXin LI#
8b6cee71dSXin LI# From <conklin@talisman.kaleida.com>
9b6cee71dSXin LI
10b6cee71dSXin LI# Although we may know the offset of certain text fields in TeX DVI
11b6cee71dSXin LI# and font files, we can't use them reliably because they are not
12b6cee71dSXin LI# zero terminated. [but we do anyway, christos]
13*898496eeSXin LI0	string		\367\002
14*898496eeSXin LI>(14.b+15)	string	\213
15*898496eeSXin LI>>14	pstring		>\0		TeX DVI file (%s)
16b6cee71dSXin LI!:mime	application/x-dvi
17b6cee71dSXin LI0	string		\367\203	TeX generic font data
18b6cee71dSXin LI0	string		\367\131	TeX packed font data
19b6cee71dSXin LI>3	string		>\0		(%s)
20*898496eeSXin LI0	string		\367\312
21*898496eeSXin LI>(2.b+11)	string	\363	TeX virtual font data
22b6cee71dSXin LI0	search/1	This\ is\ TeX,	TeX transcript text
23b6cee71dSXin LI0	search/1	This\ is\ METAFONT,	METAFONT transcript text
24b6cee71dSXin LI
25b6cee71dSXin LI# There is no way to detect TeX Font Metric (*.tfm) files without
26b6cee71dSXin LI# breaking them apart and reading the data.  The following patterns
27b6cee71dSXin LI# match most *.tfm files generated by METAFONT or afm2tfm.
28b6cee71dSXin LI2	string		\000\021	TeX font metric data
29b6cee71dSXin LI!:mime	application/x-tex-tfm
30b6cee71dSXin LI>33	string		>\0		(%s)
31b6cee71dSXin LI2	string		\000\022	TeX font metric data
32b6cee71dSXin LI!:mime	application/x-tex-tfm
33b6cee71dSXin LI>33	string		>\0		(%s)
34b6cee71dSXin LI
35b6cee71dSXin LI# Texinfo and GNU Info, from Daniel Quinlan (quinlan@yggdrasil.com)
36b6cee71dSXin LI0	search/1	\\input\ texinfo	Texinfo source text
37b6cee71dSXin LI!:mime	text/x-texinfo
38b6cee71dSXin LI0	search/1	This\ is\ Info\ file	GNU Info text
39b6cee71dSXin LI!:mime	text/x-info
40b6cee71dSXin LI
41b6cee71dSXin LI# TeX documents, from Daniel Quinlan (quinlan@yggdrasil.com)
42b6cee71dSXin LI0	search/4096	\\input		TeX document text
43b6cee71dSXin LI!:mime	text/x-tex
44b6cee71dSXin LI!:strength + 15
45b6cee71dSXin LI0	search/4096	\\begin		LaTeX document text
46b6cee71dSXin LI!:mime	text/x-tex
47b6cee71dSXin LI!:strength + 15
48b6cee71dSXin LI0	search/4096	\\section	LaTeX document text
49b6cee71dSXin LI!:mime	text/x-tex
50b6cee71dSXin LI!:strength + 18
51b6cee71dSXin LI0	search/4096	\\setlength	LaTeX document text
52b6cee71dSXin LI!:mime	text/x-tex
53b6cee71dSXin LI!:strength + 15
54b6cee71dSXin LI0	search/4096	\\documentstyle	LaTeX document text
55b6cee71dSXin LI!:mime	text/x-tex
56b6cee71dSXin LI!:strength + 18
57b6cee71dSXin LI0	search/4096	\\chapter	LaTeX document text
58b6cee71dSXin LI!:mime	text/x-tex
59b6cee71dSXin LI!:strength + 18
60b6cee71dSXin LI0	search/4096	\\documentclass	LaTeX 2e document text
61b6cee71dSXin LI!:mime	text/x-tex
62b6cee71dSXin LI!:strength + 15
63b6cee71dSXin LI0	search/4096	\\relax		LaTeX auxiliary file
64b6cee71dSXin LI!:mime	text/x-tex
65b6cee71dSXin LI!:strength + 15
66b6cee71dSXin LI0	search/4096	\\contentsline	LaTeX table of contents
67b6cee71dSXin LI!:mime	text/x-tex
68b6cee71dSXin LI!:strength + 15
69b6cee71dSXin LI0	search/4096	%\ -*-latex-*-	LaTeX document text
70b6cee71dSXin LI!:mime	text/x-tex
71b6cee71dSXin LI
72b6cee71dSXin LI# Tex document, from Hendrik Scholz <hendrik@scholz.net>
73b6cee71dSXin LI0   	search/1	\\ifx		TeX document text
74b6cee71dSXin LI
75b6cee71dSXin LI# Index and glossary files
76b6cee71dSXin LI0	search/4096	\\indexentry	LaTeX raw index file
77b6cee71dSXin LI0	search/4096	\\begin{theindex}	LaTeX sorted index
78b6cee71dSXin LI0	search/4096	\\glossaryentry	LaTeX raw glossary
79b6cee71dSXin LI0	search/4096	\\begin{theglossary}	LaTeX sorted glossary
80b6cee71dSXin LI0	search/4096	This\ is\ makeindex	Makeindex log file
81b6cee71dSXin LI
82b6cee71dSXin LI# End of TeX
83b6cee71dSXin LI
84b6cee71dSXin LI#------------------------------------------------------------------------------
85b6cee71dSXin LI# file(1) magic for BibTex text files
86b6cee71dSXin LI# From Hendrik Scholz <hendrik@scholz.net>
87b6cee71dSXin LI
88b6cee71dSXin LI0	search/1/c	@article{	BibTeX text file
89b6cee71dSXin LI0	search/1/c	@book{		BibTeX text file
90b6cee71dSXin LI0	search/1/c	@inbook{	BibTeX text file
91b6cee71dSXin LI0	search/1/c	@incollection{	BibTeX text file
92b6cee71dSXin LI0	search/1/c	@inproceedings{	BibTeX text file
93b6cee71dSXin LI0	search/1/c	@manual{	BibTeX text file
94b6cee71dSXin LI0	search/1/c	@misc{		BibTeX text file
95b6cee71dSXin LI0	search/1/c	@preamble{	BibTeX text file
96b6cee71dSXin LI0	search/1/c	@phdthesis{	BibTeX text file
97b6cee71dSXin LI0	search/1/c	@techreport{	BibTeX text file
98b6cee71dSXin LI0	search/1/c	@unpublished{	BibTeX text file
99b6cee71dSXin LI
100b6cee71dSXin LI73	search/1	%%%\ \ 		BibTeX-file{ BibTex text file (with full header)
101b6cee71dSXin LI
102b6cee71dSXin LI73	search/1	%%%\ \ @BibTeX-style-file{   BibTeX style text file (with full header)
103b6cee71dSXin LI
104b6cee71dSXin LI0	search/1	%\ BibTeX\ standard\ bibliography\ 	BibTeX standard bibliography style text file
105b6cee71dSXin LI
106b6cee71dSXin LI0	search/1	%\ BibTeX\ `	BibTeX custom bibliography style text file
107b6cee71dSXin LI
108b6cee71dSXin LI0	search/1	@c\ @mapfile{	TeX font aliases text file
109b6cee71dSXin LI
110b6cee71dSXin LI0	string		#LyX		LyX document text
111b6cee71dSXin LI
112b6cee71dSXin LI# ConTeXt documents
11348c779cdSXin LI#	https://wiki.contextgarden.net/
114b6cee71dSXin LI0	search/4096	\\setupcolors[		ConTeXt document text
115b6cee71dSXin LI!:strength + 15
116b6cee71dSXin LI0	search/4096	\\definecolor[		ConTeXt document text
117b6cee71dSXin LI!:strength + 15
118b6cee71dSXin LI0	search/4096	\\setupinteraction[	ConTeXt document text
119b6cee71dSXin LI!:strength + 15
120b6cee71dSXin LI0	search/4096	\\useURL[		ConTeXt document text
121b6cee71dSXin LI!:strength + 15
122b6cee71dSXin LI0	search/4096	\\setuppapersize[	ConTeXt document text
123b6cee71dSXin LI!:strength + 15
124b6cee71dSXin LI0	search/4096	\\setuplayout[		ConTeXt document text
125b6cee71dSXin LI!:strength + 15
126b6cee71dSXin LI0	search/4096	\\setupfooter[		ConTeXt document text
127b6cee71dSXin LI!:strength + 15
128b6cee71dSXin LI0	search/4096	\\setupfootertexts[	ConTeXt document text
129b6cee71dSXin LI!:strength + 15
130b6cee71dSXin LI0	search/4096	\\setuppagenumbering[	ConTeXt document text
131b6cee71dSXin LI!:strength + 15
132b6cee71dSXin LI0	search/4096	\\setupbodyfont[	ConTeXt document text
133b6cee71dSXin LI!:strength + 15
134b6cee71dSXin LI0	search/4096	\\setuphead[		ConTeXt document text
135b6cee71dSXin LI!:strength + 15
136b6cee71dSXin LI0	search/4096	\\setupitemize[		ConTeXt document text
137b6cee71dSXin LI!:strength + 15
138b6cee71dSXin LI0	search/4096	\\setupwhitespace[	ConTeXt document text
139b6cee71dSXin LI!:strength + 15
140b6cee71dSXin LI0	search/4096	\\setupindenting[	ConTeXt document text
141b6cee71dSXin LI!:strength + 15
142