From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, T_TVD_MIME_EPI autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 30113 invoked from network); 28 Mar 2021 11:24:19 -0000 Received: from bsd.lv (HELO mandoc.bsd.lv) (66.111.2.12) by inbox.vuxu.org with ESMTPUTF8; 28 Mar 2021 11:24:19 -0000 Received: from fantadrom.bsd.lv (localhost [127.0.0.1]) by mandoc.bsd.lv (OpenSMTPD) with ESMTP id 7d9b7768 for ; Sun, 28 Mar 2021 06:23:55 -0500 (EST) Received: from mail-ej1-f45.google.com (mail-ej1-f45.google.com [209.85.218.45]) by mandoc.bsd.lv (OpenSMTPD) with ESMTP id 7c207bca for ; Sun, 28 Mar 2021 06:23:54 -0500 (EST) Received: by mail-ej1-f45.google.com with SMTP id b7so15124539ejv.1 for ; Sun, 28 Mar 2021 04:23:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsd-lv.20150623.gappssmtp.com; s=20150623; h=from:to:subject:message-id:date:user-agent:mime-version :content-language; bh=Fi0d3fUJaeNfgMetLiLlkDnhXBc9+mdrL8jTxlDotTo=; b=XzUGWg+tARdhEH4INkv9WohPuoA2IYYrSeIje+zZt1KXOG6WZjUMzClaGrEvXgLaA+ t16C7mi0jL6D0XLuYaruJLUR/sYhx/TG+B/9IIFtaIn1oIOIx02NTgvjiATo8kzoXMA5 bzNxGCMQYIRHOBa+8MBXPIMTFEWqkwN/8skgWv1SCgDuOhXio6ts96Tr9eKJAWS6TkLx PJi1HEtdmZRGTJ8+g6cStT3sL5khi1J8DEWFslmgJsXTMU3y4grJSkXduws/rRhzNeLh Pw+PmuGUm9rwXthbDdiK2GOc21T9z6BFWrGzoxzYKSmeDltB51edECGE4AZDrv5bsvas MT8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:message-id:date:user-agent :mime-version:content-language; bh=Fi0d3fUJaeNfgMetLiLlkDnhXBc9+mdrL8jTxlDotTo=; b=W7cErVsN1V2pS0fUWIWa5nLlOtWJcpSogNMXdcVQAK1l3+nf7H5Cq4MujlBS08WrJo cGYVQTJBsZ9v+lbYBWq+s2iJ+r3fmqCvAZKFIRkQOmA/ph2iTW3vK++r6C4MyMg/ToKN KEeQvXI8H0jItwEIW+wDHwIVd9PjlxDoSao9qorEsKZLzkO+GKUaAxkuQdBm6cMRTSXa 3GmCyAH4qAvQHlF0USbYzEY9hQMLPxRFOP8jOIjbb8gDtjT/+Ub152zdvKrGCJe6k0zh ZYYMeDNFxlKxI1gsoaa6/iC5Da1KgGn1vtHBVtCKo8+FyLQSASkLdsrObBsBVtEtdEq0 G6MQ== X-Gm-Message-State: AOAM530IeWt9eeLBglNKbh3j6ZR9c7wGSEJOLVb+yVcn1bDlKa/XUjCd fLHJR54J8/vzMIRK384vMmjuKe3ApyMf4Q== X-Google-Smtp-Source: ABdhPJzdrcg8jiv2WArGaYZwqQ3cFLNeO6DB5HpHLbM9MlBuzouS0QPkH+lRnFYbGFUAhIZvf3OPIg== X-Received: by 2002:a17:906:3409:: with SMTP id c9mr23743963ejb.314.1616930632219; Sun, 28 Mar 2021 04:23:52 -0700 (PDT) Received: from fats.bsd.lv (c106-11.i07-27.onvol.net. [92.251.106.11]) by smtp.gmail.com with ESMTPSA id a9sm7234765edt.82.2021.03.28.04.23.51 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 28 Mar 2021 04:23:51 -0700 (PDT) From: Kristaps Dzonsons To: tech@mandoc.bsd.lv Subject: ".TS H" macro Message-ID: Date: Sun, 28 Mar 2021 13:23:51 +0200 User-Agent: Mozilla/5.0 (X11; OpenBSD amd64; rv:78.0) Gecko/20100101 Thunderbird/78.3.2 X-Mailinglist: mandoc-tech Reply-To: tech@mandoc.bsd.lv MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------6A90B5DAE3670864F0CB8CD8" Content-Language: en-US This is a multi-part message in MIME format. --------------6A90B5DAE3670864F0CB8CD8 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Hi! A recent issue for lowdown[1] noted the existence of ".TS H", which allows for multi-page PDF TS/TE tables. These don't affect mandoc, where the PDF tables aren't great anyway (that's my fault from way long ago), so using ".TS H" instead of ".TS" is ignored and fine. The problem is that this introduces a new macro to signal the end of the table header, which groff will re-issue at the start of a new page. And of course, the macro is ".TH". .TH "Untitled article" "7" "" .TS H tab(|) expand allbox; lb lb l l. T{ app T}|T{ quality T} .TH T{ foo T}|T{ bar T} .TE In mandoc, the subsequent ".TH" overrides the main document's ".TH", so the title and stuff shows up as empty. I've included a patch that has the TH parser bail if it already encounters a title. This passes "make regress", but it may be more appropriate to check if it's in a TS/TE context. Best, Kristaps [1] https://github.com/kristapsdz/lowdown/issues/65 --------------6A90B5DAE3670864F0CB8CD8 Content-Type: text/x-patch; charset=UTF-8; name="mandoc.TS.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="mandoc.TS.patch" Index: man_validate.c =================================================================== RCS file: /home/cvs/mdocml/mandoc/man_validate.c,v retrieving revision 1.155 diff -u -p -u -r1.155 man_validate.c --- man_validate.c 30 Oct 2020 13:24:33 -0000 1.155 +++ man_validate.c 28 Mar 2021 11:21:33 -0000 @@ -475,6 +475,9 @@ post_TH(CHKARGS) struct roff_node *nb; const char *p; + if (man->meta.title != NULL) + return; + free(man->meta.title); free(man->meta.vol); free(man->meta.os); --------------6A90B5DAE3670864F0CB8CD8-- -- To unsubscribe send an email to tech+unsubscribe@mandoc.bsd.lv