texlive[64984] Master/texmf-dist: kpfonts-otf (10nov22)

commits+karl at tug.org commits+karl at tug.org
Thu Nov 10 21:14:48 CET 2022


Revision: 64984
          http://tug.org/svn/texlive?view=revision&revision=64984
Author:   karl
Date:     2022-11-10 21:14:47 +0100 (Thu, 10 Nov 2022)
Log Message:
-----------
kpfonts-otf (10nov22)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-English.ltx
    trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-English.pdf
    trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-French.ltx
    trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-French.pdf
    trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/README.md
    trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/unimath-kpfonts.pdf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Bold.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Light.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Regular.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Sans.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Semibold.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMono-Bold.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMono-BoldItalic.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMono-Italic.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMono-Regular.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Bold.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-BoldItalic.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Italic.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Light.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-LightItalic.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Regular.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Semibold.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-SemiboldItalic.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpSans-Bold.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpSans-BoldItalic.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpSans-Italic.otf
    trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpSans-Regular.otf
    trunk/Master/texmf-dist/tex/latex/kpfonts-otf/kpfonts-otf.sty

Modified: trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-English.ltx
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-English.ltx	2022-11-10 13:19:22 UTC (rev 64983)
+++ trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-English.ltx	2022-11-10 20:14:47 UTC (rev 64984)
@@ -6,8 +6,7 @@
 \usepackage[svgnames]{xcolor}
 \usepackage[hypcap=false]{caption}
 \usepackage{shortvrb}
-% Option "longs" for local exemples of the long s
-\usepackage[longs]{kpfonts-otf}
+\usepackage{kpfonts-otf}
 
 % Math demos
 \setmathfont{KpMath-Regular.otf}[version=full,
@@ -42,7 +41,7 @@
 
 \title{Kp-fonts: OpenType version}
 \author{\href{mailto:daniel.flipo at free.fr}{Daniel \textsc{Flipo}}}
-\newcommand*{\version}{0.45}
+\newcommand*{\version}{0.46}
 
 \begin{document}
 \selectlanguage{british}
@@ -213,32 +212,23 @@
 	\item \textsc{\textbf{\test}}
   \end{itemize}
 
-\item[veryoldstyle:]  same as option \opt{oldstyle} but
-  the round `s’  is replaced by the long one
-  {\addfontfeatures{RawFeature=+hist;+hlig}`s\hspace{1sp}’},
-  unless it ends a word (then it remains `s’)%
-  \footnote{The OpenType \texttt{calt} feature is used to catch `s’ ending
-    a word.}
+\item[veryoldstyle:]\hlabel{veryoldstyle} same as option \opt{oldstyle} but
+  the round `s’  is replaced by the long one `ſ’
+  unless it ends a word or is followed by \textit{b}, \textit{f} or \textit{h}%
+  \footnote{Rules found on
+    \href{https://fr.wikipedia.org/wiki/S_long}{wikipedia}.}
   and ancient ligatures {\addfontfeatures{RawFeature=+hist;+hlig} si, sl, st}
   are activated.
-  Coding \texttt{s=} prints a round `s’ anytime; in most cases this coding is
-  not necessary with LuaTeX,
-  f.i. |\textit{some of Highlands’ mysterious castles…}|
-  will print
+  Coding |\textit{some of Highlands’ mysterious castles…}| will print
   {\addfontfeatures{RawFeature=+hist;+hlig;+calt}%
-    \textit{some of Highlands’ mysterious castles…}} which is correct;
-  with XeTeX an \texttt{=} sign must be added at the end of
-  \texttt{mysterious=}  to get a round `s’ there :
-  final `s’ followed by a punctuation sign is never turned into
-  {\addfontfeatures{RawFeature=+hist;+hlig}`s\hspace{1sp}’}, when followed by
-  a space it is a trickier, see option \opt{longs} below.
+    \textit{some of Highlands’ mysterious castles…}} which is correct.
 
