summaryrefslogtreecommitdiff
path: root/src/luaotfload.sty
blob: bff949b22012671f24747974f4ba839d4409cee5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
%% Copyright (C) 2009-2015
%%
%%      by  Elie Roux      <elie.roux@telecom-bretagne.eu>
%%      and Khaled Hosny   <khaledhosny@eglug.org>
%%      and Philipp Gesang <philipp.gesang@alumni.uni-heidelberg.de>
%%      and Dohyun Kim     <nomosnomos@gmail.com>
%%
%% This file is part of Luaotfload.
%%
%%      Home:      https://github.com/lualatex/luaotfload
%%      Support:   <lualatex-dev@tug.org>.
%%
%% Luaotfload is under the GPL v2.0 (exactly) license.
%%
%% ----------------------------------------------------------------------------
%%
%% Luaotfload is free software; you can redistribute it and/or
%% modify it under the terms of the GNU General Public License
%% as published by the Free Software Foundation; version 2
%% of the License.
%%
%% Luaotfload is distributed in the hope that it will be useful,
%% but WITHOUT ANY WARRANTY; without even the implied warranty of
%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
%% GNU General Public License for more details.
%%
%% You should have received a copy of the GNU General Public License
%% along with Luaotfload; if not, see <http://www.gnu.org/licenses/>.
%%
%% ----------------------------------------------------------------------------
%%
%% Classical Plain+\LATEX package initialization.
%%
\csname ifluaotfloadloaded\endcsname
\let\ifluaotfloadloaded\endinput
\bgroup\expandafter\expandafter\expandafter\egroup
\expandafter\ifx\csname selectfont\endcsname\relax
 \ifdefined\newluafunction\else
  \input luatexbase.sty
 \fi
\else
  \NeedsTeXFormat{LaTeX2e}
  \ProvidesPackage{luaotfload}%
    %% FIXME  The date is meaningless, we need to find a way to
    %%        use the git revision instead.
    [2015/03/29 v2.6 OpenType layout system]
 \ifdefined\newluafunction\else
    \RequirePackage{luatexbase}
 \fi
\fi
\ifdefined \RequireLuaModule
 \RequireLuaModule{luaotfload-main}
\else
  \directlua{require("luaotfload-main")}
\fi

% for compatibility with beamer class, which loads pgf package.
\ifcsname selectfont\endcsname
  \AtBeginDocument{\@ifpackageloaded{pgfsys}{
    \csname newtoks\endcsname\pgf@sys@pgf@resource@list@extgs@toks
    \directlua{luaotfload.pgf_loaded=\the\allocationnumber}
    \def\pgf@sys@pgf@resource@list@extgs{\the\pgf@sys@pgf@resource@list@extgs@toks}
    \def\pgf@sys@addpdfresource@extgs@plain#1{\global\pgf@sys@pgf@resource@list@extgs@toks
      \expandafter{\the\pgf@sys@pgf@resource@list@extgs@toks #1}}
  }{}}
\endinput\fi
% under plain tex, tikz (pgf) should be loaded before luaotfload.
\ifcsname pgf@sys@pgf@resource@list@extgs\endcsname\else\endinput\fi
\count255=\the\catcode`@\relax
\catcode`@=11\relax
\newtoks\pgf@sys@pgf@resource@list@extgs@toks
\directlua{luaotfload.pgf_loaded=\the\allocationnumber}
\def\pgf@sys@pgf@resource@list@extgs{\the\pgf@sys@pgf@resource@list@extgs@toks}
\def\pgf@sys@addpdfresource@extgs@plain#1{\global\pgf@sys@pgf@resource@list@extgs@toks
  \expandafter{\the\pgf@sys@pgf@resource@list@extgs@toks #1}}
\catcode`@=\the\count255\relax