Return-Path: Delivered-To: rainer Received: from h2774747.stratoserver.net (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) by h2774747.stratoserver.net (Dovecot) with LMTP id zTjBN3vhb15NBQAA4+3H6A for ; Mon, 16 Mar 2020 21:28:43 +0100 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) by h2774747.stratoserver.net (8.15.2/8.15.2/Debian-3) with ESMTP id 02GKSgTT001355 for ; Mon, 16 Mar 2020 21:28:43 +0100 Received: from relay2.uni-heidelberg.de ([129.206.119.212]) by mx-ha.gmx.net (mxgmx017 [212.227.15.9]) with ESMTP (Nemesis) id 1MD8XD-1j4pWu18Gf-009GMa for ; Mon, 16 Mar 2020 21:28:37 +0100 Received: from listserv.uni-heidelberg.de ([129.206.100.94]) by relay2.uni-heidelberg.de with ESMTP; 16 Mar 2020 21:28:34 +0100 Received: from listserv (localhost [127.0.0.1]) by listserv.uni-heidelberg.de (Postfix) with ESMTP id EA5AE127EF1; Mon, 16 Mar 2020 21:28:25 +0100 (CET) Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 17.0) with spool id 42650484 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Mon, 16 Mar 2020 21:28:25 +0100 Delivered-To: LATEX-L@listserv.uni-heidelberg.de Received: from relay2.uni-heidelberg.de (relay2.uni-heidelberg.de [129.206.119.212]) by listserv.uni-heidelberg.de (Postfix) with ESMTP id CEF9B125D21 for ; Mon, 16 Mar 2020 21:28:25 +0100 (CET) X-IronPort-MID: 56583939 X-IronPort-RemoteIP: 209.85.215.179 X-IronPort-SenderGroup: UNKNOWNLIST X-IronPort-MailFlowPolicy: $ACCEPTED X-IronPort-Reputation: 3.4 IronPort-PHdr: =?us-ascii?q?9a23=3AomWsJBWhAF/tv92HCpMFS0/Uv03V8LGuZFw894?= =?us-ascii?q?YnhrRSc6+q45XlOgnl6O5wiEPSBNuGuehJj+PH6eb9X21F4ZuAvH0GepFWWF?= =?us-ascii?q?kJhJZehBQuVeiCD0CzN/v2d2oiBs0XVFJj5XC+PE5WFe7xYlTTpju56jtBUg?= =?us-ascii?q?7nO19NL//uUpXXk9zx0umz/5PJZAAdhDe7e7J3IRO1oC3es8AXhc1pLaNigg?= =?us-ascii?q?DRrC5ufOJbjXhtOUrVnxv44ZKo+4V/9i1Lp/8738tJUKG/Z6thCLIBU2VgPG?= =?us-ascii?q?cy68nm8xLESFLVtEERWWgXjBdERjP9wkqiAcXXtS33/qpn1S2TLJewULY1HD?= =?us-ascii?q?Sv7qtmTBXlkihBOzNruGfQwtd9iq5WunfD71R23pLUbYeJNfF/YrKVfNUUQn?= =?us-ascii?q?BEV9pQUCoJC521bo8GBe4MdehCqIy1q1wLpBq4TQ6iYYGngj9FgGX32KA80O?= =?us-ascii?q?kJHgTP3QhmFNUL8TzVoNjzKKYOQLWt1qCbhT7Hbv5QxXL88N2SKkFn8azKB+?= =?us-ascii?q?stN5OOmBpKdUuNlFibpI37MinAzOkJunnBqfdmVKevhm8rpgV7ryKggMsh2e?= =?us-ascii?q?yrzsoYzE7J8SJhzcM7P9q9HQR7bNi+EZ5dsSKXH4RzS8ImBWpvvWxpr99O8Y?= =?us-ascii?q?7+ZyUMxJk9klTfZvqdco2F5BHufOmUKDZ8wnliffjs4nT6uVjlwer6WM6u1V?= =?us-ascii?q?9MpScQidjAuEcG0BnL49SGQP9wpx3z4zuE2gHN5+0BGngayPqLeaYo2aV41o?= =?us-ascii?q?AetU3SRGnrnkSzjKKXekgg8OWy5KLrb+euqpiZPo5ywgbwV8Zm0syyB/45Nw?= =?us-ascii?q?UIXGWz9uG11bml9kr8CLlHlfw5lKDFvYuSf5xK4P7kRVUMj8B6tEf3BizuyN?= =?us-ascii?q?kCmHgbMF9JHXDPx5PkPV3DOrGwDPuyhUitjCY+wvnHOrP7BZCeZnPHkbrnYf?= =?us-ascii?q?N88xsGkFt1nY0ZvcsJTOhecaGWOAe5rtHTAx4nPhbh2evjAcQnkJ4YWCePD6?= =?us-ascii?q?6VPafYvEWHoO4icIzuLMcYvijwL/896rvgl3g8zBUdcK+z3J4abnO1NvtjKk?= =?us-ascii?q?SdJ3Hrh51SdAVC9hp7V+HshFCYBHRTanCoXqcx4DI2II2jBIbHAIuqhfbSuU?= =?us-ascii?q?XzVo0TbWdABFeWFH7ufIjRQPYAZhWZJcp5myAFX7ysGMcxkAujvwjgx/97P/?= =?us-ascii?q?LZr2cG4In72oE/tIix3VkisCZ5BMOH3ySRQnFoyykWEiQu0vk3oFQhmAzel/?= =?us-ascii?q?Ep27oCSYMVv7QTDk87LcKOkbA8UYupHFufJpHRDw/3J7fuSTApEoBvnZlXOx?= =?us-ascii?q?w7Q5P6yUqblyuyX+1LyfrRWM1yovqahz+rf4580yqUi/Nn1gVgG5oVczXh3/?= =?us-ascii?q?4alUCbBpaVwRrF0f/wKOJEmnaKrTnLzHLS7hgAAEgpDvqDDTZHIRGP5dXhuh?= =?us-ascii?q?GbEOToUOV7dFMHkYnbdM4oIpXolQkUHq+yfoSDJTvryyHoQk/XjrKUMNiwIj?= =?us-ascii?q?tbgXWbURle1VhUpCfONBBiVH34/SSEV20oTgipOwS1oIwc4DutR0swhVjQPX?= =?us-ascii?q?ds3Le05BMZwMekZahIjuAivyEs43VuEVK0zoiQFtyB4gpsfalRZdkw+lgB2W?= =?us-ascii?q?+L/wp6doetKaxvnDt8O0x+ol/u2hNrC45BjdlirXUkyxB3IL6Z11UJfi2R3J?= =?us-ascii?q?T5MLnaYmfo+xXnZ6nT01DYmNGYn8VHoOw/sEnmtRq1G1AK9nxm15xN3CLZ6M?= =?us-ascii?q?yVXUwdVpX+Vktx/B9/5vnbbiQ7+4LIxChsPK2z4Vqgk5oiAOoozArlfs8Kav?= =?us-ascii?q?vVUl+vVZdDWo73d71500KkZR8FIu1IobQ5O8q3Lb2b3q/uPOthkD+ih2ld78?= =?us-ascii?q?Zx3xHplWI0R+jW0pIC2/zd0BGAUmK2jFqnqMHylIZHaBkdG2O+zW7vA4sbNc?= =?us-ascii?q?gQNc4bTHyjJcG63IA0n5n2R3tR70KuHXsD0c6tPAKdNhnzhFIBk0sQpnOjlG?= =?us-ascii?q?2zyDk+wFRL5uKPmSfJxerlbh8OPGVGEXJjgVnbKo+xl9kGXUKsYlF1xivg3l?= =?us-ascii?q?7zwu1gnIo6N3PaGB4acC3/LmUkWay15OLbMpx/ragwuCASa9ySJFWTS7rzuR?= =?us-ascii?q?wfinqxEG5XxTR9fDav6Mygwk5KzVmFJXM2l0L3PMF9wRCFuo7ZTP9VmyIJHW?= =?us-ascii?q?x20GaGQFe7ONat8JOfkJKR6u0=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0B8BACy4G9ehrPXVdFmHgELHIQfgUY?= =?us-ascii?q?jBDWEFokChgeCEYl3dYRBjBQJAQEBAQEBAQEBBwEtAgQBAYRDAoIhHAcBBDQ?= =?us-ascii?q?TAgMBAQEDAgUBAQUBAQECAQIDBBQBAQEICwsIKYVdDIVjAQEBAQIBAQEQEQ8?= =?us-ascii?q?BDQEbHgMBCwYFGAICBSECAg8UEQEFARwFNoMEgkoBAw4goQeBBD2KM3WBFQU?= =?us-ascii?q?BF4MABYRjChknDWIDgTICBwkBCHwqhSCHDhqBQT+BEYJmLj6FGIJEgl4EjiS?= =?us-ascii?q?hI3ZHgX98lWkpDgKCOow+DYwukFKaDQIKBwYPI4FGgXozGiODPFAYDY1GVww?= =?us-ascii?q?OCYNQimsrM4EpjW8BAQ?= X-IronPort-AV: E=Sophos;i="5.70,561,1574118000"; d="scan'208";a="56583939" X-MGA-submission: =?us-ascii?q?MDGrNduT8/N0sx5QyP8qsD/j1VaGHxAS+uzzuC?= =?us-ascii?q?E4i3VvE6JY/CnQuZ3rnB0Xl6rtmoFMk+kvdRLa0PmNQ34nox0j7g0lcG?= =?us-ascii?q?QOxTtjA8hQNuxl0ArsszKuqCBtD95aBhM72TcyPGSAkG/ESMRsCjP3Ss?= =?us-ascii?q?QggHcFJ8w/Ib53wlLpHvz/6A=3D=3D?= Received: from mail-pg1-f179.google.com ([209.85.215.179]) by relay2.uni-heidelberg.de with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 16 Mar 2020 21:28:26 +0100 Received: by mail-pg1-f179.google.com with SMTP id y30so10354783pga.13 for ; Mon, 16 Mar 2020 13:28:24 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:mail-followup-to :references:mime-version:content-disposition :content-transfer-encoding:in-reply-to; bh=juTBhoNwCGDfM98Opm03FzNdJInARFI8bckhLPCJkJM=; b=QJzpY7di8gkP9OasijONm53Nd9gLmbMcAXDWZvgFKR6UozVuftdSbn8LIfHjhwzoFI fkNlir5WsApgheFbtkvtivDwsnZGzJPGr5eu4Fo7bVO7wIsxa6YpVOctDigi9DBLKYbR mj2WhYwQPsm0Gz0R80DZ9nssMX/8FBKnB/Pud/NZYh8belYkM9OF21J67Mz6AIlxGsWf HJvP3k8Jf9XC5BYXCWlWfapqTlQY5INpF0XDkwfH/aybXcQSAPWvDrLUVzBL65UQzygW Cr0nV4YVXe2SDfi+o5w5xBAxYCA9XQxy/P6IJestQh4BfYLKeWvY6dc6rN9NiAQ72a1A 4Q5Q== X-Gm-Message-State: ANhLgQ2ccxU1T9MsOc4anXh8YHcBRvvlNrog7LXp5yj/RmBc5aBuuYbt +l/Vr12YgbDX8JQWhtlJu452VFGs X-Google-Smtp-Source: ADFU+vv9xcbocdt5h1zYEnaDOW+QVD88moa0qeJHm+OqPLcbUZvNu6tH944A6eoAboP5s2ePBv4djw== X-Received: by 2002:a62:14d6:: with SMTP id 205mr1444354pfu.155.1584390502590; Mon, 16 Mar 2020 13:28:22 -0700 (PDT) Received: from vento15post8 (fwphysics-ejournal-external.otago.ac.nz. [139.80.80.8]) by smtp.gmail.com with ESMTPSA id q9sm342856pgs.89.2020.03.16.13.28.20 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Mar 2020 13:28:21 -0700 (PDT) Mail-Followup-To: LATEX-L@listserv.uni-heidelberg.de References: <3939613963363954.WA.kellysmith12.21gmail.com@listserv.uni-heidelberg.de> <924058d3-d3a3-7e40-d799-fe0bc0e20ffb@morningstar2.co.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit Message-ID: <20200316202737.k6wghfvw3hgtidv6@vento15post8> Date: Tue, 17 Mar 2020 09:27:37 +1300 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Henri Menke Subject: Re: Using Lua to Preprocess Unicode Data To: LATEX-L@LISTSERV.UNI-HEIDELBERG.DE In-Reply-To: <924058d3-d3a3-7e40-d799-fe0bc0e20ffb@morningstar2.co.uk> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: Envelope-To: X-GMX-Antispam: 0 (Mail was not recognized as spam); Detail=V3; X-Spam-Flag: NO X-UI-Filterresults: notjunk:1;V03:K0:wxEviWbja18=:PBLwbPFsFMXTy92HK/G9/S1JB/ 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 X-UI-Loop:V01:LAKzX1scctY=:174HacEnTLXmt3h3Q4ta8J0PK6uZUeCUNnNBtV9ZxWQ= X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:RgNi+HI4hp4=:bH3b6sAREV8ckHO6Z2ynE1 k9BCrU2VDezNE4F4epm6J4OdUGkUSp/9os4XTzASd5eQZ+owq0+MGcbSv5JqA6YrdZJx7L3j4 Zdse6mqZxqW+9pCkwJJkNcaeuwJWS/0nNwVuF1PYSANpQvlVMtyVZgeC78UfQP7PVv6Bblp+G G+XOshYWaUII7Wh7HnSkqTE10mqJH2QXWOWLzWLsm0cSZlANQbA5Oe0HKYrH+ywjt6jmqXLJO cqWCHudUsWkbVPgboBy4st1D9s3EMUcIVhxM/YbTUkXB2HLfOdTUqERCKZTLecPTjh+5lkiJb yK7Jot9KSUO4nlqaq25kfQta6+h9XTt9WJoe/uvAJwhP2toMprDo2ZOf0TcPkqyYrCuJKktG6 /87Tla7T5RTcect0o8mrZktEbjqfU3wsZmt5Ms1tSnUuaViVgSiopPZylk9QIR8PBLUhMA6+1 QC0QZFuFFu5g4C9k0vyVsr4uwsjdbgo= X-Scanned-By: MIMEDefang 2.78 on 81.169.212.23 Status: R X-Status: X-Keywords: X-UID: 8204 On 16/03/20, 17:32, Joseph Wright wrote: > On 16/03/2020 17:01, Kelly Smith wrote: > > Hello! > > > > I’ve been thinking: since Lua is already involved in the build process, > > by way of l3build, wouldn’t it be reasonable to use a lua script > > to preprocess Unicode data into forms that are easily consumed by LaTeX > > during the format-building process? > > > > Warmly, > > Kelly > > > > It depends on the outcome you are after. > > The original loading method for Unicode data in XeTeX was via a Perl script. > That created a .tex file containing (for example) catcode data. To update > the Unicode data, one had to run the Perl script, then send the processed > files to CTAN. There were two issues. First, that meant that any change > required active work to not only get the data from Unicode but also to > manipulate it. Second, and more significant, it was *slower* than just > reading the files in TeX. (This only became apparent when I wrote some test > parsers.) > > Now, there is more data being loaded today than when I did that work, and > some of it is in LuaTeX so could be done Lua-only. It's also possible that > the Perl script was sub-optimal, or that as part of a general 'install' > function the time would not really show. However, XeTeX needs the data, so > one is still looking at having to explicitly pre-process in Lua. Moreover, > most of the time taken for format-building is not about reading Unicode > data. With LuaTeX, pre-loading expl3 does cut out a slight 'stall' when > loading everything for case-changing, but having a LuaTeX and a XeTeX path > separately is not attractive. Is there any distribution that doesn't have LuaTeX in the default installation? (Apart from exotic things like TeX Live infra-only) Then it would be conceivable to just make LuaTeX a hard requirement and process the Unicode data on the fly instead of going via CTAN. > The current set-up means that updating the Unicode files is just a question > of copy-pasting the raw .txt files into a form that CTAN can accept. > Pre-digesting still leaves us needing some way to co-ordinate between > packages (format, luaotfload, expl3, specialist stuff), plus with having to > do the explicit extraction. > > As format-building is all about saving time for 'normal' runs, I'm not > seeing there is a massive need to speed up the process. I know there is one > engine in development that doesn't use format files, so that might be a > place to consider things, but I think we'd need a strong case to alter the > approach for XeTeX/LuaTeX (pdfTeX, ...). Are you referring to JSBox? I doubt that this will every be public. Cheers, Henri > Joseph