X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fchkconfig.ltx;h=76ece71f00f01161190dc99772d4144195498114;hb=0601336c243e1c333ec9607fe05c7d40e7b50485;hp=8fe2f40c755d8dfa6b30f27a22537f3871708941;hpb=3a99e351d9f2678b0d8274ae7c03a73f6bea03eb;p=lyx.git diff --git a/lib/chkconfig.ltx b/lib/chkconfig.ltx index 8fe2f40c75..76ece71f00 100644 --- a/lib/chkconfig.ltx +++ b/lib/chkconfig.ltx @@ -9,7 +9,7 @@ % This script is in fact a complete rewrite of the original chkconfig % script. Expect bugs. -%%% If you want to add new packages/documentclasses to be recognized, +%%% If you want to add new packages/document classes to be recognized, %%% read the explanation that follow and jump to the section 'Actual %%% inspection code' below. You do not need to understand the ugly %%% LaTeX code below to help improving chkconfig.ltx :-) @@ -27,6 +27,9 @@ %%% This inset will automatically display a boxed "yes" or "no" %%% depending on the availability of the package. %%% +%%% Since \TestPackage does not find font metric (tfm) files, there's an +%%% additional test \TestFont[]{} for this purpose. +%%% %%% For document classes, things are even simpler, since you do not %%% need to edit this file. Just put your layout file in some place %%% where LyX can find it and add if you wish a description in @@ -51,7 +54,9 @@ % script generates the needed macro calls automatically. % \TestPackage[]{} tests whether .sty (or , % if it is provided) exists. -% Both commands call \AddVariable to give value 'yes' or 'no' to +% \TestFont[]{} test whether .tfm (or .tfm, +% if provided) exists. +% These three commands call \AddVariable to give value 'yes' or 'no' to % the variable chk_. %%% @@ -59,7 +64,13 @@ \newcommand{\AddLayout}[5][\default]{ \def\default{#2} - \immediate\write\layouts{"#2" "#1" "#3" "#4" "#5"}} + \@ifundefined{category@#2}{% + \immediate\write\layouts{"#2" "#1" "#3" "#4" "#5" ""}% + }{% + \immediate\write\layouts{"#2" "#1" "#3" "#4" "#5" "\@nameuse{category@#2}"}% + } +} + \newcommand{\AddVariable}[2]{ \immediate\write\vars{chk_#1='#2'}} @@ -109,6 +120,23 @@ #6 \fi} +% Adapted from ltxcheck.tex +\newcommand{\TestFont}[2][\default]{ + \def\default{#2} + \batchmode + \font\test=#1\relax + \nonstopmode + \message{^^J\prefix checking for font #2 [#1]...} + \ifx\test\nullfont + \message{no^^J} + \AddVariable{#2}{no} + \@tempswatrue + \else + \message{yes^^J} + \AddVariable{#2}{yes} + \AddPackage{#2} + \fi} + \newcommand{\TestPackage}[2][\default]{ \TestItem[#1]{#2}{package}{sty}{\AddPackage{#2}}{}} @@ -126,6 +154,12 @@ {\AddLayout[\firstelement]{\layoutname}{#2}{false}{\missingelements}} } +\newcommand{\DeclareCategory}[2]{ + \@ifundefined{category@#1} + {\global\@namedef{category@#1}{#2}}% + {}% we have already defined this one. +} + % Only for compatibility. Will be removed later. \let\DeclareSGMLClass=\DeclareDocBookClass @@ -233,19 +267,17 @@ \fi -%%% Document classes -% The list of layout files has been put in this file here by the -% configure script. -\input{chklayouts} -\input{chkmodules} - - %%% Packages \TestPackage{accents} +\TestPackage{achicago} \TestPackage{algorithm} \TestPackage{amstext} +\TestPackage{apacite} +\TestPackage{apalike} \TestPackage[arabic.ldf]{arabi} \TestPackage{array} +\TestPackage{astron} +\TestPackage{authordate1-4} \TestPackage{babel} \TestPackage{bibtopic} \TestPackage{bidi} @@ -256,18 +288,22 @@ \TestPackage{CJKutf8} \TestPackage{calc} \TestPackage{cancel} +\TestPackage{chicago} \TestPackage{color} % this one should be there if graphics.sty is there. \TestPackage{covington} \TestPackage{csquotes} +\TestPackage[koi8-r.def]{cyrillic} \TestPackage{dvipost} \TestPackage{endnotes} \TestPackage{enumitem} \TestPackage{esint} \TestPackage{eso-pic} \TestPackage{fontspec} +\TestPackage{harvard} \TestPackage{hhline} \TestPackage{ifthen} \TestPackage{iftex} +\TestPackage[iso-8859-7.def]{greek-inputenc} \TestPackage{fancybox} \TestPackage{fancyhdr} \TestPackage{fixltx2e} @@ -291,7 +327,9 @@ \TestPackage{mathtools} \TestPackage{mhchem} \TestPackage[mongolian.ldf]{mongolian} +\TestPackage{mslapa} \TestPackage{multirow} +\TestPackage{named} \TestPackage{natbib} \TestPackage{nicefrac} \TestPackage{nomencl} @@ -307,6 +345,8 @@ \TestPackage{slashed} \TestPackage{soul} \TestPackage{splitidx} +\TestPackage{stackrel} +\TestPackage{stmaryrd} \TestPackage{subfig} \TestPackage{Sweave} \TestPackage{textcomp} @@ -314,6 +354,7 @@ \TestPackage[turkmen.ldf]{turkmen} \TestPackage{ulem} \TestPackage{undertilde} +\TestPackage{unicode-math} \TestPackage{units} \TestPackage{url} \TestPackage{varioref} @@ -328,11 +369,15 @@ \TestPackage{braket} \TestPackage{cancel} \TestPackage{colortbl} +\TestPackage{diagbox} +\TestPackage{etoolbox} \TestPackage{eurosym} +\TestPackage{fp} \TestPackage{marginnote} \TestPackage{picinpar} +\TestPackage{pict2e} \TestPackage{sidecap} -\TestPackage{was} +\TestPackage{upgreek} % psnfss is in fact the name of a set of style files, among which % times.sty. If times.sty is here, we will assume that everything is fine. @@ -354,18 +399,27 @@ % Other font packages \TestPackage{ae} \TestPackage{bera} +\TestPackage{biolinum-type1} +\TestPackage{cbgreek}% for Greek \TestPackage{ccfonts} \TestPackage{cmbright} \TestPackage{eco} +\TestPackage{eulervm} \TestPackage{feyn} \TestPackage{fourier} +\TestPackage{garamondx} +\TestFont[zgmr8r]{garamondx-fonts} \TestPackage{libertine} +\TestPackage{libertine-type1} \TestPackage{lmodern} \TestPackage{luximono} -\TestPackage{mathdesign}% For Roman fonts +\TestPackage{mathdesign}% for Roman fonts \TestPackage{mdbch} \TestPackage{mdput} \TestPackage{mdugm} +\TestPackage{MinionPro} +\TestFont[rzmnr]{minion2newtx} +\TestPackage{newtxmath} \TestPackage{tgadventor} \TestPackage{tgbonum} \TestPackage{tgchorus} @@ -374,6 +428,8 @@ \TestPackage{tgpagella} \TestPackage{tgschola} \TestPackage{tgtermes} +\TestFont[ugmr8r]{ugm} +\TestFont[uopr8a]{urwclassico} \TestPackage{tipa} \TestPackage{tipx} \TestPackage{tone} @@ -396,6 +452,11 @@ %\TestPackage{mathabx} %\TestPackage{mathdesign}% But see above! +%%% Document classes +% The list of layout files has been put in this file here by the +% configure script. +\input{chklayouts} +\input{chkmodules} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%% END ACTUAL CONFIGURATION INSPECTION CODE %%%%%%%%%%%%%%%%%%%%%%%%%%%%