New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Seems Arabic and right-to-left text #228
Comments
Well, Arabic WAS installed but not default (had to test RLT text at some point):
octave_app_diagnostic_dump.txt After removing superflous languages: But that means it does not take the last Language (Danish) or the first by alphabetic order either (Danisk). Don't know. But immediate problem solved, but other might run in to same issue. Thanks |
Ah, yeah: this is some weirdness related to the fact that macOS's locale & language definitions are defined in the Mac layer above the Unix layer, and they get mapped to Unix lcales but the mapping isn't perfect, and I'm not sure which layer Octave and Qt use for language/locale discovery. I think this is a problem in upstream Octave, not something specific to the Octave.app packaging. I'll try reporting this upstream over the weekend and see what they have to say. You could also report it yourself, on their Savannah bug tracker: https://savannah.gnu.org/bugs/?group=octave Leaving this open for now. |
Octave uses Qt functions to query the systems locale ( ISTR that I read somewhere that the very first menu cannot be touched by Qt on macOS. That is created and translated by the OS automagically. (I can't see that menu in Octave on Windows. The first menu is the "File" menu.) Is there some API on macOS that an application can use to signal which language it would like to use for that menu? IIUC, an application should bundle a "localized resource folder": Does octave-app do that? |
Nope: Octave.app does almost nothing besides package up a dedicated Homebrew-prefix environment that includes Octave and all its dependencies plus a little launcher script and a couple trivial diagnostic scripts into a macOS app bundle, and stick that in a DMG installer. All the Mac-specific Qt stuff in Octave.app is provided by upstream Octave. Octave.app is basically a packaging and deployment layer on top of Octave; it doesn't change any behavior aside from some basic $PATH stuff to make it work right when launched by double-clicking the app bundle instead of launching it from a shell command line which has its $PATH set up by the user's shell login scripts. I could see adding some additional stuff like this to Octave.app to make it behave nicer as a Mac app, but I definitely do not have the resources to do any translation or localization. And it seems like this would fit better in core Octave, since it does other stuff to make
I think this might be the macOS-specific API for detecting locale stuff (as opposed to the vanilla Unix one). I wouldn't know how to use it to solve this issue, though. Especially the part about right-to-left text in the command window. |
I'm not a Qt nor macOS expert (not at all). And the Qt documentation doesn't go into much detail. Some of the few sentences on that topic seem to be cut off. On the other hand, the Qt documentation says:
However, the application menu does seem to get localized as reported in the OR. Do I misunderstand the way packaging is supposed to work on macOS? Does localization for the rest of the GUI (i.e. everything apart from the application menu added by the OS) work in Octave on macOS? |
Hmmm. I don't know the answer to either of those questions. I'm going to have to do a little reading and experimenting here. |
Description
Downloaded app for Mac. It starts, but there is "Arabic-like" text in the Octave-GUI menu and the command terminal works RTL and entered text is shown left of the command prompt.
Environment and Diagnostics
Mac OS Catalina
US English interface
Please run
system env
in Octave.app, and copy & paste the output here:Where is
octave_app_diagnostic_dump
located in Octave.app - not in bin folder.)
The text was updated successfully, but these errors were encountered: