When full support for both RTL-CTL and CJK languages is enabled, the Direction widget in the Format > Paragraph... or Paragraph Style editing dialog should have (at least) five options: "Use superordinate object settings" "Right to Left (Horizontal)" "Left to Right (Horizontal)" "Right to Left (Vertical)" "Left to Right (Vertical)" Yet - I only see the first three, and without mentioning vertical-first writing modes: "Use superordinate object settings" "Right to Left" "Left to Right" I double-checked I have CJK support enable in my prefs dialog. Seeing this problem going back many versions - 7.6.x, 25.2.x, 25.8.x, 26.2 nightlies. Also checked with Safe Mode. Am I forgetting some extra setting somewhere?
They haven't disappeared. Layout direction is a property of pages, so the vertical-first writing modes can only be set on page styles. Paragraph direction, on the other hand, exists for the purposes of the Unicode BiDi Algorithm; lr-tb and rl-tb are the only meaningful values. This is formalized in ODF 1.3 Appendix E.1 (Paragraph and Layout Direction).
(In reply to Jonathan Clark from comment #1) > They haven't disappeared. Layout direction is a property of pages, so the > vertical-first writing modes can only be set on page styles. Paragraph > direction, on the other hand, exists for the purposes of the Unicode BiDi > Algorithm; lr-tb and rl-tb are the only meaningful values. So, that gives me the explanation of what's happening. But - I don't think this is an acceptable situation, from a user's perspective. First and foremost - its a property with the same name and 3 of the 5 possible values are the same. Users cannot be expected to interpret the meaning of "text direction" differently. If the page-level text direction was set to "Right-to-Left (Vertical)", then the paragraph text direction would be expected to be the same thing. If the user were to see only "(vertical)" options, or only "(horizontal)" options - they would understand that the other two options are currently not available, since the paragraph is necessarily-vertical or necessarily-horizontal. That would be less confusing, or perhaps I should say better adhering to the principle of least astonishment[1]. Second - there is no inherent reason why vertical-vs-horizontal writing mode aspect would only be a property of pages rather than of paragraphs. It is quite possible to render one paragraph of text in tblr, and a subsequent paragraph in lrtb, for example. Doing so might not even necessitate the next paragraph being on another page: that would depend on how far along the page the first paragraph's text would reach. Now, sure, it may be the case that LO, or ODF, don't support this - but that lack of support does not translate into a user assuming that paragraph direction should hide the very existence of a vertical vs horizontal aspect. So, bottom line, I think I'm asking, for now, that the values in the PS dialog text direction will have the same parenthetical qualifier as in the PgS dialog; or, alternatively, that we include some label indicating that the directions are vertical-first. [1] : https://en.wikipedia.org/wiki/Principle_of_least_astonishment
Created attachment 203337 [details] Example showing layout and paragraph direction interacting I'd also argue there is a problem with LO/ODF overloading a single attribute to refer to two different concepts. To make this even more interesting, consider the case of an RTL paragraph inside a vertical Asian document (example attached). I suspect it's rare in the real world, but it's a legitimate use case that is well-defined under ODF. In this case, the page writing mode is vertical right-to-left (tb-rl), and the paragraph writing mode is horizontal right-to-left (rl-tb). Even though the text is vertical on the page, it is stored in the ODF and shown in the user interface as "right-to-left", rather than something like "bottom-to-top". I agree something could be done in the UI side to clarify this situation, but I don't have any strong suggestions at the moment. I don't think it makes sense to tie paragraph direction to layout direction more than it already is, though.