Eclipse RCP application launcher not working properly in Arabic - eclipse

I have an RCP application which I build using the .product file and PDE. In my product file I create a binary launcher for different applications to provide convenience to the user. It all works fine except when testing in Arabic languages.
In Arabic the application starts and it actually shows the Arabic characters that I mocked for testing but, it does not mirror.
That said, if I invoke the launcher and pass the -nl switch
launcher.exe -nl AR
Then it mirrors.
Also if I launch from the IDE with the target platform environment set to AR it mirrors too.
I am shipping the bidi plugins for jface and swt (along with the NL plugins) and for the platform delta packs...
Does anynone know what could be wrong with the laucher?

The launcher itself does not set a value for -nl (or osgi.nl). If it isn't set explicitly then the default is java.util.Locale#getDefault(). The value there depends on the vm/os. You may need to set the nl in the launcher.ini or config.ini files.

Turns out this is a Eclipse/RCP bug
https://bugs.eclipse.org/bugs/show_bug.cgi?id=303889

Related

Install4j shows wrong language at startup

i created an installer with install4j which has 8 languages. The default language is english. According to the manual of install4j the first screen will be displayed in the default system language. But at some systems i get the first "preparing the Install4j assisant..." screen with an different language.
At the logfile i get the informations :
user.language=en
[INFO] System language 'en'
There is also english as default language in the registry of the system (HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Nls\Language).
Can someone help me with this issue. Why i get a different language at the first screen of the installation.
The initial progress dialog is created by the native part of the installer, the installer wizard is created by the Java part of the installer. They have different ways of detecting the default language. You can get more information about the native part of the installer by starting the installer with the argument /create-i4j-log. A separate log file will then be created and shown in the explorer.

How to debug JavaFX application with jdk14/javafx14/Eclipse v.2020-03?

