jcbvm / i18n-editor Goto Github PK
View Code? Open in Web Editor NEWGUI for editing your i18n translation files
License: MIT License
GUI for editing your i18n translation files
License: MIT License
how to reproduce:
OS: macOS mojave 10.14.4
press down on "n" key until options appear, select "ñ", try to write something else.
I suspect the issue is with the macOS keyboard options pop up.
Two issues here:
Will be more secure if we cannot to change or add new itens with the same same of the node.
Hello!
Very handy program, thanks!
But I can not parsing the JSON file with the array.
Example:
{
"menu": {
"1": "Менеджер",
"2": "Сеть",
"3": "Управление",
"4": "Сценарии",
"5": "Настройки"
},
"api": [
[
{
"name": "Сработал",
"options": [
"датчик 1",
"датчик 2"
]
},
{
"name": "Сработал",
"options": [
"таймер 1",
"таймер 2"
]
}
],
[
{
"name": "Включить",
"options": [
"канал 1",
"канал 2"
]
},
{
"name": "Выключить",
"options": [
"канал 1",
"канал 2"
]
}
]
]
}
And I would like to name the files as the name of the language, and not create separate folders.
For example:
en.json
ru.json
fr.json
...
Add this feature.
I encountered two problems:
Thanks!
@jcbvm If you to implement option to multiples languages I will have pleasure to contribuited the translation to portuguese. Unfortunatelly I do not have experience with Java, but if you start I can help you.
When I triy to rename a tag, the input box is with selection highlight, so if I press enter the item will disappears from list (treeview).
Hello,
I have used i18n-editor for a while with great pleasure. But now when I launch it I can just see the icon in the status-bar (and close the minimized icon with the 'close window button') , but I do not see any window.
I tried to completely uninstall (folder removed), reinstall, or launch it as a jar file. Nothing. What is happening?
Version: 1.0.0
Platform: Win 10
Java version 1.8.0_161
Hi!
On the Add translation box, I could use an autocomplete dropdown. When I'm typing the translation key, the autocomplete could display the already existing translation keys, until the next dot.
In this case if you just start a new translation add process, and did not select any existing translation, you could traverse through the tree faster. (of course selecting from dropdown and pressing tab or space key could insert the selected item)
Thanks
Tom
ember-i18n-editor is great and it is very helpful. However I have encountered the following bug when trying to add some South Asian languages. I've attached a screenshot to explain the issue.
For example, for ta (Tamil),
ஆங்கிலம் is respresented like the image shown below. (Note the spacing of the dots)
However, when saved, the text is rendered properly in the browser or the text editor window.
Hi,
First of, very nice editor!
Would it be possible to specify the translation jsons instead having to follow the project folder structure? I have an existing project where the i18n jsons are inside the same folder, therefore the editor doesn't find them.
Bests,
There should be a setting to allow the editor being started from within Eclipse to open a resource bundle. For that the folder of the opend file must be used by i8n-editor as project base and all properties files related to the called one have to be opened
Hi,
I'm trying to edit the following JSON file:
{
"Aantal": "Amount",
"Betaalmethode": "Payment method",
"Contact": "Contact us"
}
But I can't seem to import it.
Hi,
I tried and edited files in Properties Format.
And I found the order of properties (line order) was changed.
It is supposed to be tricky to keep order among files.
I suggest that keeping order according to specific one file of them.
Thanks for your work.
Sincerely Yours,
Mark Su
While importing existing translation files, it would be nice to select which files to ignore.
In my project, I have localisation files (en.json, de.json etc.) and some other json files used for translation, but following other strutcture and basically there is no need to edit them, because they won't change.
So, while I'm opening my files, thesee additional files are also loaded. It would be nice, if I could just ignore the files i don't need to edit.
Keep up the good work!
Dear Jacob,
Thank you for such a wonderful tool ! One thing which I think would be useful to have is the ability to change font size within inputs. I've used your tool to translate a pretty big project and I found it to be hard to concentrate on the inputs for a long time, as the font at the moment is relatively small.
Thanks,
T
Add option to settings to pick between LF and CRLF endings on save file.
Version: 2.0.0-beta.1
Dear all,
I have the following problem/behaviour, when I use something like this in the translation files:
"enums": {
"AAAA[POST]": {
"A": "A"
},
From the JSON spec side this is valid als long as it has quotes but with the editor I get something like this:
Is this a bug or a feature?
Thank you in advance
Cheers,
Pierre
Hello, I'm opening this issue because I would like to know if it's possible to generate the translations.json
file based on the translation key
provided.
For example:
If I've created a translation key called es_es
I would like to have the translations.json
file with the same name as the key, in this case es_es.json
.
This thing will be a huge benefit based on my needs due to the fact that I need it to be this way and we need like 8 different language resources and the translations team needs to work seamlessly with the development team to make things just, edit, upload and go.
Warm, regards!
Thanks!
If the tool is used by multiple team members on the same project, it will inevitably come to some merge issues because of missing line breaks in the resulting files. It also would help to see which changes were made if the JSON isn't just a long, single line.
Could you introduce an option for formatting the resulting JSON/ES6?
Thanks for this tool, btw – it really is a great help in localizing big applications!
Hello Jacob,
I am evaluating some tools for translation of java property files. I have the following keys in my translations properties file:
addons.gtdSyncWithTodoTxt=GTD Sync with todo.txt
addons.gtdSyncWithTodoTxt.gtdSync=GTD Sync
addons.gtdSyncWithTodoTxt.Project=Project
addons.gtdSyncWithTodoTxt.NextAction=Next action
addons.gtdSyncWithTodoTxt.CompletedAction=Completed
addons.gtdSyncWithTodoTxt.GTDSyncQuickStart=GTD Sync Help: quick start
addons.gtdSyncWithTodoTxt.ConvertLanguage=Convert GTD mind map to English
addons.gtdSyncWithTodoTxt.Archive=Archive
I am not able to change the first key, which is the parent key of the other keys. I can do it with the other tools that I have tried (java properties editor http://www.mightyfrog.org/softwares/i18n/i18n.html and Eclipse ResourceBundle Editor http://essiembre.github.io/eclipse-rbe/). I see this as a bug and it is obviously related to feature request #24.
I have a project generating .json files with its respective LOCALEs in the file name, all in a single folder. I also have configuration files in the same folder, which i suppose won't be a problem, for the app reads only the LOCALE file name and extensions. I tried to open said folder with the editor, but the app gave me an error.
I created a new project and noticed that the app generates an .i18n-editor-metadata file, which is pretty nice. After copying that file to the i18n folder in my on-going project, i was able to open the project in the app, but there was no content whatsoever. There are three files, en.json, es.json and pt-br.json, they have about a 1000 lines each (and increasing), so deleted about 750 lines from the files, and finally was able to open the folder and see the content in the app.
Another problem i found was that changes in edited keys are lost just by clicking on another key, so you would have to edit the key, save the project, and then click on another key to edit it.
TL.DR:
It would be very helpful if the keys with missing locale values were highlighted in red color or with some sort of small warning icons before the key.
some random thoughts here. no pressure. thanks for the hard work!
Please add default language
I have 3 langs
en ro ru
If I add new key to lang ro he dont apear.
Hi,
Thank you so much for making this awesome plugin available.
In all fairness, there is a small bug which is when you save your translation files and send them to someone else for editing, they don't work: http://prntscr.com/l3vvyu
Thank you
Juni
The tree should be navigatable via arrow keys at any time (with for example the alt meta key). Focus should remain where it is, unless a translation field is focused and no leaf node is currently selected. In the latter case focus should return to the first translation field when a leaf node is selected again.
See #15
Hi, ember-i18n has been deprecated over ember-intl which uses a slightly different format.
i18n needs files as {locale}/translations.js
intl does it as {locale}.json
.
Therefore, the contents looks a bit different tooexport default {}
vs {}
.
Would you be able to make a change to i18n-editor to support the ember-intl format?
@jcbvm I will contribute with the Spanish translation
Hi!
I found a strange behaviour. When I add a key to an existing parent node, its all good. I got a leaf node and its all good.
But! If I add a node to an already existing leaf node (which has translation values) that already existing value is removed, when that node is converted into a parent node.
At least a notification about that value erasure would be great, or the possibility to move the value a level down, with the same key name.
This can be achieved by rename key function, because in that case I can insert a key anywhere in that path.
But, this behaviour would be great during simple addition, if I insert key under a leaf key.
Thanks
Tom
See #15
an 'open last project' setting would be very much appreciated. Or perhaps the file browser can remember where is was on the disk.
thanks for e very useful tool
Last update now did not fix 'open recent' issue. Instead the whole 'file' menu is not inaccessible. So you can't save at all
https://www.dropbox.com/s/4dg1jky5pbe5ytd/Screen%20Shot%202017-02-06%20at%2013.29.42.png?dl=0
I have a few translation keys that have trailing whitespace on purpose. However, after editing my existing translation files with i18n, all the trailing whitespace is gone. Even worse, I can't add it again, since adding trailing whitespace won't toggle the save button (so I can't save the project), and even if I make some other changes and save afterwards, the whitespace is stripped again.
i18n-edit has really made my life a lot simpler managing my local translation files for my project. Thanks a lot for this great work, this is very valuable! Translating by hand using just a text editor would have been very tedious, since I'd have to manually check which translation keys are already present in the other file and which aren't. Thanks a lot for that! It would be nice, if this whitespace issue could get fixed, though :)
Steps to reproduce:
I tried this with another locale (ja), that didn't exhibit the same behaviour. Something grc specific? Perhaps because of the comma in 'Greek, Ancient' of the full length language name?
Hey,
So basically if there's anything like
"whatever": { "please wait...": "Please Wait..." }
The file doesn't want to save, I understand that such keys shouldn't be made in the first place(they were made by some other dev not me) but it would be good if the app threw an error or something in such cases rather than refusing to save, took me a few minutes to figure this bug out.
Would it be possible to add a new options when creating JSON translations files, to change the output file from:
{
"login": {
"login": "Entrar sssdds",
"password": "Contraseña",
"username": "Nombre de usuario"
}
}
To:
{
"login.login": "Entrar",
"login.username": "Nombre de usuario",
"login.password": "Contraseña"
}
It will be great to use this tool with react-intl library.
Thanks!!!
First of all: Nice tool - really helpful!
I just have some small things:
It would be more helpful if pressing the TAB key moves the cursor to the next available locale value field and to the previous field with SHIFT + TAB
I am using ngx-translate in my Angular2+ App and your i18n-editor looks great but is not conform with the filenameing standards in my Angular App.
The opportunity to change the naming to the selected language would be great.
See #15
Add undo/redo functionality to translation changes.
Hi,
It runs good in eclipse but I have a problem when I try to export as runnable jar:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at javax.swing.ImageIcon.<init>(ImageIcon.java:217) at com.jvms.i18neditor.util.Images.loadFromClasspath(Images.java:21) at com.jvms.i18neditor.editor.Editor.lambda$16(Editor.java:737) at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) at com.jvms.i18neditor.editor.Editor.setupUI(Editor.java:738) at com.jvms.i18neditor.editor.Editor.launch(Editor.java:590) at com.jvms.i18neditor.Main.lambda$0(Main.java:38) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Hi Jacob,
Thanks for the great tool. I've been translating a lot with your tool recently and one of the features I think would be useful is to change the default behavior of double click selection, when editing/creating new translation key.
At the moment when you double click, entire input field is selected. It would be good to only select the part of text before/after the dot. So in case of "website.main.title" key, if I double click in the area of "website", only "website" is selected, if inside "main", then only "main", etc.
This would speed up the translation process when it comes to renaming, duplication, copy/pasting from code editors, etc.
Thanks,
T
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.