summaryrefslogtreecommitdiff
path: root/macros/luatex/optex/f-libertine-s.opm
blob: 123585dac7128d372ad063b4f02e8ecd70f56c3f (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
%% This is part of OpTeX project, see http://petr.olsak.net/optex

\_fontdecl [Linux Libertine] \Libertine {Free Linux Libertine fonts}
        {\sans \mono \caps} {\rm \bf \it \bi \initials \displ \keybr} {}
        {Linux Libertine O}

\_wlog{\_detokenize{%
Modifiers^^J
 \sans ...... smaller serifs^^J
 \caps ...... caps & small caps^^J
Special variants:^^J
 \initials .. special initials (only uppercase letters)^^J
 \displ ..... display variant, suitable at big sizes^^J
 \mono ...... non-proportional^^J
 \keybr ..... keyboard, emulates keyboard buttons^^J
}}

\_protected\_def \Libertine {%
   \_def \_currfamily {Libertine}%
   \_def\_fontnamegen {Linux \_mainfamV\_V\_subfamV O/\_currV:\_capsV\_fontfeatures}% 
   \_resetmod
}

\_moddef \resetmod {\_fsetV mainfam=Libertine,subfam={},caps={} \_fvars {} B I BI }
\_moddef \sans     {\_fsetV mainfam=Biolinum,subfam={} }
\_moddef \mono     {\_fsetV mainfam=Libertine,subfam={Mono } \_fvars {} . . . }
\_moddef \caps     {\_fsetV caps=+smcp; }
\_moddef \nocaps   {\_fsetV caps={} }

\_famvardef \initials {\_fsetV mainfam=Libertine,subfam={Initials } \_fvars {} . . . \rm}
\_famvardef \displ    {\_fsetV mainfam=Libertine,subfam={Display } \_fvars {} . . . \rm}
\_famvardef \keybr    {\_fsetV mainfam=Biolinum,subfam={Keyboard } \_fvars {} . . . \rm}

\_initfontfamily % new font family must be initialized

\_endcode

This is another example where the font names (no font files) are declared.
Linux Libertine font is typically installed on Linux systems.
The \_V macro generates a space. We provide following fonts:

normal:  "Linux Libertine O:\_fontfeatures"   
         "Linux Libertine O/B:\_fontfeatures" 
         "Linux Libertine O/I:\_fontfeatures" 
         "Linux Libertine O/BI:\_fontfeatures"
mono  :  "Linux Libertine Mono O:\_fontfeatures"   
sans:    "Linux Biolinum O:\_fontfeatures"    
         "Linux Biolinum O/B:\_fontfeatures"
         "Linux Biolinum O/I:\_fontfeatures"
         "Linux Biolinum O/BI:\_fontfeatures"
special: "Linux Libertine Initials O:\_fontfeatures"
         "Linux Libertine Display O:\_fontfeatures"
         "Linux Biolinum Keyboard O:\_fontfeatures"
 
Another file f-libertine.opm declares Linux Libertine family from font files.