From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.text.pandoc/31995 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: BPJ Newsgroups: gmane.text.pandoc Subject: Re: help with lua filter "Replacing placeholders with their metadata value" Date: Sat, 14 Jan 2023 22:35:10 +0100 Message-ID: References: <8db3a838-8431-4b75-aac1-94bc29fac675n@googlegroups.com> Reply-To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="0000000000008ab95005f24020a6" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10493"; mail-complaints-to="usenet@ciao.gmane.io" To: pandoc-discuss Original-X-From: pandoc-discuss+bncBCWMVYEK54FRBGWARSPAMGQEE2HN6EA-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org Sat Jan 14 22:35:27 2023 Return-path: Envelope-to: gtp-pandoc-discuss@m.gmane-mx.org Original-Received: from mail-ua1-f64.google.com ([209.85.222.64]) by ciao.gmane.io with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pGoBS-0002Wi-PN for gtp-pandoc-discuss@m.gmane-mx.org; Sat, 14 Jan 2023 22:35:26 +0100 Original-Received: by mail-ua1-f64.google.com with SMTP id n14-20020a9f314e000000b004114b0c125fsf10666050uab.8 for ; Sat, 14 Jan 2023 13:35:26 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1673732125; cv=pass; d=google.com; s=arc-20160816; b=nmX3C6TeUHDWqnb3LcoO6v1nldKDNKUCchCBgjfK45huLdaDxbHVAvCWN4XW1dghRH 0SbBIrp82ZOlOws9R8beGhkGJGMpQ9zYjOd21gUgKjVjVEICASBVqBlruxxaeYf9EQZi rSX8TjGCEhWqZqTzGto7/9Jv+6wjaOL6w3NlaDHAEtvGqPjyrcsvWzveelNIA0Fod8os GXL6cfjrsk3kLbOVRVJO7oHmFimGiKcxvSXAQJPm39i+ZJ2IrvWy+dSRa4IiAjtSyJVX 41xI+BG9ghJQ5B7G2reHGqawr0GLmGqpEj/xgGHnXquB6J+6op01SyST6GrIb/qSAEWR ao/Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:to:subject:message-id:date :from:in-reply-to:references:mime-version:sender:dkim-signature :dkim-signature; bh=iliDOZDBPhfjz9HkHfLTmY+RzZ2ZJHddwUas7PHiG9Q=; b=AEVVvliS1LqRl3P75KM9dcT4OpzsISJEJF6Uv7uvxMNScHozne1XMiQi5Y75PblpuS r3wGyYJrZeAoGqo5aRC/V6AB/TzbpHBlk7gje9arGwMuW++NEMMx/AlFvdU+GL5Rq+Xw dwJa9BkvyN/inq3D52CK6minwxmXKq9WBYeg1bjAvIjMFjxp0Fy3nXQMK9c34OzqysaA uqCoaT8yMQNVvbq03PhDiNb3tVxUYQxplnJbtbXwS2S9dNZz0PKs/R7h0TJfvycTSgrJ Kqw/vhTj1fW5t6HTZJ6WJZaaf8n12XSicCz5Z+LQtWgThko7pBHR4evVrwuiaWZjGN8H 9xEg== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=FM2n1op5; spf=pass (google.com: domain of melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org designates 2607:f8b0:4864:20::b2b as permitted sender) smtp.mailfrom=melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20210112; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:to:subject :message-id:date:from:in-reply-to:references:mime-version:sender :from:to:cc:subject:date:message-id:reply-to; bh=iliDOZDBPhfjz9HkHfLTmY+RzZ2ZJHddwUas7PHiG9Q=; b=aX5uMMf5y4pDe76GBQuv2UabYYQGgpJE/TAt5QfGuWAIkQVTsUFUScAlWzD+XliNQL 7nokkh+axL2yPmCfSo35N8hkpYXj4CIyleelliITlb3nXV6Tx/1U2FaUL6LDTB3vyhKR EqBbRk/3rHVffFCITxz2PBAIldwUy1xajgIOgvpcD+HuNQhWrZ33BD3vl6SK9KllAkj+ 62Wmd5EV02hm7VfSZfViOpx2y3r5fkCu0R8y3cwgWlGaOjIUneaYBJu5f31VQEhg3IFW KCUuAK+1ch8izmxRTg5NJGJ//um3qY/qFjSMTupu15+V2YwsBTDo07FP6TZOSoqXnUqW uyGQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:to:subject :message-id:date:from:in-reply-to:references:mime-version:from:to:cc :subject:date:message-id:reply-to; bh=iliDOZDBPhfjz9HkHfLTmY+RzZ2ZJHddwUas7PHiG9Q=; b=UPkKTHErrqVVAlojejZt5VXi2BzFebUVVIuvVPbD+Xn1r6a5no7qwkR7UBDPpqfSDg mUQANa2fE4IDTJ4geRJuLs6g86534+SCROgWYo1OsJsUUSO1BC4Sw7NV0n3J7fbCHByl VpXF8FNnrA1RvqkfuqioNOohPBNLdbiJQmg4VsPPlGZhRtiMcLCqlCxQR2YTT3Jvldfi cMTScRlU5J4JG03ZFBD93nFG4J96tPao+AndKdsWWm6zkSLjHoq/Km3dDogwD2Nz0bTs HtbeFUgjNGS5i8lbtkmIPqRizDXw7ML/wUP37f4J6NFnU0ATO2tZNQ7WdnaH430gql0d sSwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:to:subject :message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:sender:from:to:cc:subject:date:message-id :reply-to; bh=iliDOZDBPhfjz9HkHfLTmY+RzZ2ZJHddwUas7PHiG9Q=; b=DDBlzqMpy7Px9Py0j2PP/7gu7XuIKKSm3dieNiWzbcLJd/Jq4B7mIUMLxFK59FYISP mrbU5MIf6ggflL2jQCcuoDrYuFR4phf1YXMCro3hAx1SwJZByWIK3YTxBY46culkfl3F GPR22w3cAMBuIbRBeoZ22QCcp43p0aqiBdU/UxoaZcDiNgc2Ul31GtAl+1AmFQeuQfde ozqcHNIrGr0clhYr17pvOSwoimQ5xN6tLL3mksgK+pu+aPe+CfbjA6PJRaS9JQVr4gSt o0gyG6x352duRsxdQn+sAxKqTS71hmmoAyQQw+kdpdjfyM Original-Sender: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org X-Gm-Message-State: AFqh2kq2e7/bMvRO2EjYU4vHBpXI7l9020pVgWKBkQC80aXgEGYm/8+z iVl1h+UKkFJgdVAt+We5N7s= X-Google-Smtp-Source: AMrXdXvOtWprtLo1BqWxw9xlz0KfEMUscDlUE4o0e/eF0n+NEp2NjAGXZG0cf8eD85wVJNfSsYKfoQ== X-Received: by 2002:a67:fd76:0:b0:3ce:c0cb:ff4 with SMTP id h22-20020a67fd76000000b003cec0cb0ff4mr6831733vsa.33.1673732125708; Sat, 14 Jan 2023 13:35:25 -0800 (PST) X-BeenThere: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org Original-Received: by 2002:a1f:1b16:0:b0:3ab:c172:98c8 with SMTP id b22-20020a1f1b16000000b003abc17298c8ls1476964vkb.2.-pod-prod-gmail; Sat, 14 Jan 2023 13:35:22 -0800 (PST) X-Received: by 2002:a1f:300d:0:b0:3d1:c2e0:d554 with SMTP id w13-20020a1f300d000000b003d1c2e0d554mr41227663vkw.15.1673732122115; Sat, 14 Jan 2023 13:35:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673732122; cv=none; d=google.com; s=arc-20160816; b=mLCMp+tCFiVToH76mSrPGDjZ7ebJnmic9VFarl3SNE5Lgk09NexE9ffOgJsGWzTbdY xYLS0qZHA2xhDduFnNSiu1Z234Lc9zwQdcKA9NCPwutab11980Lp0YwK0lFwL4TEJPlm 64SQDgHHMD2OvsNeizokaFv9SpBkMDwIjY0eszYUPzsisvdKkW5/dHa2tHd2Zv0lMDSe BJ4PsyGalx9FBuVtYWc/Fm8/lU6VngMzHlbmu3KG2LmVVeeuagasDwNGOrg13iA+xHU5 rSjtYMb1nszj/IEutE8Ry92Qwn6Iia3+UAHyeP47LggGhuIF38OapWOwl4xNm7JXBbsf DvoA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=TfBGdyC7mf5MC41bX6v3YSM9V3GNtJLGXbLE1gKWW48=; b=Gr9OBxunJT87N66iZagHf/XCu1k6JNTndgXrzYoK1/kh0eB3wFOWQ+NyHOOkz3It59 MLjxpdAGDWj9hVJOT7T/TnWw7sMm933pnCpnTOYG3AfHI3LuAIGDQKawP0RxvuQjqVQi 2PB0D1d2XDnZWkdWuyEizF1SxxMFwSkYibkWN2f11HTrYJc/59w4jWoJ55ero6PevO/F KTs8viimiScE75bUoC2FQJMkUadgAoO+XCO8UvoCqqq0hvTxuzdR3JR0x8+hIn+dW5DL 42R6QVkLWdDGTqDJ4Set9h5v/k9NfZ1FLeADVSnmocELcv6S+Aznzpi4qxsDqZ8MKMx5 9Whw== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=FM2n1op5; spf=pass (google.com: domain of melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org designates 2607:f8b0:4864:20::b2b as permitted sender) smtp.mailfrom=melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Original-Received: from mail-yb1-xb2b.google.com (mail-yb1-xb2b.google.com. [2607:f8b0:4864:20::b2b]) by gmr-mx.google.com with ESMTPS id h63-20020a1f9e42000000b003bc9f1cd034si1783281vke.3.2023.01.14.13.35.22 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 14 Jan 2023 13:35:22 -0800 (PST) Received-SPF: pass (google.com: domain of melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org designates 2607:f8b0:4864:20::b2b as permitted sender) client-ip=2607:f8b0:4864:20::b2b; Original-Received: by mail-yb1-xb2b.google.com with SMTP id 203so26301500yby.10 for ; Sat, 14 Jan 2023 13:35:22 -0800 (PST) X-Received: by 2002:a25:3c87:0:b0:6f0:d54a:8f2d with SMTP id j129-20020a253c87000000b006f0d54a8f2dmr8789634yba.66.1673732121321; Sat, 14 Jan 2023 13:35:21 -0800 (PST) In-Reply-To: X-Original-Sender: melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=FM2n1op5; spf=pass (google.com: domain of melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org designates 2607:f8b0:4864:20::b2b as permitted sender) smtp.mailfrom=melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Precedence: list Mailing-list: list pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org; contact pandoc-discuss+owners-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org List-ID: X-Google-Group-Id: 1007024079513 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , Xref: news.gmane.io gmane.text.pandoc:31995 Archived-At: --0000000000008ab95005f24020a6 Content-Type: multipart/alternative; boundary="0000000000008ab94a05f24020a4" --0000000000008ab94a05f24020a4 Content-Type: text/plain; charset="UTF-8" I have written a README for my filter (both included in the attached zip file) which should answer most questions about my approach. Den fre 13 jan. 2023 01:14Howard Borchew skrev: > > > On Thursday, January 12, 2023 at 9:36:04 AM UTC-8 BPJ wrote: > > > Den tors 12 jan. 2023 18:00Howard Borchew skrev: > Hello, > > There is an example lua filter in pandoc.org called: > "Replacing placeholders with their metadata value" > > This does exactly what I need but for one exception: > If I set a metadata value on the pandoc command line > with --metadata=KEY[:VALUE] > then the placeholder is not replaced with anything and not the command > line VALUE > using this example lua filter. > > Probably because if you set the metadata value on the command line it is > just a raw string, not a list of inlines as the filter and pandoc.Span > expect. > > > > Is there an easy fix for this? > > Set the variables in a metadata block in the document or in a metadata > file. > > > > The document is under revision control and I want to change placeholders > from the command line at the time of running pandoc. > > > I am pasting the example from https://pandoc.org/lua-filters.html below. > > Thanks, > Howard > ---- > local vars = {} > > function get_vars (meta) > for k, v in pairs(meta) do > if pandoc.utils.type(v) == 'Inlines' then > vars["%" .. k .. "%"] = {table.unpack(v)} > end > end > end > > It could be expanded to wrap a raw string value in a Str and an Inlines, > and to convert a Blocks value to an Inlines with > pandoc.utils.blocks_to_inlines. > > > I don't quite get your suggestion: I presume the list gets to get_vars > through the argument meta and meta is iterated over in key(k)/value(v) > pairs in the for-do loop. > Only when passing the value(v) type=="Inlines" check does a placeholder > %key% and value(v) get added to the vars table. > While iterating over pairs(meta) would the for-do loop encounter the > --metadata KEY[VALUE] items that were set by the command line switch? > Is it then simply a matter to pass that type check and add it to vars > (type is raw string keyword?). > > > > function replace (el) > if vars[el.text] then > return pandoc.Span(vars[el.text]) > else > return el > end > end > > return {{Meta = get_vars}, {Str = replace}} > > My take is to use a Code or CodeBlock with class .var and the variable > name as text. More to type but more robust. > > > If I can get the command line KEY[VALUE] table items into vars above, I > don't think this replace function would need to change. > > Can you show some examples what you have in mind? Code or CodeBlock? > > -- > You received this message because you are subscribed to the Google Groups > "pandoc-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org > To view this discussion on the web visit > https://groups.google.com/d/msgid/pandoc-discuss/8db3a838-8431-4b75-aac1-94bc29fac675n%40googlegroups.com > > . > > -- > You received this message because you are subscribed to the Google Groups > "pandoc-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org > To view this discussion on the web visit > https://groups.google.com/d/msgid/pandoc-discuss/d1590311-ccb2-4e57-b518-be8c14c49ba8n%40googlegroups.com > > . > -- You received this message because you are subscribed to the Google Groups "pandoc-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/CADAJKhB50pgQNQ7yqeVCHC1JO9RovX-ARtHMTYKJM-H9XPfsNQ%40mail.gmail.com. --0000000000008ab94a05f24020a4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I have written a README for my filter (both included in t= he attached zip file) which should answer most questions about my approach.=


