View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000232 | luatex | luatex limitation | public | 2009-05-26 20:40 | 2015-10-25 11:38 |
Reporter | Khaled Hosny | Assigned To | Taco | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | won't fix | ||
Target Version | 0.80.0 | ||||
Summary | 0000232: \hbox in vmode doesn't inherit text direction | ||||
Description | Horizontal boxes inside vertical mode don't inherit text direction. This affects LaTeX users greatly (section numbers in default classes, beamer and may be other classes as well). | ||||
Tags | No tags attached. | ||||
2009-05-26 20:40
|
|
2009-05-26 20:43
|
|
|
Do you happen to know whether they do inherit the text direction in Aleph? (I suspect they don't) |
|
I forget to mention that, it is the same behavior as Aleph (but not Omega 23 btw) |
|
Omega 23 was so buggy that even Yannis did not use it, so Omega 23's behavior should not be considered an indicator of anything. My thought is that we need to examine this more carefully before changing anything |
|
I am changing this to a 'limitation' while we are investigating the side-effects of making such a change |
|
Here is the proposed solution: The problem is as follows: effectively, there are four direction > specifiers that we have to keep track of: \bodydir, \pardir, > \textdir, and \mathdir (\pagedir can be ignored because it is > never nested). > > In the absense of boxes, this is a simple thing to do: just > fetching and storing values in the equivalents and on the save > stack works just fine. > > But explicit \vbox, \vtop, and \hbox can have a 'dir' keyword, > and that value then perculates down into its content. There > is (currently) only one field for storing a text direction > and that is where the problem starts: a choice is made which > direction command is stored when there is *no* 'dir' specifier > given. This decision is currently based on the mode before > entering the new box, and it goes like this: > > vmode: default will be the current \bodydir > hmode: default will be " \textdir > mmode: default will be " \mathdir > > Once that decision has been made, this default direction is > applied to the three of: \textdir, \bodydir, \pardir inside the > box (just like and explicit 'dir' would be). > > It seems to me that the only clean way out is to store four > fields in every box: one for each direction. At the same time, > we should add four new keywords to the box specification: 'textdir', > 'pardir', 'bodydir', 'mathdir'. Then each direction could inherit > the correct enclosing one if the optional keyword is missing; > or one or two of them could be set separately if one or more of > the new keywords are given; or all four could be set to whatever > the 'dir' keyword specifies (for shortcut functionality). |
|
It seems any attempt to fix this will lead to horrible compatibility issues. We want to clean up the direction handling at some point anyway, and it seems a bad idea to break backward compatibility twice in a row, so I am postponing this to post-0.50 (at least). |
Date Modified | Username | Field | Change |
---|---|---|---|
2009-05-26 20:40 | Khaled Hosny | New Issue | |
2009-05-26 20:40 | Khaled Hosny | File Added: vmode_hbox.tex | |
2009-05-26 20:43 | Khaled Hosny | File Added: vmode_hbox.ltx | |
2009-05-27 16:56 | Taco | Note Added: 0000204 | |
2009-05-27 21:03 | Khaled Hosny | Note Added: 0000206 | |
2009-05-28 14:47 | ishamid | Note Added: 0000207 | |
2009-06-08 11:13 | Taco | Note Added: 0000221 | |
2009-06-08 11:13 | Taco | Status | new => acknowledged |
2009-06-08 11:13 | Taco | Category | luatex bug => luatex limitation |
2009-11-04 17:30 | Taco | Status | acknowledged => assigned |
2009-11-04 17:30 | Taco | Assigned To | => Taco |
2009-11-04 17:33 | Taco | Note Added: 0000323 | |
2009-11-04 17:33 | Taco | Target Version | => 0.50.0 |
2009-11-14 12:57 | Taco | Note Added: 0000342 | |
2009-11-14 12:57 | Taco | Target Version | 0.50.0 => 0.60.0 |
2010-03-04 10:26 | Taco | Target Version | 0.60.0 => 0.70.0 |
2011-04-12 11:09 | Taco | Target Version | 0.70.0 => 0.80.0 |
2015-10-25 11:38 | Hans Hagen | Status | assigned => closed |
2015-10-25 11:38 | Hans Hagen | Resolution | open => won't fix |