diff options
author | Norbert Preining <norbert@preining.info> | 2024-04-10 03:00:55 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-04-10 03:00:55 +0000 |
commit | f58130da9ab2f6181b0b2ca4e02895b11d902e20 (patch) | |
tree | 3e7d142983aab069b10f920bb36a95b9fb1af620 /macros/luatex | |
parent | eb49829734b61c8d5a80ff94393e6c28739ee969 (diff) |
CTAN sync 202404100300
Diffstat (limited to 'macros/luatex')
14 files changed, 286 insertions, 158 deletions
diff --git a/macros/luatex/generic/luakeys/README.md b/macros/luatex/generic/luakeys/README.md index b4a0ddb8a8..26ede28a87 100644 --- a/macros/luatex/generic/luakeys/README.md +++ b/macros/luatex/generic/luakeys/README.md @@ -14,7 +14,7 @@ mechanism should be pretty robust. ## License -Copyright 2021-2023 Josef Friedrich +Copyright 2021-2024 Josef Friedrich This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c @@ -233,7 +233,7 @@ This project uses [semantic versioning](https://semver.org). Update version in: -* documentation.tex +* luakeys-doc.tex * luakeys-debug.sty * luakeys.sty * luakeys.lua diff --git a/macros/luatex/generic/luakeys/luakeys-debug.sty b/macros/luatex/generic/luakeys/luakeys-debug.sty index ef77fff632..57e1bae7f8 100644 --- a/macros/luatex/generic/luakeys/luakeys-debug.sty +++ b/macros/luatex/generic/luakeys/luakeys-debug.sty @@ -1,5 +1,5 @@ %% luakeys-debug.sty -%% Copyright 2021-2023 Josef Friedrich +%% Copyright 2021-2024 Josef Friedrich % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c @@ -17,6 +17,6 @@ % luakeys-debug.sty and luakeys-debug.tex. \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{luakeys-debug}[2023/01/13 v0.13.0 Debug package for luakeys.] +\ProvidesPackage{luakeys-debug}[2024/04/09 v0.14.0 Debug package for luakeys.] \input luakeys-debug.tex diff --git a/macros/luatex/generic/luakeys/luakeys-debug.tex b/macros/luatex/generic/luakeys/luakeys-debug.tex index 0b4830f779..d505c1abbd 100644 --- a/macros/luatex/generic/luakeys/luakeys-debug.tex +++ b/macros/luatex/generic/luakeys/luakeys-debug.tex @@ -1,5 +1,5 @@ %% luakeys-debug.tex -%% Copyright 2021-2023 Josef Friedrich +%% Copyright 2021-2024 Josef Friedrich % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c @@ -19,14 +19,16 @@ \directlua { luakeys = require('luakeys')() + if lparse == nil then + lparse = require('lparse') + end } \def\luakeysdebug% {% \directlua% { - local oarg = luakeys.utils.scan_oarg() - local marg = token.scan_argument(false) + local oarg, marg = lparse.scan('o v') local opts if oarg then opts = luakeys.parse(oarg, { format_keys = { 'snake', 'lower' } }) diff --git a/macros/luatex/generic/luakeys/documentation.tex b/macros/luatex/generic/luakeys/luakeys-doc.tex index 2e57cbae19..e14569b459 100644 --- a/macros/luatex/generic/luakeys/documentation.tex +++ b/macros/luatex/generic/luakeys/luakeys-doc.tex @@ -64,7 +64,7 @@ The default value of the option “\texttt{#1}” is: \href{https://github.com/Josef-Friedrich/luakeys} {github.com/Josef-Friedrich/luakeys}% } -\date{v0.13.0 from 2023/01/13} +\date{v0.14.0 from 2024/04/09} \maketitle @@ -1489,6 +1489,24 @@ result store. % %% +\subsection{Class “\texttt{DefinitionManager()}”} + +% Die Klasse DefinitionManager ermöglicht es Schlüssel-Wert-Definitionen +% in einem Objekt abzulegen. +The DefinitionManager class makes it possible to store key-value +definitions in a central location. +% Über die Methoden \lua{include} und \lue{exclude} können auf Basis der +% gespeicherten Definitionen neue Teilmengen an Definitionen gebildet +% werden. +New subsets of definitions can be formed based on the saved definitions +using the \lua{include} and \lua{exclude} methods. + +\InputLua[firstline=4]{definition-manager.lua} + +%% +% +%% + \subsection{Table “\texttt{is}”} % In der Tabelle \lua{is} werden einige Funktionen zusammengefasst, die @@ -1540,7 +1558,7 @@ therefore accepts any data type. % In der Tabelle \lua{utils} sind einige Hilfsfunktionen gebündelt. The \lua{utils} table bundles some auxiliary functions. -\InputLua[firstline=3,lastline=37]{utils/all.lua} +\InputLua[firstline=3,lastline=35]{utils/all.lua} %% % @@ -1575,52 +1593,6 @@ values in the target table. % %% -\subsubsection{Function “\texttt{utils.scan_oarg(initial_delimiter?, end_delimiter?): string}”} - -% Plain \TeX{} kennt keine optionalen Argumente (oarg). -Plain \TeX{} does not know optional arguments (oarg). -% -% Die Funktion ermöglicht es nicht nur in \LaTeX{}, sondern auch in -% Plain \TeX{} nach optionalen Argumenten zu suchen. -The function \\ \lua{utils.scan_oarg(initial_delimiter?, -end_delimiter?): string} allows to search for optional arguments not only -in \LaTeX{} but also in Plain \TeX. -% -% Die Funktion basiert auf der Token-Bibliothek. -The function uses the token library built into Lua\TeX{}. -% -% Die beiden Parameter \lua{initial_delimiter} und \lua{end_delimiter} -% können weggelassen werden. -The two parameters \lua{initial_delimiter} and \lua{end_delimiter} can -be omitted. -% -% Dann werden eckige Klammern als Begrenzungszeichen angenommen. -Then square brackets are assumed to be delimiters. -% -% Dieser Lua-Code \lua{utils.scan_oarg('(', ')')} sucht beispielsweise -% nach an einem optionalen Argument in runden Klammern. -For example, this Lua code \lua{utils.scan_oarg('(', ')')} searches for -an optional argument in round brackets -% -% Die Funktion gibt die Zeichenkette zwischen den Begrenzungszeichen -% zurück, oder nil wenn Begrenzungszeichen gefunden werden konnten. -The function returns the string between the delimiters or \lua{nil} if -no delimiters could be found. -% -% Die Begrenzungszeichen sind im Ergebnis nicht enthalten. -The delimiters themselves are not included in the result. -% -% Nach dem \latex{\directlua{}} darf das Makro, indem -% \lua{utils.scan_oarg} eingesetzt wird, zu keinen Zeichen expandieren. -After the \latex{\directlua{}}, the macro using \lua{utils.scan_oarg} -must not expand to any characters. - -\InputLatex{utils/scan-oarg-plain.tex} - -%% -% -%% - \subsection{Table “version”} % Das luakeys Projekt verwendet semantic versioning diff --git a/macros/luatex/generic/luakeys/luakeys.lua b/macros/luatex/generic/luakeys/luakeys.lua index ede652cf64..224c77ed72 100644 --- a/macros/luatex/generic/luakeys/luakeys.lua +++ b/macros/luatex/generic/luakeys/luakeys.lua @@ -1,5 +1,5 @@ ---luakeys.lua ----Copyright 2021-2023 Josef Friedrich +---Copyright 2021-2024 Josef Friedrich --- ---This work may be distributed and/or modified under the ---conditions of the LaTeX Project Public License, either version 1.3c @@ -265,54 +265,6 @@ local utils = (function() throw_error_message(message, help) end - --- - ---Scan for an optional argument. - --- - ---@param initial_delimiter? string # The character that marks the beginning of an optional argument (by default `[`). - ---@param end_delimiter? string # The character that marks the end of an optional argument (by default `]`). - --- - ---@return string|nil # The string that was enclosed by the delimiters. The delimiters themselves are not returned. - local function scan_oarg(initial_delimiter, - end_delimiter) - if initial_delimiter == nil then - initial_delimiter = '[' - end - - if end_delimiter == nil then - end_delimiter = ']' - end - - --- - ---@param t Token - --- - ---@return string - local function convert_token(t) - if t.index ~= nil then - return utf8.char(t.index) - else - return '\\' .. t.csname - end - end - - local function get_next_char() - local t = token.get_next() - return convert_token(t), t - end - - local char, t = get_next_char() - if char == initial_delimiter then - local oarg = {} - char = get_next_char() - while char ~= end_delimiter do - table.insert(oarg, char) - char = get_next_char() - end - return table.concat(oarg, '') - else - token.put_next(t) - end - end - local function visit_tree(tree, callback_func) if type(tree) ~= 'table' then throw_error_message( @@ -557,7 +509,7 @@ local utils = (function() ---@private local function print_message(message, ...) - local args = {...} + local args = { ... } for index, value in ipairs(args) do args[index] = colorize(value) end @@ -698,7 +650,6 @@ local utils = (function() tex_printf = tex_printf, throw_error_message = throw_error_message, throw_error_code = throw_error_code, - scan_oarg = scan_oarg, ansi_color = ansi_color, log = log, } @@ -1226,23 +1177,23 @@ local function main() Variable('unit') ) / capture_dimension, - ---for is.number() - number_only = Variable('number') * -1, + sign = Set('-+'), - ---capture number - number = Variable('tex_number') / tonumber, + digit = Range('09'), - ---sign? white_space? (integer+ fractional? / fractional) - tex_number = - Variable('sign')^0 * white_space^0 * - (Variable('integer')^1 * Variable('fractional')^0) + - Variable('fractional'), + integer = (Variable('sign')^-1) * white_space^0 * (Variable('digit')^1), - sign = Set('-+'), + fractional = (Pattern('.') ) * (Variable('digit')^1), + + ---(integer fractional?) / (sign? white_space? fractional) + tex_number = (Variable('integer') * (Variable('fractional')^-1)) + + ((Variable('sign')^-1) * white_space^0 * Variable('fractional')), - fractional = Pattern('.') * Variable('integer')^1, + ---for is.number() + number_only = Variable('number') * -1, - integer = Range('09')^1, + ---capture number + number = Variable('tex_number') / tonumber, ---'bp' / 'BP' / 'cc' / etc. ---https://raw.githubusercontent.com/latex3/lualibs/master/lualibs-util-dim.lua @@ -1977,41 +1928,146 @@ local function main() end --- - ---A table to store parsed key-value results. - local result_store = {} + ---@param defs DefinitionCollection + ---@param opts? OptionCollection + local function define(defs, opts) + return function(kv_string, inner_opts) + local options - return { - new = main, + if inner_opts ~= nil and opts ~= nil then + options = utils.merge_tables(opts, inner_opts) + elseif inner_opts ~= nil then + options = inner_opts + elseif opts ~= nil then + options = opts + end + + if options == nil then + options = {} + end - version = { 0, 13, 0 }, + options.defs = defs - ---@see parse - parse = parse, + return parse(kv_string, options) + end + end + + ---@alias KeySpec table<integer|string, string> + + local DefinitionManager = (function() + ---@class DefinitionManager + DefinitionManager = {} + + ---@private + DefinitionManager.__index = DefinitionManager --- - ---@param defs DefinitionCollection - ---@param opts? OptionCollection - define = function(defs, opts) - return function(kv_string, inner_opts) - local options - - if inner_opts ~= nil and opts ~= nil then - options = utils.merge_tables(opts, inner_opts) - elseif inner_opts ~= nil then - options = inner_opts - elseif opts ~= nil then - options = opts + ---@param key string + --- + ---@return Definition + function DefinitionManager:get(key) + return self.defs[key] + end + + --- + ---@param key_spec KeySpec + ---@param clone? boolean + --- + ---@return DefinitionCollection + function DefinitionManager:include(key_spec, clone) + local selection = {} + for key, value in pairs(key_spec) do + local src + local dest + if type(key) == 'number' then + src = value + dest = value + else + src = key + dest = value + end + if clone then + selection[dest] = utils.clone_table(self.defs[src]) + else + selection[dest] = self.defs[src] end + end + return selection + end - if options == nil then - options = {} + --- + ---@param key_spec KeySpec + ---@param clone? boolean + --- + ---@return DefinitionCollection + function DefinitionManager:exclude(key_spec, clone) + local spec = {} + for key, value in pairs(key_spec) do + if type(key) == 'number' then + spec[value] = value + else + spec[key] = value end + end - options.defs = defs + local selection = {} + for key, def in pairs(self.defs) do + if spec[key] == nil then + if clone then + selection[key] = utils.clone_table(def) + else + selection[key] = def + end + end + end + return selection + end + + --- + ---@param key_selection KeySpec + function DefinitionManager:parse(kv_string, key_selection) + return parse(kv_string, { defs = self:include(key_selection) }) + end - return parse(kv_string, options) + --- + ---@param key_selection KeySpec + function DefinitionManager:define(key_selection) + return define(self:include(key_selection)) + end + + ---@param defs DefinitionCollection + --- + ---@return DefinitionManager + return function(defs) + local manager = {} + + for key, def in pairs(defs) do + if def.name ~= nil and type(key) == 'number' then + defs[def.name] = def + defs[key] = nil + end end - end, + + setmetatable(manager, DefinitionManager) + manager.defs = defs + return manager + end + end)() + + --- + ---A table to store parsed key-value results. + local result_store = {} + + return { + new = main, + + version = { 0, 14, 0 }, + + parse = parse, + + define = define, + + DefinitionManager = DefinitionManager, ---@see default_opts opts = default_opts, diff --git a/macros/luatex/generic/luakeys/luakeys.pdf b/macros/luatex/generic/luakeys/luakeys.pdf Binary files differindex 7e7a25c620..2ab59e561c 100644 --- a/macros/luatex/generic/luakeys/luakeys.pdf +++ b/macros/luatex/generic/luakeys/luakeys.pdf diff --git a/macros/luatex/generic/luakeys/luakeys.sty b/macros/luatex/generic/luakeys/luakeys.sty index 6feef78b2a..6369cff49f 100644 --- a/macros/luatex/generic/luakeys/luakeys.sty +++ b/macros/luatex/generic/luakeys/luakeys.sty @@ -1,5 +1,5 @@ %% luakeys.sty -%% Copyright 2021-2023 Josef Friedrich +%% Copyright 2021-2024 Josef Friedrich % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c @@ -17,7 +17,7 @@ % luakeys-debug.sty and luakeys-debug.tex. \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{luakeys}[2023/01/13 v0.13.0 Parsing key-value options using Lua.] +\ProvidesPackage{luakeys}[2024/04/09 v0.14.0 Parsing key-value options using Lua.] \directlua{ if luakeys == nil then luakeys = require('luakeys')() diff --git a/macros/luatex/generic/luakeys/luakeys.tex b/macros/luatex/generic/luakeys/luakeys.tex index f993e7c83f..2bc1f781f9 100644 --- a/macros/luatex/generic/luakeys/luakeys.tex +++ b/macros/luatex/generic/luakeys/luakeys.tex @@ -1,5 +1,5 @@ %% luakeys.tex -%% Copyright 2021-2023 Josef Friedrich +%% Copyright 2021-2024 Josef Friedrich % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c diff --git a/macros/luatex/latex/luacensor/OFL.txt b/macros/luatex/latex/luacensor/OFL.txt new file mode 100644 index 0000000000..fe1a1a6cac --- /dev/null +++ b/macros/luatex/latex/luacensor/OFL.txt @@ -0,0 +1,93 @@ +Copyright 2013 The Redacted Project Authors (https://github.com/christiannaths/redacted-font) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/macros/luatex/latex/luacensor/README b/macros/luatex/latex/luacensor/README.txt index 1e1d26990a..e7c99c552a 100644 --- a/macros/luatex/latex/luacensor/README +++ b/macros/luatex/latex/luacensor/README.txt @@ -1,6 +1,6 @@ luacensor - redacting sensitive information with Lua -version: 1.1.0 +version: 1.1.1 luacensor is a package that takes advantage of Lua to securely redact documents, both by hiding all characters and by slightly varying the length of strings to prevent jigsaw identification. It also is friendly to screen readers by adding alt-text indicating redacted content. @@ -14,4 +14,7 @@ LaTeX Project Public License (LPPL), version 1.3 or later. For suggestions, feature requests, and bug reports, please use the project's GitHub site: https://github.com/ezgranet/luacensor -Version history: 23/02/2022: new `warning' option added to allow for printing a warning with redacted text +Version history: +07/04/2024: fixed issue with luaotfload + + 23/02/2022: new `warning' option added to allow for printing a warning with redacted text diff --git a/macros/luatex/latex/luacensor/Redacted-Regular.ttf b/macros/luatex/latex/luacensor/Redacted-Regular.ttf Binary files differnew file mode 100644 index 0000000000..0fc7a65888 --- /dev/null +++ b/macros/luatex/latex/luacensor/Redacted-Regular.ttf diff --git a/macros/luatex/latex/luacensor/luacensor.pdf b/macros/luatex/latex/luacensor/luacensor-documentation.pdf Binary files differindex f2f27f9805..29a01a9575 100644 --- a/macros/luatex/latex/luacensor/luacensor.pdf +++ b/macros/luatex/latex/luacensor/luacensor-documentation.pdf diff --git a/macros/luatex/latex/luacensor/luacensor.tex b/macros/luatex/latex/luacensor/luacensor-documentation.tex index 10bcc0d18b..e399824c5b 100644 --- a/macros/luatex/latex/luacensor/luacensor.tex +++ b/macros/luatex/latex/luacensor/luacensor-documentation.tex @@ -161,10 +161,9 @@ firstnumber=last ] {latex} %luacensor.sty -%luacensor.sty -\def\luacensorversionnumber{1.1.0} +\def\luacensorversionnumber{1.1.1} \ProvidesPackage{luacensor} -[2022/02/22 \luacensorversionnumber\ +[2024/04/06 \luacensorversionnumber\ Redact sensitive information using Lua] % !TeX program = lualatex % !TeX encoding = utf8 @@ -654,7 +653,7 @@ firstnumber=last %%%%%%%%%%%%%%%%%%%%%%%%%%% \newfontface\wrnstncl{QT Military} \newcommand{\warnword}{WARNING} -\newfontface\smbl{Deja Vu Sans Bold} +\newfontface\smbl{DejaVuSans-Bold} \newcommand{\danger}{\smbl ⚠︎\normalfont} \newcommand{\warnformat}{\sffamily\bfseries \color{red}} \newcommand{\textwarn}{This document is {\underline{NOT}} redacted. It contains private and confidential personal data, and may {\underline{NOT}} be distributed, published, or shown to those without the right to view such information. The publication of the information in this document may constitute a contempt of court, punishable by a term of imprisonment.} @@ -716,6 +715,9 @@ firstnumber=last \AtBeginDocument{\confwarning} \end{minted} \section{Version History} +\subsection{\texttt{1.1.1}} +\ttfamily 6 April 2024: Fixed an issue with OTF for dejavusans not loading by using the postscript name. + \subsection{\texttt{1.1.0}} \ttfamily 22 February 2022: Added the `warning' option and fixed a few errors in the code resulting from \TeX\ primitives causing issues. \subsection{\texttt{1.0.0}} diff --git a/macros/luatex/latex/luacensor/luacensor.sty b/macros/luatex/latex/luacensor/luacensor.sty index 22a8003e2d..b4c7f45bea 100644 --- a/macros/luatex/latex/luacensor/luacensor.sty +++ b/macros/luatex/latex/luacensor/luacensor.sty @@ -1,7 +1,7 @@ %luacensor.sty -\def\luacensorversionnumber{1.1.0} +\def\luacensorversionnumber{1.1.1} \ProvidesPackage{luacensor} -[2022/02/22 \luacensorversionnumber\ +[2024/04/06 \luacensorversionnumber\ Redact sensitive information using Lua] % !TeX program = lualatex % !TeX encoding = utf8 @@ -70,10 +70,10 @@ %Scale=1.1, %%the below declarations are to prevent warnings about shapes not being available %WordSpace=0, -ItalicFont={Redacted},% -BoldItalicFont={Redacted},% -BoldFont={Redacted},% -SmallCapsFont={Redacted}]{Redacted} +ItalicFont={Redacted-Regular.ttf},% +BoldItalicFont={Redacted-Regular.ttf},% +BoldFont={Redacted-Regular.ttf},% +SmallCapsFont={Redacted-Regular.ttf}]{Redacted-Regular.ttf} \newcommand{\onething}{\cnsrfnt\ • } \newcommand{\twothings}{\cnsrfnt\ • •} \newcommand{\donothing}{\cnsrfnt\ } @@ -390,7 +390,7 @@ token.set_lua("rndstring", #lft, "global") %%%%%%%%%%%%%%%%%%%%%%%%%%% \newfontface\wrnstncl{QT Military} \newcommand{\warnword}{WARNING} -\newfontface\smbl{Deja Vu Sans Bold} +\newfontface\smbl{DejaVuSans-Bold} \newcommand{\danger}{\smbl ⚠︎\normalfont} \newcommand{\warnformat}{\sffamily\bfseries \color{red}} \newcommand{\textwarn}{This document is {\underline{NOT}} redacted. It contains private and confidential personal data, and may {\underline{NOT}} be distributed, published, or shown to those without the right to view such information. The publication of the information in this document may constitute a contempt of court, punishable by a term of imprisonment.} |