Я думаю, что вряд ли будет полностью надежный способ сделать это, учитывая, что вы хотите быть чувствительными к файлам, которые можно вводить с помощью \input
или \include
. Тем не менее, имея конкретный файл, вы, вероятно, сможете классифицировать его со значительной уверенностью, заметив первое из следующего, что вы найдете.
- Файлы TeX обычно заканчиваются на
\bye
, и это обычно не определено в файле LaTeX.
- Макрос
\begin
вряд ли будет определен в «обычном» файле TeX (хотя \end
определен в формате plain
).
Это, вероятно, лучшее, что вы можете сделать, хотя этого, безусловно, будет достаточно для статистического анализа, который вы, похоже, делаете.
Ничто не мешает кому-то, пишущему файл TeX, определить \begin
как что-то означающее, а также тому, кто пишет файл LaTeX, чтобы определить \bye
как что-то означающее. Проблема, с вашей точки зрения, заключается в том, что нет каких-либо конструкций TeX, которые действительно запрещены в файле LaTeX (и наоборот), хотя такие вещи, как \halign
, редко встречаются в LaTeX. Действительно, поскольку LaTeX — это «всего лишь» формат TeX, между ними вообще нет фундаментальной разницы.
Просто чтобы довести до конца последний пункт, существует такая вещь, как ConTeXt, формат TeX, который не plain
, но и не LaTeX. Хотя это довольно редко.
person
Norman Gray
schedule
23.03.2015
\begin{document}
для поиска основных файлов LaTeX, а затем поиска\input
и\include
в этих файлах для поиска файлов, содержащих фрагменты LaTeX. Любой файл без\begin{document}
, который не включен в известный файл LaTeX, скорее всего, является обычным файлом TeX. - person G. Poore   schedule 09.10.2014