Jump to content

ResxCheck tool -- Check your translations before publishing!


Rick Brewster

Recommended Posts

This handy little utility will let you check your RESX translation file before you publish it. You must have .NET 3.5 installed in order to use this. Please reply with any comments or questions.

The program: http://www.getpaint.net/files/ResxCheck_3_30.zip

The source code: http://www.getpaint.net/files/ResxCheck_3_30_src.zip

ResxCheck v3.30.3033.25892
Copyright (C) 2008 dotPDN LLC, http://www.dotpdn.com/

Usage:
 ResxCheck.exe  [[mui1.resx] [mui2.resx] [mui3.resx] ... [muiN.resx]]

base.resx should be the original resx that is supplied by the developer or design team.

mui1.resx through muiN.resx should be the translated resx files based off of base.resx.
You may specify as many mui resx files as you would like to check.
(You can also not specify any, and then only base.resx will be checked)
TIP: You can specify a wildcard, such as *.resx

This program will check for:
 * base.resx must not have any string defined more than once
 * base.resx must not have any strings with incorrect formatting tags, e.g. having a { but no closing }, or vice versa

If any mui.resx files are specified, then these rules will also be checked:
 * mui.resx must not have any string defined more than once
 * mui.resx must have all the strings that base.resx defines
 * mui.resx must not have any strings defined that are not defined in base.resx
 * mui.resx must not have any strings with incorrect formatting tags, e.g. having a { but no closing }, or vice versa
 * mui.resx must not have any additional formatting tags, e.g. {2}

Examples:

 ResxCheck.exe strings.resx Strings.DE.resx String.IT.resx String.JP.resx
 This will use strings.resx as the 'base', and then check the DE, IT, and JP translations to ensure they pass the constraints and rules described above.

 ResxCheck.exe strings.resx translations\*.resx
 This will use strings.resx as the 'base', and then all of the RESX files found in the translations directory will be validated against it.

The Paint.NET Blog: https://blog.getpaint.net/

Donations are always appreciated! https://www.getpaint.net/donate.html

forumSig_bmwE60.jpg

Link to comment
Share on other sites

Seems to work nicely.

Showed to me that one label was incorrectly named, quick change JpegWidget -> ConfigUI and no errors.

sig.jpg.7f312affa740bae49243c4439bc4a244.jpg

Link to comment
Share on other sites

  • 1 year later...
  • 4 months later...
  • 3 months later...

Well, my translation is ready and I have been trying to use the resxcheck tool but it doesn't seem to work :( (a common phenomenon when a linguist steps into the programming world!)

As soon as I click on the file a black msdos window opens for a split second and then it disappears. I am using Windows 7, maybe it has to do with that?

Anyway, I'd really appreciate it if there's anyone who has used it and would be kind enough to post some instructions.

Link to comment
Share on other sites

1) Move your resx file into a folder, for example in C:\temp. In the same folder should aslo be moved the ResGen.exe file, which can be downloaded from here.

2) Type "cmd" (without quotes) in the search box of Windows 7 and then press Enter. The MS-DOS command prompt will appear. Type "cd c:\temp" (without quotes and with a space between cd an c) to change the folder to the one where you have the resx file. Then right-click and paste the following string adapted for your language:

resgen /compile Strings.xx.resx,PaintDotNet.Strings.3.XX.resources

(the xx and XX are the 2-letter code for the language)

For the romanian language (xx = ro and XX = RO) the above string is:

resgen /compile Strings.ro.resx,PaintDotNet.Strings.3.RO.resources

In the MS-DOS prompt the command will look like this after pasting the string:

C:\temp>resgen /compile Strings.xx.resx,PaintDotNet.Strings.3.XX.resources

for romanian it is:

C:\temp>resgen /compile Strings.ro.resx,PaintDotNet.Strings.3.RO.resources

3) Press Enter and the language file will be generated automatically. Move it in the Paint.NET folder and then choose your language from within the software (Utilities menu).

Edited by muntealb
Link to comment
Share on other sites

@muntealb thank you ever so much, without your explanation I would have never succeded in making it work!

Trully appreciate it!

Link to comment
Share on other sites

I checked the translation against the base file and it didn't have any errors.

scr1h.jpg

But then, when I try to compile the files I get this:

scr4c.jpg

Any ideas what I could be doing wrong?

Edited by sunlioness
Link to comment
Share on other sites

Looking at your screenshots I noticed that your command is lacking the numeral 3,

that is in the command that muntealb gave as example.

Don't know if it's relevant.

Link to comment
Share on other sites

Well, there are two problems here, one is my fault, the other is your fault. The process should work smoothly after reading this message.

1) I forgot to write in my previous message that the file ResGen.exe must also be moved in the folder (C:\temp) with the resx file. Attention, this is not the same file as ResxCheck.exe and you cannot use any ResGen.exe file. I saw that in another thread someone already told you that and attached the correct file for you to use.

2) Indeed, as Sarkut pointed out, your command lacks the number 3, which is the version number of the software. As PDN is now at version 3.5, the number 3 must be used

So, for the greek language the command should be:

resgen /compile Strings.el.resx,PaintDotNet.Strings.3.EL.resources

The full path will look like this:

C:\temp>resgen /compile Strings.el.resx,PaintDotNet.Strings.3.EL.resources

Edited by muntealb
Link to comment
Share on other sites

  • 2 months later...
  • 2 years later...
  • 1 month later...
  • Ego Eram Reputo unpinned this topic

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...