-\item[longs] \hlabel{longs}
-  inhibits the transformation of an `s’ followed by a space into
-  {\addfontfeatures{RawFeature=+hist;+hlig}`s\hspace{1sp}’}. This option,
-  available only with LuaTeX, is silently switched on by \opt{veryoldstyle};
-  it is used explicitly in the present document to deal with the examples of
-  long `s’ shown in the preceding item.
+  The automatic substitution relies on the OpenType feature
+  \texttt{StylisticSet=12}.  A round `s’ (resp. long `ſ’) can be forced by
+  coding \texttt{s\char"200B=} or |\shorts{}| (resp. \texttt{ſ}%
+  \footnote{On Unix systems the \texttt{Compose} key can be used:
+    \texttt{Compose f s}.}
+  or |\longs{}|).
 
 \item[largesmallcaps:] prints larger \textlsc{Small Caps} than the default
   ones (\textsc{Petite Caps}).
@@ -363,7 +353,8 @@
 \item[Ligatures=TeX]  (default) |'|\quad|!`|\quad|?`|\quad|--|\quad |---|\quad
   print respectively\quad ’ \quad !` \quad ?`\quad -- \quad ---.
 
-\item[Ligatures=Common] (default) automatic ligatures  ff ffi ffl fi fl.
+\item[Ligatures=Common] (default) automatic ligatures  ff ffi ffl fi fl
+  (plus s\char"200B=).
 
 \item[StylisticSet=1] provides an alternative for glyphs
   {\addfontfeature{StylisticSet=1} ffi ffl fi fl} (ff is unchanged).
@@ -377,19 +368,23 @@
   Q: {\addfontfeature{Style=Swash}Queen, also in small caps (both sizes):
     \textpsc{Queen} and \textlsc{Queen}}.
 
-\item[Style=Historic] replaces any instance of `s’ by the long variant
-  {\addfontfeature{Style=Historic}s}. It is still possible to get a round
-  `s’ coding it as `|s=|’ specially at end of words; see options
-  \opt{veryoldstyle} and \opt{longs} p.~\pageref{longs} for more details.
+\item[Style=Historic] replaces any instance of `s’ by the long variant~`ſ’.
+  It is still possible to get a round `s’ coding it as
+  `\texttt{s\char"200B=}’; this option should no longer be used, it is
+  superseded by \opt{StylisticSet=12} below.
 
-\item[Ligatures=Historic] switches specific ligatures for the long
-  {\addfontfeature{Style=Historic}s}:
+\item[StylisticSet=12] has been described in option \opt{veryoldstyle}
+  p.~\pageref{veryoldstyle}: it operates a contextual substitution of
+  round~`s’ by long~`ſ’. An alias \opt{Style=autolongs} is available if
+  \pkg{kpfonts-otf.sty} has been loaded.
+
+\item[Ligatures=Historic] switches specific ligatures for the long~ſ:
    {\addfontfeature{Style=Historic,Ligatures=Historic} si, sl, st}.
 
 \item[StylisticSet=2 :] |\SS| prints {\addfontfeatures{StylisticSet=2}\SS}
   instead of {\char"1E9E} (capital \textit{Eszett}), ditto for small/petite caps.
 
-\item[StylisticSet=3 :] replaces the Euro character (€) by the official symbol
+\item[StylisticSet=3] replaces the Euro character (€) by the official symbol
   {\addfontfeatures{StylisticSet=3}(€)} (available in regular, italics,
   bold and bolditalic).
 
@@ -689,6 +684,13 @@
 \subsection{Wide accents}
 
 \begin{itemize}
+\item \cmd{wideoverbar} and \cmd{mathunderbar}%
+  \footnote{\cmd{overline} and \cmd{underline} are not font related,
+     they are based on \cmd{rule}.}
+  \[\wideoverbar{x}\quad \wideoverbar{xy}\quad \wideoverbar{xyz}\quad
+    \wideoverbar{A\cup B}\quad \wideoverbar{A\cup (B\cap C)\cup D}\quad
+    \mathunderbar{m+n+p}\]
+
 \item \cmd{widehat} and \cmd{widetilde}
 \[\widehat{x}\; \widehat{xx} \;\widehat{xxx} \;\widehat{xxxx}\;
   \widehat{xxxxx} \;\widehat{xxxxxx} \;\widetilde{x}\; \widetilde{xx}\;
@@ -695,17 +697,10 @@
   \widetilde{xxx} \;\widetilde{xxxx} \;\widetilde{xxxxx}\;
   \widetilde{xxxxxx}\]
 
-\item \cmd{overline} and \cmd{underline}
-  \[\overline{x}\quad \overline{xy}\quad \overline{xyz}\quad
-    \overline{A\cup B}\quad \overline{A\cup (B\cap C)\cup D}\quad
-    \underline{m+n+p}\]
+\item \cmd{widecheck} and \cmd{widebreve}
+  \[\widecheck{x}\quad \widecheck{xxxx}\quad \widecheck{xxxxxx}\quad
+    \widebreve{x}\quad \widebreve{xxxx}\quad \widebreve{xxxxxx}\]
 
-\item \cmd{wideoverbar}, \cmd{widecheck} and \cmd{widebreve}
-  \[\wideoverbar{x}\quad \wideoverbar{xy}\quad \wideoverbar{xyz}\quad
-    \widecheck{x}\quad \widecheck{xxxx}\quad \widecheck{xxxxxx}\quad
-    \widebreve{x}\quad \widebreve{xxxx}\quad \widebreve{xxxxxx}
-  \]
-
 \item \cmd{overparen} and \cmd{underparen}
   \[\overparen{x}\quad \overparen{xy}\quad \overparen{xyz}\quad
     \mathring{\overparen{A\cup B}}\quad

Modified: trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-English.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-French.ltx
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-French.ltx	2022-11-10 13:19:22 UTC (rev 64983)
+++ trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-French.ltx	2022-11-10 20:14:47 UTC (rev 64984)
@@ -7,11 +7,9 @@
 \usepackage[hypcap=false]{caption}
 \usepackage{shortvrb}
 \usepackage{babel}
-\frenchsetup{og=«, fg=»,%ListItemsAsPar
-}
+\frenchsetup{og=«, fg=», ListItemsAsPar}
+\usepackage{kpfonts-otf}
 
-\usepackage[longs]{kpfonts-otf}
-
 % Pour les démos :
 \setmathfont{KpMath-Regular.otf}[version=full,
                                  StylisticSet={1,2,3,4,5,6,7}]
@@ -42,7 +40,7 @@
 
 \title{Kp-fonts version OpenType}
 \author{\href{mailto:daniel.flipo at free.fr}{Daniel \textsc{Flipo}}}
-\newcommand*{\version}{0.45}
+\newcommand*{\version}{0.46}
 
 \begin{document}
 \maketitle
@@ -118,7 +116,7 @@
 Les utilisateurs de la version originale des Kp-fonts préfèreront probablement
 charger \pkg{kpfonts-otf.sty} comme ceci :\\[.5\baselineskip]
 |\usepackage[ |\optit{options}| ]{kpfonts-otf}|\\[.5\baselineskip]
-ceci charge \pkg{unicode-math}, \pkg{fontspec} ainsi que \pkg{realscripts} et
+ceci charge \pkg{unicode-math}, \pkg{fontspec} et \pkg{realscripts} et
 définit \family{KpRoman} (\family{Regular} ou \family{Light} selon les options),
 \family{KpSans} et \family{KpMono} comme polices de texte et \family{KpMath}
 (\family{Regular} ou \family{Light} selon les options) comme police
@@ -224,39 +222,24 @@
 
 \item[veryoldstyle :] \hlabel{veryoldstyle}
   identique à l'option \opt{oldstyle} mais en plus le « s » rond est
-  remplacé par le « {\addfontfeatures{RawFeature=+hist;+hlig}s} » long
-  sauf en fin de mot (où il doit rester rond) et les ligatures
+  remplacé par le «ſ» long sauf en fin de mot et sauf devant \textit{b},
+  \textit{f} et \textit{h}%
+  \footnote{Ces règles sont celles décrites
+    \href{https://fr.wikipedia.org/wiki/S_long}{ici}.}
+  et les ligatures
   {\addfontfeatures{RawFeature=+hist;+hlig} si, sl, st} sont activées.
-  Avec LuaTeX, le codage |\textit{« Des espoirs si funestes… »}| donne bien
+  Le codage |\textit{« Des espoirs si funestes… »}| donne bien
   {\addfontfeatures{RawFeature=+hist;+hlig;+calt}
      \textit{«Des espoirs si funestes…»}.
   }
 
-  Les choses se passent bien tant que le « s » est immédiatement suivi des
-  \emph{caractères} Unicode U+0020 espace-mot,
-  U+00A0 espace-mot insécable, U+202F fine insécable
-  ou d’un signe de ponctuation (virgule, point, etc.) \emph{mais pas} s’il est
-  suivi d’une espace (sécable ou non) produite par TeX%
-  \footnote{On utilise la \emph{feature} OpenType \texttt{calt} qui ne
-    reconnaît ni les \cmd{hskip} ni les \cmd{penalty} de TeX.} !
-  Le fichier \file{kpfont-otf.sty} fournit une parade au moins avec le
-  moteur LuaTeX.
+  La substitution automatique repose sur la \textit{feature} OpenType
+  \texttt{StylisticSet=12}.  Il est toujours possible de forcer un «s» rond
+  en codant \texttt{s\char"200B=} ou |\shorts{}| ou un «ſ» long en codant
+  \texttt{ſ}%
+  \footnote{Sous Unix, le \texttt{ſ} long s’obtient grâce à la touche
+    \texttt{Compose} : \texttt{Compose f s}.}  ou |\longs{}|.
 
-  Exemple : le codage |\textit{espoirs, mais quels~espoirs?}| produit comme il
-  se doit en français
-  {\addfontfeatures{RawFeature=+hist;+calt}\textit{espoirs, mais~quels~espoirs?}}
-  (avec fine insécable devant le `?’).
-
-  Il est toujours possible de forcer un «s» rond en codant \texttt{s=}.
-  Avec XeTeX, il faudrait coder: |\textit{espoirs, mais= quels=~espoirs=?}|.
-
-\item[longs :] \hlabel{longs}
-  empêche qu’un « s » suivi d’une espace sécable ou non soit
-  transformé en « s » long.  Cette option, utilisable seulement avec
-  LuaTeX, est activée automatiquement par \opt{veryoldstyle} ; dans ce document
-  elle est utilisée seule pour traiter les exemples locaux de « s » long
-  (voir ci-dessus).
-
 \item[largesmallcaps :] produit des petites capitales plus \textlsc{Grandes}
   que par les \textsc{Petites} obtenues par défaut.
 
@@ -388,7 +371,8 @@
 \item[Ligatures=TeX :]  (par défaut) |!`|\quad|?`|\quad|--|\quad |---|
   affichent respectivement\quad !` \quad ?` -- et ---.
 
-\item[Ligatures=Common :] (par défaut) ligatures automatiques ff ffi ffl fi fl.
+\item[Ligatures=Common :] (par défaut) ligatures automatiques ff ffi ffl fi fl
+  (plus s\char"200B=).
 
 \item[StylisticSet=1] modifie l’aspect des ligatures
   {\addfontfeature{StylisticSet=1} ffi ffl fi fl} (ff inchangé).
@@ -404,11 +388,15 @@
 
 \item[Style=Historic :] pour remplacer systématiquement le « s » rond par un
   {\addfontfeature{Style=Historic}« s »} long, il reste possible de forcer un
-  « s » rond, en fin de mot notamment, en codant |s=| ; ce n’est pas toujours
-  nécessaire, sous LuaTeX activer l’option \opt{longs} de
-  \pkg{kpfonts-otf} |\usepackage[longs]{kpfonts-otf}| permet d’éviter ce
-  codage pour les « s » suivis d’une espace (voir p.~\pageref{veryoldstyle}).
+  « s » rond, en fin de mot notamment, en codant \texttt{s\char"200B=}.
+  Cette   option ne devrait plus être utilisée, elle est remplacée par la
+  suivante \opt{StylisticSet=12}.
 
+\item[StylisticSet=12 :] option décrite sous le nom de \opt{veryoldstyle}
+  p.~\pageref{veryoldstyle}: elle opère un remplacement contextuel du `s’~rond
+  par le `ſ’~long. Si \pkg{kpfonts-otf.sty} est chargé, elle a pour alias
+  \opt{Style=autolongs}.
+
 \item[Ligatures=Historic :] active les ligatures spécifiques au
   {\addfontfeature{Style=Historic,Ligatures=Historic}« s » long  si, sl, st}.
 
@@ -730,6 +718,13 @@
 \subsection{Accents extensibles}
 
 \begin{itemize}
+\item \cmd{wideoverbar} and \cmd{mathunderbar}%
+  \footnote{\cmd{overline} and \cmd{underline} utilisent \cmd{rule}, elles
+     ne sont pas liées à la police.}
+  \[\wideoverbar{x}\quad \wideoverbar{xy}\quad \wideoverbar{xyz}\quad
+    \wideoverbar{A\cup B}\quad \wideoverbar{A\cup (B\cap C)\cup D}\quad
+    \mathunderbar{m+n+p}\]
+
 \item \cmd{widehat} et \cmd{widetilde}
 \[\widehat{x}\; \widehat{xx} \;\widehat{xxx} \;\widehat{xxxx}\;
   \widehat{xxxxx} \;\widehat{xxxxxx} \;\widetilde{x}\; \widetilde{xx}\;
@@ -736,14 +731,8 @@
   \widetilde{xxx} \;\widetilde{xxxx} \;\widetilde{xxxxx}\;
   \widetilde{xxxxxx}\]
 
-\item \cmd{overline} et \cmd{underline}
-  \[\overline{x}\quad \overline{xy}\quad \overline{xyz}\quad
-    \overline{A\cup B}\quad \overline{A\cup (B\cap C)\cup D}\quad
-    \underline{m+n+p}\]
-
-\item \cmd{wideoverbar}, \cmd{widecheck}  et \cmd{widebreve}
-  \[\wideoverbar{x}\quad \wideoverbar{xy}\quad \wideoverbar{xyz}\quad
-    \widecheck{x}\quad \widecheck{xxxx}\quad \widecheck{xxxxxx}\quad
+\item \cmd{widecheck}  et \cmd{widebreve}
+  \[\widecheck{x}\quad \widecheck{xxxx}\quad \widecheck{xxxxxx}\quad
     \widebreve{x}\quad \widebreve{xxxx}\quad \widebreve{xxxxxx}
   \]
 

Modified: trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/Kpfonts-OTF-Doc-French.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/README.md	2022-11-10 13:19:22 UTC (rev 64983)
+++ trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/README.md	2022-11-10 20:14:47 UTC (rev 64984)
@@ -177,9 +177,17 @@
 
 * v. 0.45:
      Maths fonts: delimiters, integrals, sum, prod etc. are now vertically
-     centerred by design on the maths axis (required by luametatex).
+     centred by design on the maths axis (required by luametatex).
 	 Fixed inconsistencies about bold and semibold integrals.
-	 
+
+* v. 0.46:
+  1. Text fonts: option longs deleted, option veryoldstyle improved, the
+	 substitution from `s' to `ſ' is now handled by "StylisticSet=12".
+  2. Maths fonts:
+     - Added a smaller variant for \widehat, \widetilde, \widecheck.
+	 - Vertical variants added for \vert, \Vert, \Vvert.
+     - Added extensible integral for U+222B (usable with luametatex).
+	  
 ---
-Copyright 2020-2022  Daniel Flipo
+Copyright 2020-2022  Daniel Flipo  
 E-mail: daniel (dot) flipo (at) free (dot) fr

Modified: trunk/Master/texmf-dist/doc/fonts/kpfonts-otf/unimath-kpfonts.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Bold.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Light.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Regular.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Sans.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMath-Semibold.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMono-Bold.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMono-BoldItalic.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMono-Italic.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpMono-Regular.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Bold.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-BoldItalic.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Italic.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Light.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-LightItalic.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Regular.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-Semibold.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpRoman-SemiboldItalic.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpSans-Bold.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpSans-BoldItalic.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpSans-Italic.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/opentype/public/kpfonts-otf/KpSans-Regular.otf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/latex/kpfonts-otf/kpfonts-otf.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/kpfonts-otf/kpfonts-otf.sty	2022-11-10 13:19:22 UTC (rev 64983)
+++ trunk/Master/texmf-dist/tex/latex/kpfonts-otf/kpfonts-otf.sty	2022-11-10 20:14:47 UTC (rev 64984)
@@ -1,6 +1,6 @@
 \NeedsTeXFormat{LaTeX2e}[2019-01-01]
-\def\fileversion{0.45}
-\def\filedate{2022-10-06}
+\def\fileversion{0.46}
+\def\filedate{2022-11-10}
 \ProvidesPackage{kpfonts-otf}[\filedate\space\fileversion]
 
 % Ensure luatex or xetex engine
@@ -21,7 +21,6 @@
 \newif\ifkp at osn
 \newif\ifkp at os
 \newif\ifkp at vos
-\newif\ifkp at longs
 \newif\ifkp at Qtail
 %
 \newif\ifkp at lightmath
@@ -50,9 +49,7 @@
 \DeclareOption{lighttext}        {\kp at lighttexttrue}
 \DeclareOption{oldstylenums}     {\kp at osntrue}
 \DeclareOption{oldstyle}         {\kp at ostrue\kp at osntrue\kp at Qtailtrue}
-\DeclareOption{longs}            {\kp at longstrue}
-\DeclareOption{veryoldstyle}     {\kp at vostrue\kp at osntrue\kp at Qtailtrue
-                                  \ifluatex\kp at longstrue\fi}
+\DeclareOption{veryoldstyle}     {\kp at vostrue\kp at osntrue\kp at Qtailtrue}
 \DeclareOption{largesmallcaps}   {\kp at largesmallcapstrue}
 \DeclareOption{altfligs}         {\kp at altfligstrue}
 \DeclareOption{germandbls}       {\kp at germandblstrue}
@@ -81,6 +78,8 @@
 % Text fonts setup...
 \ifkp at text
   \RequirePackage{fontspec}[2019/01/01]
+  % Style alias (text only)
+  \newopentypefeature{Style}{autolongs}{+ss12}
   \RequirePackage{realscripts}
   % Two candidates for \rmfamily:
   \newfontfamily\KpRoman{KpRoman}
@@ -98,6 +97,9 @@
   % Accents not in tuenc.def
   \DeclareUnicodeAccent{\candra}    \UnicodeEncodingName{"0310}
   \DeclareUnicodeAccent{\ringbelow} \UnicodeEncodingName{"0325}
+  % Long s: ſ
+  \DeclareTextCommand{\longs}{TU}{\char"17F}
+  \DeclareTextCommand{\shorts}{TU}{\char"17F\char"200B}
   % Oldstylenums
   \ifkp at osn
     \ifkp at tt
@@ -115,65 +117,11 @@
   %% Veryoldstyle
   \ifkp at vos
     \ifkp at tt
-      \defaultfontfeatures+[\ttfamily]{Style=Historic, Contextuals=Alternate}
+      \defaultfontfeatures+[\ttfamily]{StylisticSet=12}
     \fi
     \defaultfontfeatures+[KpRoman,KpLight,\sffamily]{%
-            Style=Historic,Ligatures=Historic,Contextuals=Alternate}
+            StylisticSet=12, Ligatures=Historic}
   \fi
-  %% No Long s before spaces with luatex
-  \ifkp at longs
-    \ifluatex
-      % This function adds character U+200B (zero width space) when an "s"
-      % is followed by a TeX space (glue or penalty) so that it is not turned
-      % into a long "s" by the "calt" feature.
-      \directlua{%
-        function add_eow_char (head)
-          local eow = 0x200B
-          local GLUE = node.id("glue")
-          local GLYPH = node.id("glyph")
-          local SPSKIP = 13
-          local PENALTY = node.id("penalty")
-          local Longs =
-            {[string.byte("s")] = true}
-          local new_node  = node.new
-          local copy_node = node.copy
-          local insert_node_after = node.insert_after
-          % Perserve TeX's kerning
-          head = node.kerning(head)
-          % wordbd is the zero width node to add
-          local wordbd = new_node(GLYPH)
-          for item in node.traverse_id(GLYPH, head) do
-              if Longs[item.char] then
-                 local fid = item.font
-                 % Check if char U+200B is available in the current font:
-                 % code borrowed from file "luaotfload-auxiliary.lua".
-                 local fontdata = fonts.hashes.identifiers[fid]
-                 if fontdata and fontdata.characters[eow] then
-                    nxt = item.next
-                    if not nxt or (nxt.id == GLUE and nxt.subtype == SPSKIP)
-                               or  nxt.id == PENALTY  then
-                       wordbd.font = fid
-                       wordbd.char = eow
-                       wordbd.attr = item.attr
-                       insert_node_after(head,item,copy_node(wordbd))
-                    end
-                 end
-              end
-          end
-        end
-      }
-      % Register *after* loading babel-french!
-      \AtBeginDocument{%
-        \directlua{
-          luatexbase.add_to_callback("kerning", add_eow_char,
-                                     "add_end_of_word_boundary");
-        }
-      }
-    \else
-      \PackageWarning{kpfonts-otf}%
-        {Option "longs" skipped (luatex only), reported}
-    \fi
-  \fi
   % Smallcaps
   \ifkp at largesmallcaps
     \defaultfontfeatures+[KpRoman,KpLight,\sffamily]{%



More information about the tex-live-commits mailing list.