diff options
-rw-r--r-- | Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md | 9 | ||||
-rw-r--r-- | Master/texmf-dist/doc/lualatex/letgut/README.md | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.pdf | bin | 152938 -> 143133 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex | 18 | ||||
-rw-r--r-- | Master/texmf-dist/doc/lualatex/letgut/letgut-code.pdf | bin | 791270 -> 781197 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex | 654 | ||||
-rw-r--r-- | Master/texmf-dist/doc/lualatex/letgut/letgut.pdf | bin | 402063 -> 388294 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/lualatex/letgut/letgut.tex | 13 | ||||
-rw-r--r-- | Master/texmf-dist/source/lualatex/letgut/letgut.org | 192 | ||||
-rw-r--r-- | Master/texmf-dist/tex/lualatex/letgut/letgut-lstlang.sty | 28 | ||||
-rw-r--r-- | Master/texmf-dist/tex/lualatex/letgut/letgut.cbx | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/lualatex/letgut/letgut.cls | 130 | ||||
-rw-r--r-- | Master/texmf-dist/tex/lualatex/letgut/letgut.dbx | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/lualatex/letgut/letgut.lbx | 2 |
14 files changed, 535 insertions, 517 deletions
diff --git a/Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md b/Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md index 683a63f6ef1..6f3d2cfba05 100644 --- a/Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md +++ b/Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md @@ -7,6 +7,15 @@ Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +## [0.9.8] - 2024-02-29 + +### Changed +- Drop use of l3keys2e, as advised. +- Announcements possibly neither in the ToC nor in the bookmarks. + +### Fixed +Floats not outside the article they belong to. + ## [0.9.7] - 2023-05-21 ### Changed diff --git a/Master/texmf-dist/doc/lualatex/letgut/README.md b/Master/texmf-dist/doc/lualatex/letgut/README.md index 7fd9c0fd40a..b829e579ba2 100644 --- a/Master/texmf-dist/doc/lualatex/letgut/README.md +++ b/Master/texmf-dist/doc/lualatex/letgut/README.md @@ -8,7 +8,7 @@ to the newsletter “La Lettre GUTenberg” of GUTenberg, the French TeX User Gr Release ------- -2023-05-21 v0.9.7 +2024-02-29 v0.9.8 Development ----------- diff --git a/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.pdf b/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.pdf Binary files differindex e1c6a331070..e2abf29baaa 100644 --- a/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.pdf +++ b/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.pdf diff --git a/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex b/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex index 170ea40febb..27b7048b990 100644 --- a/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex +++ b/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex @@ -1,4 +1,4 @@ -% Created 2023-05-21 dim. 17:49 +% Created 2024-02-29 Thu 16:21 % Intended LaTeX compiler: lualatex \documentclass{letgut} \setmainfont{KpRoman} @@ -15,18 +15,18 @@ \section{Readme file} \label{sec:org4c9ba67} -\begin{verbatim} +\begin{lstlisting} -------:| --------------------------------------------------- letgut:| Package for the banner of the newsletter - | "La Lettre de GUTenberg" + | "La Lettre de GUTenberg" Author:| Association GUTenberg E-mail:| secretariat@gutenberg.eu.org License:| Released under the LaTeX Project Public License - | v1.3c or later + | v1.3c or later See:| http://www.latex-project.org/lppl.txt Copyright (C) 1994-2022 by Association GUTenberg - <secretariat@gutenberg.eu.org> + <secretariat@gutenberg.eu.org> This work may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either @@ -37,7 +37,7 @@ http://www.latex-project.org/lppl.txt This work is "maintained" (as per LPPL maintenance status) by Association GUTenberg. -\end{verbatim} +\end{lstlisting} \section{Implementation} \label{sec:org4c5e60d} @@ -45,13 +45,13 @@ by Association GUTenberg. \subsection{Identification} \label{sec:org09b0cd2} -\begin{verbatim} +\begin{lstlisting} This is file `letgut-banner.sty, generated with the Emacs Org-babel utility. The original source file is letgut-banner.org %% -\end{verbatim} +\end{lstlisting} These document classes can only be used with \LaTeXe, so we make sure that an appropriate message is displayed when another \TeX{} @@ -792,4 +792,4 @@ textheight of the first page of the height of the horizontal bar of the "L". \section{Example file (\texttt{letgut-banner-example.tex})} \label{sec:orgaf6d8ec} -\end{document}
\ No newline at end of file +\end{document} diff --git a/Master/texmf-dist/doc/lualatex/letgut/letgut-code.pdf b/Master/texmf-dist/doc/lualatex/letgut/letgut-code.pdf Binary files differindex c0953edc39f..52f93be2b84 100644 --- a/Master/texmf-dist/doc/lualatex/letgut/letgut-code.pdf +++ b/Master/texmf-dist/doc/lualatex/letgut/letgut-code.pdf diff --git a/Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex b/Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex index 49205c4a1b9..a6526c2b4f4 100644 --- a/Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex +++ b/Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex @@ -1,4 +1,4 @@ -% Created 2023-05-21 dim. 17:49 +% Created 2024-02-29 Thu 16:21 % Intended LaTeX compiler: lualatex \documentclass{letgut} \setmainfont{KpRoman} @@ -90,8 +90,8 @@ Now, we can announce the class name and its version: \begin{lstlisting} \ProvidesExplClass{letgut} -{2023-05-21} -{0.9.7} +{2024-02-29} +{0.9.8} { Class for the newsletter “The GUTenberg Letter” } @@ -520,13 +520,6 @@ We close the \lstinline+\AddToHook{begindocument/before}+ argument. \subsection{Class options} \label{ImplementationClassoptions-4meg55h0jlj0} -In order to provide class options, we load the \package{l3keys2e} which provides -\LaTeXe{} option processing using \LaTeX3 keys: - -\begin{lstlisting} -\RequirePackage{l3keys2e} -\end{lstlisting} - We define the 2 load time options for the target audience: \begin{itemize} @@ -1005,7 +998,7 @@ currently does not work well in \lstinline+shipout/background+ (see \__letgut_unselectable:n { \put(0.5\paperwidth,-0.5\paperheight) { - \Huge + \Huge \end{lstlisting} Currently, we can't use \package{l3color}'s \lstinline+\color_fill:n+ (see \url{https://github.com/ho-tex/luacolor/issues/4\#issuecomment-848774260}) @@ -1013,14 +1006,14 @@ and we have to rely on \package{xcolor}'s \lstinline+\color+. \begin{lstlisting} % \color_fill:n {black!10} \color{black!10} -\hbox_set:Nn \l_tmpa_box { +\hbox_set:Nn \l__letgut_tmpa_box { \fontsize{0.25\paperwidth}{0.3\paperwidth} \selectfont \c__letgut_draftwatermark_text_tl } -\hbox_set:Nn \l_tmpb_box { +\hbox_set:Nn \l__letgut_tmpb_box { \hbox_overlap_center:n { - \box_use:N \l_tmpa_box + \box_use:N \l__letgut_tmpa_box } } \end{lstlisting} @@ -1028,7 +1021,7 @@ The draft watermak is rotated in order to be parallely slanted to the first diagonal of the page (angle \(=\arctan(\text{paper height}/\text{paper width})\)). \begin{lstlisting} -\box_rotate:Nn \l_tmpb_box { +\box_rotate:Nn \l__letgut_tmpb_box { \fp_eval:n { atand ( \dim_to_fp:n {\paperheight} @@ -1037,7 +1030,7 @@ diagonal of the page (angle \(=\arctan(\text{paper height}/\text{paper ) } } -\box_use:N \l_tmpb_box +\box_use:N \l__letgut_tmpb_box } } } @@ -1090,7 +1083,7 @@ subparagraphs) detailed or not. \end{itemize} \begin{lstlisting} -\keys_define:nn { letgut } +\DeclareKeys[ letgut ] { , for-readers .bool_gset:N = \g__letgut_for_readers_bool , for-readers .initial:n = { true } @@ -1118,12 +1111,12 @@ subparagraphs) detailed or not. \AddToHook{begindocument/before} { \bool_if:NTF \g__letgut_paper_bool { - \msg_warning:nnn{letgut}{ - pagecolor~inoperative~with~paper~option - }{#1} + \msg_warning:nnn{letgut}{ + pagecolor~inoperative~with~paper~option + }{#1} }{ - \clist_gset:Nn \g__letgut_pagecolor_clist { #1 } - \pagecolor[rgb]{#1} + \clist_gset:Nn \g__letgut_pagecolor_clist { #1 } + \pagecolor[rgb]{#1} } } } @@ -1145,14 +1138,14 @@ subparagraphs) detailed or not. \AddToHook{begindocument/before}{ \bool_lazy_and:nnTF {\g__letgut_for_readers_bool} {!\g__letgut_paper_bool} { - \bool_gset_false:N \g__letgut_included_files_attached_bool + \bool_gset_false:N \g__letgut_included_files_attached_bool }{ - \bool_gset_true:N \g__letgut_included_files_attached_bool + \bool_gset_true:N \g__letgut_included_files_attached_bool } } } } -\ProcessKeysOptions { letgut } +\ProcessKeyOptions[ letgut ] \AddToHook{begindocument/before}{ \bool_lazy_and:nnTF {\g__letgut_for_readers_bool} {!\g__letgut_paper_bool} { @@ -1288,7 +1281,7 @@ The table of contents is customized: \end{lstlisting} \begin{lstlisting} - >{\bfseries}X| + >{\bfseries}X| }, vlines, hlines, @@ -1330,7 +1323,9 @@ The table of contents is customized: \tl_if_empty:NTF {#1}{ \phantomsection\addcontentsline{toc}{title}{#2} }{ - \phantomsection\addcontentsline{toc}{title}{#1} + \tl_if_empty:NF {#2}{ + \phantomsection\addcontentsline{toc}{title}{#1} + } } } \NewTColorBox{announcement}{ O{} m } @@ -1342,7 +1337,8 @@ The table of contents is customized: overlay~ unbroken~ and~ first ={ \node[color=\l__letgut_toc_color_announce_tl]~ at~ ([yshift=8pt]title.south) {\pgfornament[width=0.4\linewidth]{88}}; - \node[color=white,anchor=north~ west]~ at~ (frame.north~ west) {\huge\bfseries\aldineright{}}; + \node[color=white,anchor=north~ west]~ at~ (frame.north~ west) + {\huge\bfseries\aldineright{}}; }, #1, coltitle=\l__letgut_toc_color_announce_tl, @@ -1367,7 +1363,7 @@ The table of contents is customized: title~ addon/.store~ in=\l__letgut_title_addon_tl, after~ title={ \tl_if_empty:NF {\l__letgut_title_addon_tl}{ - \c_space_tl(\emph{\l__letgut_title_addon_tl}) + \c_space_tl(\emph{\l__letgut_title_addon_tl}) } }, float = bh, @@ -1408,28 +1404,28 @@ The table of contents is customized: halign=justify, before~ title={\lefthand{}~Solution~ du~ rébus\c_space_tl}, title={ - \IfBooleanTF{#1}{ - \vpageref[ci-dessus]{rebus@#2} - }{ - de~la~\lettre{}\c_space_tl - \IfValueTF{#3}{ - #3 - }{ - précédente - } - } + \IfBooleanTF{#1}{ + \vpageref[ci-dessus]{rebus@#2} + }{ + de~la~\lettre{}\c_space_tl + \IfValueTF{#3}{ + #3 + }{ + précédente + } + } }, phantomlabel={ - \IfBooleanT{#1}{ - solution@#2 - } + \IfBooleanT{#1}{ + solution@#2 + } }, #4 ] \IfBooleanTF{#1}{ - \file_if_exist_input:n {rebus-#2.tex} + \file_if_exist_input:n {rebus-#2.tex} }{ - #2 + #2 } \end{tcolorbox} }{ @@ -1514,9 +1510,9 @@ Lettre. { \begin{picture}(0,0) \put(-2cm,-25.275cm){ - \includegraphics*[scale=0.96]{ - \c__letgut_banner_file_tl.pdf - } + \includegraphics*[scale=0.96]{ + \c__letgut_banner_file_tl.pdf + } } \end{picture} } @@ -1604,7 +1600,7 @@ display the number and the date of the newsletter. \begin{lstlisting} > \c_zero_int { - \c_space_tl~ \int_use:N \g__letgut_number_int + \c_space_tl~ \int_use:N \g__letgut_number_int } }, pdfauthor={ @@ -1725,17 +1721,17 @@ Membership reminder. \AddToHookNext{shipout/background} { \put(1in,-1in){ - \put( - \oddsidemargin, - - \topmargin - - \headheight - - \headsep - - \textheight - + \c__letgut_first_page_shrink_dim - + .5\baselineskip - ){ - \box_use:N \g__letgut_membership_reminder_box - } + \put( + \oddsidemargin, + - \topmargin + - \headheight + - \headsep + - \textheight + + \c__letgut_first_page_shrink_dim + + .5\baselineskip + ){ + \box_use:N \g__letgut_membership_reminder_box + } } } } @@ -1769,16 +1765,16 @@ directory, thirdly in the TDS). Otherwise, a warning is displayed. }{ \file_if_exist:nTF {../\c__letgut_informations_gutenberg_file_tl}{ \inputarticle*{ - ../\c__letgut_informations_gutenberg_file_tl + ../\c__letgut_informations_gutenberg_file_tl } }{ \file_if_exist:nTF {\c__letgut_informations_gutenberg_file_tl}{ - \inputarticle*{ - \c__letgut_informations_gutenberg_file_tl - } + \inputarticle*{ + \c__letgut_informations_gutenberg_file_tl + } }{ - \msg_warning:nn{letgut}{Informations~file~missing} - \alertbox{ \c__letgut_missing_infomations_tl } + \msg_warning:nn{letgut}{Informations~file~missing} + \alertbox{ \c__letgut_missing_infomations_tl } } } } @@ -2072,17 +2068,17 @@ titlecasing in between. \begin{lstlisting} \cs_new_protected:Npn \__letgut_titlecase_name:n #1 { - \seq_set_split:Nnn \l_tmpa_seq { - } {#1} - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \seq_set_split:Nnn \l__letgut_tmpa_seq { - } {#1} + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { \text_titlecase_first:n{ \text_lowercase:n {##1} } } - \tl_set:Nx \l_tmpa_tl {\seq_use:Nn \l_tmpb_seq {-}} - \seq_clear:N \l_tmpa_seq - \seq_set_split:NnV \l_tmpa_seq { ~ } { \l_tmpa_tl } - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \tl_set:Nx \l__letgut_tmpa_tl {\seq_use:Nn \l__letgut_tmpb_seq {-}} + \seq_clear:N \l__letgut_tmpa_seq + \seq_set_split:NnV \l__letgut_tmpa_seq { ~ } { \l__letgut_tmpa_tl } + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { \text_titlecase_first:n{##1} } - \seq_use:Nn \l_tmpb_seq {~} + \seq_use:Nn \l__letgut_tmpb_seq {~} } \end{lstlisting} @@ -2112,36 +2108,36 @@ is splitted as a comma separated list. \cs_new_protected:Npn \__letgut_process_list:nn #1 #2 { \seq_clear:N \l__letgut_items_seq - \seq_set_split:Nnn \l_tmpa_seq {~and~} {#2} + \seq_set_split:Nnn \l__letgut_tmpa_seq {~and~} {#2} \IfBooleanT{#1}{ - \seq_sort:Nn \l_tmpa_seq + \seq_sort:Nn \l__letgut_tmpa_seq { \str_compare:nNnTF { ##1 } > { ##2 } { \sort_return_swapped: } { \sort_return_same: } } } - \seq_map_inline:Nn \l_tmpa_seq { - \seq_set_from_clist:Nn \l_tmpb_seq {##1} - \seq_pop_left:NN \l_tmpb_seq \l_letgut_last_name_tl - \seq_pop_left:NN \l_tmpb_seq \l_letgut_first_name_tl - \seq_pop_left:NN \l_tmpb_seq \l_letgut_title_tl + \seq_map_inline:Nn \l__letgut_tmpa_seq { + \seq_set_from_clist:Nn \l__letgut_tmpb_seq {##1} + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_last_name_tl + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_first_name_tl + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_title_tl \seq_put_right:Nx \l__letgut_items_seq { \quark_if_no_value:NTF \l_letgut_first_name_tl { - \__letgut_person_last_name:n { - \l_letgut_last_name_tl - } + \__letgut_person_last_name:n { + \l_letgut_last_name_tl + } }{ - \quark_if_no_value:NTF \l_letgut_title_tl { - \__letgut_person_first_name_last_name:nn - {\l_letgut_first_name_tl} - {\l_letgut_last_name_tl} - }{ - \__letgut_person_first_name_last_name_title:nnn - {\l_letgut_first_name_tl} - {\l_letgut_last_name_tl} - {\l_letgut_title_tl} - } + \quark_if_no_value:NTF \l_letgut_title_tl { + \__letgut_person_first_name_last_name:nn + {\l_letgut_first_name_tl} + {\l_letgut_last_name_tl} + }{ + \__letgut_person_first_name_last_name_title:nnn + {\l_letgut_first_name_tl} + {\l_letgut_last_name_tl} + {\l_letgut_title_tl} + } } } } @@ -2256,13 +2252,13 @@ We split the software's name at spaces in order to apply the dedicated font switch (\lstinline+\ttfamily+) to all of it except to the spaces. \begin{lstlisting} - \seq_set_split:Nnn \l_tmpa_seq { ~ } { #2 } - \seq_set_map:NNn \l_tmpb_seq \l_tmpa_seq {{\l__letgut_softwares_font_switch_tl ##1}} + \seq_set_split:Nnn \l__letgut_tmpa_seq { ~ } { #2 } + \seq_set_map:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq {{\l__letgut_softwares_font_switch_tl ##1}} \tl_if_empty:nTF {#1} { - \seq_use:Nn \l_tmpb_seq { ~ } + \seq_use:Nn \l__letgut_tmpb_seq { ~ } }{ - \href{#1}{ \seq_use:Nn \l_tmpb_seq { ~ } } + \href{#1}{ \seq_use:Nn \l__letgut_tmpb_seq { ~ } } } } \cs_new_protected:Nn \__letgut_file:n @@ -2395,14 +2391,14 @@ shifted by what is specified. \tl_if_empty:nTF {#1}{ \int_use:N \g__letgut_number_int }{ - \tl_set:Nx \l_tmpa_tl {\tl_head:n { #1 }} - \tl_set:Nn \l_tmpb_tl { #1 } - \tl_case:NnF \l_tmpa_tl { - {\c__letgut_plus_tl} {\int_eval:n {\g__letgut_number_int\l_tmpa_tl\tl_range:Nnn \l_tmpb_tl { 2 } { -1 }}} - {\c__letgut_minus_tl} {\int_eval:n {\g__letgut_number_int\l_tmpa_tl\tl_range:Nnn \l_tmpb_tl { 2 } { -1 }}} + \tl_set:Nx \l__letgut_tmpa_tl {\tl_head:n { #1 }} + \tl_set:Nn \l__letgut_tmpb_tl { #1 } + \tl_case:NnF \l__letgut_tmpa_tl { + {\c__letgut_plus_tl} {\int_eval:n {\g__letgut_number_int\l__letgut_tmpa_tl\tl_range:Nnn \l__letgut_tmpb_tl { 2 } { -1 }}} + {\c__letgut_minus_tl} {\int_eval:n {\g__letgut_number_int\l__letgut_tmpa_tl\tl_range:Nnn \l__letgut_tmpb_tl { 2 } { -1 }}} {\c__letgut_dot_tl} {\int_use:N \g__letgut_number_int} } - {\l_tmpb_tl} + {\l__letgut_tmpb_tl} } } \NewDocumentCommand { \lettrenumber } { s O{} } { @@ -2414,7 +2410,7 @@ shifted by what is specified. \end{lstlisting} The “\lettre” and “\lettregut” expressions are treated separately since they are -subject to variations, depending how they are used. The corresponding commands +subject to variations, depending on how they are used. The corresponding commands \lstinline+\lettre+ and \lstinline+\lettregut+ used without star nor optional argument typeset resp. “\lettre” and “\lettregut”: @@ -2448,7 +2444,7 @@ shifted by what is specified. \IfBooleanTF{#1}{ \__letgut_lettre:nnn { #2 } { } { \tl_if_empty:nF {#2}{ - \c_space_tl\no + \c_space_tl\no } } }{ @@ -2568,25 +2564,25 @@ command, \IfValueTF {#4}{ \tl_if_empty:nTF {#4}{ \exp_args:Nx \DeclareAcronym{\text_lowercase:n {#2}}{ - short = \text_lowercase:n {#2}, - sort= #2, - long = {\emph{#3}}, - extra-long = {anglais}, - pdfstring = #2, - short-acc = #2, - #1 + short = \text_lowercase:n {#2}, + sort= #2, + long = {\emph{#3}}, + extra-long = {anglais}, + pdfstring = #2, + short-acc = #2, + #1 } }{ \exp_args:Nx \DeclareAcronym{\text_lowercase:n {#2}}{ - short = \text_lowercase:n {#2}, - sort= #2, - long = {#4}, - foreign = {#3}, - foreign-babel = english, - foreign-locale = anglais, - pdfstring = #2, - short-acc = #2, - #1 + short = \text_lowercase:n {#2}, + sort= #2, + long = {#4}, + foreign = {#3}, + foreign-babel = english, + foreign-locale = anglais, + pdfstring = #2, + short-acc = #2, + #1 } } }{ @@ -2671,27 +2667,27 @@ If we are in a footnote, first occurrences of the acronyms are displayed as “short (long)”. Otherwise, they are displayed as “short\footnote{long}”. \begin{lstlisting} \bool_if:NTF \l__letgut_in_footnote_bool { - \space - ( - \acroifT {alt} { \acrotranslate {or} ~ \acrowrite {alt} ~ } - \acroifT {foreign} { \acrowrite {foreign} } - \acrowrite {long} - \acrogroupcite - ) + \space + ( + \acroifT {alt} { \acrotranslate {or} ~ \acrowrite {alt} ~ } + \acroifT {foreign} { \acrowrite {foreign} } + \acrowrite {long} + \acrogroupcite + ) }{ - \acfootnote - { - \acroifT {alt} { - \acrotranslate {or} ~ \acrowrite {alt} :~ - } - \acroifT {foreign} { \acrowrite {foreign} } - \acrowrite {long} - \acroifT {extra-long} { ~ [\acrowrite {extra-long}] } - \acroifT {extra-foreign} { - \c_space_tl [\acrowrite {extra-foreign}] - } - \acrogroupcite - } + \acfootnote + { + \acroifT {alt} { + \acrotranslate {or} ~ \acrowrite {alt} :~ + } + \acroifT {foreign} { \acrowrite {foreign} } + \acrowrite {long} + \acroifT {extra-long} { ~ [\acrowrite {extra-long}] } + \acroifT {extra-foreign} { + \c_space_tl [\acrowrite {extra-foreign}] + } + \acrogroupcite + } } } } @@ -2702,13 +2698,13 @@ as “short (long)”. Otherwise, they are displayed as “short\footnote{long} \acronymsmapF{% \item[\acrowrite{short}\acroifT{alt}{/\acrowrite{alt}}] \acroifT{foreign}{ - \acrowrite{foreign}\acroifT{extra}{, } + \acrowrite{foreign}\acroifT{extra}{, } }% \acroifT{extra}{\acrowrite{extra}}% \acroifanyT{foreign,extra}{\acspace (}% \acrowrite{list}% \acroifT {extra-foreign} { - , \c_space_tl \acrowrite {extra-foreign} + , \c_space_tl \acrowrite {extra-foreign} } \acroifanyT{foreign,extra}{)}% \acropagefill @@ -2726,45 +2722,45 @@ as “short (long)”. Otherwise, they are displayed as “short\footnote{long} { \acro_if_foreign:nTF {#2} { - \acro_if_locale:nnTF {#1} {#2} - { - \__acro_foreign_language:en - { \str_lowercase:e { - \acro_property_get:nn {#1} {foreign-babel} - } - } - {#3} - \bool_if:NTF \l__acro_list_bool - { \bool_if:NT \l__acro_list_show_locale_bool } - { \bool_if:NT \l__acro_show_locale_bool } - { - { - \l__acro_locale_format_tl - { - \acro_property_if_set:nnTF {#1} { - foreign-locale - } - { - \acspace - [ - \acro_property_get:nn {#1} { - foreign-locale - } - ] - }{ - \baselanguage - { - \acro_property_get:nn {#1} { - foreign-babel - } - } - } - } - } - :~ - } - } - {#3} + \acro_if_locale:nnTF {#1} {#2} + { + \__acro_foreign_language:en + { \str_lowercase:e { + \acro_property_get:nn {#1} {foreign-babel} + } + } + {#3} + \bool_if:NTF \l__acro_list_bool + { \bool_if:NT \l__acro_list_show_locale_bool } + { \bool_if:NT \l__acro_show_locale_bool } + { + { + \l__acro_locale_format_tl + { + \acro_property_if_set:nnTF {#1} { + foreign-locale + } + { + \acspace + [ + \acro_property_get:nn {#1} { + foreign-locale + } + ] + }{ + \baselanguage + { + \acro_property_get:nn {#1} { + foreign-babel + } + } + } + } + } + :~ + } + } + {#3} } {#3} } @@ -2855,21 +2851,21 @@ extensions of the \lstinline+graphicx+ package. \begin{lstlisting} \clist_map_inline:Nn \Gin@extensions { \file_if_exist:nT{\g__letgut_bookreview_frontcover_tl##1}{ - \bool_set_true:N \l_tmpa_bool - \clist_map_break: + \bool_set_true:N \l__letgut_tmpa_bool + \clist_map_break: } } - \bool_if:NTF \l_tmpa_bool { + \bool_if:NTF \l__letgut_tmpa_bool { \marginpar{ - \hspace*{\c__letgut_bookreview_frontcover_margin_sep_dim} - % \raggedleft - \raisebox{-\totalheight}{ - \fbox{ - \includegraphics[width=-\c__letgut_title_hoffset_dim]{ - \g__letgut_bookreview_frontcover_tl - } - } - } + \hspace*{\c__letgut_bookreview_frontcover_margin_sep_dim} + % \raggedleft + \raisebox{-\totalheight}{ + \fbox{ + \includegraphics[width=-\c__letgut_title_hoffset_dim]{ + \g__letgut_bookreview_frontcover_tl + } + } + } } }{ \msg_error:nnVV @@ -3031,10 +3027,10 @@ the current directory and is non empty. This will be applied to both the \quark_if_no_value:NF \tmpa_tl { \tl_if_eq:NnF \tmpa_tl {0} { \seq_gput_left:Nn \g__letgut_included_files_seq { - \attachfile[ - description={Source~ nécessaire~ (fichier~ `#1.tex`)}, - mimetype=application/x-tex] - {#1.tex} + \attachfile[ + description={Source~ nécessaire~ (fichier~ `#1.tex`)}, + mimetype=application/x-tex] + {#1.tex} } } } @@ -3044,32 +3040,33 @@ the current directory and is non empty. This will be applied to both the \begin{lstlisting} \cs_new_protected:Npn \__letgut_input_article:nn #1 #2 { + \FloatBarrier \lstset{ style=__letgut_reset_listings_styles } \acresetall% \input{#2}% \bool_if:NT \g__letgut_included_files_attached_bool { \IfBooleanF {#1}{ \__letgut_attach_non_empty_existing_file:n { - \c__letgut_local_config_file_tl + \c__letgut_local_config_file_tl } \__letgut_attach_non_empty_existing_file:n { - \c__letgut_pre_documentclass_file_tl + \c__letgut_pre_documentclass_file_tl } \seq_gput_left:Nn \g__letgut_included_files_seq { - \attachfile[ - description={Source~ du~ présent~ article~ (fichier~ `#2.tex`)}, - mimetype=application/x-tex] - {#2.tex} + \attachfile[ + description={Source~ du~ présent~ article~ (fichier~ `#2.tex`)}, + mimetype=application/x-tex] + {#2.tex} } \bool_if:NT \g__letgut_acronyms_file_attached_bool { - \seq_gput_right:No \g__letgut_included_files_seq { - \c__letgut_acronyms_file_attached_tl - } + \seq_gput_right:No \g__letgut_included_files_seq { + \c__letgut_acronyms_file_attached_tl + } } \bool_if:NT \g__letgut_lstlanguage_file_attached_bool { - \seq_gput_right:No \g__letgut_included_files_seq { - \c__letgut_lstlanguage_file_attached_tl - } + \seq_gput_right:No \g__letgut_included_files_seq { + \c__letgut_lstlanguage_file_attached_tl + } } \seq_remove_duplicates:N \g__letgut_included_files_seq \marginpar{\seq_use:Nn \g__letgut_included_files_seq { } } @@ -3091,50 +3088,50 @@ to the \pdf{} (if desired, otherwise, use the starred version). \begin{lstlisting} \NewCommandCopy {\__letgut_orig_includegraphics} {\includegraphics} -\clist_set:Nx \l_tmpa_clist {\Gin@extensions} +\clist_set:Nx \l__letgut_tmpa_clist {\Gin@extensions} \cs_new_protected:Npn \__letgut_includegraphics:nnn #1 #2 #3 { \file_if_exist:nTF {#3} { \bool_if:NT \g__letgut_included_files_attached_bool { \IfBooleanF {#1}{ - \seq_gput_left:Nn \g__letgut_included_files_seq { - \attachfile[ - description={ - Fichier~ image~ inclus~ dans~ le~ - présent~ article~ (fichier~ `#3`) - }, - mimetype=image - ] - {#3} - } + \seq_gput_left:Nn \g__letgut_included_files_seq { + \attachfile[ + description={ + Fichier~ image~ inclus~ dans~ le~ + présent~ article~ (fichier~ `#3`) + }, + mimetype=image + ] + {#3} + } } } \__letgut_orig_includegraphics[#2]{#3} }{ - \bool_gset_false:N \g_tmpa_bool - \clist_map_inline:Nn \l_tmpa_clist {% + \bool_gset_false:N \g__letgut_tmpa_bool + \clist_map_inline:Nn \l__letgut_tmpa_clist {% \file_if_exist:nTF {#3##1} { - \clist_map_break:n { - \bool_if:NT \g__letgut_included_files_attached_bool { - \IfBooleanF {#1}{ - \seq_gput_left:Nn \g__letgut_included_files_seq { - \attachfile[ - description={Fichier~ image~ inclus~ dans~ le~ présent~ article~ (fichier~ `#3##1`)}, - mimetype=image/##1 - ] - {#3##1} - } - } - } - \__letgut_orig_includegraphics[#2]{#3} - \bool_gset_true:N \g_tmpa_bool - } + \clist_map_break:n { + \bool_if:NT \g__letgut_included_files_attached_bool { + \IfBooleanF {#1}{ + \seq_gput_left:Nn \g__letgut_included_files_seq { + \attachfile[ + description={Fichier~ image~ inclus~ dans~ le~ présent~ article~ (fichier~ `#3##1`)}, + mimetype=image/##1 + ] + {#3##1} + } + } + } + \__letgut_orig_includegraphics[#2]{#3} + \bool_gset_true:N \g__letgut_tmpa_bool + } } } - \bool_if:NF \g_tmpa_bool { + \bool_if:NF \g__letgut_tmpa_bool { \@latex@error{File~ `#3'~ not~ found}% {I~ could~ not~ locate~ the~ file~ with~ any~ of~ these~ extensions:^^J% - \clist_use:Nn \l_tmpa_clist { ~ }^^J\@ehc}% + \clist_use:Nn \l__letgut_tmpa_clist { ~ }^^J\@ehc}% } } } @@ -3155,14 +3152,14 @@ ressources to the \pdf{} (if desired, otherwise, use the starred version). \file_if_exist:nT {#3} { \IfBooleanF {#1}{ \seq_gput_left:Nn \g__letgut_added_bib_resources_seq { - \attachfile[ - description={ - Source~ du~ fichier~ bibliographique~ utilisé~ - dans~ le~ présent~ article~ (fichier~ `#3`) - }, - mimetype=application/x-bibtex - ]% - {#3}% + \attachfile[ + description={ + Source~ du~ fichier~ bibliographique~ utilisé~ + dans~ le~ présent~ article~ (fichier~ `#3`) + }, + mimetype=application/x-bibtex + ]% + {#3}% } } } @@ -3431,9 +3428,9 @@ option is provided, the specified title addon. } \cs_new_protected:Nn \__letgut_on_callout_page:nn { - \tl_set:Nn \l_tmpa_int {\getpagerefnumber{#1}} - \tl_set:Nn \l_tmpb_int {\thepage} - \int_compare:nNnF {\l_tmpa_int} = {\l_tmpb_int} + \tl_set:Nn \l__letgut_tmpa_int {\getpagerefnumber{#1}} + \tl_set:Nn \l__letgut_tmpb_int {\thepage} + \int_compare:nNnF {\l__letgut_tmpa_int} = {\l__letgut_tmpb_int} {#2} } \end{lstlisting} @@ -3502,17 +3499,17 @@ sidebyside@true/.code={% \pgfkeysalso{floatplacement=ht}% \pgfkeysalso{float}% \pgfkeysalso{label={\g__letgut_label_ltx_example_str}}% - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { \getpagerefnumber { \g__letgut_callout_label_ltx_example_str } } - \tl_set:Nx \l_tmpb_tl { + \tl_set:Nx \l__letgut_tmpb_tl { \getpagerefnumber { \g__letgut_label_ltx_example_str } } - \tl_if_eq:NNF \l_tmpa_tl \l_tmpb_tl + \tl_if_eq:NNF \l__letgut_tmpa_tl \l__letgut_tmpb_tl { \l__letgut_reference_text_tl \tl_set:Nn \l__letgut_reference_text_tl { @@ -3645,17 +3642,17 @@ We now use hooks in order to\ldots{} \int_use:N \g__letgut_ltx_example_int } \label{\g__letgut_callout_label_ltx_example_str} - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { \getpagerefnumber { \g__letgut_callout_label_ltx_example_str } } - \tl_set:Nx \l_tmpb_tl { + \tl_set:Nx \l__letgut_tmpb_tl { \getpagerefnumber { \g__letgut_label_ltx_example_str } } - \tl_if_eq:NNF \l_tmpa_tl \l_tmpb_tl + \tl_if_eq:NNF \l__letgut_tmpa_tl \l__letgut_tmpb_tl { \skip_set_eq:NN \intextsep \c__letgut_reduced_intextsep_skip } @@ -3676,7 +3673,7 @@ the `lstlang0.sty` or \lstinline+letgut-lstlang.sty+ files. \tcbset{ __letgut_code/.append~ style={ listing~ options~ app={ - #1 + #1 } } } @@ -3691,25 +3688,25 @@ time a new one is asked. style=__letgut_reset_listings_styles,% } \tl_if_empty:nTF {#1} { - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { alsolanguage={#2} } \exp_args:NV \__letgut_tcbset:n { - \l_tmpa_tl + \l__letgut_tmpa_tl } }{ - \seq_set_from_clist:Nn \l_tmpa_seq {#1} - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \seq_set_from_clist:Nn \l__letgut_tmpa_seq {#1} + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { alsolanguage={[##1]#2} } - \tl_set:Nx \l_tmpa_tl + \tl_set:Nx \l__letgut_tmpa_tl { - \seq_use:Nn \l_tmpb_seq {,} + \seq_use:Nn \l__letgut_tmpb_seq {,} } \exp_args:NV \__letgut_tcbset:n { - \l_tmpa_tl + \l__letgut_tmpa_tl } } } @@ -3861,9 +3858,9 @@ will be displayed. }, every~ listing~ line={% \textcolor{__letgut_terminal_prompt}{% - \ttfamily% - \bfseries% - \__letgut_unselectable:n {#1\c_space_tl} + \ttfamily% + \bfseries% + \__letgut_unselectable:n {#1\c_space_tl} } }, }, @@ -3875,68 +3872,68 @@ We define now the command \begin{lstlisting} \cs_new_protected:Npn \__letgut_terminal:nnnn #1 #2 #3 #4 { - \bool_set_false:N \l_tmpa_bool + \bool_set_false:N \l__letgut_tmpa_bool \tl_if_empty:nF {#3}{ \tcbset{tempfile=\jobname-stdin.tex} \exp_args:Nx \scantokens { - \token_to_str:N\begin{tcbwritetemp} - #3 - \token_to_str:N\end{tcbwritetemp} + \token_to_str:N\begin{tcbwritetemp} + #3 + \token_to_str:N\end{tcbwritetemp} } } \tl_if_empty:nF {#4}{ \tcbset{tempfile=\jobname-stdout.tex} \exp_args:Nx \scantokens { - \token_to_str:N\begin{tcbwritetemp} - #4 - \token_to_str:N\end{tcbwritetemp} + \token_to_str:N\begin{tcbwritetemp} + #4 + \token_to_str:N\end{tcbwritetemp} } } \tl_if_empty:nTF {#3}{ \tl_if_empty:nTF {#4}{ - \bool_set_true:N \l_tmpa_bool + \bool_set_true:N \l__letgut_tmpa_bool }{ - \tcbset{colback=__letgut_background_terminal_stdout} + \tcbset{colback=__letgut_background_terminal_stdout} } }{ \tcbset{colback=__letgut_background_terminal_stdin} \tl_if_empty:nTF {#4}{ }{ - \tcbset{ - bicolor, - middle=0mm, - boxsep=0mm, - colbacklower=__letgut_background_terminal_stdout, - } + \tcbset{ + bicolor, + middle=0mm, + boxsep=0mm, + colbacklower=__letgut_background_terminal_stdout, + } } } - \bool_if:NF \l_tmpa_bool { + \bool_if:NF \l__letgut_tmpa_bool { \begin{tcolorbox}[terminal={#1},#2] - \lstset{aboveskip=0pt} - \tl_if_empty:nF {#3}{ - \tcbset{ - tempfile=\jobname-stdin.tex, - } - \tcbusetemplisting - \tl_if_empty:nF {#4}{ - \tcblower - } - } - \tl_if_empty:nF {#4}{ - \tl_if_empty:nF {#3}{ - \lstset{aboveskip=0pt} - } - \tcbset{ - tempfile=\jobname-stdout.tex, - every~ listing~ line={}, - listing~ options~ app={ - language={} - } - } - \tcbusetemplisting - } + \lstset{aboveskip=0pt} + \tl_if_empty:nF {#3}{ + \tcbset{ + tempfile=\jobname-stdin.tex, + } + \tcbusetemplisting + \tl_if_empty:nF {#4}{ + \tcblower + } + } + \tl_if_empty:nF {#4}{ + \tl_if_empty:nF {#3}{ + \lstset{aboveskip=0pt} + } + \tcbset{ + tempfile=\jobname-stdout.tex, + every~ listing~ line={}, + listing~ options~ app={ + language={} + } + } + \tcbusetemplisting + } \end{tcolorbox} } } @@ -3973,6 +3970,7 @@ listings. Here is a workaround for some of them (see ^^^^215b% for ⅛ ^^^^2122% for ™ ^^^^2019% for ’ + ^^^^0153% for œ ^^00% } \lst@RestoreCatcodes @@ -4019,7 +4017,7 @@ several purposes: \end{itemize} \begin{lstlisting} -\ProvidesFile{letgut.lbx}[2023-05-21 v0.9.7 letgut localization] +\ProvidesFile{letgut.lbx}[2024-02-29 v0.9.8 letgut localization] \InheritBibliographyExtras{french} \DeclareBibliographyStrings{ inherit = {french}, @@ -4033,7 +4031,7 @@ We create the new bibliography driver \lstinline+bookreview+ (that seems to create the corresponding new entry). \begin{lstlisting} -\ProvidesFile{letgut.dbx}[2023-05-21 v0.9.7 letgut data model macros] +\ProvidesFile{letgut.dbx}[2024-02-29 v0.9.8 letgut data model macros] \DeclareBibliographyDriver{bookreview}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -4088,7 +4086,7 @@ create the corresponding new entry). We provide a specific \lstinline+biblatex+ citation style . \begin{lstlisting} -\ProvidesFile{letgut.cbx}[2023-05-21 v0.9.7 letgut base citation style] +\ProvidesFile{letgut.cbx}[2024-02-29 v0.9.8 letgut base citation style] \RequireCitationStyle{numeric} \end{lstlisting} @@ -4362,9 +4360,9 @@ Les règlements peuvent s'effectuer par : \begin{tblr}{ width=.75\linewidth, colspec={ - % < (Just not to disturb the parentheses - % balancing detection of my editor.) - >{\bfseries}r@{ }X + % < (Just not to disturb the parentheses + % balancing detection of my editor.) + >{\bfseries}r@{ }X }, vline{1,3}={solid}, hline{1,7}={solid}, @@ -4428,7 +4426,7 @@ Les règlements peuvent s'effectuer par : [identifiant ouvert pour chercheur et contributeur] \letgutacro%[extra-foreign=souvent librement traduit en \enquote{foire - %aux questions}] + %aux questions}] {FAQ}% {Frequently Asked Questions}% [questions fréquemment posées] @@ -5795,13 +5793,13 @@ Les règlements peuvent s'effectuer par : fp_zero,fp_zero_new,fparray_count,fparray_gset,fparray_gzero,% fparray_item,fparray_item_to_tl,fparray_new,g_file_curr_dir_str,% g_file_curr_ext_str,g_file_curr_name_str,g_msg_module_name_prop,% - g_msg_module_type_prop,g_peek_token,g_tmpa_bool,g_tmpa_box,% - g_tmpa_clist,g_tmpa_coffin,g_tmpa_dim,g_tmpa_fp,g_tmpa_int,% - g_tmpa_ior,g_tmpa_iow,g_tmpa_muskip,g_tmpa_prop,g_tmpa_regex,% - g_tmpa_seq,g_tmpa_skip,g_tmpa_str,g_tmpa_tl,g_tmpb_bool,g_tmpb_box,% - g_tmpb_clist,g_tmpb_coffin,g_tmpb_dim,g_tmpb_fp,g_tmpb_int,% - g_tmpb_ior,g_tmpb_iow,g_tmpb_muskip,g_tmpb_prop,g_tmpb_regex,% - g_tmpb_seq,g_tmpb_skip,g_tmpb_str,g_tmpb_tl,group_align_safe_begin,% + g_msg_module_type_prop,g_peek_token,g__letgut_tmpa_bool,g__letgut_tmpa_box,% + g__letgut_tmpa_clist,g__letgut_tmpa_coffin,g__letgut_tmpa_dim,g__letgut_tmpa_fp,g__letgut_tmpa_int,% + g__letgut_tmpa_ior,g__letgut_tmpa_iow,g__letgut_tmpa_muskip,g__letgut_tmpa_prop,g__letgut_tmpa_regex,% + g__letgut_tmpa_seq,g__letgut_tmpa_skip,g__letgut_tmpa_str,g__letgut_tmpa_tl,g__letgut_tmpb_bool,g__letgut_tmpb_box,% + g__letgut_tmpb_clist,g__letgut_tmpb_coffin,g__letgut_tmpb_dim,g__letgut_tmpb_fp,g__letgut_tmpb_int,% + g__letgut_tmpb_ior,g__letgut_tmpb_iow,g__letgut_tmpb_muskip,g__letgut_tmpb_prop,g__letgut_tmpb_regex,% + g__letgut_tmpb_seq,g__letgut_tmpb_skip,g__letgut_tmpb_str,g__letgut_tmpb_tl,group_align_safe_begin,% group_align_safe_end,group_begin,group_end,group_insert_after,% group_log_list,group_show_list,hbox,hbox_gset,hbox_gset_end,% hbox_gset_to_wd,hbox_overlap_center,hbox_overlap_left,% @@ -5843,13 +5841,13 @@ Les règlements peuvent s'effectuer par : l_keys_usage_load_prop,l_keys_usage_preamble_prop,l_keys_value_tl,% l_my_int,l_peek_token,l_text_accents_tl,l_text_case_exclude_arg_tl,% l_text_expand_exclude_tl,l_text_letterlike_tl,l_text_math_arg_tl,% - l_text_math_delims_tl,l_text_titlecase_check_letter_bool,l_tmpa_bool,% - l_tmpa_box,l_tmpa_clist,l_tmpa_coffin,l_tmpa_dim,l_tmpa_fp,% - l_tmpa_int,l_tmpa_muskip,l_tmpa_prop,l_tmpa_regex,l_tmpa_seq,% - l_tmpa_skip,l_tmpa_str,l_tmpa_tl,l_tmpb_bool,l_tmpb_box,% - l_tmpb_clist,l_tmpb_coffin,l_tmpb_dim,l_tmpb_fp,l_tmpb_int,% - l_tmpb_muskip,l_tmpb_prop,l_tmpb_regex,l_tmpb_seq,l_tmpb_skip,% - l_tmpb_str,l_tmpb_tl,legacy_if,legacy_if_gset,legacy_if_gset_false,% + l_text_math_delims_tl,l_text_titlecase_check_letter_bool,l__letgut_tmpa_bool,% + l__letgut_tmpa_box,l__letgut_tmpa_clist,l__letgut_tmpa_coffin,l__letgut_tmpa_dim,l__letgut_tmpa_fp,% + l__letgut_tmpa_int,l__letgut_tmpa_muskip,l__letgut_tmpa_prop,l__letgut_tmpa_regex,l__letgut_tmpa_seq,% + l__letgut_tmpa_skip,l__letgut_tmpa_str,l__letgut_tmpa_tl,l__letgut_tmpb_bool,l__letgut_tmpb_box,% + l__letgut_tmpb_clist,l__letgut_tmpb_coffin,l__letgut_tmpb_dim,l__letgut_tmpb_fp,l__letgut_tmpb_int,% + l__letgut_tmpb_muskip,l__letgut_tmpb_prop,l__letgut_tmpb_regex,l__letgut_tmpb_seq,l__letgut_tmpb_skip,% + l__letgut_tmpb_str,l__letgut_tmpb_tl,legacy_if,legacy_if_gset,legacy_if_gset_false,% legacy_if_gset_true,legacy_if_p,legacy_if_set,legacy_if_set_false,% legacy_if_set_true,lua_escape,lua_now,lua_shipout,lua_shipout_e,% mode_if_horizontal,mode_if_horizontal_p,mode_if_inner,% @@ -8784,4 +8782,4 @@ Les règlements peuvent s'effectuer par : sensitive% }[keywords,tex,comments]% \end{lstlisting} -\end{document}
\ No newline at end of file +\end{document} diff --git a/Master/texmf-dist/doc/lualatex/letgut/letgut.pdf b/Master/texmf-dist/doc/lualatex/letgut/letgut.pdf Binary files differindex 41e3689de29..c8a96b526eb 100644 --- a/Master/texmf-dist/doc/lualatex/letgut/letgut.pdf +++ b/Master/texmf-dist/doc/lualatex/letgut/letgut.pdf diff --git a/Master/texmf-dist/doc/lualatex/letgut/letgut.tex b/Master/texmf-dist/doc/lualatex/letgut/letgut.tex index 9455655ce22..dd82aadbf31 100644 --- a/Master/texmf-dist/doc/lualatex/letgut/letgut.tex +++ b/Master/texmf-dist/doc/lualatex/letgut/letgut.tex @@ -68,7 +68,7 @@ } \author{Association GUTenberg} \date{% - Version 0.9.7 en date du \today% + Version 0.9.8 en date du \today% \texorpdfstring{% \\ \url{https://framagit.org/gutenberg/letgut}% @@ -450,9 +450,6 @@ Si la commande \docAuxCommand{title}\marg{titre} est nombre de réinitialisations. \end{docCommands} -\begin{docCommand}{inputarticle}{\marg{fichier enfant}} -\end{docCommand} - \section{Structuration} \label{sec:structuration} @@ -952,7 +949,7 @@ environnements \enquote{verbatim} suivants. automatiquement coupés en frontière de page. \item Les exemples de codes avec résultats (environnements \refEnv{ltx-code-result} et \refEnv{ltx-code-external-result}), présentent - ces codes et résulats : + ces codes et résultats : \begin{itemize} \item l'un sous l'autre par défaut ; \item l'un à gauche de l'autre si l'option ™sidebyside™ est @@ -1499,9 +1496,11 @@ Afin de présenter aisément et de façon homogène les annonces à paraître da assimilés du \package*{tcolorbox}, destinées à, le cas échéant, modifier la mise en forme par défaut de l'annonce ; \item deux qui lui sont propres : - \begin{docKey}[][doc new={2023-05-21}]{toc title}{=\meta{titre alternatif}}{\valinitdef} + \begin{docKey}[][doc new and updated={2023-05-21}{2023-11-08}]{toc title}{=\meta{titre alternatif}}{\valinitdef} Cette clé permet de remplacer dans la table des matières et dans les - signets le \meta{titre} par un \meta{titre alternatif}. + signets le \meta{titre} par un \meta{titre alternatif}. Si cette option + est utilisée avec un \meta{titre alternatif} vide, l'annonce ne figure ni + dans la table des matières, ni dans les signets. \end{docKey} \begin{docKey}[][doc new={2023-05-21}]{color}{=\meta{couleur}}{\valinitdef[\docValue*{black}]} Cette clé permet une \meta{couleur} d'ornement et de titre autre que celle diff --git a/Master/texmf-dist/source/lualatex/letgut/letgut.org b/Master/texmf-dist/source/lualatex/letgut/letgut.org index 4a64bb32d82..715dda1d182 100644 --- a/Master/texmf-dist/source/lualatex/letgut/letgut.org +++ b/Master/texmf-dist/source/lualatex/letgut/letgut.org @@ -54,7 +54,7 @@ new versions of the class on CTAN. % This field contains the version of the package. % The value is optional. % The value is restricted to 32 characters. - \version{0.9.7 2023-05-21} + \version{0.9.8 2024-02-29} % ------------------------------------------------------------------------- % This field contains the name of the author(s). % The value is optional. @@ -132,10 +132,11 @@ new versions of the class on CTAN. % The value is restricted to 8192 characters. \begin{announcement} ### Changed - Announcement's title and toc entry possibly different (backward compatibility broken!) + - Drop use of l3keys2e, as advised. + - Announcements possibly neither in the ToC nor in the bookmarks. ### Fixed - `tabularray`'s needed library added. + Floats not outside the article they belong to. \end{announcement} % ------------------------------------------------------------------------- % This field contains the one-liner for the package. @@ -205,6 +206,15 @@ new versions of the class on CTAN. ## [Unreleased] + ## [0.9.8] - 2024-02-29 + + ### Changed + - Drop use of l3keys2e, as advised. + - Announcements possibly neither in the ToC nor in the bookmarks. + + ### Fixed + Floats not outside the article they belong to. + ## [0.9.7] - 2023-05-21 ### Changed @@ -314,7 +324,7 @@ to the newsletter “La Lettre GUTenberg” of GUTenberg, the French TeX User Gr Release ------- -2023-05-21 v0.9.7 +2024-02-29 v0.9.8 Development ----------- @@ -460,8 +470,8 @@ Now, we can announce the class name and its version: #+begin_src latex \ProvidesExplClass{letgut} - {2023-05-21} - {0.9.7} + {2024-02-29} + {0.9.8} { Class for the newsletter “The GUTenberg Letter” } @@ -921,13 +931,6 @@ We close the ~\AddToHook{begindocument/before}~ argument. :CUSTOM_ID: ImplementationClassoptions-4meg55h0jlj0 :END: -In order to provide class options, we load the \package{l3keys2e} which provides -\LaTeXe{} option processing using \LaTeX3 keys: - - #+begin_src latex - \RequirePackage{l3keys2e} - #+end_src - We define the 2 load time options for the target audience: - ~for-readers~ (the default), for the “normal” “Lettre”, @@ -1158,7 +1161,7 @@ We now load some packages. #+end_src - Coloured boxes, for LaTeX examples and theorems, etc. #+begin_src latex -\RequirePackage{tcolorbox} + \RequirePackage{tcolorbox} #+end_src - Compile \TeX{} code stand-alone or as part of a document. #+begin_src latex @@ -1416,14 +1419,14 @@ We close the ~\AddToHook{begindocument/before}~ argument. #+begin_src latex % \color_fill:n {black!10} \color{black!10} - \hbox_set:Nn \l_tmpa_box { + \hbox_set:Nn \l__letgut_tmpa_box { \fontsize{0.25\paperwidth}{0.3\paperwidth} \selectfont \c__letgut_draftwatermark_text_tl } - \hbox_set:Nn \l_tmpb_box { + \hbox_set:Nn \l__letgut_tmpb_box { \hbox_overlap_center:n { - \box_use:N \l_tmpa_box + \box_use:N \l__letgut_tmpa_box } } #+end_src @@ -1431,7 +1434,7 @@ We close the ~\AddToHook{begindocument/before}~ argument. diagonal of the page (angle $=\arctan(\text{paper height}/\text{paper width})$). #+begin_src latex - \box_rotate:Nn \l_tmpb_box { + \box_rotate:Nn \l__letgut_tmpb_box { \fp_eval:n { atand ( \dim_to_fp:n {\paperheight} @@ -1440,7 +1443,7 @@ We close the ~\AddToHook{begindocument/before}~ argument. ) } } - \box_use:N \l_tmpb_box + \box_use:N \l__letgut_tmpb_box } } } @@ -1511,7 +1514,7 @@ We now define the options of the class: subparagraphs) detailed or not. #+begin_src latex - \keys_define:nn { letgut } + \DeclareKeys[ letgut ] { , for-readers .bool_gset:N = \g__letgut_for_readers_bool , for-readers .initial:n = { true } @@ -1573,7 +1576,7 @@ We now define the options of the class: } } } - \ProcessKeysOptions { letgut } + \ProcessKeyOptions[ letgut ] \AddToHook{begindocument/before}{ \bool_lazy_and:nnTF {\g__letgut_for_readers_bool} {!\g__letgut_paper_bool} { @@ -1785,7 +1788,9 @@ We now define the headers. \tl_if_empty:NTF {#1}{ \phantomsection\addcontentsline{toc}{title}{#2} }{ - \phantomsection\addcontentsline{toc}{title}{#1} + \tl_if_empty:NF {#2}{ + \phantomsection\addcontentsline{toc}{title}{#1} + } } } \NewTColorBox{announcement}{ O{} m } @@ -1797,7 +1802,8 @@ We now define the headers. overlay~ unbroken~ and~ first ={ \node[color=\l__letgut_toc_color_announce_tl]~ at~ ([yshift=8pt]title.south) {\pgfornament[width=0.4\linewidth]{88}}; - \node[color=white,anchor=north~ west]~ at~ (frame.north~ west) {\huge\bfseries\aldineright{}}; + \node[color=white,anchor=north~ west]~ at~ (frame.north~ west) + {\huge\bfseries\aldineright{}}; }, #1, coltitle=\l__letgut_toc_color_announce_tl, @@ -2560,17 +2566,17 @@ For both persons and authors, the argument of: #+begin_src latex \cs_new_protected:Npn \__letgut_titlecase_name:n #1 { - \seq_set_split:Nnn \l_tmpa_seq { - } {#1} - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \seq_set_split:Nnn \l__letgut_tmpa_seq { - } {#1} + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { \text_titlecase_first:n{ \text_lowercase:n {##1} } } - \tl_set:Nx \l_tmpa_tl {\seq_use:Nn \l_tmpb_seq {-}} - \seq_clear:N \l_tmpa_seq - \seq_set_split:NnV \l_tmpa_seq { ~ } { \l_tmpa_tl } - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \tl_set:Nx \l__letgut_tmpa_tl {\seq_use:Nn \l__letgut_tmpb_seq {-}} + \seq_clear:N \l__letgut_tmpa_seq + \seq_set_split:NnV \l__letgut_tmpa_seq { ~ } { \l__letgut_tmpa_tl } + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { \text_titlecase_first:n{##1} } - \seq_use:Nn \l_tmpb_seq {~} + \seq_use:Nn \l__letgut_tmpb_seq {~} } #+end_src @@ -2600,20 +2606,20 @@ For both persons and authors, the argument of: \cs_new_protected:Npn \__letgut_process_list:nn #1 #2 { \seq_clear:N \l__letgut_items_seq - \seq_set_split:Nnn \l_tmpa_seq {~and~} {#2} + \seq_set_split:Nnn \l__letgut_tmpa_seq {~and~} {#2} \IfBooleanT{#1}{ - \seq_sort:Nn \l_tmpa_seq + \seq_sort:Nn \l__letgut_tmpa_seq { \str_compare:nNnTF { ##1 } > { ##2 } { \sort_return_swapped: } { \sort_return_same: } } } - \seq_map_inline:Nn \l_tmpa_seq { - \seq_set_from_clist:Nn \l_tmpb_seq {##1} - \seq_pop_left:NN \l_tmpb_seq \l_letgut_last_name_tl - \seq_pop_left:NN \l_tmpb_seq \l_letgut_first_name_tl - \seq_pop_left:NN \l_tmpb_seq \l_letgut_title_tl + \seq_map_inline:Nn \l__letgut_tmpa_seq { + \seq_set_from_clist:Nn \l__letgut_tmpb_seq {##1} + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_last_name_tl + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_first_name_tl + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_title_tl \seq_put_right:Nx \l__letgut_items_seq { \quark_if_no_value:NTF \l_letgut_first_name_tl { \__letgut_person_last_name:n { @@ -2753,13 +2759,13 @@ We split the software's name at spaces in order to apply the dedicated font switch (~\ttfamily~) to all of it except to the spaces. #+begin_src latex - \seq_set_split:Nnn \l_tmpa_seq { ~ } { #2 } - \seq_set_map:NNn \l_tmpb_seq \l_tmpa_seq {{\l__letgut_softwares_font_switch_tl ##1}} + \seq_set_split:Nnn \l__letgut_tmpa_seq { ~ } { #2 } + \seq_set_map:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq {{\l__letgut_softwares_font_switch_tl ##1}} \tl_if_empty:nTF {#1} { - \seq_use:Nn \l_tmpb_seq { ~ } + \seq_use:Nn \l__letgut_tmpb_seq { ~ } }{ - \href{#1}{ \seq_use:Nn \l_tmpb_seq { ~ } } + \href{#1}{ \seq_use:Nn \l__letgut_tmpb_seq { ~ } } } } \cs_new_protected:Nn \__letgut_file:n @@ -2891,14 +2897,14 @@ some \lettre{} issue: \tl_if_empty:nTF {#1}{ \int_use:N \g__letgut_number_int }{ - \tl_set:Nx \l_tmpa_tl {\tl_head:n { #1 }} - \tl_set:Nn \l_tmpb_tl { #1 } - \tl_case:NnF \l_tmpa_tl { - {\c__letgut_plus_tl} {\int_eval:n {\g__letgut_number_int\l_tmpa_tl\tl_range:Nnn \l_tmpb_tl { 2 } { -1 }}} - {\c__letgut_minus_tl} {\int_eval:n {\g__letgut_number_int\l_tmpa_tl\tl_range:Nnn \l_tmpb_tl { 2 } { -1 }}} + \tl_set:Nx \l__letgut_tmpa_tl {\tl_head:n { #1 }} + \tl_set:Nn \l__letgut_tmpb_tl { #1 } + \tl_case:NnF \l__letgut_tmpa_tl { + {\c__letgut_plus_tl} {\int_eval:n {\g__letgut_number_int\l__letgut_tmpa_tl\tl_range:Nnn \l__letgut_tmpb_tl { 2 } { -1 }}} + {\c__letgut_minus_tl} {\int_eval:n {\g__letgut_number_int\l__letgut_tmpa_tl\tl_range:Nnn \l__letgut_tmpb_tl { 2 } { -1 }}} {\c__letgut_dot_tl} {\int_use:N \g__letgut_number_int} } - {\l_tmpb_tl} + {\l__letgut_tmpb_tl} } } \NewDocumentCommand { \lettrenumber } { s O{} } { @@ -2910,7 +2916,7 @@ some \lettre{} issue: #+end_src The “\lettre” and “\lettregut” expressions are treated separately since they are -subject to variations, depending how they are used. The corresponding commands +subject to variations, depending on how they are used. The corresponding commands ~\lettre~ and ~\lettregut~ used without star nor optional argument typeset resp. “\lettre” and “\lettregut”: @@ -3363,11 +3369,11 @@ extensions of the ~graphicx~ package. #+begin_src latex \clist_map_inline:Nn \Gin@extensions { \file_if_exist:nT{\g__letgut_bookreview_frontcover_tl##1}{ - \bool_set_true:N \l_tmpa_bool + \bool_set_true:N \l__letgut_tmpa_bool \clist_map_break: } } - \bool_if:NTF \l_tmpa_bool { + \bool_if:NTF \l__letgut_tmpa_bool { \marginpar{ \hspace*{\c__letgut_bookreview_frontcover_margin_sep_dim} % \raggedleft @@ -3566,6 +3572,7 @@ the current directory and is non empty. This will be applied to both the #+begin_src latex \cs_new_protected:Npn \__letgut_input_article:nn #1 #2 { + \FloatBarrier \lstset{ style=__letgut_reset_listings_styles } \acresetall% \input{#2}% @@ -3616,7 +3623,7 @@ to the \pdf{} (if desired, otherwise, use the starred version). #+begin_src latex \NewCommandCopy {\__letgut_orig_includegraphics} {\includegraphics} - \clist_set:Nx \l_tmpa_clist {\Gin@extensions} + \clist_set:Nx \l__letgut_tmpa_clist {\Gin@extensions} \cs_new_protected:Npn \__letgut_includegraphics:nnn #1 #2 #3 { \file_if_exist:nTF {#3} { @@ -3636,8 +3643,8 @@ to the \pdf{} (if desired, otherwise, use the starred version). } \__letgut_orig_includegraphics[#2]{#3} }{ - \bool_gset_false:N \g_tmpa_bool - \clist_map_inline:Nn \l_tmpa_clist {% + \bool_gset_false:N \g__letgut_tmpa_bool + \clist_map_inline:Nn \l__letgut_tmpa_clist {% \file_if_exist:nTF {#3##1} { \clist_map_break:n { \bool_if:NT \g__letgut_included_files_attached_bool { @@ -3652,14 +3659,14 @@ to the \pdf{} (if desired, otherwise, use the starred version). } } \__letgut_orig_includegraphics[#2]{#3} - \bool_gset_true:N \g_tmpa_bool + \bool_gset_true:N \g__letgut_tmpa_bool } } } - \bool_if:NF \g_tmpa_bool { + \bool_if:NF \g__letgut_tmpa_bool { \@latex@error{File~ `#3'~ not~ found}% {I~ could~ not~ locate~ the~ file~ with~ any~ of~ these~ extensions:^^J% - \clist_use:Nn \l_tmpa_clist { ~ }^^J\@ehc}% + \clist_use:Nn \l__letgut_tmpa_clist { ~ }^^J\@ehc}% } } } @@ -3969,9 +3976,9 @@ The functions: } \cs_new_protected:Nn \__letgut_on_callout_page:nn { - \tl_set:Nn \l_tmpa_int {\getpagerefnumber{#1}} - \tl_set:Nn \l_tmpb_int {\thepage} - \int_compare:nNnF {\l_tmpa_int} = {\l_tmpb_int} + \tl_set:Nn \l__letgut_tmpa_int {\getpagerefnumber{#1}} + \tl_set:Nn \l__letgut_tmpb_int {\thepage} + \int_compare:nNnF {\l__letgut_tmpa_int} = {\l__letgut_tmpb_int} {#2} } #+end_src @@ -4040,17 +4047,17 @@ We define more specifically the style of the codes with results. \pgfkeysalso{floatplacement=ht}% \pgfkeysalso{float}% \pgfkeysalso{label={\g__letgut_label_ltx_example_str}}% - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { \getpagerefnumber { \g__letgut_callout_label_ltx_example_str } } - \tl_set:Nx \l_tmpb_tl { + \tl_set:Nx \l__letgut_tmpb_tl { \getpagerefnumber { \g__letgut_label_ltx_example_str } } - \tl_if_eq:NNF \l_tmpa_tl \l_tmpb_tl + \tl_if_eq:NNF \l__letgut_tmpa_tl \l__letgut_tmpb_tl { \l__letgut_reference_text_tl \tl_set:Nn \l__letgut_reference_text_tl { @@ -4181,17 +4188,17 @@ We now use hooks in order to... \int_use:N \g__letgut_ltx_example_int } \label{\g__letgut_callout_label_ltx_example_str} - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { \getpagerefnumber { \g__letgut_callout_label_ltx_example_str } } - \tl_set:Nx \l_tmpb_tl { + \tl_set:Nx \l__letgut_tmpb_tl { \getpagerefnumber { \g__letgut_label_ltx_example_str } } - \tl_if_eq:NNF \l_tmpa_tl \l_tmpb_tl + \tl_if_eq:NNF \l__letgut_tmpa_tl \l__letgut_tmpb_tl { \skip_set_eq:NN \intextsep \c__letgut_reduced_intextsep_skip } @@ -4227,25 +4234,25 @@ the `lstlang0.sty` or ~letgut-lstlang.sty~ files. style=__letgut_reset_listings_styles,% } \tl_if_empty:nTF {#1} { - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { alsolanguage={#2} } \exp_args:NV \__letgut_tcbset:n { - \l_tmpa_tl + \l__letgut_tmpa_tl } }{ - \seq_set_from_clist:Nn \l_tmpa_seq {#1} - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \seq_set_from_clist:Nn \l__letgut_tmpa_seq {#1} + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { alsolanguage={[##1]#2} } - \tl_set:Nx \l_tmpa_tl + \tl_set:Nx \l__letgut_tmpa_tl { - \seq_use:Nn \l_tmpb_seq {,} + \seq_use:Nn \l__letgut_tmpb_seq {,} } \exp_args:NV \__letgut_tcbset:n { - \l_tmpa_tl + \l__letgut_tmpa_tl } } } @@ -4414,7 +4421,7 @@ We define some colors used in the terminal listings. #+begin_src latex \cs_new_protected:Npn \__letgut_terminal:nnnn #1 #2 #3 #4 { - \bool_set_false:N \l_tmpa_bool + \bool_set_false:N \l__letgut_tmpa_bool \tl_if_empty:nF {#3}{ \tcbset{tempfile=\jobname-stdin.tex} \exp_args:Nx \scantokens @@ -4435,7 +4442,7 @@ We define some colors used in the terminal listings. } \tl_if_empty:nTF {#3}{ \tl_if_empty:nTF {#4}{ - \bool_set_true:N \l_tmpa_bool + \bool_set_true:N \l__letgut_tmpa_bool }{ \tcbset{colback=__letgut_background_terminal_stdout} } @@ -4451,7 +4458,7 @@ We define some colors used in the terminal listings. } } } - \bool_if:NF \l_tmpa_bool { + \bool_if:NF \l__letgut_tmpa_bool { \begin{tcolorbox}[terminal={#1},#2] \lstset{aboveskip=0pt} \tl_if_empty:nF {#3}{ @@ -4515,6 +4522,7 @@ https://tex.stackexchange.com/a/25396). ^^^^215b% for ⅛ ^^^^2122% for ™ ^^^^2019% for ’ + ^^^^0153% for œ ^^00% } \lst@RestoreCatcodes @@ -4565,7 +4573,7 @@ several purposes: - the books advertisements. #+begin_src latex :tangle ../../../tex/lualatex/letgut/letgut.lbx :exports both -\ProvidesFile{letgut.lbx}[2023-05-21 v0.9.7 letgut localization] +\ProvidesFile{letgut.lbx}[2024-02-29 v0.9.8 letgut localization] \InheritBibliographyExtras{french} \DeclareBibliographyStrings{ inherit = {french}, @@ -4579,7 +4587,7 @@ several purposes: create the corresponding new entry). #+begin_src latex :tangle ../../../tex/lualatex/letgut/letgut.dbx :exports both - \ProvidesFile{letgut.dbx}[2023-05-21 v0.9.7 letgut data model macros] + \ProvidesFile{letgut.dbx}[2024-02-29 v0.9.8 letgut data model macros] \DeclareBibliographyDriver{bookreview}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -4634,7 +4642,7 @@ several purposes: We provide a specific ~biblatex~ citation style . #+begin_src latex :tangle ../../../tex/lualatex/letgut/letgut.cbx :exports both - \ProvidesFile{letgut.cbx}[2023-05-21 v0.9.7 letgut base citation style] + \ProvidesFile{letgut.cbx}[2024-02-29 v0.9.8 letgut base citation style] \RequireCitationStyle{numeric} #+end_src @@ -6359,13 +6367,13 @@ well... fp_zero,fp_zero_new,fparray_count,fparray_gset,fparray_gzero,% fparray_item,fparray_item_to_tl,fparray_new,g_file_curr_dir_str,% g_file_curr_ext_str,g_file_curr_name_str,g_msg_module_name_prop,% - g_msg_module_type_prop,g_peek_token,g_tmpa_bool,g_tmpa_box,% - g_tmpa_clist,g_tmpa_coffin,g_tmpa_dim,g_tmpa_fp,g_tmpa_int,% - g_tmpa_ior,g_tmpa_iow,g_tmpa_muskip,g_tmpa_prop,g_tmpa_regex,% - g_tmpa_seq,g_tmpa_skip,g_tmpa_str,g_tmpa_tl,g_tmpb_bool,g_tmpb_box,% - g_tmpb_clist,g_tmpb_coffin,g_tmpb_dim,g_tmpb_fp,g_tmpb_int,% - g_tmpb_ior,g_tmpb_iow,g_tmpb_muskip,g_tmpb_prop,g_tmpb_regex,% - g_tmpb_seq,g_tmpb_skip,g_tmpb_str,g_tmpb_tl,group_align_safe_begin,% + g_msg_module_type_prop,g_peek_token,g__letgut_tmpa_bool,g__letgut_tmpa_box,% + g__letgut_tmpa_clist,g__letgut_tmpa_coffin,g__letgut_tmpa_dim,g__letgut_tmpa_fp,g__letgut_tmpa_int,% + g__letgut_tmpa_ior,g__letgut_tmpa_iow,g__letgut_tmpa_muskip,g__letgut_tmpa_prop,g__letgut_tmpa_regex,% + g__letgut_tmpa_seq,g__letgut_tmpa_skip,g__letgut_tmpa_str,g__letgut_tmpa_tl,g__letgut_tmpb_bool,g__letgut_tmpb_box,% + g__letgut_tmpb_clist,g__letgut_tmpb_coffin,g__letgut_tmpb_dim,g__letgut_tmpb_fp,g__letgut_tmpb_int,% + g__letgut_tmpb_ior,g__letgut_tmpb_iow,g__letgut_tmpb_muskip,g__letgut_tmpb_prop,g__letgut_tmpb_regex,% + g__letgut_tmpb_seq,g__letgut_tmpb_skip,g__letgut_tmpb_str,g__letgut_tmpb_tl,group_align_safe_begin,% group_align_safe_end,group_begin,group_end,group_insert_after,% group_log_list,group_show_list,hbox,hbox_gset,hbox_gset_end,% hbox_gset_to_wd,hbox_overlap_center,hbox_overlap_left,% @@ -6407,13 +6415,13 @@ well... l_keys_usage_load_prop,l_keys_usage_preamble_prop,l_keys_value_tl,% l_my_int,l_peek_token,l_text_accents_tl,l_text_case_exclude_arg_tl,% l_text_expand_exclude_tl,l_text_letterlike_tl,l_text_math_arg_tl,% - l_text_math_delims_tl,l_text_titlecase_check_letter_bool,l_tmpa_bool,% - l_tmpa_box,l_tmpa_clist,l_tmpa_coffin,l_tmpa_dim,l_tmpa_fp,% - l_tmpa_int,l_tmpa_muskip,l_tmpa_prop,l_tmpa_regex,l_tmpa_seq,% - l_tmpa_skip,l_tmpa_str,l_tmpa_tl,l_tmpb_bool,l_tmpb_box,% - l_tmpb_clist,l_tmpb_coffin,l_tmpb_dim,l_tmpb_fp,l_tmpb_int,% - l_tmpb_muskip,l_tmpb_prop,l_tmpb_regex,l_tmpb_seq,l_tmpb_skip,% - l_tmpb_str,l_tmpb_tl,legacy_if,legacy_if_gset,legacy_if_gset_false,% + l_text_math_delims_tl,l_text_titlecase_check_letter_bool,l__letgut_tmpa_bool,% + l__letgut_tmpa_box,l__letgut_tmpa_clist,l__letgut_tmpa_coffin,l__letgut_tmpa_dim,l__letgut_tmpa_fp,% + l__letgut_tmpa_int,l__letgut_tmpa_muskip,l__letgut_tmpa_prop,l__letgut_tmpa_regex,l__letgut_tmpa_seq,% + l__letgut_tmpa_skip,l__letgut_tmpa_str,l__letgut_tmpa_tl,l__letgut_tmpb_bool,l__letgut_tmpb_box,% + l__letgut_tmpb_clist,l__letgut_tmpb_coffin,l__letgut_tmpb_dim,l__letgut_tmpb_fp,l__letgut_tmpb_int,% + l__letgut_tmpb_muskip,l__letgut_tmpb_prop,l__letgut_tmpb_regex,l__letgut_tmpb_seq,l__letgut_tmpb_skip,% + l__letgut_tmpb_str,l__letgut_tmpb_tl,legacy_if,legacy_if_gset,legacy_if_gset_false,% legacy_if_gset_true,legacy_if_p,legacy_if_set,legacy_if_set_false,% legacy_if_set_true,lua_escape,lua_now,lua_shipout,lua_shipout_e,% mode_if_horizontal,mode_if_horizontal_p,mode_if_inner,% diff --git a/Master/texmf-dist/tex/lualatex/letgut/letgut-lstlang.sty b/Master/texmf-dist/tex/lualatex/letgut/letgut-lstlang.sty index c389172b834..477e1dad9ae 100644 --- a/Master/texmf-dist/tex/lualatex/letgut/letgut-lstlang.sty +++ b/Master/texmf-dist/tex/lualatex/letgut/letgut-lstlang.sty @@ -1097,13 +1097,13 @@ fp_zero,fp_zero_new,fparray_count,fparray_gset,fparray_gzero,% fparray_item,fparray_item_to_tl,fparray_new,g_file_curr_dir_str,% g_file_curr_ext_str,g_file_curr_name_str,g_msg_module_name_prop,% - g_msg_module_type_prop,g_peek_token,g_tmpa_bool,g_tmpa_box,% - g_tmpa_clist,g_tmpa_coffin,g_tmpa_dim,g_tmpa_fp,g_tmpa_int,% - g_tmpa_ior,g_tmpa_iow,g_tmpa_muskip,g_tmpa_prop,g_tmpa_regex,% - g_tmpa_seq,g_tmpa_skip,g_tmpa_str,g_tmpa_tl,g_tmpb_bool,g_tmpb_box,% - g_tmpb_clist,g_tmpb_coffin,g_tmpb_dim,g_tmpb_fp,g_tmpb_int,% - g_tmpb_ior,g_tmpb_iow,g_tmpb_muskip,g_tmpb_prop,g_tmpb_regex,% - g_tmpb_seq,g_tmpb_skip,g_tmpb_str,g_tmpb_tl,group_align_safe_begin,% + g_msg_module_type_prop,g_peek_token,g__letgut_tmpa_bool,g__letgut_tmpa_box,% + g__letgut_tmpa_clist,g__letgut_tmpa_coffin,g__letgut_tmpa_dim,g__letgut_tmpa_fp,g__letgut_tmpa_int,% + g__letgut_tmpa_ior,g__letgut_tmpa_iow,g__letgut_tmpa_muskip,g__letgut_tmpa_prop,g__letgut_tmpa_regex,% + g__letgut_tmpa_seq,g__letgut_tmpa_skip,g__letgut_tmpa_str,g__letgut_tmpa_tl,g__letgut_tmpb_bool,g__letgut_tmpb_box,% + g__letgut_tmpb_clist,g__letgut_tmpb_coffin,g__letgut_tmpb_dim,g__letgut_tmpb_fp,g__letgut_tmpb_int,% + g__letgut_tmpb_ior,g__letgut_tmpb_iow,g__letgut_tmpb_muskip,g__letgut_tmpb_prop,g__letgut_tmpb_regex,% + g__letgut_tmpb_seq,g__letgut_tmpb_skip,g__letgut_tmpb_str,g__letgut_tmpb_tl,group_align_safe_begin,% group_align_safe_end,group_begin,group_end,group_insert_after,% group_log_list,group_show_list,hbox,hbox_gset,hbox_gset_end,% hbox_gset_to_wd,hbox_overlap_center,hbox_overlap_left,% @@ -1145,13 +1145,13 @@ l_keys_usage_load_prop,l_keys_usage_preamble_prop,l_keys_value_tl,% l_my_int,l_peek_token,l_text_accents_tl,l_text_case_exclude_arg_tl,% l_text_expand_exclude_tl,l_text_letterlike_tl,l_text_math_arg_tl,% - l_text_math_delims_tl,l_text_titlecase_check_letter_bool,l_tmpa_bool,% - l_tmpa_box,l_tmpa_clist,l_tmpa_coffin,l_tmpa_dim,l_tmpa_fp,% - l_tmpa_int,l_tmpa_muskip,l_tmpa_prop,l_tmpa_regex,l_tmpa_seq,% - l_tmpa_skip,l_tmpa_str,l_tmpa_tl,l_tmpb_bool,l_tmpb_box,% - l_tmpb_clist,l_tmpb_coffin,l_tmpb_dim,l_tmpb_fp,l_tmpb_int,% - l_tmpb_muskip,l_tmpb_prop,l_tmpb_regex,l_tmpb_seq,l_tmpb_skip,% - l_tmpb_str,l_tmpb_tl,legacy_if,legacy_if_gset,legacy_if_gset_false,% + l_text_math_delims_tl,l_text_titlecase_check_letter_bool,l__letgut_tmpa_bool,% + l__letgut_tmpa_box,l__letgut_tmpa_clist,l__letgut_tmpa_coffin,l__letgut_tmpa_dim,l__letgut_tmpa_fp,% + l__letgut_tmpa_int,l__letgut_tmpa_muskip,l__letgut_tmpa_prop,l__letgut_tmpa_regex,l__letgut_tmpa_seq,% + l__letgut_tmpa_skip,l__letgut_tmpa_str,l__letgut_tmpa_tl,l__letgut_tmpb_bool,l__letgut_tmpb_box,% + l__letgut_tmpb_clist,l__letgut_tmpb_coffin,l__letgut_tmpb_dim,l__letgut_tmpb_fp,l__letgut_tmpb_int,% + l__letgut_tmpb_muskip,l__letgut_tmpb_prop,l__letgut_tmpb_regex,l__letgut_tmpb_seq,l__letgut_tmpb_skip,% + l__letgut_tmpb_str,l__letgut_tmpb_tl,legacy_if,legacy_if_gset,legacy_if_gset_false,% legacy_if_gset_true,legacy_if_p,legacy_if_set,legacy_if_set_false,% legacy_if_set_true,lua_escape,lua_now,lua_shipout,lua_shipout_e,% mode_if_horizontal,mode_if_horizontal_p,mode_if_inner,% diff --git a/Master/texmf-dist/tex/lualatex/letgut/letgut.cbx b/Master/texmf-dist/tex/lualatex/letgut/letgut.cbx index 0ef41e79572..1fc3ac55830 100644 --- a/Master/texmf-dist/tex/lualatex/letgut/letgut.cbx +++ b/Master/texmf-dist/tex/lualatex/letgut/letgut.cbx @@ -1,4 +1,4 @@ -\ProvidesFile{letgut.cbx}[2023-05-21 v0.9.7 letgut base citation style] +\ProvidesFile{letgut.cbx}[2024-02-29 v0.9.8 letgut base citation style] \RequireCitationStyle{numeric} \DeclareFieldFormat[bookreview]{title}{\textbf{\emph{#1}}} \renewbibmacro*{title}{% diff --git a/Master/texmf-dist/tex/lualatex/letgut/letgut.cls b/Master/texmf-dist/tex/lualatex/letgut/letgut.cls index 391f10ec404..cb0ec69d9e8 100644 --- a/Master/texmf-dist/tex/lualatex/letgut/letgut.cls +++ b/Master/texmf-dist/tex/lualatex/letgut/letgut.cls @@ -48,8 +48,8 @@ } \ExplSyntaxOff \ProvidesExplClass{letgut} -{2023-05-21} -{0.9.7} +{2024-02-29} +{0.9.8} { Class for the newsletter “The GUTenberg Letter” } @@ -318,7 +318,6 @@ \seq_new:N \l__letgut_first_last_names_items_seq \seq_new:N \g__letgut_included_files_seq \seq_new:N \g__letgut_added_bib_resources_seq -\RequirePackage{l3keys2e} \int_new:N \g__letgut_date_month_int \int_new:N \g__letgut_date_year_int @@ -549,17 +548,17 @@ \Huge % \color_fill:n {black!10} \color{black!10} -\hbox_set:Nn \l_tmpa_box { +\hbox_set:Nn \l__letgut_tmpa_box { \fontsize{0.25\paperwidth}{0.3\paperwidth} \selectfont \c__letgut_draftwatermark_text_tl } -\hbox_set:Nn \l_tmpb_box { +\hbox_set:Nn \l__letgut_tmpb_box { \hbox_overlap_center:n { - \box_use:N \l_tmpa_box + \box_use:N \l__letgut_tmpa_box } } -\box_rotate:Nn \l_tmpb_box { +\box_rotate:Nn \l__letgut_tmpb_box { \fp_eval:n { atand ( \dim_to_fp:n {\paperheight} @@ -568,7 +567,7 @@ ) } } -\box_use:N \l_tmpb_box +\box_use:N \l__letgut_tmpb_box } } } @@ -579,7 +578,7 @@ \pagecolor[rgb]{\c__letgut_default_pagecolor_screen_clist} \clist_set_eq:NN \g__letgut_pagecolor_clist \c__letgut_default_pagecolor_screen_clist -\keys_define:nn { letgut } +\DeclareKeys[ letgut ] { , for-readers .bool_gset:N = \g__letgut_for_readers_bool , for-readers .initial:n = { true } @@ -641,7 +640,7 @@ } } } -\ProcessKeysOptions { letgut } +\ProcessKeyOptions[ letgut ] \AddToHook{begindocument/before}{ \bool_lazy_and:nnTF {\g__letgut_for_readers_bool} {!\g__letgut_paper_bool} { @@ -755,7 +754,9 @@ \tl_if_empty:NTF {#1}{ \phantomsection\addcontentsline{toc}{title}{#2} }{ - \phantomsection\addcontentsline{toc}{title}{#1} + \tl_if_empty:NF {#2}{ + \phantomsection\addcontentsline{toc}{title}{#1} + } } } \NewTColorBox{announcement}{ O{} m } @@ -767,7 +768,8 @@ overlay~ unbroken~ and~ first ={ \node[color=\l__letgut_toc_color_announce_tl]~ at~ ([yshift=8pt]title.south) {\pgfornament[width=0.4\linewidth]{88}}; - \node[color=white,anchor=north~ west]~ at~ (frame.north~ west) {\huge\bfseries\aldineright{}}; + \node[color=white,anchor=north~ west]~ at~ (frame.north~ west) + {\huge\bfseries\aldineright{}}; }, #1, coltitle=\l__letgut_toc_color_announce_tl, @@ -1238,17 +1240,17 @@ } \cs_new_protected:Npn \__letgut_titlecase_name:n #1 { - \seq_set_split:Nnn \l_tmpa_seq { - } {#1} - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \seq_set_split:Nnn \l__letgut_tmpa_seq { - } {#1} + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { \text_titlecase_first:n{ \text_lowercase:n {##1} } } - \tl_set:Nx \l_tmpa_tl {\seq_use:Nn \l_tmpb_seq {-}} - \seq_clear:N \l_tmpa_seq - \seq_set_split:NnV \l_tmpa_seq { ~ } { \l_tmpa_tl } - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \tl_set:Nx \l__letgut_tmpa_tl {\seq_use:Nn \l__letgut_tmpb_seq {-}} + \seq_clear:N \l__letgut_tmpa_seq + \seq_set_split:NnV \l__letgut_tmpa_seq { ~ } { \l__letgut_tmpa_tl } + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { \text_titlecase_first:n{##1} } - \seq_use:Nn \l_tmpb_seq {~} + \seq_use:Nn \l__letgut_tmpb_seq {~} } \cs_new_protected:Nn \__letgut_person_last_name:n { @@ -1272,20 +1274,20 @@ \cs_new_protected:Npn \__letgut_process_list:nn #1 #2 { \seq_clear:N \l__letgut_items_seq - \seq_set_split:Nnn \l_tmpa_seq {~and~} {#2} + \seq_set_split:Nnn \l__letgut_tmpa_seq {~and~} {#2} \IfBooleanT{#1}{ - \seq_sort:Nn \l_tmpa_seq + \seq_sort:Nn \l__letgut_tmpa_seq { \str_compare:nNnTF { ##1 } > { ##2 } { \sort_return_swapped: } { \sort_return_same: } } } - \seq_map_inline:Nn \l_tmpa_seq { - \seq_set_from_clist:Nn \l_tmpb_seq {##1} - \seq_pop_left:NN \l_tmpb_seq \l_letgut_last_name_tl - \seq_pop_left:NN \l_tmpb_seq \l_letgut_first_name_tl - \seq_pop_left:NN \l_tmpb_seq \l_letgut_title_tl + \seq_map_inline:Nn \l__letgut_tmpa_seq { + \seq_set_from_clist:Nn \l__letgut_tmpb_seq {##1} + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_last_name_tl + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_first_name_tl + \seq_pop_left:NN \l__letgut_tmpb_seq \l_letgut_title_tl \seq_put_right:Nx \l__letgut_items_seq { \quark_if_no_value:NTF \l_letgut_first_name_tl { \__letgut_person_last_name:n { @@ -1377,13 +1379,13 @@ } \cs_new_protected:Nn \__letgut_software:nn { -\seq_set_split:Nnn \l_tmpa_seq { ~ } { #2 } - \seq_set_map:NNn \l_tmpb_seq \l_tmpa_seq {{\l__letgut_softwares_font_switch_tl ##1}} +\seq_set_split:Nnn \l__letgut_tmpa_seq { ~ } { #2 } + \seq_set_map:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq {{\l__letgut_softwares_font_switch_tl ##1}} \tl_if_empty:nTF {#1} { - \seq_use:Nn \l_tmpb_seq { ~ } + \seq_use:Nn \l__letgut_tmpb_seq { ~ } }{ - \href{#1}{ \seq_use:Nn \l_tmpb_seq { ~ } } + \href{#1}{ \seq_use:Nn \l__letgut_tmpb_seq { ~ } } } } \cs_new_protected:Nn \__letgut_file:n @@ -1486,14 +1488,14 @@ \tl_if_empty:nTF {#1}{ \int_use:N \g__letgut_number_int }{ - \tl_set:Nx \l_tmpa_tl {\tl_head:n { #1 }} - \tl_set:Nn \l_tmpb_tl { #1 } - \tl_case:NnF \l_tmpa_tl { - {\c__letgut_plus_tl} {\int_eval:n {\g__letgut_number_int\l_tmpa_tl\tl_range:Nnn \l_tmpb_tl { 2 } { -1 }}} - {\c__letgut_minus_tl} {\int_eval:n {\g__letgut_number_int\l_tmpa_tl\tl_range:Nnn \l_tmpb_tl { 2 } { -1 }}} + \tl_set:Nx \l__letgut_tmpa_tl {\tl_head:n { #1 }} + \tl_set:Nn \l__letgut_tmpb_tl { #1 } + \tl_case:NnF \l__letgut_tmpa_tl { + {\c__letgut_plus_tl} {\int_eval:n {\g__letgut_number_int\l__letgut_tmpa_tl\tl_range:Nnn \l__letgut_tmpb_tl { 2 } { -1 }}} + {\c__letgut_minus_tl} {\int_eval:n {\g__letgut_number_int\l__letgut_tmpa_tl\tl_range:Nnn \l__letgut_tmpb_tl { 2 } { -1 }}} {\c__letgut_dot_tl} {\int_use:N \g__letgut_number_int} } - {\l_tmpb_tl} + {\l__letgut_tmpb_tl} } } \NewDocumentCommand { \lettrenumber } { s O{} } { @@ -1814,11 +1816,11 @@ title .value_required:n = true, }{ \clist_map_inline:Nn \Gin@extensions { \file_if_exist:nT{\g__letgut_bookreview_frontcover_tl##1}{ - \bool_set_true:N \l_tmpa_bool + \bool_set_true:N \l__letgut_tmpa_bool \clist_map_break: } } - \bool_if:NTF \l_tmpa_bool { + \bool_if:NTF \l__letgut_tmpa_bool { \marginpar{ \hspace*{\c__letgut_bookreview_frontcover_margin_sep_dim} % \raggedleft @@ -1939,6 +1941,7 @@ title .value_required:n = true, } \cs_new_protected:Npn \__letgut_input_article:nn #1 #2 { + \FloatBarrier \lstset{ style=__letgut_reset_listings_styles } \acresetall% \input{#2}% @@ -1978,7 +1981,7 @@ title .value_required:n = true, \__letgut_input_article:nn { #1 } { #2 } } \NewCommandCopy {\__letgut_orig_includegraphics} {\includegraphics} -\clist_set:Nx \l_tmpa_clist {\Gin@extensions} +\clist_set:Nx \l__letgut_tmpa_clist {\Gin@extensions} \cs_new_protected:Npn \__letgut_includegraphics:nnn #1 #2 #3 { \file_if_exist:nTF {#3} { @@ -1998,8 +2001,8 @@ title .value_required:n = true, } \__letgut_orig_includegraphics[#2]{#3} }{ - \bool_gset_false:N \g_tmpa_bool - \clist_map_inline:Nn \l_tmpa_clist {% + \bool_gset_false:N \g__letgut_tmpa_bool + \clist_map_inline:Nn \l__letgut_tmpa_clist {% \file_if_exist:nTF {#3##1} { \clist_map_break:n { \bool_if:NT \g__letgut_included_files_attached_bool { @@ -2014,14 +2017,14 @@ title .value_required:n = true, } } \__letgut_orig_includegraphics[#2]{#3} - \bool_gset_true:N \g_tmpa_bool + \bool_gset_true:N \g__letgut_tmpa_bool } } } - \bool_if:NF \g_tmpa_bool { + \bool_if:NF \g__letgut_tmpa_bool { \@latex@error{File~ `#3'~ not~ found}% {I~ could~ not~ locate~ the~ file~ with~ any~ of~ these~ extensions:^^J% - \clist_use:Nn \l_tmpa_clist { ~ }^^J\@ehc}% + \clist_use:Nn \l__letgut_tmpa_clist { ~ }^^J\@ehc}% } } } @@ -2199,9 +2202,9 @@ literate=*% } \cs_new_protected:Nn \__letgut_on_callout_page:nn { - \tl_set:Nn \l_tmpa_int {\getpagerefnumber{#1}} - \tl_set:Nn \l_tmpb_int {\thepage} - \int_compare:nNnF {\l_tmpa_int} = {\l_tmpb_int} + \tl_set:Nn \l__letgut_tmpa_int {\getpagerefnumber{#1}} + \tl_set:Nn \l__letgut_tmpb_int {\thepage} + \int_compare:nNnF {\l__letgut_tmpa_int} = {\l__letgut_tmpb_int} {#2} } \tl_set:Nn \l__letgut_reference_text_tl { @@ -2245,17 +2248,17 @@ sidebyside@true/.code={% \pgfkeysalso{floatplacement=ht}% \pgfkeysalso{float}% \pgfkeysalso{label={\g__letgut_label_ltx_example_str}}% - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { \getpagerefnumber { \g__letgut_callout_label_ltx_example_str } } - \tl_set:Nx \l_tmpb_tl { + \tl_set:Nx \l__letgut_tmpb_tl { \getpagerefnumber { \g__letgut_label_ltx_example_str } } - \tl_if_eq:NNF \l_tmpa_tl \l_tmpb_tl + \tl_if_eq:NNF \l__letgut_tmpa_tl \l__letgut_tmpb_tl { \l__letgut_reference_text_tl \tl_set:Nn \l__letgut_reference_text_tl { @@ -2337,17 +2340,17 @@ overlay={ \int_use:N \g__letgut_ltx_example_int } \label{\g__letgut_callout_label_ltx_example_str} - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { \getpagerefnumber { \g__letgut_callout_label_ltx_example_str } } - \tl_set:Nx \l_tmpb_tl { + \tl_set:Nx \l__letgut_tmpb_tl { \getpagerefnumber { \g__letgut_label_ltx_example_str } } - \tl_if_eq:NNF \l_tmpa_tl \l_tmpb_tl + \tl_if_eq:NNF \l__letgut_tmpa_tl \l__letgut_tmpb_tl { \skip_set_eq:NN \intextsep \c__letgut_reduced_intextsep_skip } @@ -2368,25 +2371,25 @@ overlay={ style=__letgut_reset_listings_styles,% } \tl_if_empty:nTF {#1} { - \tl_set:Nx \l_tmpa_tl { + \tl_set:Nx \l__letgut_tmpa_tl { alsolanguage={#2} } \exp_args:NV \__letgut_tcbset:n { - \l_tmpa_tl + \l__letgut_tmpa_tl } }{ - \seq_set_from_clist:Nn \l_tmpa_seq {#1} - \seq_set_map_x:NNn \l_tmpb_seq \l_tmpa_seq { + \seq_set_from_clist:Nn \l__letgut_tmpa_seq {#1} + \seq_set_map_x:NNn \l__letgut_tmpb_seq \l__letgut_tmpa_seq { alsolanguage={[##1]#2} } - \tl_set:Nx \l_tmpa_tl + \tl_set:Nx \l__letgut_tmpa_tl { - \seq_use:Nn \l_tmpb_seq {,} + \seq_use:Nn \l__letgut_tmpb_seq {,} } \exp_args:NV \__letgut_tcbset:n { - \l_tmpa_tl + \l__letgut_tmpa_tl } } } @@ -2513,7 +2516,7 @@ overlay={ } \cs_new_protected:Npn \__letgut_terminal:nnnn #1 #2 #3 #4 { - \bool_set_false:N \l_tmpa_bool + \bool_set_false:N \l__letgut_tmpa_bool \tl_if_empty:nF {#3}{ \tcbset{tempfile=\jobname-stdin.tex} \exp_args:Nx \scantokens @@ -2534,7 +2537,7 @@ overlay={ } \tl_if_empty:nTF {#3}{ \tl_if_empty:nTF {#4}{ - \bool_set_true:N \l_tmpa_bool + \bool_set_true:N \l__letgut_tmpa_bool }{ \tcbset{colback=__letgut_background_terminal_stdout} } @@ -2550,7 +2553,7 @@ overlay={ } } } - \bool_if:NF \l_tmpa_bool { + \bool_if:NF \l__letgut_tmpa_bool { \begin{tcolorbox}[terminal={#1},#2] \lstset{aboveskip=0pt} \tl_if_empty:nF {#3}{ @@ -2597,6 +2600,7 @@ overlay={ ^^^^215b% for ⅛ ^^^^2122% for ™ ^^^^2019% for ’ + ^^^^0153% for œ ^^00% } \lst@RestoreCatcodes diff --git a/Master/texmf-dist/tex/lualatex/letgut/letgut.dbx b/Master/texmf-dist/tex/lualatex/letgut/letgut.dbx index e2e4558da27..f2a1b35c6fe 100644 --- a/Master/texmf-dist/tex/lualatex/letgut/letgut.dbx +++ b/Master/texmf-dist/tex/lualatex/letgut/letgut.dbx @@ -1,4 +1,4 @@ -\ProvidesFile{letgut.dbx}[2023-05-21 v0.9.7 letgut data model macros] +\ProvidesFile{letgut.dbx}[2024-02-29 v0.9.8 letgut data model macros] \DeclareBibliographyDriver{bookreview}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% diff --git a/Master/texmf-dist/tex/lualatex/letgut/letgut.lbx b/Master/texmf-dist/tex/lualatex/letgut/letgut.lbx index 6a7ff7b7256..9b433edbe4b 100644 --- a/Master/texmf-dist/tex/lualatex/letgut/letgut.lbx +++ b/Master/texmf-dist/tex/lualatex/letgut/letgut.lbx @@ -1,4 +1,4 @@ -\ProvidesFile{letgut.lbx}[2023-05-21 v0.9.7 letgut localization] +\ProvidesFile{letgut.lbx}[2024-02-29 v0.9.8 letgut localization] \InheritBibliographyExtras{french} \DeclareBibliographyStrings{ inherit = {french}, |