texlive[72629] Master/texmf-dist: letgut (23oct24)
commits+karl at tug.org
commits+karl at tug.org
Wed Oct 23 22:21:42 CEST 2024
Revision: 72629
https://tug.org/svn/texlive?view=revision&revision=72629
Author: karl
Date: 2024-10-23 22:21:42 +0200 (Wed, 23 Oct 2024)
Log Message:
-----------
letgut (23oct24)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md
trunk/Master/texmf-dist/doc/lualatex/letgut/README.md
trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.pdf
trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex
trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-code.pdf
trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex
trunk/Master/texmf-dist/doc/lualatex/letgut/letgut.pdf
trunk/Master/texmf-dist/doc/lualatex/letgut/letgut.tex
trunk/Master/texmf-dist/source/lualatex/letgut/letgut.org
trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.cbx
trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.cls
trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.dbx
trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.lbx
Modified: trunk/Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/doc/lualatex/letgut/CHANGELOG.md 2024-10-23 20:21:42 UTC (rev 72629)
@@ -8,7 +8,11 @@
## [Unreleased]
## [0.9.10] - 2024-10-07
+### Fixed
+- Bibliographic files not attached to the PDF
+## [0.9.10] - 2024-10-07
+
### Changed
- Multiple rebuses handled
- Paper clips (links to source files of the articles) not in the magin anymore and separated by spaces
Modified: trunk/Master/texmf-dist/doc/lualatex/letgut/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/lualatex/letgut/README.md 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/doc/lualatex/letgut/README.md 2024-10-23 20:21:42 UTC (rev 72629)
@@ -8,7 +8,7 @@
Release
-------
-2024-10-07 v0.9.10
+2024-10-23 v0.9.11
Development
-----------
Modified: trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex
===================================================================
--- trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-banner-code.tex 2024-10-23 20:21:42 UTC (rev 72629)
@@ -1,4 +1,4 @@
-% Created 2024-10-07 Mon 12:16
+% Created 2024-10-23 Wed 10:12
% Intended LaTeX compiler: lualatex
\documentclass{letgut}
\setmainfont{KpRoman}
Modified: trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex
===================================================================
--- trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/doc/lualatex/letgut/letgut-code.tex 2024-10-23 20:21:42 UTC (rev 72629)
@@ -1,4 +1,4 @@
-% Created 2024-10-07 Mon 12:16
+% Created 2024-10-23 Wed 10:12
% Intended LaTeX compiler: lualatex
\documentclass{letgut}
\setmainfont{KpRoman}
@@ -97,8 +97,8 @@
\begin{lstlisting}
\ProvidesExplClass{letgut}
-{2024-10-07}
-{0.9.10}
+{2024-10-23}
+{0.9.11}
{
Class for the newsletter “The GUTenberg Letter”
}
@@ -969,7 +969,18 @@
\phantomsection
\__letgut_old_printbibliography[#1]
\bool_if:NT \g__letgut_included_files_attached_bool {
- \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {\seq_gput_right:Nn \g__letgut_included_files_seq {#1}}
+ \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {
+ \seq_gput_right:Nn \g__letgut_included_files_seq {
+ \attachfile[
+ description={
+ Fichier~ bibliographique~ utilisé~ dans~ le~
+ présent~ article~ (fichier~ `\tl_to_str:n{##1}`)
+ },
+ mimetype=application/x-bib
+ ]
+ {\tl_to_str:n{##1}}
+ }
+ }
}
}
\end{lstlisting}
@@ -2944,42 +2955,53 @@
extensions of the \lstinline+graphicx+ package.
\begin{lstlisting}
- \clist_map_inline:Nn \Gin at extensions {
- \file_if_exist:nT{\l__letgut_bookreview_frontcover_tl##1}{
- \bool_set_true:N \l__letgut_tmpa_bool
- \clist_map_break:
- }
- }
- \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]{
- \l__letgut_bookreview_frontcover_tl
- }
- }
+\clist_map_inline:Nn \Gin at extensions {
+ \file_if_exist:nT{\l__letgut_bookreview_frontcover_tl##1}{
+ \bool_set_true:N \l__letgut_tmpa_bool
+ \clist_map_break:
+ }
+}
+\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]{
+ \l__letgut_bookreview_frontcover_tl
}
}
- }{
- \msg_error:nnVV
- {letgut}
- {frontcover-file-not-found}
- {\g__letgut_bookreview_title_tl}
- {\l__letgut_bookreview_frontcover_tl}
}
}
- \noindent
- \textsf{\fullcite{\g__letgut_bookreview_bibkey_tl}}
- \tl_if_empty:NF \g__letgut_bookreview_price_tl{
- .\c_space_tl\g__letgut_bookreview_price_tl\c_space_tl €
- }
- \par
}{
+ \msg_error:nnVV
+ {letgut}
+ {frontcover-file-not-found}
+ {\g__letgut_bookreview_title_tl}
+ {\l__letgut_bookreview_frontcover_tl}
+}
+}
+\noindent
+\textsf{\fullcite{\g__letgut_bookreview_bibkey_tl}}
+\tl_if_empty:NF \g__letgut_bookreview_price_tl{
+ .\c_space_tl\g__letgut_bookreview_price_tl\c_space_tl €
+}
+\par
+}{
\exp_args:NV \author{\g__letgut_bookreview_reviewer_tl}
\bool_if:NT \g__letgut_included_files_attached_bool {
- \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {\seq_gput_right:Nn \g__letgut_included_files_seq {##1}}
+ \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {
+ \seq_gput_right:Nn \g__letgut_included_files_seq {
+ \attachfile[
+ description={
+ Fichier~ bibliographique~ utilisé~ dans~ le~
+ présent~ article~ (fichier~ `\tl_to_str:n{##1}`)
+ },
+ mimetype=application/x-bib
+ ]
+ {\tl_to_str:n{##1}}
+ }
+ }
}
}
\end{lstlisting}
@@ -3241,28 +3263,40 @@
ressources to the \pdf{} (if desired, otherwise, use the starred version).
\begin{lstlisting}
-\NewCommandCopy {\__letgut_orig_addbibresource} {\addbibresource}
-\cs_new_protected:Npn \__letgut_addbibresource:nnn #1 #2 #3
+\cs_new:Nn \__letgut_extract_file_for:nn
{
- \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}%
+ \seq_clear:N \g__letgut_added_bib_resources_seq
+ \regex_extract_all:nnNT
+ {
+ \c{ #1 } \[?.*?\]? \{ ( .*? ) \}
+ }
+ {
+ #2
+ }
+ \g__letgut_added_bib_resources_seq
+ {
+ \seq_map_indexed_inline:Nn \g__letgut_added_bib_resources_seq {
+ \int_if_odd:nT {##1}
+ {
+ \seq_gset_item:Nnn \g__letgut_added_bib_resources_seq {##1} {}
}
}
+ \seq_gremove_duplicates:N \g__letgut_added_bib_resources_seq
+ \seq_gpop:NN \g__letgut_added_bib_resources_seq \l_tmpa_tl
}
+}
+
+\NewCommandCopy {\__letgut_orig_addbibresource} {\addbibresource}
+\cs_new_protected:Npn \__letgut_addbibresource:nnn #1 #2 #3
+{
\__letgut_orig_addbibresource[#2]{#3}
}
\RenewDocumentCommand {\addbibresource} { s O{} m } {
\__letgut_addbibresource:nnn {#1} {#2} {#3}
}
+\AddToHookWithArguments{cmd/sa at gobble/before}{
+ \__letgut_extract_file_for:nn { addbibresource }{ #1 }
+}
\end{lstlisting}
\subsubsection{Added acronym definitions file attached to the PDF}
@@ -3518,7 +3552,7 @@
}
\cs_new_protected:Npn \__letgut_title_code_result_box:n #1
{
- Exemple~ \thetcbcounter
+ Exemple\nobreakspace\thetcbcounter
\tl_if_empty:NF {#1} { \hypersetup{hidelinks} \c_space_tl :~#1 }
}
\cs_new_protected:Nn \__letgut_on_callout_page:nn
@@ -4094,7 +4128,7 @@
\end{itemize}
\begin{lstlisting}
-\ProvidesFile{letgut.lbx}[2024-10-07 v0.9.10 letgut localization]
+\ProvidesFile{letgut.lbx}[2024-10-23 v0.9.11 letgut localization]
\InheritBibliographyExtras{french}
\DeclareBibliographyStrings{
inherit = {french},
@@ -4108,7 +4142,7 @@
create the corresponding new entry).
\begin{lstlisting}
-\ProvidesFile{letgut.dbx}[2024-10-07 v0.9.10 letgut data model macros]
+\ProvidesFile{letgut.dbx}[2024-10-23 v0.9.11 letgut data model macros]
\DeclareBibliographyDriver{bookreview}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
@@ -4163,7 +4197,7 @@
We provide a specific \lstinline+biblatex+ citation style .
\begin{lstlisting}
-\ProvidesFile{letgut.cbx}[2024-10-07 v0.9.10 letgut base citation style]
+\ProvidesFile{letgut.cbx}[2024-10-23 v0.9.11 letgut base citation style]
\RequireCitationStyle{numeric}
\end{lstlisting}
Modified: trunk/Master/texmf-dist/doc/lualatex/letgut/letgut.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/lualatex/letgut/letgut.tex
===================================================================
--- trunk/Master/texmf-dist/doc/lualatex/letgut/letgut.tex 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/doc/lualatex/letgut/letgut.tex 2024-10-23 20:21:42 UTC (rev 72629)
@@ -68,7 +68,7 @@
}
\author{Association GUTenberg}
\date{%
- Version 0.9.9 en date du \today%
+ Version 0.9.11 en date du \today%
\texorpdfstring{%
\\
\url{https://framagit.org/gutenberg/letgut}%
@@ -338,30 +338,31 @@
page.
\end{docKey}
-\tcbset{before lower=\vspace*{.5\baselineskip}\par}
-%
-\begin{docKey}[][doc updated={2023-01-19}]{detailedtoc}{=\docValue{section}\textbar\docValue{subsection}\textbar\docValue{subsubsection}\textbar\docValue{paragraph}\textbar\docValue{subparagraph}}{\valinitdef[\docValue*{title}][\docValue*{all}]}
- Par défaut, une table des matières est automatiquement insérée en début de
- document, avec comme niveau de profondeur celui des titres des articles
- (saisis via la \refCom{title}), et seulement eux. La clé \refKey{detailedtoc}
- permet de modifier le \enquote{niveau de profondeur} de cette table des
- matières, respectivement jusqu'aux sections, sous-sections,
- sous-sous-sections, paragraphes, sous-paragraphes. Sont également acceptées
- les valeurs spéciales :
- \begin{itemize}
- \item \docValue{all} (alias de \docValue{subparagraph}) ;
- \item \docValue{none} qui inhibe l'affichage de la table des matières.
- \end{itemize}
+{\tcbset{before lower=\vspace*{\baselineskip}\par}
+ %
+ \begin{docKey}[][doc updated={2023-01-19}]{detailedtoc}{=\docValue{section}\textbar\docValue{subsection}\textbar\docValue{subsubsection}\textbar\docValue{paragraph}\textbar\docValue{subparagraph}}{\valinitdef[\docValue*{title}][\docValue*{all}]}
+ Par défaut, une table des matières est automatiquement insérée en début de
+ document, avec comme niveau de profondeur celui des titres des articles
+ (saisis via la \refCom{title}), et seulement eux. La clé \refKey{detailedtoc}
+ permet de modifier le \enquote{niveau de profondeur} de cette table des
+ matières, respectivement jusqu'aux sections, sous-sections,
+ sous-sous-sections, paragraphes, sous-paragraphes. Sont également acceptées
+ les valeurs spéciales :
+ \begin{itemize}
+ \item \docValue{all} (alias de \docValue{subparagraph}) ;
+ \item \docValue{none} qui inhibe l'affichage de la table des matières.
+ \end{itemize}
- \begin{dbremark}{Tables des matières locales}{}
- Chaque article peut contenir une table des matières locale, affichée au
- moyen de la commande \docAuxCommand{localtableofcontents} (fournie par le
- \package*{etoc} chargé en sous-main par la \letgutcls{}). Le niveau de
- profondeur est par défaut celui des sections mais cela peut être modifié en
- la faisant précéder de la commande \docAuxCommand{etocsetnexttocdepth} (dont
- l'argument est l'une des valeurs possibles de la clé \refKey{detailedtoc}).
- \end{dbremark}
-\end{docKey}
+ \begin{dbremark}{Tables des matières locales}{}
+ Chaque article peut contenir une table des matières locale, affichée au
+ moyen de la commande \docAuxCommand{localtableofcontents} (fournie par le
+ \package*{etoc} chargé en sous-main par la \letgutcls{}). Le niveau de
+ profondeur est par défaut celui des sections mais cela peut être modifié en
+ la faisant précéder de la commande \docAuxCommand{etocsetnexttocdepth} (dont
+ l'argument est l'une des valeurs possibles de la clé \refKey{detailedtoc}).
+ \end{dbremark}
+ \end{docKey}
+}
\begin{docKey}[][doc new={2023-01-14}]{reverse-files-attachement}{}{\valinitdef[pas de valeur]}
Si, et seulement si, la \lettre{} est à la fois en version pour les lecteurs
Modified: trunk/Master/texmf-dist/source/lualatex/letgut/letgut.org
===================================================================
--- trunk/Master/texmf-dist/source/lualatex/letgut/letgut.org 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/source/lualatex/letgut/letgut.org 2024-10-23 20:21:42 UTC (rev 72629)
@@ -54,7 +54,7 @@
% This field contains the version of the package.
% The value is optional.
% The value is restricted to 32 characters.
- \version{0.9.10 2024-10-07}
+ \version{0.9.11 2024-10-23}
% -------------------------------------------------------------------------
% This field contains the name of the author(s).
% The value is optional.
@@ -213,7 +213,11 @@
## [Unreleased]
## [0.9.10] - 2024-10-07
+ ### Fixed
+ - Bibliographic files not attached to the PDF
+ ## [0.9.10] - 2024-10-07
+
### Changed
- Multiple rebuses handled
- Paper clips (links to source files of the articles) not in the magin anymore and separated by spaces
@@ -350,7 +354,7 @@
Release
-------
-2024-10-07 v0.9.10
+2024-10-23 v0.9.11
Development
-----------
@@ -503,8 +507,8 @@
#+begin_src latex
\ProvidesExplClass{letgut}
- {2024-10-07}
- {0.9.10}
+ {2024-10-23}
+ {0.9.11}
{
Class for the newsletter “The GUTenberg Letter”
}
@@ -1411,7 +1415,18 @@
\phantomsection
\__letgut_old_printbibliography[#1]
\bool_if:NT \g__letgut_included_files_attached_bool {
- \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {\seq_gput_right:Nn \g__letgut_included_files_seq {#1}}
+ \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {
+ \seq_gput_right:Nn \g__letgut_included_files_seq {
+ \attachfile[
+ description={
+ Fichier~ bibliographique~ utilisé~ dans~ le~
+ présent~ article~ (fichier~ `\tl_to_str:n{##1}`)
+ },
+ mimetype=application/x-bib
+ ]
+ {\tl_to_str:n{##1}}
+ }
+ }
}
}
#+end_src
@@ -3489,42 +3504,53 @@
extensions of the ~graphicx~ package.
#+begin_src latex
- \clist_map_inline:Nn \Gin at extensions {
- \file_if_exist:nT{\l__letgut_bookreview_frontcover_tl##1}{
- \bool_set_true:N \l__letgut_tmpa_bool
- \clist_map_break:
- }
- }
- \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]{
- \l__letgut_bookreview_frontcover_tl
- }
- }
+ \clist_map_inline:Nn \Gin at extensions {
+ \file_if_exist:nT{\l__letgut_bookreview_frontcover_tl##1}{
+ \bool_set_true:N \l__letgut_tmpa_bool
+ \clist_map_break:
+ }
+ }
+ \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]{
+ \l__letgut_bookreview_frontcover_tl
}
}
- }{
- \msg_error:nnVV
- {letgut}
- {frontcover-file-not-found}
- {\g__letgut_bookreview_title_tl}
- {\l__letgut_bookreview_frontcover_tl}
}
}
- \noindent
- \textsf{\fullcite{\g__letgut_bookreview_bibkey_tl}}
- \tl_if_empty:NF \g__letgut_bookreview_price_tl{
- .\c_space_tl\g__letgut_bookreview_price_tl\c_space_tl €
- }
- \par
}{
+ \msg_error:nnVV
+ {letgut}
+ {frontcover-file-not-found}
+ {\g__letgut_bookreview_title_tl}
+ {\l__letgut_bookreview_frontcover_tl}
+ }
+ }
+ \noindent
+ \textsf{\fullcite{\g__letgut_bookreview_bibkey_tl}}
+ \tl_if_empty:NF \g__letgut_bookreview_price_tl{
+ .\c_space_tl\g__letgut_bookreview_price_tl\c_space_tl €
+ }
+ \par
+ }{
\exp_args:NV \author{\g__letgut_bookreview_reviewer_tl}
\bool_if:NT \g__letgut_included_files_attached_bool {
- \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {\seq_gput_right:Nn \g__letgut_included_files_seq {##1}}
+ \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {
+ \seq_gput_right:Nn \g__letgut_included_files_seq {
+ \attachfile[
+ description={
+ Fichier~ bibliographique~ utilisé~ dans~ le~
+ présent~ article~ (fichier~ `\tl_to_str:n{##1}`)
+ },
+ mimetype=application/x-bib
+ ]
+ {\tl_to_str:n{##1}}
+ }
+ }
}
}
#+end_src
@@ -3806,28 +3832,40 @@
ressources to the \pdf{} (if desired, otherwise, use the starred version).
#+begin_src latex
- \NewCommandCopy {\__letgut_orig_addbibresource} {\addbibresource}
- \cs_new_protected:Npn \__letgut_addbibresource:nnn #1 #2 #3
+ \cs_new:Nn \__letgut_extract_file_for:nn
{
- \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}%
+ \seq_clear:N \g__letgut_added_bib_resources_seq
+ \regex_extract_all:nnNT
+ {
+ \c{ #1 } \[?.*?\]? \{ ( .*? ) \}
+ }
+ {
+ #2
+ }
+ \g__letgut_added_bib_resources_seq
+ {
+ \seq_map_indexed_inline:Nn \g__letgut_added_bib_resources_seq {
+ \int_if_odd:nT {##1}
+ {
+ \seq_gset_item:Nnn \g__letgut_added_bib_resources_seq {##1} {}
}
}
+ \seq_gremove_duplicates:N \g__letgut_added_bib_resources_seq
+ \seq_gpop:NN \g__letgut_added_bib_resources_seq \l_tmpa_tl
}
+ }
+
+ \NewCommandCopy {\__letgut_orig_addbibresource} {\addbibresource}
+ \cs_new_protected:Npn \__letgut_addbibresource:nnn #1 #2 #3
+ {
\__letgut_orig_addbibresource[#2]{#3}
}
\RenewDocumentCommand {\addbibresource} { s O{} m } {
\__letgut_addbibresource:nnn {#1} {#2} {#3}
}
+ \AddToHookWithArguments{cmd/sa at gobble/before}{
+ \__letgut_extract_file_for:nn { addbibresource }{ #1 }
+ }
#+end_src
*** Added acronym definitions file attached to the PDF
@@ -4093,7 +4131,7 @@
}
\cs_new_protected:Npn \__letgut_title_code_result_box:n #1
{
- Exemple~ \thetcbcounter
+ Exemple\nobreakspace\thetcbcounter
\tl_if_empty:NF {#1} { \hypersetup{hidelinks} \c_space_tl :~#1 }
}
\cs_new_protected:Nn \__letgut_on_callout_page:nn
@@ -4677,7 +4715,7 @@
- the books advertisements.
#+begin_src latex :tangle ../../../tex/lualatex/letgut/letgut.lbx :exports both
-\ProvidesFile{letgut.lbx}[2024-10-07 v0.9.10 letgut localization]
+\ProvidesFile{letgut.lbx}[2024-10-23 v0.9.11 letgut localization]
\InheritBibliographyExtras{french}
\DeclareBibliographyStrings{
inherit = {french},
@@ -4691,7 +4729,7 @@
create the corresponding new entry).
#+begin_src latex :tangle ../../../tex/lualatex/letgut/letgut.dbx :exports both
- \ProvidesFile{letgut.dbx}[2024-10-07 v0.9.10 letgut data model macros]
+ \ProvidesFile{letgut.dbx}[2024-10-23 v0.9.11 letgut data model macros]
\DeclareBibliographyDriver{bookreview}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
@@ -4746,7 +4784,7 @@
We provide a specific ~biblatex~ citation style .
#+begin_src latex :tangle ../../../tex/lualatex/letgut/letgut.cbx :exports both
- \ProvidesFile{letgut.cbx}[2024-10-07 v0.9.10 letgut base citation style]
+ \ProvidesFile{letgut.cbx}[2024-10-23 v0.9.11 letgut base citation style]
\RequireCitationStyle{numeric}
#+end_src
Modified: trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.cbx
===================================================================
--- trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.cbx 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.cbx 2024-10-23 20:21:42 UTC (rev 72629)
@@ -1,4 +1,4 @@
-\ProvidesFile{letgut.cbx}[2024-10-07 v0.9.10 letgut base citation style]
+\ProvidesFile{letgut.cbx}[2024-10-23 v0.9.11 letgut base citation style]
\RequireCitationStyle{numeric}
\DeclareFieldFormat[bookreview]{title}{\textbf{\emph{#1}}}
\renewbibmacro*{title}{%
Modified: trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.cls
===================================================================
--- trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.cls 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.cls 2024-10-23 20:21:42 UTC (rev 72629)
@@ -55,8 +55,8 @@
}
\ExplSyntaxOff
\ProvidesExplClass{letgut}
-{2024-10-07}
-{0.9.10}
+{2024-10-23}
+{0.9.11}
{
Class for the newsletter “The GUTenberg Letter”
}
@@ -566,7 +566,18 @@
\phantomsection
\__letgut_old_printbibliography[#1]
\bool_if:NT \g__letgut_included_files_attached_bool {
- \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {\seq_gput_right:Nn \g__letgut_included_files_seq {#1}}
+ \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {
+ \seq_gput_right:Nn \g__letgut_included_files_seq {
+ \attachfile[
+ description={
+ Fichier~ bibliographique~ utilisé~ dans~ le~
+ présent~ article~ (fichier~ `\tl_to_str:n{##1}`)
+ },
+ mimetype=application/x-bib
+ ]
+ {\tl_to_str:n{##1}}
+ }
+ }
}
}
\defbibheading{title}[\refname]{%
@@ -1900,41 +1911,52 @@
}
}{
\clist_map_inline:Nn \Gin at extensions {
- \file_if_exist:nT{\l__letgut_bookreview_frontcover_tl##1}{
- \bool_set_true:N \l__letgut_tmpa_bool
- \clist_map_break:
- }
- }
- \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]{
- \l__letgut_bookreview_frontcover_tl
- }
- }
+ \file_if_exist:nT{\l__letgut_bookreview_frontcover_tl##1}{
+ \bool_set_true:N \l__letgut_tmpa_bool
+ \clist_map_break:
+ }
+}
+\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]{
+ \l__letgut_bookreview_frontcover_tl
}
}
- }{
- \msg_error:nnVV
- {letgut}
- {frontcover-file-not-found}
- {\g__letgut_bookreview_title_tl}
- {\l__letgut_bookreview_frontcover_tl}
}
}
- \noindent
- \textsf{\fullcite{\g__letgut_bookreview_bibkey_tl}}
- \tl_if_empty:NF \g__letgut_bookreview_price_tl{
- .\c_space_tl\g__letgut_bookreview_price_tl\c_space_tl €
- }
- \par
}{
+ \msg_error:nnVV
+ {letgut}
+ {frontcover-file-not-found}
+ {\g__letgut_bookreview_title_tl}
+ {\l__letgut_bookreview_frontcover_tl}
+}
+}
+\noindent
+\textsf{\fullcite{\g__letgut_bookreview_bibkey_tl}}
+\tl_if_empty:NF \g__letgut_bookreview_price_tl{
+ .\c_space_tl\g__letgut_bookreview_price_tl\c_space_tl €
+}
+\par
+}{
\exp_args:NV \author{\g__letgut_bookreview_reviewer_tl}
\bool_if:NT \g__letgut_included_files_attached_bool {
- \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {\seq_gput_right:Nn \g__letgut_included_files_seq {##1}}
+ \seq_map_inline:Nn \g__letgut_added_bib_resources_seq {
+ \seq_gput_right:Nn \g__letgut_included_files_seq {
+ \attachfile[
+ description={
+ Fichier~ bibliographique~ utilisé~ dans~ le~
+ présent~ article~ (fichier~ `\tl_to_str:n{##1}`)
+ },
+ mimetype=application/x-bib
+ ]
+ {\tl_to_str:n{##1}}
+ }
+ }
}
}
\DeclareRobustCommand*\LKey[1]{%
@@ -2116,28 +2138,40 @@
\RenewDocumentCommand {\includegraphics} {s O{} m } {
\__letgut_includegraphics:nnn {#1} {#2} {#3}
}
-\NewCommandCopy {\__letgut_orig_addbibresource} {\addbibresource}
-\cs_new_protected:Npn \__letgut_addbibresource:nnn #1 #2 #3
+\cs_new:Nn \__letgut_extract_file_for:nn
{
- \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}%
+ \seq_clear:N \g__letgut_added_bib_resources_seq
+ \regex_extract_all:nnNT
+ {
+ \c{ #1 } \[?.*?\]? \{ ( .*? ) \}
+ }
+ {
+ #2
+ }
+ \g__letgut_added_bib_resources_seq
+ {
+ \seq_map_indexed_inline:Nn \g__letgut_added_bib_resources_seq {
+ \int_if_odd:nT {##1}
+ {
+ \seq_gset_item:Nnn \g__letgut_added_bib_resources_seq {##1} {}
}
}
+ \seq_gremove_duplicates:N \g__letgut_added_bib_resources_seq
+ \seq_gpop:NN \g__letgut_added_bib_resources_seq \l_tmpa_tl
}
+}
+
+\NewCommandCopy {\__letgut_orig_addbibresource} {\addbibresource}
+\cs_new_protected:Npn \__letgut_addbibresource:nnn #1 #2 #3
+{
\__letgut_orig_addbibresource[#2]{#3}
}
\RenewDocumentCommand {\addbibresource} { s O{} m } {
\__letgut_addbibresource:nnn {#1} {#2} {#3}
}
+\AddToHookWithArguments{cmd/sa at gobble/before}{
+ \__letgut_extract_file_for:nn { addbibresource }{ #1 }
+}
\bool_if:NT \g__letgut_included_files_attached_bool {
\tl_const:Nn \c__letgut_acronyms_file_attached_tl {
\attachfile[
@@ -2282,7 +2316,7 @@
}
\cs_new_protected:Npn \__letgut_title_code_result_box:n #1
{
- Exemple~ \thetcbcounter
+ Exemple\nobreakspace\thetcbcounter
\tl_if_empty:NF {#1} { \hypersetup{hidelinks} \c_space_tl :~#1 }
}
\cs_new_protected:Nn \__letgut_on_callout_page:nn
Modified: trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.dbx
===================================================================
--- trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.dbx 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.dbx 2024-10-23 20:21:42 UTC (rev 72629)
@@ -1,4 +1,4 @@
-\ProvidesFile{letgut.dbx}[2024-10-07 v0.9.10 letgut data model macros]
+\ProvidesFile{letgut.dbx}[2024-10-23 v0.9.11 letgut data model macros]
\DeclareBibliographyDriver{bookreview}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
Modified: trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.lbx
===================================================================
--- trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.lbx 2024-10-23 06:54:27 UTC (rev 72628)
+++ trunk/Master/texmf-dist/tex/lualatex/letgut/letgut.lbx 2024-10-23 20:21:42 UTC (rev 72629)
@@ -1,4 +1,4 @@
-\ProvidesFile{letgut.lbx}[2024-10-07 v0.9.10 letgut localization]
+\ProvidesFile{letgut.lbx}[2024-10-23 v0.9.11 letgut localization]
\InheritBibliographyExtras{french}
\DeclareBibliographyStrings{
inherit = {french},
More information about the tex-live-commits
mailing list.