Create test of text direction (luatex)LuaTeX bug with bold italic text?align* environment left-aligned with LuaTeX and RTL math directionUnicode, right to left characters in command namesCan LuaTeX create HTML?LuaTeX RTL text: Wrong horizontal spacing in headlinesText direction in table Arabic babelMeaning of LTL directionArabic Right to Left using LuatexReverse direction of writing automatically with RTL scriptCreate a Table with Luatex
Maximum likelihood parameters deviate from posterior distributions
Why is consensus so controversial in Britain?
I'm flying to France today and my passport expires in less than 2 months
Alternative to sending password over mail?
infared filters v nd
Was any UN Security Council vote triple-vetoed?
Why can't I see bouncing of switch on oscilloscope screen?
Can I make popcorn with any corn?
What does "Puller Prush Person" mean?
What is the word for reserving something for yourself before others do?
How is it possible to have an ability score that is less than 3?
Horror movie about a virus at the prom; beginning and end are stylized as a cartoon
Why doesn't Newton's third law mean a person bounces back to where they started when they hit the ground?
Codimension of non-flat locus
Java Casting: Java 11 throws LambdaConversionException while 1.8 does not
What's the output of a record needle playing an out-of-speed record
Why do I get two different answers for this counting problem?
Roll the carpet
Approximately how much travel time was saved by the opening of the Suez Canal in 1869?
Perform and show arithmetic with LuaLaTeX
What does it mean to describe someone as a butt steak?
How is the claim "I am in New York only if I am in America" the same as "If I am in New York, then I am in America?
What is a clear way to write a bar that has an extra beat?
Can I ask the recruiters in my resume to put the reason why I am rejected?
Create test of text direction (luatex)
LuaTeX bug with bold italic text?align* environment left-aligned with LuaTeX and RTL math directionUnicode, right to left characters in command namesCan LuaTeX create HTML?LuaTeX RTL text: Wrong horizontal spacing in headlinesText direction in table Arabic babelMeaning of LTL directionArabic Right to Left using LuatexReverse direction of writing automatically with RTL scriptCreate a Table with Luatex
With luatex there is textdir
to change text direction and tex.textdir
which give string representing text direction.
I have created this macro to test text direction which supposedly gives TLT
inside left to right context and TRT
inside right to left context, but my macro does not give the desired result
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
edefdirTLT
deftestdirdirectluatex.print(tex.textdir)
deffooifxdirtestdir TLT else TRT fi
begindocument
%textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
macros luatex expansion right-to-left
add a comment |
With luatex there is textdir
to change text direction and tex.textdir
which give string representing text direction.
I have created this macro to test text direction which supposedly gives TLT
inside left to right context and TRT
inside right to left context, but my macro does not give the desired result
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
edefdirTLT
deftestdirdirectluatex.print(tex.textdir)
deffooifxdirtestdir TLT else TRT fi
begindocument
%textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
macros luatex expansion right-to-left
2
ifx
does no expansion and only looks at the first level expansion when comparing two macros.
– egreg
Apr 2 at 10:49
add a comment |
With luatex there is textdir
to change text direction and tex.textdir
which give string representing text direction.
I have created this macro to test text direction which supposedly gives TLT
inside left to right context and TRT
inside right to left context, but my macro does not give the desired result
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
edefdirTLT
deftestdirdirectluatex.print(tex.textdir)
deffooifxdirtestdir TLT else TRT fi
begindocument
%textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
macros luatex expansion right-to-left
With luatex there is textdir
to change text direction and tex.textdir
which give string representing text direction.
I have created this macro to test text direction which supposedly gives TLT
inside left to right context and TRT
inside right to left context, but my macro does not give the desired result
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
edefdirTLT
deftestdirdirectluatex.print(tex.textdir)
deffooifxdirtestdir TLT else TRT fi
begindocument
%textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
macros luatex expansion right-to-left
macros luatex expansion right-to-left
edited Apr 2 at 11:19
Salim Bou
asked Apr 2 at 10:28
Salim BouSalim Bou
11.6k11442
11.6k11442
2
ifx
does no expansion and only looks at the first level expansion when comparing two macros.
– egreg
Apr 2 at 10:49
add a comment |
2
ifx
does no expansion and only looks at the first level expansion when comparing two macros.
– egreg
Apr 2 at 10:49
2
2
ifx
does no expansion and only looks at the first level expansion when comparing two macros.– egreg
Apr 2 at 10:49
ifx
does no expansion and only looks at the first level expansion when comparing two macros.– egreg
Apr 2 at 10:49
add a comment |
2 Answers
2
active
oldest
votes
ifx
only looks at the first level expansion when comparing two control sequences and cannot compare strings.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
NewExpandableDocumentCommandifdirTLTmm
str_if_eq:eeTF TLT lua_now:n tex.print(tex.textdir)
#1
#2
ExplSyntaxOff
begindocument
textdir TLT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
textdir TRT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
enddocument
add a comment |
You need to expand the directlua before the test. E.g.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
cs_generate_variant:Nntl_if_eq:nnTF xn
deffootl_if_eq:xnTFdirectluatex.print(tex.textdir)TLTTLTTRT
ExplSyntaxOff
begindocument
%
foo ; directluatex.print(tex.textdir)
textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
Is there an equivalent macro without latex3?
– Salim Bou
Apr 2 at 10:55
You can at first expand the command withedeftmpadirectlua ...
and then useifxtmpadir
but expl3 solutions are imho better (and egreg's test is better than mine, comparing this as string is cleaner.)
– Ulrike Fischer
Apr 2 at 12:42
The expansion should come just before the test like thisdeffooedeftestdirdirectluatex.print(tex.textdir) ifxtestdirdir TLT else TRT fi
For the LaTeX3 syntax I find it a bit difficult.
– Salim Bou
Apr 2 at 13:22
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
2 days ago
@HenriMenke I would like to createif
conditional which test the text direction to change some tex dimensions not just to printTLT
orTRT
like thisif<text direction is TLT> do this else do that fi
– Salim Bou
2 days ago
|
show 1 more comment
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "85"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f482749%2fcreate-test-of-text-direction-luatex%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
ifx
only looks at the first level expansion when comparing two control sequences and cannot compare strings.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
NewExpandableDocumentCommandifdirTLTmm
str_if_eq:eeTF TLT lua_now:n tex.print(tex.textdir)
#1
#2
ExplSyntaxOff
begindocument
textdir TLT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
textdir TRT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
enddocument
add a comment |
ifx
only looks at the first level expansion when comparing two control sequences and cannot compare strings.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
NewExpandableDocumentCommandifdirTLTmm
str_if_eq:eeTF TLT lua_now:n tex.print(tex.textdir)
#1
#2
ExplSyntaxOff
begindocument
textdir TLT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
textdir TRT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
enddocument
add a comment |
ifx
only looks at the first level expansion when comparing two control sequences and cannot compare strings.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
NewExpandableDocumentCommandifdirTLTmm
str_if_eq:eeTF TLT lua_now:n tex.print(tex.textdir)
#1
#2
ExplSyntaxOff
begindocument
textdir TLT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
textdir TRT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
enddocument
ifx
only looks at the first level expansion when comparing two control sequences and cannot compare strings.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
NewExpandableDocumentCommandifdirTLTmm
str_if_eq:eeTF TLT lua_now:n tex.print(tex.textdir)
#1
#2
ExplSyntaxOff
begindocument
textdir TLT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
textdir TRT
ifdirTLTTLTTRT; directluatex.print(tex.textdir)
enddocument
answered Apr 2 at 10:55
egregegreg
732k8919303253
732k8919303253
add a comment |
add a comment |
You need to expand the directlua before the test. E.g.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
cs_generate_variant:Nntl_if_eq:nnTF xn
deffootl_if_eq:xnTFdirectluatex.print(tex.textdir)TLTTLTTRT
ExplSyntaxOff
begindocument
%
foo ; directluatex.print(tex.textdir)
textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
Is there an equivalent macro without latex3?
– Salim Bou
Apr 2 at 10:55
You can at first expand the command withedeftmpadirectlua ...
and then useifxtmpadir
but expl3 solutions are imho better (and egreg's test is better than mine, comparing this as string is cleaner.)
– Ulrike Fischer
Apr 2 at 12:42
The expansion should come just before the test like thisdeffooedeftestdirdirectluatex.print(tex.textdir) ifxtestdirdir TLT else TRT fi
For the LaTeX3 syntax I find it a bit difficult.
– Salim Bou
Apr 2 at 13:22
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
2 days ago
@HenriMenke I would like to createif
conditional which test the text direction to change some tex dimensions not just to printTLT
orTRT
like thisif<text direction is TLT> do this else do that fi
– Salim Bou
2 days ago
|
show 1 more comment
You need to expand the directlua before the test. E.g.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
cs_generate_variant:Nntl_if_eq:nnTF xn
deffootl_if_eq:xnTFdirectluatex.print(tex.textdir)TLTTLTTRT
ExplSyntaxOff
begindocument
%
foo ; directluatex.print(tex.textdir)
textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
Is there an equivalent macro without latex3?
– Salim Bou
Apr 2 at 10:55
You can at first expand the command withedeftmpadirectlua ...
and then useifxtmpadir
but expl3 solutions are imho better (and egreg's test is better than mine, comparing this as string is cleaner.)
– Ulrike Fischer
Apr 2 at 12:42
The expansion should come just before the test like thisdeffooedeftestdirdirectluatex.print(tex.textdir) ifxtestdirdir TLT else TRT fi
For the LaTeX3 syntax I find it a bit difficult.
– Salim Bou
Apr 2 at 13:22
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
2 days ago
@HenriMenke I would like to createif
conditional which test the text direction to change some tex dimensions not just to printTLT
orTRT
like thisif<text direction is TLT> do this else do that fi
– Salim Bou
2 days ago
|
show 1 more comment
You need to expand the directlua before the test. E.g.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
cs_generate_variant:Nntl_if_eq:nnTF xn
deffootl_if_eq:xnTFdirectluatex.print(tex.textdir)TLTTLTTRT
ExplSyntaxOff
begindocument
%
foo ; directluatex.print(tex.textdir)
textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
You need to expand the directlua before the test. E.g.
documentclassarticle
usepackagefontspec
setmainfont[Script=Arabic]Amiri
ExplSyntaxOn
cs_generate_variant:Nntl_if_eq:nnTF xn
deffootl_if_eq:xnTFdirectluatex.print(tex.textdir)TLTTLTTRT
ExplSyntaxOff
begindocument
%
foo ; directluatex.print(tex.textdir)
textdir TRT
foo ; directluatex.print(tex.textdir)
enddocument
answered Apr 2 at 10:48
Ulrike FischerUlrike Fischer
198k9305692
198k9305692
Is there an equivalent macro without latex3?
– Salim Bou
Apr 2 at 10:55
You can at first expand the command withedeftmpadirectlua ...
and then useifxtmpadir
but expl3 solutions are imho better (and egreg's test is better than mine, comparing this as string is cleaner.)
– Ulrike Fischer
Apr 2 at 12:42
The expansion should come just before the test like thisdeffooedeftestdirdirectluatex.print(tex.textdir) ifxtestdirdir TLT else TRT fi
For the LaTeX3 syntax I find it a bit difficult.
– Salim Bou
Apr 2 at 13:22
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
2 days ago
@HenriMenke I would like to createif
conditional which test the text direction to change some tex dimensions not just to printTLT
orTRT
like thisif<text direction is TLT> do this else do that fi
– Salim Bou
2 days ago
|
show 1 more comment
Is there an equivalent macro without latex3?
– Salim Bou
Apr 2 at 10:55
You can at first expand the command withedeftmpadirectlua ...
and then useifxtmpadir
but expl3 solutions are imho better (and egreg's test is better than mine, comparing this as string is cleaner.)
– Ulrike Fischer
Apr 2 at 12:42
The expansion should come just before the test like thisdeffooedeftestdirdirectluatex.print(tex.textdir) ifxtestdirdir TLT else TRT fi
For the LaTeX3 syntax I find it a bit difficult.
– Salim Bou
Apr 2 at 13:22
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
2 days ago
@HenriMenke I would like to createif
conditional which test the text direction to change some tex dimensions not just to printTLT
orTRT
like thisif<text direction is TLT> do this else do that fi
– Salim Bou
2 days ago
Is there an equivalent macro without latex3?
– Salim Bou
Apr 2 at 10:55
Is there an equivalent macro without latex3?
– Salim Bou
Apr 2 at 10:55
You can at first expand the command with
edeftmpadirectlua ...
and then use ifxtmpadir
but expl3 solutions are imho better (and egreg's test is better than mine, comparing this as string is cleaner.)– Ulrike Fischer
Apr 2 at 12:42
You can at first expand the command with
edeftmpadirectlua ...
and then use ifxtmpadir
but expl3 solutions are imho better (and egreg's test is better than mine, comparing this as string is cleaner.)– Ulrike Fischer
Apr 2 at 12:42
The expansion should come just before the test like this
deffooedeftestdirdirectluatex.print(tex.textdir) ifxtestdirdir TLT else TRT fi
For the LaTeX3 syntax I find it a bit difficult.– Salim Bou
Apr 2 at 13:22
The expansion should come just before the test like this
deffooedeftestdirdirectluatex.print(tex.textdir) ifxtestdirdir TLT else TRT fi
For the LaTeX3 syntax I find it a bit difficult.– Salim Bou
Apr 2 at 13:22
@SalimBou Just do the comparison in Lua.
directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
2 days ago
@SalimBou Just do the comparison in Lua.
directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
2 days ago
@HenriMenke I would like to create
if
conditional which test the text direction to change some tex dimensions not just to print TLT
or TRT
like this if<text direction is TLT> do this else do that fi
– Salim Bou
2 days ago
@HenriMenke I would like to create
if
conditional which test the text direction to change some tex dimensions not just to print TLT
or TRT
like this if<text direction is TLT> do this else do that fi
– Salim Bou
2 days ago
|
show 1 more comment
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f482749%2fcreate-test-of-text-direction-luatex%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
ifx
does no expansion and only looks at the first level expansion when comparing two macros.– egreg
Apr 2 at 10:49