summaryrefslogtreecommitdiff
path: root/fonts/fontawesome5/tex/fontawesome5.lua
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/fontawesome5/tex/fontawesome5.lua
Initial commit
Diffstat (limited to 'fonts/fontawesome5/tex/fontawesome5.lua')
-rw-r--r--fonts/fontawesome5/tex/fontawesome5.lua58
1 files changed, 58 insertions, 0 deletions
diff --git a/fonts/fontawesome5/tex/fontawesome5.lua b/fonts/fontawesome5/tex/fontawesome5.lua
new file mode 100644
index 0000000000..78589c0a8e
--- /dev/null
+++ b/fonts/fontawesome5/tex/fontawesome5.lua
@@ -0,0 +1,58 @@
+-- Copyright 2018--2019 Marcel Krueger
+--
+-- This work may be distributed and/or modified under the
+-- conditions of the LaTeX Project Public License, either version 1.3c
+-- of this license or (at your option) any later version.
+-- The latest version of this license is in
+-- http://www.latex-project.org/lppl.txt
+-- and version 1.3 or later is part of all distributions of LaTeX
+-- version 2005/12/01 or later.
+--
+-- This work has the LPPL maintenance status `maintained'.
+--
+-- The Current Maintainer of this work is Marcel Krueger
+--
+
+function fontawesome5_analyze_current_font(fontid)
+ local specialnames = {
+ ["500px"]=true,
+ h1=true,
+ h2=true,
+ h3=true,
+ wifi=true,
+ ["wifi-1"]=true,
+ ["wifi-2"]=true,
+ signal=true,
+ ["signal-1"]=true,
+ ["signal-2"]=true,
+ ["signal-3"]=true,
+ ["signal-4"]=true,
+ ["signal-alt-1"]=true,
+ ["signal-alt-2"]=true,
+ ["signal-alt-3"]=true,
+ ["repeat"]=true,
+ ["repeat-1"]=true,
+ ["dice-d4"]=true,
+ ["dice-d6"]=true,
+ ["dice-d8"]=true,
+ ["dice-d10"]=true,
+ ["dice-d12"]=true,
+ ["dice-d20"]=true,
+ }
+ for name, value in pairs(font.getfont(fontid).resources.unicodes) do
+ tex.sprint(
+ luatexbase.catcodetables.expl,
+ "\\exp_args:NNc\\tex_global:D\\tex_chardef:D{c__fontawesome_slot_" .. name .. '_char}' .. value .. '\\scan_stop:')
+ if not (
+ ('-alt' == string.sub(name, -4))
+ or specialnames[name]
+ or value < 256
+ ) then
+ tex.sprint(
+ luatexbase.registernumber("CatcodeTableExpl"),
+ "\\cs_gset_protected:Npn"
+ .. string.gsub('\\fa-' .. name, '-(%w)', string.upper)
+ .. "{\\faPreselectedIcon{" .. name .. "}}")
+ end
+ end
+end