From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.text.pandoc/29866 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: John MacFarlane Newsgroups: gmane.text.pandoc Subject: Re: filter to inject raw TeX command based on header attributes Date: Wed, 29 Dec 2021 11:41:27 -0800 Message-ID: References: Reply-To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14323"; mail-complaints-to="usenet@ciao.gmane.io" To: bapt auguie , pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org Original-X-From: pandoc-discuss+bncBCJZJHG45QDBBEPUWKHAMGQEJG6DFKY-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org Wed Dec 29 20:42:13 2021 Return-path: Envelope-to: gtp-pandoc-discuss@m.gmane-mx.org Original-Received: from mail-pg1-f192.google.com ([209.85.215.192]) by ciao.gmane.io with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1n2epw-0003Xc-ML for gtp-pandoc-discuss@m.gmane-mx.org; Wed, 29 Dec 2021 20:42:12 +0100 Original-Received: by mail-pg1-f192.google.com with SMTP id p28-20020a63951c000000b0033f7b94305dsf11327560pgd.11 for ; Wed, 29 Dec 2021 11:42:12 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1640806931; cv=pass; d=google.com; s=arc-20160816; b=om3DTk4cGVa8TWPlCpXYW+dH7/uYZrCIHg7tsM7CuGRujQORgNEomgKby5Hro0n25w 3tzEwcuPlNbY7x+5QhoQ3RrdrhZZNauMV9GvVcrrbG33j3xWqYH1y2LBeMtm3d08uZl/ louGVjLuC53guLwgJNMZLxj9aynxhW3aBcDQKb6ntkF6k4PUU6ix1F/FEeRKaIfaMKRY vtVRQspCwXPmc/hEu8OghFrOi8Kx/rqf/b+mCPDTwOuwBk8B9poIPFVbV28+QYSDVhAT Vfn7y7Sqciu9IsyOcGfYHzIUCebjique2H+hp+eETaH0mGmAOZhWA39MqAHjnT9uSclQ /lYw== 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:mime-version:message-id :date:references:in-reply-to:subject:to:from:sender:dkim-signature; bh=WXEAksr/BuIX9EhsPjNcrHzAdPqwmq49r2o2F25D9yg=; b=WSrcdzIFej+gJ6Lzz2zlzw9Py/PdRvESoW0I267TRJc46gIANNJDiY0ygpcy4Vaq47 P6QwL1+414UPtjhf/yEUaeCnEGvdoh/g0NzqLxj2YX5J2PQBYf7OLJGps7kQhgorp2fe cmtwSPFuqKLba15kDk0KViYVDNmYAAAIQMkQ/ZKherfeMRC0EcZH84VnF/Kzk+0k3xFE PjKpDkyLuxJ/bY71sVk176Gh1VUh5QzTK13e7pXyRMiL8Lf/mu0S3hpjQmEmiorC90YO gEdTIdgudTAm2Q76i+ttNHxxzzrUE5fy/C9+Z4KC9tPf2DJPDsMEfS2uOf+Ti34y9pcn 7OZQ== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@berkeley-edu.20210112.gappssmtp.com header.s=20210112 header.b=Bxgn7mxF; spf=pass (google.com: domain of jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org designates 2607:f8b0:4864:20::52d as permitted sender) smtp.mailfrom=jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20210112; h=sender:from:to:subject:in-reply-to:references:date:message-id :mime-version:x-original-sender:x-original-authentication-results :reply-to:precedence:mailing-list:list-id:list-post:list-help :list-archive:list-subscribe:list-unsubscribe; bh=WXEAksr/BuIX9EhsPjNcrHzAdPqwmq49r2o2F25D9yg=; b=HQybqWtEsebYtM51dS7ZOEb3FKLI4Km72kP5yKxscVyt4YFxjXg039AjqNreJ+hkxO EDTU/j1bwV8zAKDPGJBvcOMRIVPTM5vaw1Mg4XeldVL5cRx5UfPkzQzc32zWjHWde+xH yAbzNOeNvgbst3US/lYuNBquNbdjA1yUsyLFhWtBbBVyW28itC8Y7reVkO/XFCff4qQ/ RjutOoAzMTH++KArnzsShkT4ZcnxV7AqlbvAFuod6puJubed+aPruD0rG/Gtu30/1jGx 7y8SfA8+4ubDghHAcD/4ERy2hiOz/Nirg4vSNLiGsy9sxFCx6n66dh2yYaOOeBx7BwOT orlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=sender:x-gm-message-state:from:to:subject:in-reply-to:references :date:message-id:mime-version:x-original-sender :x-original-authentication-results:reply-to:precedence:mailing-list :list-id:x-spam-checked-in-group:list-post:list-help:list-archive :list-subscribe:list-unsubscribe; bh=WXEAksr/BuIX9EhsPjNcrHzAdPqwmq49r2o2F25D9yg=; b=VV/GkgKsR28oI1OCiSc0y4UjB3jSrpOh8PDoXX6ehLc2XEihozP3Glndb7qWtvddx7 SsL+rClX38abQ4tNeLbiq3aee6JYjMEQgtaWWTSt39WOM/Cwu76/vA/HaZD6WYA8iBxd PM3WL/tVVcnczGMKEvy9itKkWZEPahwwrpCxdniatQFx/1SHeRCMaXdizRhUP4A1pfFK nmEV2vNVZsEx7HHQQcDfVpi5+SjFopEHsZIDKbWYXLKPMmTUA7zezQzEMc/naZihXW7B gkbbV0EUGRKHEEs05sJJNYsrv1h8cluwlYnplj9cMKM5US814V/GMGm3+ukZEqPCmw2p hCgg== Original-Sender: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org X-Gm-Message-State: AOAM532hHHX32t98HfmtdLsdMpn3L1k9TaQt3xwy2nulASwXvAkf8chN KkrFn5U3C5lHhJZL/piJXVI= X-Google-Smtp-Source: ABdhPJzq9Gr5WWZmoAuz24QaM02bQRw0AY1R2ngr6fDwx4tT/+F1f48fsnc0uK7F9IGcVJOUuGVjUg== X-Received: by 2002:a17:90a:ac03:: with SMTP id o3mr34253352pjq.117.1640806931304; Wed, 29 Dec 2021 11:42:11 -0800 (PST) X-BeenThere: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org Original-Received: by 2002:a63:8c10:: with SMTP id m16ls7450943pgd.11.gmail; Wed, 29 Dec 2021 11:42:09 -0800 (PST) X-Received: by 2002:aa7:8e43:0:b0:4ba:464b:8824 with SMTP id d3-20020aa78e43000000b004ba464b8824mr28416974pfr.11.1640806929306; Wed, 29 Dec 2021 11:42:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1640806929; cv=none; d=google.com; s=arc-20160816; b=qKrxEMUUoQZTvod/4g55izZ+6pdIqiZeMUrHGxmVYeammLtyzBJu9OE9oEQGOqECad e+jQSP4Nu3VnTLG9MExRqU57QooXMoZTnyo6oHU5UUKuX8bxfzb1mdec2oS4rRUsMkaH 4HkBMM4fW8MUT95YXeKuIX1gACE5AiB9JK+h2YB74fPxZWDOTC/ILVD8xROejQG3a6bg oXsqVE6BJdEh6MBE11s9nxCaMaqcuCb4sa1fEMX1jhlFH1rH7o67/+TcLMaiKOzWKYap ROli8jhNh49kxFqu5IuWIHVN4hgdaOuGyHgPfAZVNTnoGkDPm//XTjo7BKO9L/P1l/1l DozQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:message-id:date:references:in-reply-to:subject:to:from :dkim-signature; bh=8tS+8dtY8EaU9s33cPazDY+9DJImH2cyXSn6C7fiBF8=; b=hfXvSA63T7aLVuuMu3s0NQhDtZeVRREDv3bP8qfkxQOCJ2KyxrAAffJpdHqm++D/7H l84fxOKJJ/aLy76gmqE/u15QG1K4TTjqr1bI5bY3JedJZy4mBrptm8vrSc0++sv9ELKe 6ylPELuWT/S2t9WuQ5t/Q0G+D2Yxt3cmoXYoG2AufNGV2IphgbxrNj+FG035HCFmkn8A dZouMzjiVKT9pECQL0twFNyR/GJuF29eWOC44Icv9JPtr8UPAXWBKLlwyouANUVhNBo3 GjBLb6lTXLLdAkai5swFHa+oZVv85fQuQ0CMZ1cH45isSsSS8Mw7n6CkwiiUDUSDj+bW ExtA== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@berkeley-edu.20210112.gappssmtp.com header.s=20210112 header.b=Bxgn7mxF; spf=pass (google.com: domain of jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org designates 2607:f8b0:4864:20::52d as permitted sender) smtp.mailfrom=jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org Original-Received: from mail-pg1-x52d.google.com (mail-pg1-x52d.google.com. [2607:f8b0:4864:20::52d]) by gmr-mx.google.com with ESMTPS id q19si1186602pfj.0.2021.12.29.11.42.09 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 29 Dec 2021 11:42:09 -0800 (PST) Received-SPF: pass (google.com: domain of jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org designates 2607:f8b0:4864:20::52d as permitted sender) client-ip=2607:f8b0:4864:20::52d; Original-Received: by mail-pg1-x52d.google.com with SMTP id m15so19301509pgu.11 for ; Wed, 29 Dec 2021 11:42:09 -0800 (PST) X-Received: by 2002:a62:820e:0:b0:4b1:3cea:f0f6 with SMTP id w14-20020a62820e000000b004b13ceaf0f6mr28223632pfd.47.1640806928822; Wed, 29 Dec 2021 11:42:08 -0800 (PST) Original-Received: from johnmacfarlane.net (li55-134.members.linode.com. [74.82.3.134]) by smtp.gmail.com with ESMTPSA id i9sm19708095pgc.27.2021.12.29.11.42.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Dec 2021 11:42:08 -0800 (PST) Original-Received: by johnmacfarlane.net (Postfix, from userid 1000) id 5812CA29D; Wed, 29 Dec 2021 14:41:27 -0500 (EST) In-Reply-To: X-Original-Sender: jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@berkeley-edu.20210112.gappssmtp.com header.s=20210112 header.b=Bxgn7mxF; spf=pass (google.com: domain of jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org designates 2607:f8b0:4864:20::52d as permitted sender) smtp.mailfrom=jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org 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:29866 Archived-At: bapt auguie writes: > I would like to walk the AST, and immediately after headers with a specific > attribute, inject a \renewcommand{} based on the header's attributes, such > as (dummy example), > > \renewcommand\subsection[1]{\textbf{#1}} This is pretty easy. You would have a function function Header(el) local attr = el.attributes -- you can do attr['foo'] to get the value of the 'foo' attribute -- now create a string with the macro: local macro = ... return { el, pandoc.RawBlock("latex", macro) } end You can fill in the blanks.