\newcommand{\prefix}{+} % the character used by grep to filter 'good' output
-\newcommand{\AddLayout}[4][\default]{
+\newcommand{\AddLayout}[5][\default]{
\def\default{#2}
- \immediate\write\layouts{"#2" "#1" "#3" "#4"}}
+ \immediate\write\layouts{"#2" "#1" "#3" "#4" "#5"}}
\newcommand{\AddVariable}[2]{
\immediate\write\vars{chk_#1='#2'}}
\def\files{#1}
\message{^^J\prefix checking for #3 #2 [#1]...}
\let\firstelement\relax
+ \let\missingelements\empty
\existstrue
\@for\file:=\files\do{
\ifx\firstelement\relax
\edef\firstelement{\file}
\fi
- \IfFileExists{\file}
+ \@expandtwoargs\in@{.}{\file}
+ \ifin@
+ \def\myfile{\file}
+ \else
+ \def\myfile{\file.#4}
+ \fi
+ \IfFileExists{\myfile}
{}
- {\IfFileExists{\file.#4}{}{\existsfalse}}
+ {
+ \existsfalse
+ \ifx\missingelements\empty
+ \edef\missingelements{\myfile}
+ \else
+ \edef\missingelements{\missingelements,\myfile}
+ \fi
+ }
}
\ifexists
\message{yes^^J}
\newcommand{\DeclareLaTeXClass}[2][\default]{
\TestItem[#1]{\layoutname}{document class}{cls}
- {\AddLayout[\firstelement]{\layoutname}{#2}{true}}
- {\AddLayout[\firstelement]{\layoutname}{#2}{false}}
+ {\AddLayout[\firstelement]{\layoutname}{#2}{true}{\missingelements}}
+ {\AddLayout[\firstelement]{\layoutname}{#2}{false}{\missingelements}}
}
% Only for compatibility. Will be removed later.
\message{^^J\prefix checking for docbook\space\space class \layoutname... }
\@ifundefined{hasdocbook}
{\message{no^^J}
- \AddLayout[#1]{\layoutname}{#2}{false}}
+ \AddLayout[#1]{\layoutname}{#2}{false}{docbook}}
{\message{yes^^J}
- \AddLayout[#1]{\layoutname}{#2}{true}}
+ \AddLayout[#1]{\layoutname}{#2}{true}{}}
}
% Stolen from article.cls
\immediate\write\layouts{%
# This file declares layouts and their associated definition files.^^J%
# It has been automatically generated by configure^^J%
-# Use "Options/Reconfigure" if you need to update it after a^^J%
+# Use "Tools/Reconfigure" if you need to update it after a^^J%
# configuration change. Run ./configure manually to update the^^J%
# system wide version of this file.}
% The list of layout files has been put in this file here by the
% configure script.
\input{chklayouts}
+\input{chkmodules}
%%% Packages
\TestPackage{accents}
\TestPackage{algorithm}
\TestPackage{amstext}
+\TestPackage[arabic.ldf]{arabi}
\TestPackage{array}
\TestPackage{babel}
\TestPackage{bibtopic}
\TestPackage{bm}
\TestPackage{booktabs}
\TestPackage{braille}
+\TestPackage{breakurl}
\TestPackage{CJKutf8}
\TestPackage{color} % this one should be there if graphics.sty is there.
\TestPackage{covington}
\TestPackage{endnotes}
\TestPackage{enumitem}
\TestPackage{esint}
+\TestPackage{hhline}
\TestPackage{ifsym}
\TestPackage{ifthen}
\TestPackage{fancybox}
\TestPackage{fancyhdr}
+\TestPackage{fixltx2e}
+\TestPackage{float}
\TestPackage{framed}
\TestPackage{geometry}
\TestPackage{graphicx}
\TestPackage{hyperref}
+\TestPackage{hyphenat}
\TestPackage[japanese.ldf]{japanese}
\TestPackage{jurabib}
\TestPackage{latex8}
+\TestPackage{lettrine}
\TestPackage{listings}
+\TestPackage[lithuanian.ldf]{lithuanian}
\TestPackage{longtable}
+\TestPackage{luainputenc}
\TestPackage{mathdots}
+\TestPackage{mathrsfs}
\TestPackage{mhchem}
+\TestPackage[mongolian.ldf]{mongolian}
\TestPackage{natbib}
\TestPackage{nicefrac}
\TestPackage{nomencl}
\TestPackage{pdfcolmk}
+\TestPackage{polyglossia}
\TestPackage{pdfpages}
\TestPackage{prettyref}
\TestPackage{preview}
+\TestPackage{refstyle}
\TestPackage{rotating}
\TestPackage{rotfloat}
\TestPackage{setspace}
\TestPackage{subfig}
\TestPackage{Sweave}
\TestPackage{textcomp}
+\TestPackage{subscript}
+\TestPackage[turkmen.ldf]{turkmen}
\TestPackage{ulem}
\TestPackage{units}
\TestPackage{url}
\TestPackage{varioref}
+\TestPackage{wasysym}
\TestPackage{wrapfig}
\TestPackage{xargs}
\TestPackage{xcolor}
\TestPackage{ccfonts}
\TestPackage{cmbright}
\TestPackage{eco}
+\TestPackage{feyn}
\TestPackage{fourier}
\TestPackage{lmodern}
\TestPackage{luximono}
\TestPackage{tipa}
+% necessary to get correct size for InstantPreview images created by dvipng
+\TestPackage[c70fs.fd]{zhmetrics}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%