Message-ID: <bacb41f441ccb34c733ff66fcd5f73e8efdcf68e.camel@student.tugraz.at>
To: "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de>,
49010@debbugs.gnu.org
In-Reply-To: <20210806105344.quuluhdqx3aa4jpv@pelzflorian.localdomain>
References: <20210806105344.quuluhdqx3aa4jpv@pelzflorian.localdomain>
Content-Type: text/plain; charset="UTF-8"
User-Agent: Evolution 3.34.2
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Hi Florian,
Am Freitag, den 06.08.2021, 12:53 +0200 schrieb pelzflorian (Florian
Pelz):
Toggle quote (12 lines)
> Hello Guix!
>=20
> In the guix-artwork.git repo, the pot file generation
> (scripts/sexp-xgettext.scm as described in the file i18n-howto) in
> the website is broken since guile@3.0.7. Old guile@3.0.2 works.
>=20
> The issue is at the end of the procedure in the call to (read) within
> token->string-symbol-or-keyw, specifically
>=20
> guile -c '(with-input-from-string ",@" (lambda () (read)))'
>=20
> I will investigate, but I don=E2=80=99t fully understand.
Having written a Scheme-specific xgettext implementation myself, I
think the issue here is that guile@3.0.7 returns syntax objects from
(read), whereas previous guile does not.
The trick that I'm applying is to call syntax->datum on the return
value of (read). In older guile, this does nothing, whereas in newer
guile it returns the symbol, keyword, list... whatever (read) would
have returned in the old implementation.
I hope this works out for you the way it did for me.
Cheers!