Eclipse and netbeans for properties file in a project - eclipse

I'm wondering if anyone has encountered this problem and how he solved it. I worked in a project where the IDE is not imposed to developpers (we can use Eclipse, Netbeans etc.).
When working with properties file (Java wait for an ISO-8859-1 encoding), eclipse handles them well, but in Netbeans, each national char (éàü etc.) are automatically escaped like this \uxxx. So eclipse users will get properties file with escaped characters, which is really annoying.
It is painful for i18n for instance.
Does anyone found a workaround for this ?
Edit
In Netbeans 8, it's possible to check an option for properties file that allow us to use project encoding. (See comments below).

That's a sane default behavior - properties file are read using ISO-8859-1 encoding by default (How to use UTF-8 in resource properties with ResourceBundle or find some other resources). I think that NetBeans editor lets you edit them using UTF-8 and converts the content on save. You can override this: select the file (for example in project tab), choose Properties from its context menu and make it use project encoding. NetBeans will not perform the conversion then.

Related

Setting text file encoding per eclipse project

I wanted to know if its posible to set a different file encoding per each project I have on eclipse.
I know that I can have different workspaces and set a different encoding for each one, but id like to have all my projects on one, if posible...
Yes you can.
Open the Properties for the Project and select the 'Resource' tab. Set the 'Text file encoding' to what you want.
Make sure that all the files in the project have their Text file encoding set to 'Default (inherited from container)'
You can also set the defaults for everything in a Folder in the same way.
I think it's possible.
1.Select your project.
2.Right click and select Properties.
3.Select Resource menu and you can choose your file encoding.
This is not working with Eclipse Mars, for some file types, as eg JavaScript. For *.js files, the configuration "Determined from content type" is having precedence over the project's Resource configuration.
I've also tried to specify my JS directory encoding in .settings/org.eclipse.core.resources.pref, which is specific for the project, by defining
encoding//src/main/webapp/js=ISO-8859-1, but then again the workspace configuration is having precedence.
I have a development environment with two distinct projects, one in UTF-8 (newer) and anoter in ISO-8859-1 (legacy). I would like to easily switch between them.
One solution I've found was to create two workspaces. It worked, but it seems rather awkward as instructions to other developers. So it would be desirable to really have such configurations on a per-project basis.

Eclipse .properties file disable escaping of UTF-8 characters

I'm using *.properties files in my java/android applications for my translations files. My problem is that .properties files in eclipse escape utf-8 characters that are out of the ISO-8859-1 charset so I see the escaped characters. So I decided to make my own library that reads the file in utf-8 format. BUT eclipse still escapes characters. Is there any way to make eclipse handle *.properties files as normal text files??
Right Click on the file, properties. Under "resource" tab , check for "Text File Encoding" at the bottom right and change that to UTF-8.
Don't call them .properties files, give them another file extension and they will be handled by the text editor only, instead of the properties file editor.
Even without the editing issue you should not call them .properties, as they are not compliant to the Java properties file standard, which might confuse other developers on that project, other tools and so on.
The best solution however is yet another one: Throw away your selfmade implementation and get yourself a better editor for properties files, which shows you the characters as you want to read them, independent of how they are encoded in the file.

How do I make an editor the default editor for all unknown files in Eclipse?

I regularly open files of different types in Eclipse. For many types, Eclipse uses the system editor by default. I don't want this to happen. I want Eclipse to use the built-in Text Editor for unknown file types. However all I can find are options to set the default editor for a certain file type, but not for all unknown ones. Is there an option to do this?
I don't think you can do this in one swoop, however:
Windows > Preferences > General > Editors > File Association.
If you don't have a LOT of unknown file types, just type *.junk, *.punk, *.clunck and add Text Editor as the default editor.
Sadly you can't use *.* here.
This issue with file associations is something that has always annoyed me with Eclipse. It is specially frustrating if you are trying to use Eclipse to edit files that don't have a file extension because then you can't even set a editor.
I searched over the Eclipse bug database and found my exact issue there. It was first reported in 2003 and up until now there is no solution for it. If you follow the long comment track over the years you will see that there is no way of setting a default editor for unknown file types. From what I gathered the problem boils down to eclipse not looking at the content of file to try to determine the type. Instead it fully depends on the file extension.
Some people have made suggestions for fixes but again nothing has come out of that. If you search the bug tracker DB you will find a lot more bugs created around this.
A clean solution to this is finally implemented in Eclipse.
On the Preferences > General > Editors > File Association page, you can now define an editor selection strategy for unassociated file types.
Source: https://www.eclipse.org/eclipse/news/4.6/platform.php#text-editor-selection-strategy
There is an Eclipse plugin that overrides the default behavior of the platform and opens text file of unknown type in the plain text editor of Eclipse instead in an external editor.
https://github.com/eclipselabs/default-text-editor

how to switch/control syntax highlighting in eclipse flexibly?

I have a file with extension .xml.
But it doesn't necessarily contain XML. It may also contain HTML and JavaScript. Now I would like to either have Eclipse decide inteligently/heuristically which syntax highlighting would be appropriate or to switch it myself.
Any ideas?
Eclipse associates files with an editor. You can let eclipse decide which editor to use (e.g. defaults per file extension) or select the editor by yourself. I guess you might already know that or have at least experienced it.
Syntax highlighting isn't always set seperately but instead part of some editor (together with stuff like keyboard shortcuts). So what you are going to need is an editor that behaves the way you want it to. I do not know if there is an editor like this available but one options is writing an eclipse plug-in and implementing such an editor.
Fortunately there are great editors for each of XML, javascript, HTML, etc that are all open source. I guess you might be able to use some of their code. Ideally as a client of their API / Objects or if it won't work out just by reusing code.
short answer: not possible. use PHPStorm instead :)

Eclipse Encoding MacRoman -> UTF8

I recently created a project, organized it and well... I used my Mac with Eclipse running. Somehow it stored everything in MacRoman. The project has to be UTF8.
Is there any easy way to handle the conversions?
You have some detailed explanation in this blog post by David HOLT for the WOLips/WOProject.
Check your default preferences:
In Eclipse, go to Preferences>General>Workspace and select UTF-8 as the Text File Encoding.
This should set the encoding for all the resources in your workspace. Any components you create from now on using the default encoding should all match.
Change the encoding for a resource (project, folder or file)
Right (or Control) click on the resource in the WO Package Explorer and select the Properties option at the bottom of the contextual menu.
Go to Resource>Text File Encoding.
You should see "Inherited from container (UTF-8)" if you've made the change above, otherwise it will be (MacRoman).
Select Other - UTF-8 and Apply to make the warning go away.