summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/microtype/microtype-utf.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/microtype/microtype-utf.dtx')
-rw-r--r--macros/latex/contrib/microtype/microtype-utf.dtx16
1 files changed, 8 insertions, 8 deletions
diff --git a/macros/latex/contrib/microtype/microtype-utf.dtx b/macros/latex/contrib/microtype/microtype-utf.dtx
index bcac8618c8..c72fca3f54 100644
--- a/macros/latex/contrib/microtype/microtype-utf.dtx
+++ b/macros/latex/contrib/microtype/microtype-utf.dtx
@@ -1,11 +1,11 @@
%\iffalse meta-comment
% !Mode:: "TeX:DTX:UK"
% !smartQuote:: "English"
-% !DTXversion:: "2.7b"
+% !DTXversion:: "2.7c"
% ------------------------------------------------------------------------
% The `microtype' package
% Subliminal refinements towards typographical perfection
-% Copyright (c) 2004--2018 R Schlicht <w.m.l@gmx.net>
+% Copyright (c) 2004--2019 R Schlicht <w.m.l@gmx.net>
%
% 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
@@ -26,7 +26,7 @@
%
\ProvidesFile
%<*driver>
- {\jobname.dtx}[2019/02/28 v2.7b]
+ {\jobname.dtx}[2019/10/10 v2.7c]
%</driver>
%<CharisSIL> {mt-CharisSIL.cfg}[2017/07/07 v1.1 microtype config. file: Charis SIL (RS)]
%<LatinModernRoman> {mt-LatinModernRoman.cfg}[2013/03/13 v1.0 microtype config. file: Latin Modern Roman (RS)]
@@ -49,12 +49,10 @@
\luatexbase@directlua{luatexbase.add_to_callback('process_input_buffer', luainputenc.fake_utf_read, 'luainputenc.fake_utf_read')}
\usepackage{microtype-doc}
\luatexbase@directlua{luatexbase.remove_from_callback('process_input_buffer', 'luainputenc.fake_utf_read')}
-\let\lsstyle\relax % !!!!!!! ATTENTION, PLEASE !!!!!!!!! (letterspacing is broken in luatex 1.07)
\def\setmacrofont#1{\par\def\macro@font{#1}\footnotesize}
\newfontface\LMR{Latin Modern Roman}
\newfontface\CharisSIL{Charis SIL}
\newfontface\PalatinoLinotype{TeX Gyre Pagella}
-\textheight=626pt % this isn't set correctly for some reason
\usepackage{luacode}
\tracinglostchars2
% we replace any missing characters (in Palatino) with CharisSIL
@@ -72,6 +70,7 @@ color_push.stack, color_pop.stack = 0,0
color_push.command,color_pop.command = 1,2
color_push.data = "0.97 0.04 0.07 rg" -- red
local fallbackfont = font.id("fallbackfont")
+local fallbackchar = 0xFFFD -- Unicode replacement character
table.setmetatableindex(fontcharacters, function (t, k)
if k == true then
return fontcharacters[currentfont()]
@@ -100,10 +99,11 @@ local nodeprocessor = function (head)
lastfont = currfont
if not characters[char] then
head = node.insert_before(head,n,node.copy(color_push))
+ node.remove(head,node.next(n)) -- remove .notdef char (new in luaotfload 2.98)
node.insert_after(head,n,node.copy(color_pop))
n.font = fallbackfont
if not fontcharacters[fallbackfont][char] then -- not even in Charis SIL
- n.char = 0xFFFD
+ n.char = fallbackchar
end
end
end
@@ -370,7 +370,7 @@ luatexbase.add_to_callback("pre_linebreak_filter", nodeprocessor, "replace missi
% Unfortunately, I don't have a Palatino variant containing all of the following
% glyphs. The settings are typeset in \TeX\ Gyre Pagella;
% missing glyphs, printed in red, are taken from Charis <SIL>;
-% glyphs missing even in Charis <SIL> appear as `\char"FFFD'.
+% glyphs missing even in Charis <SIL> appear as `\char"FFFD@'.
% To see the real settings, consult \file{mt-PalatinoLinotype.cfg}.
%{\setmacrofont\PalatinoLinotype
% \begin{macrocode}
@@ -1291,7 +1291,7 @@ luatexbase.add_to_callback("pre_linebreak_filter", nodeprocessor, "replace missi
fl = { 0,50},
ffl = { 0,50},
ſt = { 0,50},
- st = { 0,50}
+ st = { 0,50}
% \end{macrocode}
%}
% \begin{macrocode}