texlive[76035] Master/texmf-dist: jsonparse (12aug25)
commits+karl at tug.org
commits+karl at tug.org
Tue Aug 12 22:17:42 CEST 2025
Revision: 76035
https://tug.org/svn/texlive?view=revision&revision=76035
Author: karl
Date: 2025-08-12 22:17:42 +0200 (Tue, 12 Aug 2025)
Log Message:
-----------
jsonparse (12aug25)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/jsonparse/README.md
trunk/Master/texmf-dist/doc/latex/jsonparse/jsonparse-doc.pdf
trunk/Master/texmf-dist/doc/latex/jsonparse/jsonparse-doc.tex
trunk/Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty
Modified: trunk/Master/texmf-dist/doc/latex/jsonparse/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/jsonparse/README.md 2025-08-12 20:16:14 UTC (rev 76034)
+++ trunk/Master/texmf-dist/doc/latex/jsonparse/README.md 2025-08-12 20:17:42 UTC (rev 76035)
@@ -1,4 +1,4 @@
-
+

Modified: trunk/Master/texmf-dist/doc/latex/jsonparse/jsonparse-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/jsonparse/jsonparse-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/jsonparse/jsonparse-doc.tex 2025-08-12 20:16:14 UTC (rev 76034)
+++ trunk/Master/texmf-dist/doc/latex/jsonparse/jsonparse-doc.tex 2025-08-12 20:17:42 UTC (rev 76035)
@@ -11,8 +11,8 @@
% This work has the LPPL maintenance status `maintained'.
%
\documentclass[a4paper]{article}
-\def\jsonparsefileversion{1.6.3}
-\def\jsonparsefiledate{20 June 2025}
+\def\jsonparsefileversion{1.6.5}
+\def\jsonparsefiledate{11 August 2025}
\usepackage[T1]{fontenc}
\usepackage{Alegreya}
@@ -306,7 +306,8 @@
%\changes{v1.5.1}{2025/05/05}{Bug fixes.}
%\changes{v1.5.2}{2025/05/06}{Bug fixes.}
\changes{v1.6.0}{2025/05/10}{Renaming of L3 functions. Bug fixes.}
-%\changes{v1.6.1}{2025/06/03}{Bug fixes. FAQ in Doc.}
+%\changes{v1.6.1}{2025/06/03}{Bug fixes. FAQ in documentation.}
+%\changes{v1.6.5}{2025/08/11}{Bug fixes.}
\begin{document}
\vspace*{-1cm}
@@ -887,7 +888,7 @@
replace/|carriage return|={<token list>}
replace/|horizontal tab|={<token list>}
\end{macrodef}
-These keys can be used to set the replacement for the JSON escape sequences \macro{\b} (backspace), \macro{\f} (formfeed), \macro{\n} (linefeed), \macro{\r} (carriage return) and \macro{\t} (horizontal tab). The default replacement is a space in each case. These replacements take place only during typesetting.
+These keys can be used to set the replacement for the JSON escape sequences \macro{\b} (backspace), \macro{\f} (formfeed), \macro{\n} (linefeed), \macro{\r} (carriage return) and \macro{\t} (horizontal tab). The default replacement is a space in each case. These replacements take place only during typesetting. They only take effect if \macro{rescan} is active.
\warning Note that commands such as \macro{\par} needs to be masked (for example by using a copy created via \macro{\let}) in order to be used as replacement.
Modified: trunk/Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty 2025-08-12 20:16:14 UTC (rev 76034)
+++ trunk/Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty 2025-08-12 20:17:42 UTC (rev 76035)
@@ -10,7 +10,7 @@
%
% This work has the LPPL maintenance status `maintained'.
%
-\ProvidesExplPackage {jsonparse} {2025-06-20} {1.6.3}
+\ProvidesExplPackage {jsonparse} {2025-08-11} {1.6.5}
{A handy way to parse, store and access JSON data from files or strings in LaTeX documents}
\msg_new:nnn { jsonparse } { old-kernel } {
@@ -317,7 +317,7 @@
% ===
-\exp_args_generate:n { NoeV , Noee , NoeeVV }
+\exp_args_generate:n { NoeV , Noeo , NoeeVV }
\cs_generate_variant:Nn \file_input:n { e }
\cs_generate_variant:Nn \tl_gset:Nn { Ne , ce }
@@ -384,6 +384,8 @@
\tl_new:N \l__jsonparse_object_array_val_tl
\tl_new:N \l__jsonparse_remainder_tl
+\tl_new:N \l__jsonparse_value_temp_tl
+
\bool_new:N \l__jsonparse_parse_array_bool
\bool_new:N \l__jsonparse_parse_object_bool
\bool_new:N \l__jsonparse_parse_key_bool
@@ -810,8 +812,8 @@
}
}
-\exp_last_unbraced:NNo
- \cs_new_protected:Npn \__jsonparse_parse_object_begin:w
+\exp_last_unbraced:NNo
+ \cs_new_protected:Npn \__jsonparse_parse_object_begin:w
\c_left_brace_str #1 \q_stop {
\__jsonparse_array_key_set:
% object begin
@@ -836,8 +838,8 @@
\__jsonparse_parse_remainder:n {#1}
}
-\exp_last_unbraced:NNo
- \cs_new_protected:Npn \__jsonparse_parse_object_end:w
+\exp_last_unbraced:NNo
+ \cs_new_protected:Npn \__jsonparse_parse_object_end:w
\c_right_brace_str #1 \q_stop {
\tl_if_empty:NF \l__jsonparse_val_tl {
\bool_if:NF \l__jsonparse_parse_key_bool {
@@ -1423,26 +1425,14 @@
}
\cs_generate_variant:Nn \jsonparse_gput_right_rescan:Nn { Ne }
-\cs_new_protected:Npn \__jsonparse_parse_value_aux:nnnnn #1#2#3#4#5 {
+\cs_new_protected:Npn \__jsonparse_parse_value_aux:nnn #1#2#3 {
\tl_if_empty:nTF {#1} {
- \bool_if:nTF {#3} {
- \jsonparse_rescan:e { \prop_item:Ne #4 {#5} }
- } {
- \prop_item:Ne #4 {#5}
- }
+ #3
} {
- \bool_if:nTF {#3} {
- \bool_if:nTF {#2} {
- \jsonparse_gset_rescan:Ne #1 { \prop_item:Ne #4 {#5} }
- } {
- \jsonparse_set_rescan:Ne #1 { \prop_item:Ne #4 {#5} }
- }
+ \bool_if:nTF {#2} {
+ \tl_gset:Nn #1 {#3}
} {
- \bool_if:nTF {#2} {
- \tl_gset:Ne #1 { \prop_item:Ne #4 {#5} }
- } {
- \tl_set:Ne #1 { \prop_item:Ne #4 {#5} }
- }
+ \tl_set:Nn #1 {#3}
}
}
}
@@ -1453,7 +1443,7 @@
\keys_set_known:nnnN { jsonparse / typeset } {#1}
{ jsonparse / typeset } \l__jsonparse_unused_keys_clist
\keys_set_known:nonN { jsonparse / set } { \l__jsonparse_unused_keys_clist }
- { jsonparse / set }\l__jsonparse_unused_keys_clist
+ { jsonparse / set }
\__jsonparse_warning_unused_keys:
\tl_if_empty:NF \l__jsonparse_set_store_in_tl {
\exp_last_unbraced:No \tl_if_exist:NF { \l__jsonparse_set_store_in_tl } {
@@ -1460,11 +1450,20 @@
\exp_last_unbraced:No \tl_new:N { \l__jsonparse_set_store_in_tl }
}
}
- \exp_args:NNoee
+ \bool_if:NTF \l__jsonparse_rescan_bool {
+ \jsonparse_set_rescan:Ne \l__jsonparse_value_temp_tl {
+ \prop_item:Ne #2 {#3}
+ }
+ } {
+ \tl_set:Ne \l__jsonparse_value_temp_tl {
+ \prop_item:Ne #2 {#3}
+ }
+ }
+ \exp_args:NNoeo
\group_end:
- \__jsonparse_parse_value_aux:nnnnn { \l__jsonparse_set_store_in_tl }
- { \bool_if_p:N \l__jsonparse_set_global_bool } { \bool_if_p:N \l__jsonparse_rescan_bool }
- {#2} {#3}
+ \__jsonparse_parse_value_aux:nnn { \l__jsonparse_set_store_in_tl }
+ { \bool_if_p:N \l__jsonparse_set_global_bool }
+ { \l__jsonparse_value_temp_tl }
}
% backward compatibility
More information about the tex-live-commits
mailing list.