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
What is the intuition behind short exact sequences of groups; in particular, what is the intuition behind group extensions?
Why can't we play rap on piano?
Has there ever been an airliner design involving reducing generator load by installing solar panels?
Can a rocket refuel on Mars from water?
Brothers & sisters
Is it inappropriate for a student to attend their mentor's dissertation defense?
How do I write bicross product symbols in latex?
Did Shadowfax go to Valinor?
Can a virus destroy the BIOS of a modern computer?
How to prevent "they're falling in love" trope
Infinite Abelian subgroup of infinite non Abelian group example
Is it unprofessional to ask if a job posting on GlassDoor is real?
What exploit are these user agents trying to use?
A reference to a well-known characterization of scattered compact spaces
Today is the Center
Watching something be written to a file live with tail
I Accidentally Deleted a Stock Terminal Theme
Could gravitational lensing be used to protect a spaceship from a laser?
Theorems that impeded progress
Stopping power of mountain vs road bike
Emailing HOD to enhance faculty application
Why are electrically insulating heatsinks so rare? Is it just cost?
Is it canonical bit space?
How could indestructible materials be used in power generation?
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
2 days ago
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 2 days ago
Salim Bou
asked 2 days ago
Salim BouSalim Bou
11.5k11442
11.5k11442
2
ifx
does no expansion and only looks at the first level expansion when comparing two macros.
– egreg
2 days ago
add a comment |
2
ifx
does no expansion and only looks at the first level expansion when comparing two macros.
– egreg
2 days ago
2
2
ifx
does no expansion and only looks at the first level expansion when comparing two macros.– egreg
2 days ago
ifx
does no expansion and only looks at the first level expansion when comparing two macros.– egreg
2 days ago
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
2 days ago
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
2 days ago
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
2 days ago
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
yesterday
@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
yesterday
|
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 2 days ago
egregegreg
731k8919303252
731k8919303252
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
2 days ago
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
2 days ago
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
2 days ago
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
yesterday
@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
yesterday
|
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
2 days ago
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
2 days ago
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
2 days ago
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
yesterday
@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
yesterday
|
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 2 days ago
Ulrike FischerUlrike Fischer
198k9305692
198k9305692
Is there an equivalent macro without latex3?
– Salim Bou
2 days ago
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
2 days ago
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
2 days ago
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
yesterday
@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
yesterday
|
show 1 more comment
Is there an equivalent macro without latex3?
– Salim Bou
2 days ago
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
2 days ago
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
2 days ago
@SalimBou Just do the comparison in Lua.directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
yesterday
@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
yesterday
Is there an equivalent macro without latex3?
– Salim Bou
2 days ago
Is there an equivalent macro without latex3?
– Salim Bou
2 days ago
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
2 days ago
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
2 days ago
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
2 days ago
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
2 days ago
@SalimBou Just do the comparison in Lua.
directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
yesterday
@SalimBou Just do the comparison in Lua.
directluatex.print(tex.textdir == "TLT" and "TLT" or "TRT")
– Henri Menke
yesterday
@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
yesterday
@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
yesterday
|
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
2 days ago