How to force eclipse to use a specified interface language? - eclipse

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.

Related

Eclipse Xtext and an independent LSP server do not (appear to) work together - should they?

I have an independently written LSP-compliant language server for a custom language and an Xtext framework for that language, as Eclipse plugins. The two work fine independently; the LSP is connected in using LSP4E.
But when I try to connect the Language Server into a project in which Xtext is providing syntax coloring and some parsing checking, it appears that the language server is never started and certainly is not providing the error messages to the Eclipse UI that it does when used by itself. I'm not asking Xtext to create a language server itself.
The goal is to use (and not reimplement) the LS for parsing and type checking and language-aware code navigation, while using Xtext for syntax coloring.
Can anyone point me to a successful use of these two technologies together? or know that they cannot (yet?) be?
Edit: To the comment about checking whether the LS is working. As far as I can tell, the LS is not even started, though it started fine when used alone. Somehow putting Xtexxt into the mix has usurped the connection to the LS or changed it in a way that the launching and use no longer happens.
The LSP4J version installed is (only) Eclipse LSP4J org.eclipse.lsp4j 0.15.0.v20220805-0131 org.eclipse.lsp4j
Xtext's components vary, but basically Eclipse Xtext Xtext 2.28.0.v20220829-0438 org.eclipse.xtext

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.

Can I replace Command Line Options

I have this option of other installer
install.exe -D$FORCE_UPDATE$=true -l en
This is the option of other installer.
This means below.
If $FORCE_UPDATE$ key is "true" value, install language is English without language Selection dialog.
I want to use this option without modification.
I already knew that How to skip language Selection dialog like this.
install.exe -Dinstall4j.language=en
install.exe -Vsys.languageId=en
But, I would like to use old option
I can't modify this option since I have already released old version.
Can you give me the method about this issue??
Can I use this option programattically?
For the installer, install4j translates
-D$FORCE_UPDATE$=true
to a system property (like the command line syntax for VM parameters for the java executable), so you can query
Boolean.getBoolean("$FORCE_UPDATE$")
in code snippets in install4j.

FireBreath plugin automatic installation

I wrote a plugin using FireBreath, VS2010, for Windows, all browsers.
In FireBreath documentation I saw that I have to install WiX. I installed it.
I created the project using the automatic fbgen tool so it autmatically created a WiX for me.
I couldn't understand from the doc is waht to do now:
Do I have to edit the generated WiX source file? If yes, what to change there?
What to write in the object tag that will trigger the installation of the msi created?
Or at least say to the user that installation is needed and link him to a download?
10x!
With the WiX Toolkit installed, re-run the prep__.bat file to regenerate the installer project along with the main plugin project. Build the plugin project, then build the installer project named something like {YourPlugin}_WiXInstaller. The msi will be placed in Firebreath's \build\bin\{YourPlugin}\{Configuration} dir ( {Configuration} is Debug, Release, etc).
It's not necessary to edit the WiX file unless you really want to change a specific setting. One thing I can think of is changing the default per-user install to all users. Per-user is usually better because it avoids UAC issues.
Deploying it to the user is a bit trickier. For most browsers, the user must save & run the msi. On IE you can declare an object in the HTML body and point the codebase to a URL containing the plugin:
<object id="pluginid" type="application/x-yourplugin" width="0" height="0" codebase="/YourPlugin.msi" >
<param name="onload" value="pluginLoaded" />
</object>
However IE9's security seems to block MSI's here. It does work if the plugin DLL is used (codebase="/YourPlugin.dll"). This auto-install method only works in IE with signed binaries (unless IE's security options are cranked way down).
Hopefully a discussion thread on the MSI security issue will yield some answers.
Update:
As hinted by Richard / taxilian, an MSI must be packaged within a CAB file in order for IE to install it. Getting the INF right and creating the CAB takes some additional steps as documented by RB. And to add yet another wrinkle, Vista/Win7 do not allow the INF to call any binary outside of the CAB file, so a stub launching app must be used (see this thread and example code posted by Roey towards the bottom).

Eclipse RCP application launcher not working properly in Arabic

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