summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/siunitx/siunitx-unit.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/siunitx/siunitx-unit.dtx')
-rw-r--r--macros/latex/contrib/siunitx/siunitx-unit.dtx10
1 files changed, 8 insertions, 2 deletions
diff --git a/macros/latex/contrib/siunitx/siunitx-unit.dtx b/macros/latex/contrib/siunitx/siunitx-unit.dtx
index 6ea4ef12b9..713c4c5325 100644
--- a/macros/latex/contrib/siunitx/siunitx-unit.dtx
+++ b/macros/latex/contrib/siunitx/siunitx-unit.dtx
@@ -2644,14 +2644,20 @@
% A small amount of code to make it convenient to include non-Latin
% characters in units without having to directly include them in the
% sources directly. We only make the first token active as some packages
-% (\foreign{e.g.}~\pkg{kotex}) do this.
+% (\foreign{e.g.}~\pkg{kotex}) do this. For Unicode engines, we
+% might run into some odd situations where active characters are in
+% use (\foreign{e.g.}~\pkg{luainputenc}), so take precautions here
+% too,
% \begin{macrocode}
\bool_lazy_or:nnTF
{ \sys_if_engine_luatex_p: }
{ \sys_if_engine_xetex_p: }
{
\cs_new:Npn \@@_non_latin:n #1
- { \char_generate:nn {#1} { \char_value_catcode:n {#1} } }
+ {
+ \exp_after:wN \exp_after:wN \exp_after:wN
+ \exp_not:N \char_generate:nn {#1} { \char_value_catcode:n {#1} }
+ }
}
{
\cs_new:Npn \@@_non_latin:n #1