summaryrefslogtreecommitdiff
path: root/admin/unidata
diff options
context:
space:
mode:
authorMattias EngdegÄrd <mattiase@acm.org>2023-09-07 11:25:46 +0200
committerMattias EngdegÄrd <mattiase@acm.org>2023-09-07 17:55:09 +0200
commit7c55bf59bb77d1dddbf32d716655de8f98444df4 (patch)
treeb471f865d2b0d897e77188e28e06f7c664c1ad15 /admin/unidata
parenta412d3c46cc4e53a78793dd4e129918452516caa (diff)
downloademacs-7c55bf59bb77d1dddbf32d716655de8f98444df4.tar.gz
* admin/unidata/emoji-zwj.awk: More efficient code generation
Hoist the `eval-when-compile` to encompass the entire list, since backquote forms aren't automatically evaluated at compile time. This results in a single constant list in the generated code, and much less actual code.
Diffstat (limited to 'admin/unidata')
-rw-r--r--admin/unidata/emoji-zwj.awk8
1 files changed, 4 insertions, 4 deletions
diff --git a/admin/unidata/emoji-zwj.awk b/admin/unidata/emoji-zwj.awk
index 53170214d8a..fc4a2edd559 100644
--- a/admin/unidata/emoji-zwj.awk
+++ b/admin/unidata/emoji-zwj.awk
@@ -100,14 +100,14 @@ END {
vec[codepoint] = vec[codepoint] "\n\"\\N{U+" trigger_codepoints[trig] "}\\N{U+FE0F}\""
}
- print "(dolist (elt `("
+ print "(dolist (elt (eval-when-compile `("
for (elt in ch)
{
- print "(#x" elt " .\n,(eval-when-compile (regexp-opt\n'(\n" vec[elt]
- print "\"\\N{U+" elt "}\\N{U+FE0E}\"\n\"\\N{U+" elt "}\\N{U+FE0F}\"\n))))"
+ print "(#x" elt " .\n,(regexp-opt\n'(\n" vec[elt]
+ print "\"\\N{U+" elt "}\\N{U+FE0E}\"\n\"\\N{U+" elt "}\\N{U+FE0F}\"\n)))"
}
- print "))"
+ print ")))"
print " (set-char-table-range composition-function-table"
print " (car elt)"
print " (nconc (char-table-range composition-function-table (car elt))"