diff options
author | Norbert Preining <norbert@preining.info> | 2021-01-29 03:01:22 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2021-01-29 03:01:22 +0000 |
commit | bc31a53b31d92ddf5db3e7df811734a0141f8b3f (patch) | |
tree | c493784cbfd3cda263acc9ce04de9f94e540c3ba /macros | |
parent | 580a384585ecc80778ebca5845ce3bd7ae60cb48 (diff) |
CTAN sync 202101290301
Diffstat (limited to 'macros')
-rw-r--r-- | macros/latex/contrib/ebproof/README.md | 4 | ||||
-rw-r--r-- | macros/latex/contrib/ebproof/ebproof.dtx | 37 | ||||
-rw-r--r-- | macros/latex/contrib/ebproof/ebproof.ins | 2 | ||||
-rw-r--r-- | macros/latex/contrib/ebproof/ebproof.pdf | bin | 496470 -> 496893 bytes | |||
-rw-r--r-- | macros/latex/contrib/fancyhdr/README | 2 | ||||
-rw-r--r-- | macros/latex/contrib/fancyhdr/fancyhdr.dtx | 145 | ||||
-rw-r--r-- | macros/latex/contrib/fancyhdr/fancyhdr.pdf | bin | 784341 -> 787804 bytes | |||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/LICENSE | 2 | ||||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/README.md | 12 | ||||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/chinese-jfm.pdf | bin | 0 -> 115395 bytes | |||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/chinese-jfm.tex | 96 | ||||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/doc.pdf | bin | 105785 -> 0 bytes | |||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/doc.tex | 85 | ||||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/jfm-ja_JP.lua | 21 | ||||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/jfm-zh_CN.lua | 89 | ||||
-rw-r--r-- | macros/luatex/generic/chinese-jfm/jfm-zh_TW.lua | 23 |
16 files changed, 330 insertions, 188 deletions
diff --git a/macros/latex/contrib/ebproof/README.md b/macros/latex/contrib/ebproof/README.md index e794db1fee..4c805330cd 100644 --- a/macros/latex/contrib/ebproof/README.md +++ b/macros/latex/contrib/ebproof/README.md @@ -15,8 +15,8 @@ styles of inference rules, placement of labels, etc. The distribution includes the following files: - `ebproof.dtx` : the doctrip source for the package and documentation +- `ebproof.ins` : the generation script for producing `ebproof.sty` - `ebproof.pdf` : the compiled documentation -- `ebproof.sty` : the generated package The package requires `expl3` (the LaTeX3 programming environment) which provides many useful programming tools. @@ -25,7 +25,7 @@ provides many useful programming tools. License ------- -Copyright 2015-2020 Emmanuel Beffara <manu@beffara.org> +Copyright 2015-2021 Emmanuel Beffara <manu@beffara.org> This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 diff --git a/macros/latex/contrib/ebproof/ebproof.dtx b/macros/latex/contrib/ebproof/ebproof.dtx index 71735ffc00..df4f11f0ca 100644 --- a/macros/latex/contrib/ebproof/ebproof.dtx +++ b/macros/latex/contrib/ebproof/ebproof.dtx @@ -1,6 +1,6 @@ % \iffalse meta-comment % -% Copyright (C) 2015-2020 by Emmanuel Beffara +% Copyright (C) 2015-2021 by Emmanuel Beffara % % This file may be distributed and/or modified under the conditions of the % LaTeX Project Public License, either version 1.3 of this license or (at @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 2.1 -- Released 2020-08-19} +% \date{Version 2.1.1 -- Released 2021-01-28} % % \maketitle % @@ -648,6 +648,13 @@ % This section lists the principal evolutions of the package, in reverse % chronological order. % \begin{description} +% \item[Version 2.1.1 (2021-01-28)] +% Bugfix release, no changes in the user interface. +% \begin{itemize} +% \item Fixes a deprecation issue with \LaTeX3 release 2021-01-09 and +% various warnings that appear in \LaTeX3 debugging mode. +% \item Fixes \cmd{proof style=downwards}. +% \end{itemize} % \item[Version 2.1 (2020-08-19)] % Mostly a bugfix release. % \begin{itemize} @@ -694,7 +701,7 @@ \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} \RequirePackage{xparse} -\ProvidesExplPackage{ebproof}{2020/08/19}{2.1}{EB's proof trees} +\ProvidesExplPackage{ebproof}{2021/01/28}{2.1.1}{EB's proof trees} %<@@=ebproof> % \end{macrocode} % @@ -704,6 +711,7 @@ % section~\ref{sec:options}. % % \begin{macrocode} +\bool_new:N \l_@@_updown_bool \keys_define:nn { ebproof } { center .bool_set:N = \l_@@_center_bool, proof~style .choice: , @@ -828,18 +836,25 @@ label~axis .dim_set:N = \l_@@_label_axis_dim, % \begin{macro}{\@@_new:N} % Using only public interfaces forces a convoluted approach to allocation: % we use a global counter \cs{g_ebproof_register_int} to number registers, -% then each allocation creates registers named \cs{g_ebproof_K_N} where K is -% the kind of component (box or marks) and N is the identifier of the +% then each allocation creates registers named \cs{S_ebproof_K_N} where +% S is the scope of the register (local or global, deduced from the argument), +% K is the kind of component (box or marks) and N is the identifier of the % register. The proof box register itself only contains the identifier used % for indirection. % \begin{macrocode} \int_new:N \g_@@_register_int -\cs_new:Nn \@@_box:N { g__ebproof_box_ \tl_use:N #1 } -\cs_new:Nn \@@_marks:N { g__ebproof_marks_ \tl_use:N #1 } +\cs_new:Nn \@@_box:N { + \str_item:nn { #1 } { 2 } __ebproof_ \tl_use:N #1 _box +} +\cs_new:Nn \@@_marks:N { + \str_item:nn { #1 } { 2 } __ebproof_ \tl_use:N #1 _prop +} \cs_new:Nn \@@_new:N { \tl_new:N #1 \int_gincr:N \g_@@_register_int - \tl_gset:Nx #1 { \int_to_arabic:n { \g_@@_register_int } } + \str_if_eq:eeTF { \str_item:nn { #1 } { 2 } } { g } + { \tl_gset:Nx #1 { \int_to_arabic:n { \g_@@_register_int } } } + { \tl_set:Nx #1 { \int_to_arabic:n { \g_@@_register_int } } } \box_new:c { \@@_box:N #1 } \prop_new:c { \@@_marks:N #1 } } @@ -1068,7 +1083,7 @@ label~axis .dim_set:N = \l_@@_label_axis_dim, % \begin{macrocode} \cs_new:Nn \@@_append_below:NN { \@@_align:NN #1 #2 - \vbox_set_top:Nn #1 { + \vbox_set_top:cn { \@@_box:N #1 } { \box_use:c { \@@_box:N #1 } \tex_prevdepth:D -1000pt \box_use:c { \@@_box:N #2 } @@ -1235,7 +1250,7 @@ label~axis .dim_set:N = \l_@@_label_axis_dim, \hbox_unpack:N \g_@@_stack_box \box_gset_to_last:N \g_tmpa_box } - \box_set_eq_clear:cN { \@@_box:N #1 } \g_tmpa_box + \box_set_eq_drop:cN { \@@_box:N #1 } \g_tmpa_box \seq_gpop_left:NN \g_@@_stack_seq \l_tmpa_tl \tl_set_eq:cN { \@@_marks:N #1 } \l_tmpa_tl } { @@ -1383,7 +1398,7 @@ label~axis .dim_set:N = \l_@@_label_axis_dim, % \begin{macrocode} \cs_new:Nn \@@_new_statement:nnn { \exp_args:Nc \NewDocumentCommand { ebproof#1 }{ #2 } { #3 } - \seq_put_right:Nn \g_@@_statements_seq { #1 } + \seq_gput_right:Nn \g_@@_statements_seq { #1 } } % \end{macrocode} % \end{macro} diff --git a/macros/latex/contrib/ebproof/ebproof.ins b/macros/latex/contrib/ebproof/ebproof.ins index 25bcc73496..2a62d0abae 100644 --- a/macros/latex/contrib/ebproof/ebproof.ins +++ b/macros/latex/contrib/ebproof/ebproof.ins @@ -1,4 +1,4 @@ -%% Copyright (C) 2015-2018 by Emmanuel Beffara +%% Copyright (C) 2015-2021 by Emmanuel Beffara %% %% This file may be distributed and/or modified under the conditions of the %% LaTeX Project Public License, either version 1.3 of this license or (at diff --git a/macros/latex/contrib/ebproof/ebproof.pdf b/macros/latex/contrib/ebproof/ebproof.pdf Binary files differindex 60d433b9fd..ee5c6afa39 100644 --- a/macros/latex/contrib/ebproof/ebproof.pdf +++ b/macros/latex/contrib/ebproof/ebproof.pdf diff --git a/macros/latex/contrib/fancyhdr/README b/macros/latex/contrib/fancyhdr/README index 77a6cea64e..cd07feba89 100644 --- a/macros/latex/contrib/fancyhdr/README +++ b/macros/latex/contrib/fancyhdr/README @@ -25,7 +25,7 @@ In order to latex the documentation you need to have a copy of boxedminipage.sty (CTAN:/macros/latex/contrib/boxedminipage) and refcount.sty (CTAN:/macros/latex/contrib/oberdiek/) installed. -This is version 4.0 of fancyhdr.sty and extramarks.sty. They are +This is version 4.0.1 of fancyhdr.sty and extramarks.sty. They are described in the forthcoming third edition of The LaTeX Companion. Extramarks.sty has not been changed, except for the version and copyright information. diff --git a/macros/latex/contrib/fancyhdr/fancyhdr.dtx b/macros/latex/contrib/fancyhdr/fancyhdr.dtx index 3315b199ea..d2a6dc9611 100644 --- a/macros/latex/contrib/fancyhdr/fancyhdr.dtx +++ b/macros/latex/contrib/fancyhdr/fancyhdr.dtx @@ -26,7 +26,7 @@ %<fancyhdr>\ProvidesPackage{fancyhdr}% %<fancyheadings>\ProvidesPackage{fancyheadings} %<extramarks>\ProvidesPackage{extramarks} -%<fancyhdr|fancyheadings|extramarks> [2021/01/04 v4.0 +%<fancyhdr|fancyheadings|extramarks> [2021/01/28 v4.0.1 %<fancyhdr> Extensive control of page headers and footers]% %<fancyheadings> Legacy package to call fancyhdr] %<extramarks> Extra marks for LaTeX] @@ -48,6 +48,7 @@ \usepackage[T1]{fontenc} \usepackage{url} \usepackage[fit]{truncate} +\usepackage[colorlinks,linktocpage]{hyperref} \usepackage{ifthen} \usepackage{fancyhdr} \GetFileInfo{fancyhdr.sty} @@ -60,8 +61,8 @@ \newcommand{\PSNFSS}{{\sf PSNFSS}} \newcommand{\bs}{\symbol{'134}} -\let\environment\texttt -\let\Package\textsf +\newcommand{\env}[1]{\texttt{#1}} +\newcommand{\Package}[1]{\textsf{#1}} \renewcommand{\partname}{Part} \DisableCrossrefs \CodelineIndex @@ -158,6 +159,13 @@ {\renewcommand{\footrulewidth}{0pt}}% } } +% Change \MacroFont to have verbatim in normal size +\renewcommand{\MacroFont}% + {\fontencoding\encodingdefault + \fontfamily\ttdefault + \fontseries\mddefault + \fontshape\shapedefault + \normalsize} \newcounter{example} \newcommand{\Example}{% @@ -269,7 +277,7 @@ % headers and footers of the pages in a \latex/ document. % You load the package with the following command in the preamble: % \begin{quote} -% \verb|\usepackage|\oarg{options}|{fancyhdr}| +% \verb|\usepackage|\oarg{options}\verb|{fancyhdr}| % \end{quote} % (Options are available since version~4.0) % The following options are supported: @@ -336,8 +344,7 @@ % respectively. (But \cs{headruleskip} is only available since version~4.0.) % \cs{headrule} and \cs{footrule} are macros to completely redefine % these lines. And \cs{headwidth} is a length parameter that defines the -% total width of the headers and footers. See sections~\ref{sec:simple}, -% \ref{sec:fancy} and \ref{sec:book-examples} for more details. +% total width of the headers and footers. See section~\ref{sec:book-examples} for more details. % % \DescribeMacro{\fancyheadinit} % \DescribeMacro{\fancyfootinit} @@ -357,12 +364,11 @@ % \DescribeMacro{\iffloatpage} % \DescribeMacro{\iffootnote} % -% The macros \cs{iftopfloat}, \cs{ifbotfloat}, \cs{iffloatpage}, -% \cs{iffloatpage}, \cs{iffootnote} -% are used to detect if there is a float on the top or the bottom -% of the page, or the page is a float page, or if there is a footnote at -% the bottom of the page. These can be used to choose different headers -% and/or footers if these conditions are met. See +% The macros \cs{iftopfloat}, \cs{ifbotfloat}, \cs{iffloatpage} and +% \cs{iffootnote} are used to detect if there is a float on the top or +% the bottom of the page, or the page is a float page, or if there is +% a footnote at the bottom of the page. These can be used to choose +% different headers and/or footers if these conditions are met. See % section~\ref{sec:float} for more details. % % \begin{quote} @@ -372,7 +378,7 @@ % This command lets you (re)define page styles for use in special % situations. See section~\ref{sec:fancypagestyle} for more details. % -% \section{Using extramarks} +% \section{Using \Package{extramarks}} % \label{sec:using-extramarks} % % The \Package{extramarks} gives you some extra marks in \latex/, @@ -682,6 +688,7 @@ % \cs{fancycenter}\oarg{distance}\oarg{stretch}\\ % \verb| |\marg{left-mark}\marg{center-mark}\marg{right-mark} % \end{quote} +% \CmdIndex{fancycenter} % This command works like % \begin{center} % \verb|\hbox to\linewidth{|\marg{left-mark}\cs{hfil}\marg{center-mark}\cs{hfil}\marg{right-mark}\verb|}| @@ -713,7 +720,7 @@ % and leave the \texttt{[L,R]} parts empty. % % \textbf{Note 1}: If the whole of the \cs{fancycenter} is wider than -% \cs{headheight} it will stick out on the right. See +% \cs{headwidth} it will stick out on the right. See % section~\ref{sec:longtitles} for possible solutions. % % \textbf{Note 2}: The usage of \cs{fancycenter} command is not limited to the @@ -935,7 +942,7 @@ % % You can supply options to the \cs{usepackage} command: % \begin{quote} -% \verb|\usepackage|\oarg{options}|{fancyhdr}| +% \verb|\usepackage|\oarg{options}\verb|{fancyhdr}| % \end{quote} % % The following options are supported: % \begin{center} @@ -1382,8 +1389,8 @@ % redefine the command \cs{headrule}: % % \begin{verbatim} -% \renewcommand{\headrule}{\vbox to 0pt{\hbox -% to\headwidth{\dotfill}\vss}} +% \renewcommand{\headrule}{\vbox to 0pt +% {\makebox[\headwidth]{\dotfill}\vss}} % \end{verbatim} % % The redefined \cs{headrule} should preferably take up no vertical space, as in the example above, and as in the standard definition. If it does take vertical space, the header may come too close to the text, or even intrude in the text. In that case \Package{fancyhdr} will give you a warning that \cs{headheight} is too small. Like @@ -1492,7 +1499,7 @@ % % \pagestyle{showstruts} % \noindent\begin{minipage}{\textwidth} -% \label{showstruts} +% \phantomsection\label{showstruts} % \indent The header and footer in this page % show the \emph{strut} (the amount of space in the text area above and % below the baseline), and the \cs{headruleskip} and \cs{footruleskip}. @@ -2130,7 +2137,7 @@ % values. So we could have left these \emph{else} parts empty. Then they % would keep the global values. % However, often explicit is better than implicit. -% +% % These initialisation commands cannot be used to make global changes to % the page, for example to \cs{headheight}. Neither can you use them to % change \cs{fancyhead} or \cs{fancyfoot}, because these have already @@ -2216,15 +2223,23 @@ % \pagestyle{fancy} % \fancyhead[L]{\firstxmark} % \fancyfoot[R]{\lastxmark} +% \fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrule}{}} +% ... +% \extramarks{}{}% 1 +% \extramarks{Continued\ldots}{Continued on next page\ldots}% 2 % ... -% \extramarks{}{Continued on next page\ldots} %1 % Some text that may or may not cross a page boundary... -% \extramarks{Continued\ldots}{} %2 -% \extramarks{}{} %3 +% ... +% \extramarks{Continued\ldots}{}% 3 +% \extramarks{}{}% 4 % \end{verbatim} % % \CmdIndex{extramarks} -% Note that the \cs{extramarks} command must be close to the text, i.e no +% Note that we redefine the \texttt{plain} page style, so that on the +% first page of a chapter also the footer will be given if necessary. We +% assume that a `Continued' block will not cross chapter boundaries, so no +% header will be necessary on these pages. +% Also the \cs{extramarks} command must be close to the text, i.e no % empty lines (paragraph boundaries) should intervene. Otherwise the page may % be broken at that boundary and the extramarks would come on the wrong page. % The final \verb+\extramarks{}{}+ is to prevent the `Continued\ldots' @@ -2239,16 +2254,24 @@ % \cs{lastxmark} gives you the last $m_2$ value % of the current page. In the above example, when the complete block % falls on the same page, the \cs{firstxmark} will be the empty -% parameter of the first \cs{extramarks} command (indicated by \texttt{\%1}), and +% parameter of the first \cs{extramarks} command (indicated by \texttt{\%~1}), and % the \cs{lastxmark} will be the empty parameter from the last -% \cs{extramarks} command (indicated by \texttt{\%3}). -% -% However, when the page break falls in the block, the mark generated by -% \texttt{\%1} will be the last one on the first page. Therefore on that page -% \cs{lastxmark} will be `Continued on next page\ldots'. On the second -% page, the first mark will be \texttt{\%2}, therefore \cs{firstxmark} will be `Continued\ldots'. -% On all the following pages the values of \texttt{\%3} will be used, -% i.e. empty ones. Of course in real life you would leave out the \texttt{\%} indicators. +% \cs{extramarks} command (indicated by \texttt{\%~4}). +% +% However, when the page break falls inside the block, the mark generated by +% \texttt{\%~2} will be the last one on the first page. Therefore on that page +% \cs{lastxmark} will be `Continued on next page\ldots'. On the following +% pages, there are two possibilities: (1) when the block ends +% on that page the first mark will be \texttt{\%~3}, therefore +% \cs{firstxmark} will be `Continued\ldots'; (2) the block ends at a +% later page, therefore it does not contribute any marks to that page, +% and the marks are `inherited' from the last values of the previous page, +% i.e. those from \texttt{\%~2}. +% On all of the pages after the block the values of \texttt{\%~4} will be used, +% i.e. empty ones. +% This final \verb+\extramarks{}{}+ is to prevent the `Continued\ldots' +% header to spill over to the following pages. +% Of course in real life you would leave out the numbers. % % In case you want the last $m_1$ value or the first $m_2$ value, you % can use the \cs{lastleftxmark} or \cs{firstrightxmark}, respectively. @@ -2313,7 +2336,7 @@ % \fancyhead[L]{\setlength{\unitlength}{\baselineskip}% % \begin{picture}(0,0) % \put(-2,-3){\makebox(0,0)[r]{\firstxmark}} -% \end{picture}\leftmark} +% \end{picture}\rightmark} % \rightmark = section title % \end{verbatim} % % This solution can of course also be used for the footer. Make sure you put the @@ -2328,9 +2351,12 @@ % % \begin{verbatim} % \newenvironment{continued}{\par -% \extramarks{}{Continued on next page\ldots} -% \afterpage{\noindent\firstxmark\vspace{1ex}} -% }{\extramarks{(Continued\ldots)}{}\par} +% \extramarks{}{}% +% \extramarks{(Continued\ldots)}{Continued on next page\ldots}% +% \afterpage{\noindent\firstxmark\vspace{1ex}}% +% }{\extramarks{(Continued\ldots)}{}% +% \extramarks{}{}\par +% } % \end{verbatim} % % It is a bit dangerous to use \cs{firstxmark} outside the page layout @@ -2344,8 +2370,11 @@ % \newcommand{\mysaved}{} % % \newenvironment{continued}{\par -% \extramarks{}{Continued on next page\ldots} -% }{\extramarks{(Continued\ldots)}{}\par\vspace{1ex}\mysaved} +% \extramarks{}{}% +% \extramarks{(Continued\ldots)}{Continued on next page\ldots}% +% }{\extramarks{(Continued\ldots)}{}% +% \extramarks{}{}\par\vspace{1ex}\mysaved}% +% } % \fancyhead[L]{\leftmark} % \fancyhead[C]{\ifthenelse{\equal{\lastxmark}{}} % {\gdef\mysaved{}} @@ -2364,23 +2393,28 @@ % If you put at each page on the same place a picture that slightly changes % from page to page you can get a movie-like effect by flipping through the % pages. You can create such a movie easily with fancyhdr. For -% simplicity we assume that each picture is in a postscript (EPS) file called -% \texttt{pic}$\langle n\rangle$.\texttt{ps} where $\langle n\rangle$ is the page number and that we use -% the \Package{graphics} or \Package{graphicx} package\footnote{If you use an older version of -% \LaTeX{} you could use the \Package{epsf} or \Package{epsfig} package.}. +% simplicity we assume that we use a PDF-producing \LaTeX{} (such as +% \texttt{pdflatex}) and each picture is in a PNG file called +% \texttt{pic}$\langle n\rangle$.\texttt{png}% +% \footnote{With \texttt{pdflatex} we could also use PDF or JPG +% pictures. With a DVI based \texttt{latex} we could use PS or EPS +% pictures. Or any other supported image format.} +% where $\langle n\rangle$ is +% the page number and that we use the \Package{graphics} or \Package{graphicx} package. % \TTindex{graphics} % \TTindex{graphicx} -% \TTindex{epsf} -% \TTindex{epsfig} % To put the movie in the righthandside bottom corner the following will work: % % \begin{verbatim} % \fancyfoot[R]{\setlength{\unitlength}{1mm} % \begin{picture}(0,0) -% \put(5,0){\includegraphics{pic\thepage.ps}} +% \put(5,-20){\includegraphics[width=1cm]{pic\thepage}} % \end{picture}} % \end{verbatim} % +% If the document is two-sided, it would be better to put them only on +% the odd pages, by specifying \verb|\fancyfoot[RO]|. +% % Notice that the \cs{unitlength} parameter should % be set locally in the fancyhdr field in order to avoid unwanted % interference with its value in the text. @@ -2416,7 +2450,7 @@ % \setlength{\unitlength}{9mm} % \newcommand{\blob}{\rule[-.2\unitlength]{1\unitlength}{.5\unitlength}} % \newcounter{line} -% \newcommand{\secname}[1]{\addtocounter{line}{1}^^A +% \newcommand{\secname}[1]{\addtocounter{line}{1}% % \put(1,-\value{line}){\blob} % \put(-7.5,-\value{line}){\arabic{line}} % \put(-7,-\value{line}){#1}} @@ -2448,17 +2482,17 @@ % \put(1,-\value{section}){\blob} % \end{picture}} % -% \newcommand\lblob{^^A +% \newcommand\lblob{% % \begin{picture}(0,0) % \put(-3,-\value{section}){\blob} -% \end{picture}^^A +% \end{picture}% % \thepage} % % \pagestyle{fancy} % \fancyfoot[C]{} % % \newcounter{line} -% \newcommand{\secname}[1]{\addtocounter{line}{1}^^A +% \newcommand{\secname}[1]{\addtocounter{line}{1}% % \put(1,-\value{line}){\blob} % \put(-7.5,-\value{line}){\Large \arabic{line}} % \put(-7,-\value{line}){\Large #1}} @@ -2819,7 +2853,9 @@ % The source code can be found on Github:\\ % \url{https://github.com/pietvo/fancyhdr}\\ % Bugs and suggestions for improvements can be reported at\\ -% \url{https://github.com/pietvo/fancyhdr/issues} +% \url{https://github.com/pietvo/fancyhdr/issues}\\ +% Example files can be found at\\ +% \url{https://github.com/pietvo/fancyhdr/tree/Examples} % % \section{Version information} % \begin{itemize} @@ -2874,7 +2910,7 @@ % Version 4 is a significant rewrite of the package. It also introduces % a number of new features. % \begin{itemize} -% \item Version 4.0, March 15, 2020--Jan 04, 2021 +% \item Version 4.0, March 15, 2019--Jan 04, 2021 % \begin{itemize} % \item Options introduced on the \cs{usepackage} command. % \item The check whether the header or footer fits in @@ -2905,6 +2941,11 @@ % % \end{itemize} % +% \item Version 4.0.1, Jan 28, 2021 +% \begin{itemize} +% \item Some documentation corrections, especially in sections +% \ref{sec:xmarks} and \ref{sec:movie}. +% \end{itemize} % \end{itemize} % % @@ -3238,7 +3279,7 @@ % % \changes{fancyhdr v3.1}{2004/10/07}{Added '\texttt{\cs{endlinechar}!=13}' to % \cs{f@nch@reset} to prevent problems with \cs{includegraphics} in -% header/footer when \environment{verbatiminput} is active.} +% header/footer when \env{verbatiminput} is active.} % % \changes{fancyhdr v3.2}{2005/03/22}{Reset \cs{everypar} (the real one) % in \cs{f@nch@reset} because spanish.ldf does strange things with diff --git a/macros/latex/contrib/fancyhdr/fancyhdr.pdf b/macros/latex/contrib/fancyhdr/fancyhdr.pdf Binary files differindex 419565512b..b4396fbd3b 100644 --- a/macros/latex/contrib/fancyhdr/fancyhdr.pdf +++ b/macros/latex/contrib/fancyhdr/fancyhdr.pdf diff --git a/macros/luatex/generic/chinese-jfm/LICENSE b/macros/luatex/generic/chinese-jfm/LICENSE index 01171f681d..ecd12280ed 100644 --- a/macros/luatex/generic/chinese-jfm/LICENSE +++ b/macros/luatex/generic/chinese-jfm/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2020 ListLee +Copyright (c) 2020 -- 2021 ListLee Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/macros/luatex/generic/chinese-jfm/README.md b/macros/luatex/generic/chinese-jfm/README.md index 02ded93f7c..9ed15b670a 100644 --- a/macros/luatex/generic/chinese-jfm/README.md +++ b/macros/luatex/generic/chinese-jfm/README.md @@ -1,10 +1,10 @@ -# Chinese JFM files +# Chinese JFM ## Introduction Chinese JFM is a series of luatexja-jfm files for better Chinese typesetting, providing *quanjiao*, *banjiao*, and *kaiming* three styles and other fancy features. It can be used for both horizontal and vertical writing mode in Simplified/Traditional Chinese or Japanese fonts. -For detailed useages, please read the [documentation](doc.pdf) (in Chinese). +For detailed useages, please read the [documentation](chinese-jfm.pdf) (in Chinese). ## Update info @@ -16,5 +16,11 @@ First published to CTAN. Update documentation. +* v1.1.0 + + - Add glue between middle punctuations and the begin or the end of `hbox`/`parbox`. + + - Add `fzpr` feature for zh_CN. + --- -Copyright (C) 2020 ListLee. +Copyright (c) 2020 -- 2021 ListLee. diff --git a/macros/luatex/generic/chinese-jfm/chinese-jfm.pdf b/macros/luatex/generic/chinese-jfm/chinese-jfm.pdf Binary files differnew file mode 100644 index 0000000000..f3436b5fd1 --- /dev/null +++ b/macros/luatex/generic/chinese-jfm/chinese-jfm.pdf diff --git a/macros/luatex/generic/chinese-jfm/chinese-jfm.tex b/macros/luatex/generic/chinese-jfm/chinese-jfm.tex new file mode 100644 index 0000000000..c2ebd81c81 --- /dev/null +++ b/macros/luatex/generic/chinese-jfm/chinese-jfm.tex @@ -0,0 +1,96 @@ +% The documentation of chinese-jfm +% v1.1.0 +% Copyright (c) 2020 -- 2021 ListLee. + +\documentclass[a4paper , zihao=-4 , fontset=adobe , punct=zh_CN/kaiming]{ctexart} +\usepackage{luatexja-adjust} +% \usepackage{lua-visual-debug} +\protect\def\+{\insertxkanjiskip} + +\usepackage[textwidth=34em , centering]{geometry} + +\usepackage{hyperref} +\hypersetup{colorlinks=true} + +\title{\textbf{\textsf{Chinese JFM}}\thanks{\url{https://github.com/tanukihee/ChineseJFM}}} +\author{ListLee} +\date{\zhtoday \qquad v1.1.0} + +\begin{document} +\maketitle + +\section{概述} +\textsf{Chinese JFM}是为中文排版编写的luatexja-jfm文件,提供全角、半角、开明三种风格,适用于简繁中文及日文字体的横直排。 + +虽然\textsf{luatexja}自带了一套全角、半角、开明的JFM文件,但在调整上缺少灵活性,同时也没有使用\+\verb|priority|特性。\textsf{Chinese JFM}文件中同时增加了\+\verb|priority|的设置,配合\textsf{luatexja-adjust}包,可以进行有优先顺序的标点挤压。\label{sec:pr} + +\section{使用方法} +\textsf{luatexja}在20200919版本后更新了JFM features特性,基本语法为 +\begin{verbatim} + jfm = <JFM name>[/{<JFM features>}] +\end{verbatim} + +\textsf{Chinese JFM}提供了\textsf{zh\_CN}、\textsf{zh\_TW}与\textsf{ja\_JP}三个文件,分别适用于简中字体(标点偏靠)、繁中字体(标点中置)与日文字体(冒号、分号中置,其他偏靠);在3个JFM文件中,均提供了\+\verb|quanjiao|、\verb|banjiao|与\+\verb|kaiming|三个基本特性。 + +在使用\CTeX{}宏集或文档类时,只需要使用 +\begin{verbatim} + \documentclass[punct = zh_CN/quanjiao]{ctexart} +\end{verbatim} +或 +\begin{verbatim} + \usepackage[punct = zh_CN/kaiming]{ctex} +\end{verbatim} +即可。 + +在使用\textsf{luatexja}或\textsf{ltj}文档类时,需要在调用\textsf{luatexja-fontspec}宏包后,以\begin{verbatim} + YokoFeatures = {JFM = {<JFM name>}} +\end{verbatim} +或 +\begin{verbatim} + TateFeatures = {JFM = {<JFM name>}} +\end{verbatim} +的形式调用。 + +横排时,使用 +\begin{verbatim} + YokoFeatures = {JFM = {zh_CN/quanjiao}} +\end{verbatim} +直排时,使用 +\begin{verbatim} + TateFeatures = {JFM = {zh_CN/{quanjiao , vert}}} +\end{verbatim} +{\color{red}注意:在直排时,\emph{必须}同时使用\+\verb|vert|特性。} + +\section{特性一览} +除上文介绍的\+\verb|quanjiao|、\verb|banjiao|、\verb|kaiming|与\+\verb|vert|特性外,\textsf{Chinese JFM}还提供了以下特性。 + +\begin{description} + \item[\texttt{fzpr}] “\textit{Fangzheng} parenthesis”,“方正括号”特性。部分方正字体会将除引号外的括号做在中间位置。开启本特性,可以将括号调整至“正常”位置。仅\textsf{zh\_CN}拥有。 + \item[\texttt{hwcl}] “half-width colon”,“半宽冒号”特性。适用于简中直排时,冒号分号只占半宽的字体(如华文宋体等)。仅\textsf{zh\_CN}拥有。 + \item[\texttt{prop}] “proportional”,“比例宽度”特性。适用于比例宽度的日文字体,比之于\textsf{lua\-texja}自带的\textsf{jfm-prop.lua}与\textsf{jfm-propv.lua},\verb|prop|特性将此两者整合的同时,也提供了对标点间距的调整功能。仅\textsf{ja\_JP}拥有。 +\end{description} + +\section{挤压顺序} +如第\ref{sec:pr}节所述,\textsf{Chinese JFM}中配有\+\verb|priority|的设置,配合\textsf{luatexja-adjust}包,可以进行有优先顺序的标点挤压。\textsf{Chinese JFM}沿袭传统铅字排版与现代DTP软件(如InDesign等)的习惯,认为标点只占半宽,全宽标点是半宽标点加上半宽铅空的结果。所谓的“标点挤压”更应说成是“标点间距调整”,调整顺序如下。 +\begin{itemize} + \item 最先给句号、问号、叹号插空; + \item 其次给顿号、逗号、冒号、分号插空; + \item 最后调整引号、括号前后与间隔号两边的空格; + \item 如果进行上述调整后,仍无法达到行长要求,最后才会进行字间字距调整。 +\end{itemize} + +根据标点位置,可以将标点分为偏靠标点、中置标点与全宽标点。对于偏靠标点,插空指在半宽标点后插入一个半宽铅空,对于中置标点,插空指在半宽标点前后各插入一个1/4宽铅空。全宽标点无空白可调整的,不作调整。 + +\nocite{*} +\begin{thebibliography}{9} +\bibitem{LuaTeX-ja} Lua\TeX-jaプロジェクトチーム.\textit{Lua\TeX-ja パッケージ} [EB/OL].version 20210103.0,(2021-01-03)\\\mbox{} +\hfill\url{https://ctan.org/pkg/luatexja} + +\bibitem{CTeX} CTEX.ORG.\textit{\CTeX{} 宏集手册} [EB/OL].version 2.5.5,(2020-10-19)\\\mbox{} +\hfill\url{https://ctan.org/pkg/ctex} + +\bibitem{孔雀计划} 刘庆(Eric Q L).\textit{孔雀计划:中文字体排印的思路} [EB/OL].\\\mbox{} +\hfill\url{https://thetype.com/kongque/} +\end{thebibliography} + +\end{document}
\ No newline at end of file diff --git a/macros/luatex/generic/chinese-jfm/doc.pdf b/macros/luatex/generic/chinese-jfm/doc.pdf Binary files differdeleted file mode 100644 index 76f797b9dd..0000000000 --- a/macros/luatex/generic/chinese-jfm/doc.pdf +++ /dev/null diff --git a/macros/luatex/generic/chinese-jfm/doc.tex b/macros/luatex/generic/chinese-jfm/doc.tex deleted file mode 100644 index 033a3dc8eb..0000000000 --- a/macros/luatex/generic/chinese-jfm/doc.tex +++ /dev/null @@ -1,85 +0,0 @@ -\documentclass[a4paper, fontset=adobe , punct=zh_CN/kaiming]{ctexart} -\usepackage{luatexja-adjust} - -\def\+{\insertxkanjiskip} - -\usepackage[textwidth=36em , centering]{geometry} - -\usepackage{hyperref} -\hypersetup{colorlinks=true} - -\title{\textbf{\textsf{ChineseJFM}文件}\hbox{}\thanks{\url{https://github.com/tanukihee/ChineseJFM}}} -\author{ListLee} -\date{\zhtoday \qquad v1.0.1} - -\begin{document} -\maketitle - -\section{概述} -\textsf{ChineseJFM}文件是为中文排版编写的luatexja-jfm文件,提供全角、半角、开明三种风格,适用于简繁中文及日文字体的横直排。 - -虽然\textsf{luatexja}自带了一套全角、半角、开明的JFM文件,但在调整上缺少灵活性,同时也没有使用\+\verb|priority|特性。\textsf{ChineseJFM}文件中同时增加了\+\verb|priority|的设置,配合\textsf{luatexja-adjust}包,可以进行有优先顺序的标点挤压。\label{sec:pr} - -\section{使用方法} -\textsf{luatexja}在20200919版本后更新了JFM features特性,基本语法为 -\begin{verbatim} - jfm = <JFM name>[/{<JFM features>}] -\end{verbatim} - -\textsf{ChineseJFM}提供了\textsf{zh\_CN}、\textsf{zh\_TW}与\textsf{ja\_JP}三个文件,分别适用于简中字体(标点偏靠)、繁中字体(标点中置)与日文字体(冒号、分号中置,其他偏靠);在3个JFM文件下,提供了\+\verb|quanjiao|、\verb|banjiao|与\+\verb|kaiming|三个基本特性。 - -在使用\CTeX{}宏集或文档类时,只需要使用 -\begin{verbatim} - \documentclass[punct = zh_CN/quanjiao]{ctexart} -\end{verbatim} -或 -\begin{verbatim} - \usepackage[punct = zh_CN/kaiming]{ctex} -\end{verbatim} -即可。 - -在使用\textsf{luatexja}或\textsf{ltj}文档类时,需要在调用\textsf{luatexja-fontspec}宏包后,以\begin{verbatim} - YokoFeatures = {JFM = {<JFM name>}} -\end{verbatim} -或 -\begin{verbatim} - TateFeatures = {JFM = {<JFM name>}} -\end{verbatim} -的形式调用。 - -横排时,使用 -\begin{verbatim} - YokoFeatures = {JFM = {zh_CN/quanjiao}} -\end{verbatim} -直排时,使用 -\begin{verbatim} - TateFeatures = {JFM = {zh_CN/{quanjiao , vert}}} -\end{verbatim} -{\color{red}注意:在直排时,\emph{必须}同时使用\+\verb|vert|特性。} - -\section{特性一览} -除上文介绍的\+\verb|quanjiao|、\verb|banjiao|、\verb|kaiming|与\+\verb|vert|特性外,\textsf{ChineseJFM}还提供了以下特性。 - -\begin{description} - \item[\texttt{hwcl}] “half-width colon”,“半宽冒号”特性,适用于简中直排时,冒号分号只占半宽的字体(如华文宋体等),仅\textsf{zh\_CN}拥有。 - \item[\texttt{prop}] “proportional”,“比例宽度”特性,使用于比例宽度的日文字体,比之于\textsf{luatexja}自带的\textsf{jfm-prop.lua}与\textsf{jfm-propv.lua},\verb|prop|特性将此两者整合的同时,也提供了对标点间距的调整功能,仅\textsf{ja\_JP}拥有。 -\end{description} - -\section{挤压顺序} -如第\ref{sec:pr}节所述,\textsf{ChineseJFM}文件中配有\+\verb|priority|的设置,配合\textsf{luatexja-adjust}包,可以进行有优先顺序的标点挤压。\textsf{ChineseJFM}沿袭传统铅字排版与现代DTP软件(如InDesign等)的习惯,认为标点只占半宽,全宽标点是半宽标点加上半宽铅空的结果。所谓的“标点挤压”更应说成是“标点间距调整”,调整顺序如下。 -\begin{itemize} - \item 最先给句号、问号、叹号插空; - \item 其次给顿号、逗号、冒号、分号插空; - \item 最后调整引号、括号前后与间隔号两边的空格; - \item 如果进行上述调整后,仍无法达到行长要求,最后才会进行字间字距调整。 -\end{itemize} - -根据标点位置,可以将标点分为偏靠标点、中置标点与全宽标点。对于偏靠标点,插空指在半宽标点后插入一个半宽铅空,对于中置标点,插空指在半宽标点前后各插入一个1/4宽铅空。全宽标点无空白可调整的,不作调整。 - -\nocite{*} -\begin{thebibliography}{9} -\bibitem{孔雀计划} 刘庆(Eric Q L).\textit{孔雀计划:中文字体排印的思路} [EB/OL].\\ -\raggedleft{\url{https://thetype.com/kongque/}} -\end{thebibliography} - -\end{document}
\ No newline at end of file diff --git a/macros/luatex/generic/chinese-jfm/jfm-ja_JP.lua b/macros/luatex/generic/chinese-jfm/jfm-ja_JP.lua index 863c89a79b..e1e7527140 100644 --- a/macros/luatex/generic/chinese-jfm/jfm-ja_JP.lua +++ b/macros/luatex/generic/chinese-jfm/jfm-ja_JP.lua @@ -1,14 +1,15 @@ -- Chinese JFM for Japanese fonts (ja_JP) --- v1.0.1 +-- v1.1.0 +-- Copyright (c) 2020 -- 2021 ListLee. -local is_vt, is_qj, is_bj, is_km, is_prop +local is_vt, is_qj, is_bj, is_km, is_pr if luatexja.jfont.jfm_feature then is_vt = luatexja.jfont.jfm_feature.vert is_qj = luatexja.jfont.jfm_feature.quanjiao is_bj = luatexja.jfont.jfm_feature.banjiao is_km = luatexja.jfont.jfm_feature.kaiming - is_prop = luatexja.jfont.jfm_feature.prop + is_pr = luatexja.jfont.jfm_feature.prop end if @@ -42,7 +43,7 @@ luatexja.jfont.define_jfm { align = 'middle', left = 0, down = 0, - width = is_prop and 'prop' or 1, + width = is_pr and 'prop' or 1, height = is_vt and 0.5 or 0.88, depth = is_vt and 0.5 or 0.12, italic = 0, @@ -160,7 +161,8 @@ luatexja.jfont.define_jfm { [3] = aki(0.5, -1), [4] = aki(0.25), [41] = aki(0.25), - [5] = aki(0.25) + [5] = aki(0.25), + [6] = aki(0.25) } }, [3] = { @@ -182,7 +184,8 @@ luatexja.jfont.define_jfm { [3] = aki(0.5, -1), [4] = aki(0.25, -1), [41] = aki(0.25, -1), - [5] = aki(0.25, -1) + [5] = aki(0.25, -1), + [6] = aki(0.25, -1) } }, [4] = { @@ -292,6 +295,10 @@ luatexja.jfont.define_jfm { }, [6] = { -- box end - chars = {'boxbdd', 'parbdd', 'glue'} + chars = {'boxbdd', 'parbdd', 'glue'}, + glue = { + [22] = aki(0.25), + [3] = aki(0.25, -1) + } } } diff --git a/macros/luatex/generic/chinese-jfm/jfm-zh_CN.lua b/macros/luatex/generic/chinese-jfm/jfm-zh_CN.lua index ed161a10a1..d7213c227a 100644 --- a/macros/luatex/generic/chinese-jfm/jfm-zh_CN.lua +++ b/macros/luatex/generic/chinese-jfm/jfm-zh_CN.lua @@ -1,17 +1,19 @@ -- Chinese JFM for Simplified Chinese fonts (zh_CN) --- v1.0.1 +-- v1.1.0 +-- Copyright (c) 2020 -- 2021 ListLee. -local is_vt, is_qj, is_bj, is_km, is_hwcl +local is_vt, is_qj, is_bj, is_km, is_hc, is_fz if luatexja.jfont.jfm_feature then is_vt = luatexja.jfont.jfm_feature.vert is_qj = luatexja.jfont.jfm_feature.quanjiao is_bj = luatexja.jfont.jfm_feature.banjiao is_km = luatexja.jfont.jfm_feature.kaiming - is_hwcl = luatexja.jfont.jfm_feature.hwcl + is_hc = luatexja.jfont.jfm_feature.hwcl + is_fz = luatexja.jfont.jfm_feature.fzpr end -if is_hwcl then +if is_hc then if not is_vt then tex.error('JFM feature "hwcl" can only be used in vertical mode') end @@ -54,6 +56,7 @@ luatexja.jfont.define_jfm { italic = 0, glue = { [1] = aki(0.5, -1), + [10] = aki(0.5, -1), [3] = aki(0.25, -1) }, round_threshold = 0.01 @@ -61,8 +64,6 @@ luatexja.jfont.define_jfm { [1] = { -- 开括号 chars = { - '‘', - '“', '〈', '《', '「', @@ -77,6 +78,22 @@ luatexja.jfont.define_jfm { '{', '⦅' }, + align = is_fz and 'middle' or 'right', + left = 0, + down = 0, + width = 0.5, + height = is_vt and 0.5 or 0.88, + depth = is_vt and 0.5 or 0.12, + italic = 0, + glue = { + [3] = aki(0.25, -1) + } + }, + [10] = { + chars = { + '‘', + '“' + }, align = 'right', left = 0, down = 0, @@ -91,8 +108,6 @@ luatexja.jfont.define_jfm { [2] = { -- 闭括号 chars = { - '’', - '”', '〉', '》', '」', @@ -108,6 +123,28 @@ luatexja.jfont.define_jfm { '}', '⦆' }, + align = is_fz and 'middle' or 'left', + left = 0, + down = 0, + width = 0.5, + height = is_vt and 0.5 or 0.88, + depth = is_vt and 0.5 or 0.12, + italic = 0, + glue = { + [0] = aki(0.5, -1), + [1] = aki(0.5, -1), + [10] = aki(0.5, -1), + [3] = aki(0.25, -1), + [5] = aki(0.5, -1), + [51] = aki(0.5, -1), + [52] = aki(0.5, -1) + } + }, + [20] = { + chars = { + '’', + '”' + }, align = 'left', left = 0, down = 0, @@ -118,7 +155,8 @@ luatexja.jfont.define_jfm { glue = { [0] = aki(0.5, -1), [1] = aki(0.5, -1), - [3] = aki(0.5, -1), + [10] = aki(0.5, -1), + [3] = aki(0.25, -1), [5] = aki(0.5, -1), [51] = aki(0.5, -1), [52] = aki(0.5, -1) @@ -137,6 +175,7 @@ luatexja.jfont.define_jfm { glue = { [0] = aki(0.5), [1] = aki(0.5), + [10] = aki(0.5), [3] = aki(0.5), [5] = aki(0.5), [51] = aki(0.5), @@ -149,17 +188,18 @@ luatexja.jfont.define_jfm { align = 'left', left = 0, down = 0, - width = is_vt and (is_hwcl and 0.5 or 1) or 0.5, + width = is_vt and (is_hc and 0.5 or 1) or 0.5, height = is_vt and 0.5 or 0.88, depth = is_vt and 0.5 or 0.12, italic = 0, glue = { - [0] = is_vt and (is_hwcl and aki(0.5) or {}) or aki(0.5), - [1] = is_vt and (is_hwcl and aki(0.5) or {}) or aki(0.5), - [3] = is_vt and (is_hwcl and aki(0.5) or aki(0.25, 1)) or aki(0.5), - [5] = is_vt and (is_hwcl and aki(0.5) or {}) or aki(0.5), - [51] = is_vt and (is_hwcl and aki(0.5) or {}) or aki(0.5), - [52] = is_vt and (is_hwcl and aki(0.5) or {}) or aki(0.5) + [0] = is_vt and (is_hc and aki(0.5) or {}) or aki(0.5), + [1] = is_vt and (is_hc and aki(0.5) or {}) or aki(0.5), + [10] = is_vt and (is_hc and aki(0.5) or {}) or aki(0.5), + [3] = is_vt and (is_hc and aki(0.5) or aki(0.25, 1)) or aki(0.5), + [5] = is_vt and (is_hc and aki(0.5) or {}) or aki(0.5), + [51] = is_vt and (is_hc and aki(0.5) or {}) or aki(0.5), + [52] = is_vt and (is_hc and aki(0.5) or {}) or aki(0.5) } }, [3] = { @@ -174,15 +214,18 @@ luatexja.jfont.define_jfm { italic = 0, glue = { [0] = aki(0.25, -1), - [1] = aki(0.5, -1), + [1] = aki(0.25, -1), + [10] = aki(0.25, -1), [2] = aki(0.25, -1), + [20] = aki(0.25, -1), [21] = aki(0.25, -1), [22] = aki(0.25, -1), [3] = aki(0.5, -1), [4] = aki(0.25, -1), [41] = aki(0.25, -1), [42] = aki(0.25, -1), - [5] = aki(0.25, -1) + [5] = aki(0.25, -1), + [6] = aki(0.25, -1) } }, [4] = { @@ -198,6 +241,7 @@ luatexja.jfont.define_jfm { glue = { [0] = aki(0.5, 1, true), [1] = aki(0.5, 1, true), + [10] = aki(0.5, 1, true), [3] = aki(0.5, 1, true), [5] = aki(0.5, 1, true), [51] = aki(0.5, 1, true), @@ -217,6 +261,7 @@ luatexja.jfont.define_jfm { glue = { [0] = is_vt and {} or aki(0.5, 1, true), [1] = is_vt and {} or aki(0.5, 1, true), + [10] = is_vt and {} or aki(0.5, 1, true), [3] = is_vt and aki(0.25, -1) or aki(0.5, 1, true), [5] = is_vt and {} or aki(0.5, 1, true), [51] = is_vt and {} or aki(0.5, 1, true), @@ -256,6 +301,7 @@ luatexja.jfont.define_jfm { italic = 0, glue = { [1] = aki(0.5, -1), + [10] = aki(0.5, -1), [3] = aki(0.25, -1) }, kern = { @@ -276,6 +322,7 @@ luatexja.jfont.define_jfm { italic = 0, glue = { [1] = aki(0.5, -1), + [10] = aki(0.5, -1), [3] = aki(0.25, -1) }, kern = { @@ -296,6 +343,7 @@ luatexja.jfont.define_jfm { italic = 0, glue = { [1] = aki(0.5, -1), + [10] = aki(0.5, -1), [3] = aki(0.25, -1) }, kern = { @@ -306,6 +354,9 @@ luatexja.jfont.define_jfm { }, [6] = { -- box end - chars = {'boxbdd', 'parbdd', 'glue'} + chars = {'boxbdd', 'parbdd', 'glue'}, + glue = { + [3] = aki(0.25, -1) + } } } diff --git a/macros/luatex/generic/chinese-jfm/jfm-zh_TW.lua b/macros/luatex/generic/chinese-jfm/jfm-zh_TW.lua index 9000cf0d74..5a90144b41 100644 --- a/macros/luatex/generic/chinese-jfm/jfm-zh_TW.lua +++ b/macros/luatex/generic/chinese-jfm/jfm-zh_TW.lua @@ -1,5 +1,6 @@ -- Chinese JFM for Traditional Chinese fonts (zh_TW) --- v1.0.1 +-- v1.1.0 +-- Copyright (c) 2020 -- 2021 ListLee. local is_vt, is_qj, is_bj, is_km @@ -149,7 +150,8 @@ luatexja.jfont.define_jfm { [41] = aki(0.25), [5] = aki(0.25), [51] = aki(0.25), - [52] = aki(0.25) + [52] = aki(0.25), + [6] = aki(0.25) } }, [22] = { @@ -176,7 +178,8 @@ luatexja.jfont.define_jfm { [41] = is_vt and {} or aki(0.25), [5] = is_vt and {} or aki(0.25), [51] = is_vt and {} or aki(0.25), - [52] = is_vt and {} or aki(0.25) + [52] = is_vt and {} or aki(0.25), + [6] = is_vt and {} or aki(0.25) } }, [3] = { @@ -202,7 +205,8 @@ luatexja.jfont.define_jfm { [41] = aki(0.25, -1), [5] = aki(0.25, -1), [51] = aki(0.25, -1), - [52] = aki(0.25, -1) + [52] = aki(0.25, -1), + [6] = aki(0.25, -1) } }, [4] = { @@ -230,7 +234,8 @@ luatexja.jfont.define_jfm { [41] = aki(0.25, 1, true), [5] = aki(0.25, 1, true), [51] = aki(0.25, 1, true), - [52] = aki(0.25, 1, true) + [52] = aki(0.25, 1, true), + [6] = aki(0.25, 1, true) } }, [41] = { @@ -328,6 +333,12 @@ luatexja.jfont.define_jfm { }, [6] = { -- box end - chars = {'boxbdd', 'parbdd', 'glue'} + chars = {'boxbdd', 'parbdd', 'glue'}, + glue = { + [21] = aki(0.25), + [22] = is_vt and {} or aki(0.25), + [3] = aki(0.25, -1), + [4] = aki(0.25, 1, true) + } } } |