Den fre 13 jan. 2023 01:14Howard Borchew <= hborchew-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> skrev:
=


On Thur= sday, January 12, 2023 at 9:36:04 AM UTC-8 BPJ wrote:


Den tors 12 jan. 2023 18:00H= oward Borchew <hbor...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> skrev:
Hello,

There is an example lua filter in pandoc.org = called:
"Replacing placeholders with their metadata value&qu= ot;

This does exactly what I need but for one exce= ption:
If I set a metadata value on the pandoc command line with= =C2=A0--metadata=3DKEY[:VALUE]
then the placeholder is not replac= ed with anything and not the command line VALUE
using this exampl= e lua filter.

Probably because if you set the meta= data value on the command line it is just a raw string, not a list of inlin= es as the filter and pandoc.Span expect.


<= span>

Is there an easy fix for this?

Set the variables in a metadata block in the document or in a me= tadata file.


=C2=A0

Thanks,
Howard
----
local vars = =3D {}

function get_vars (meta)
=C2=A0 for k, v in pairs(meta) do=
=C2=A0 =C2=A0 if pandoc.utils.type(v) =3D=3D 'Inlines' then
= =C2=A0 =C2=A0 =C2=A0 vars["%" .. k .. "%"] =3D {table.u= npack(v)}
=C2=A0 =C2=A0 end
=C2=A0 end
end
<= /div>

