% Font logic defaults.
% This file defines default values and loads the internal logic layers.

\RequirePackage{expl3}
\RequirePackage{xparse}
% Text-family selection must not overwrite the legacy Computer Modern math
% alphabets. Explicit unicode-math routes configure their own math font later.
\RequirePackage[no-math]{fontspec}

% -----------------------------------------------------------------
% System defaults
% -----------------------------------------------------------------

\providecommand{\FontDefaultScope}{local}
\providecommand{\FontDefaultScriptClass}{latin}
\providecommand{\FontDefaultFallbackMode}{soft}

\providecommand{\FontDefaultInlineAxis}{horizontal}
\providecommand{\FontDefaultInlineDirection}{ltr}
\providecommand{\FontDefaultBlockProgression}{ttb}

\providecommand{\FontDefaultPreserveSpaces}{false}
\providecommand{\FontDefaultInlineBehavior}{normal}
\providecommand{\FontDefaultVerticalStrategy}{fallen}

\providecommand{\FontDefaultHasSerif}{true}
\providecommand{\FontDefaultHasSans}{false}
\providecommand{\FontDefaultHasMono}{false}
\providecommand{\FontDefaultSupportsBold}{false}
\providecommand{\FontDefaultSupportsItalic}{false}
\providecommand{\FontDefaultSupportsBoldItalic}{false}
\providecommand{\FontDefaultBackend}{generic}

% Load the internal font logic layers.
\RequirePackage{import}
\makeatletter
\@ifundefined{ifNextSystemInstalled}
  {\newif\ifNextSystemInstalled\NextSystemInstalledfalse}
  {}
\makeatother

\ifNextSystemInstalled
  \input{core/fonts/impe-fonts-style.tex}
  \input{core/fonts/impe-fonts-writing.tex}
  \input{core/fonts/impe-fonts-script.tex}
  \input{core/fonts/impe-fonts-behavior.tex}
  \input{core/fonts/impe-fonts-externalized.tex}
  \input{core/fonts/impe-fonts-interface.tex}
\else
  \subimport{./}{impe-fonts-style.tex}
  \subimport{./}{impe-fonts-writing.tex}
  \subimport{./}{impe-fonts-script.tex}
  \subimport{./}{impe-fonts-behavior.tex}
  \subimport{./}{impe-fonts-externalized.tex}
  \subimport{./}{impe-fonts-interface.tex}
\fi