I'm trying to run a JavaFX application to test some custom controls based on jdk14 and JavaFX14. My operating system is Windows 10, the IDE is Eclipse 2020-03, and I use m2e Maven plugin. The controls are exact copies of controls developed under jdk8 and JavaFX8; the earlier controls pass all tests, there was no problem with debugging.
There is no problem getting a test application to run using jdk14 and JavaFX14, but breakpoints are ignored regardless of whether I run in debug mode, or run mode, or whether I modify the Maven command from javafx:run to javafx:debug (that did NOT work) or to javafx:run#debug.
This issue seems to have been addressed several times in the context of a Netbeans IDE (see stackoverflow discussion, and I copied in the text from the modified plugin as suggested, but to no effect.
I have the following questions:
What must be done in order to debug a JavaFX application under the conditions described above?
Who is responsible for dealing with this? Eclipse? OpenJFX? Somebody else?
Based on the principle that whatever solution is developed, it should be as user friendly as the debugging process under jdk8 and JavaFX8 (i.e. before JavaFX and everything else got decoupled from Oracle), is it reasonable to expect that a solution along those lines will be available in the near future? Is anybody working on it now?
Thanks for feedback.

Building Delphi project from Visual Studio Code

I have already set up build and debug environment for Object Pascal inside Visual Studio Code via FPC and GDB, but I just made build process work for programs containing only 1 .pas file via
"command": "fpc",
"args": [ "-g", "-Px86_64", "helloWorld.pas" ],
Now, I need to build quite big Delphi project group (something like solution?) and it contains main project file .groupproj.
Is there a way to build the .groupproj via FPC somehow?
Or at least some workaround like conversion to .lpi and then build via FPC?
Or at least call Delphi compiler/builder from VS Code and build the whole project group via it? (but I don't like this option, because I prefer to not use Delphi)
To get some facts straight for other people that might stumble on this:
FPC supports Delphi source files (.lpr/.dpr, .pp/.pas and .inc). Not Delphi meta information (.dproj/.dof/.bpg/.cfg/.groupproj) which is Delphi version dependent anyway.
Lazarus conversion tool also converts .dfms. Basically it is a .dfm cleaner and Uses clause enhancer, just like some conversion tools between Delphi versions. It by default however also does substitutions that change Delphi code (that works in FPC's Delphi (-Sd) mode) into the objfpc dialect (-S2 mode) preferred by Lazarus . Always make a backup before trying, and check the configuration of the conversion tool thoroughly.
FPC and Delphi commandline parameters are different.
FPC does not support Lazarus metadata formats like .lpi. The Lazarus utility Lazbuild however does support building Lazarus projects from the commandline.
But luckily the basics are the same
a main program or library file files)
a set of unit (.pas files) and include directories (.inc files). FPC differentiates between the two, delphi doesn't.
autocreated forms must be added to the project.
any additional commandline switches like defines to set, range checking optimization options.
So in worst case, examine the Delphi projects (either in IDE or texteditor) for directories and switches and create either a manual buildscript or a lazarus (.lpi) project.
However it is vital to keep in mind that the default FPC mode is NOT Delphi mode, so always when executing FPC make sure you manually enable Delphi mode (-Sd)
Group project support within Lazarus is very new (as in months), and afaik not even in stable versions yet. Though if you create a bunch of .lpis, a batch file/shellscript with a sequence of lazbuild commands on .lpis might do it.
P.s. throw the VSCode under the bus and use Lazarus.

Websphere Application Server 6.1 (localized): Override locale for console messages

I have installed RAD 7.5 (based on Eclipse Ganymede 3.4.0) in Spanish. I'm working with Websphere Application Server 6.1 (spanish too).
The problem I have is that all console messages appear in Spanish, but translation is, in my personal opinion, quite poor (especially since even the console errors are displayed in Spanish and it's difficult to find documentation about exact error messages).
I want to start the IDE in the original language (English) and I know that there is a command line switch -nl en that, placed beside eclipse executable path on program shortcut, serves for this purpose. But I'm still getting some resources' labels (e.g. "Tasks" tab) into spanish (tab says "Tareas"), also server console still displays messages in spanish.
[UPDATE: Yesterday the client for whom I work, changed my PC for a more powerful one, and the untranslated tabs problem does not occur anymore (the new PC has Windows 7 and the previous one was XP, maybe it's that)]
My question is: Does anyone know how I could get WAS console messages displayed 100% in English, overriding locale specified at setup time? Is there some command line switch that serves to get this? Is there any way to edit WAS config files to achieve this?
Note: It is impossible to reinstall RAD and WAS, because of some restrictions on my computer.
Thanks in advance.
Web Console:
To change web console messages you have to set english as web browser's preferred language.
Log messages:
WebSphere logging/tracing mechanism are build upon Java's standard library ResourceBundle/Locale classes.
Localized messages are stored inside WebSphere jars
(example: com.ibm.ws.naming.util.WsnMessages_es.class).
So to change the console language you have to change JVM default locale's language.
In WebSphere Console:
[Application Server] \ Server Infrastructure \
Java and Process Management\
Process definition \
Java Virtual Machine \
Generic JVM arguments
Add parameter : -Duser.language=US
This method changes JVM's configuration so it can have impact on you application.

How to force eclipse to use a specified interface language?

My new work laptop has my native (Polish) locale set. However, I'm simply not able to use eclipse in any language other than English. I'm so used to English names I don't understand the translations.
How do I force Eclipse to start with other language than the OS uses?
OK, I got it:
eclipse.ini should contain following line:
-Duser.language=en_US
If adding "-Duser.language=fr" or "-nl fr" to your command line (or, equivalently, adding "osgi.nl=fr" to configuration/config.ini) has no apparent effect, you are missing the language packs (en_US is the default language pack).
You must then add the "Babel Language Pack Update Site" for the appropriate Eclipse release. Go to http://www.eclipse.org/babel/downloads.php to look it up. For instance, the Juno Babel language pack update site is http://download.eclipse.org/technology/babel/update-site/R0.10.0/juno. Add this site to your Available Software sites (Help: Install New Software: Available Software Sites). You will then be able to select the pertinent "Babel Language Packs for Eclipse" for installation (e.g. fr in this case). After an automatic restart, you should have the UI in your choice of language.