It could be expanded to wrap a raw string value in a Str and an Inlin= es, and to convert a Blocks value to an Inlines with pandoc.utils.blocks_to= _inlines.


I don't quite get your suggestion: I presume t= he list gets to get_vars through the argument meta and meta is iterated ove= r in key(k)/value(v) pairs in the for-do loop.
Only when passing = the value(v) type=3D=3D"Inlines" check does a placeholder %key% a= nd value(v) get added to the vars table.
While iterating over pai= rs(meta) would the for-do loop encounter the --metadata KEY[VALUE] items th= at were set by the command line switch?
Is it then simply a matte= r to pass that type check and add it to vars (type is raw string keyword?).=



function replace (el)
=C2=A0 if= vars[el.text] then
=C2=A0 =C2=A0 return pandoc.Span(vars[el.text])
= =C2=A0 else
=C2=A0 =C2=A0 return el
=C2=A0 end
end

return {= {Meta =3D get_vars}, {Str =3D replace}}
<= div dir=3D"auto">
My tak= e is to use a Code or CodeBlock with class .var and the variable name as te= xt. More to type but more robust.


If I can get the command line KEY[VALUE] table ite= ms into vars above, I don't think this replace function would need to c= hange.
Can you show some examples what you have in mind? = Code or CodeBlock?=C2=A0

<= div dir=3D"auto">
=

--
You received this message because you are subscribed to the Google Groups &= quot;pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/8db3a838-8= 431-4b75-aac1-94bc29fac675n%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups &= quot;pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to pandoc-discuss+unsubscribe-/JYPxA39Uh4Ykp1iOSErHA@public.gmane.org= m.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/d1590311-c= cb2-4e57-b518-be8c14c49ba8n%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups &= quot;pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to pand= oc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To view this discussion on the web visit https://groups.= google.com/d/msgid/pandoc-discuss/CADAJKhB50pgQNQ7yqeVCHC1JO9RovX-ARtHMTYKJ= M-H9XPfsNQ%40mail.gmail.com.
--0000000000008ab94a05f24020a4-- --0000000000008ab95005f24020a6 Content-Type: application/zip; name="code2vars.zip" Content-Disposition: attachment; filename="code2vars.zip" Content-Transfer-Encoding: base64 Content-ID: <185b230b4e0c85a43441> X-Attachment-Id: 185b230b4e0c85a43441 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 AwMAANAsAAAAAA== --0000000000008ab95005f24020a6--