Quantcast
Channel: ResX Resource Manager
Viewing all 2435 articles
Browse latest View live

New Post: Import items from existing resx file?

$
0
0
Hello,
 It is great extension for helping us develop multi language application!

 I am trying to make an existing resx file which have 100+ items, but when i open the 'ResX Resource Manager' window and select the file, the existing items does not show in the grid. Could this feature be add in the future ? or may be i could take a try to modify the code. 

 By the way, i also try to export the existing items to an excel file, but the files is empty , no one record had been exported.  

 I am using Visual Studio 2013 update 5. 

New Post: Import items from existing resx file?

$
0
0
Hi,

What do you mean by "make an existing resx file" - I assume you want to edit it.
In that case it should be included in any project of your solution if you use the VS extension.
If you just want to edit a plain file that's not part of any project, use the standalone version of ResXMananger.

If you export to Excel, make sure you select the right option. If you use "Export selected" and have no entries selected, the file will be of course empty.

Commented Unassigned: Sort order for '_' character [1434]

$
0
0
I just installed 1.0.0.51 and tested the option to sort resx file content by key. It seems that the '_' character is incorrectly sorted last when it should be listed first as follows:

<data name="Select_Input_Images" xml:space="preserve">
<value>Select Input Images</value>
</data>
<data name="SelectLanguage" xml:space="preserve">
<value>Please select a language.</value>
</data>
Comments: ** Comment from web user: tomenglert **

The intention of sorting the files content by key is to keep the file layout consistent between edits, to simplify comparison between different versions - so the exact order of the keys is not important, as long as it does not change. Changing the sort order now would break this.

It was never meant to have the file content sorted by any lexical means. What would you need this behavior for? Why would you need to look at the files content?

About the escaping: I don't do this by my own, I rely on the Microsoft's XML writer to do this in the right way. I the unescaped result is the same, it does not matter.

Source code checked in, #34819

Commented Issue: Unable to save changes to Detect Code References config table [1428]

$
0
0
Hello,

I am running Visual Studio 2013 Update 4 with the ResXManager 1.0.0.50 plugin.

If I make changes to the grid under "Detect Code References" on the Configuration tab, the plugin reverts back to the default settings after I stop/start "Detect Code References" on the Main tab or restart Visual Studio. I can see that the settings were not saved under AppData\Local\tom-englert.de\ResXManager\Configuration.xml.

I think this might be a bug.

Thanks for your help,

James
Comments: ** Comment from web user: tomenglert **

I could reproduce this on one machine where I still had 1.0.0.50 installed, but after upgrading to 1.0.0.51 the problem was gone.
Did you try with 1.0.0.51?

Commented Issue: Unable to save changes to Detect Code References config table [1428]

$
0
0
Hello,

I am running Visual Studio 2013 Update 4 with the ResXManager 1.0.0.50 plugin.

If I make changes to the grid under "Detect Code References" on the Configuration tab, the plugin reverts back to the default settings after I stop/start "Detect Code References" on the Main tab or restart Visual Studio. I can see that the settings were not saved under AppData\Local\tom-englert.de\ResXManager\Configuration.xml.

I think this might be a bug.

Thanks for your help,

James
Comments: ** Comment from web user: JamesCreedy **

Hi Tom,

I can confirm the latest update fixes this issue for me.

Thanks for your help!

Kind regards,

James

Edited Issue: Unable to save changes to Detect Code References config table [1428]

$
0
0
Hello,

I am running Visual Studio 2013 Update 4 with the ResXManager 1.0.0.50 plugin.

If I make changes to the grid under "Detect Code References" on the Configuration tab, the plugin reverts back to the default settings after I stop/start "Detect Code References" on the Main tab or restart Visual Studio. I can see that the settings were not saved under AppData\Local\tom-englert.de\ResXManager\Configuration.xml.

I think this might be a bug.

Thanks for your help,

James

Source code checked in, #34864

$
0
0
Basic translator functions working

Commented Feature: Automatic translations [1171]

$
0
0
I have begun to use this excellent tool for all of our vs projects, but I am missing automatic translation of ressources.

It would be very nice if this tool could be integrated directly with
- Bing Translate Api (free to use http://msdn.microsoft.com/en-us/library/hh454949.aspx)
- Google Translator Api (not free to use: https://developers.google.com/translate/?hl=da).

Api Keys should probably be a configuration option.

This feature could have two main features:
1. automatically translate resx value
2. "right click" to translate individual resx values.
Comments: Associated with changeset 34864: Basic translator functions working

Created Unassigned: Reuse Translations [1435]

$
0
0
In our quite large project, we end up having the same value in multiple resx files (e.g. "Select One"). It would be very useful if we could have this tool reuse the already translated string for each locale and apply to all non-translated entries.

Currently, I sort by the Neutral value and see if any value in one of the other locales is not applied across all the same Neutral values for that locale. If yes, I copy/paste for those values. This can be cumbersome with several supported locales and thousands of resx entries.

The difficulty is when there are conflicting translations - which may in itself be a feature of this feature - since conflicting translations may indicate an error in the translation process. I recommend outputting those "errors" to the console indicating the locale containing the conflicting translations for the specified neutral value (the simplest, low-hanging, initial solution). It may also be useful to allow the user to specify which locale(s) they want to run the reuse translations action on. When there are many conflicting translations, this would help, especially when there are different translations teams for each locale - send them the console output for that locale and have them analyze.

Edited Feature: Automatic translations [1171]

$
0
0
I have begun to use this excellent tool for all of our vs projects, but I am missing automatic translation of ressources.

It would be very nice if this tool could be integrated directly with
- Bing Translate Api (free to use http://msdn.microsoft.com/en-us/library/hh454949.aspx)
- Google Translator Api (not free to use: https://developers.google.com/translate/?hl=da).

Api Keys should probably be a configuration option.

This feature could have two main features:
1. automatically translate resx value
2. "right click" to translate individual resx values.

Source code checked in, #34879

New Comment on "Documentation"

$
0
0
Thanks for all the positive feedback. It would make me even happier if you repeat your feedback on https://visualstudiogallery.msdn.microsoft.com/3b64e04c-e8de-4b97-8358-06c73a97cc68/view/Reviews

Updated Wiki: Automatic Translations

$
0
0
To speed up the localization process you may use automated translations.

Updated Wiki: Documentation

$
0
0

Installation

Visual Studio Extension

Use the Visual Studio Extension Manager (search for RESX), install from the Visual Studio Galery, or download the binaries and double click the ResXManager.VSIX.vsix

Standalone

Run the ClickOnce installer from the Downloads page.

Usage

Visual Studio Extension

ResX Resource Manager Extension can be found in the Tools and in the View|Other Windows menus of Visual Studio. The window will show all ResX based resources in the active solution. Navigating to a resource in the Solution Explorer will automatically select the resource in the ResX Resource Manager. If you are using an integrated SCM, files will be checked out as you type.

Extension.png

Standalone

Start the ResX Resource Manager and select a directory (usually the solutions directory) in the applications main menu. The window will show all ResX based resources in the directory and all sub directories. It will simply group the resources by the nearest project file in the directory tree; no solution will be parsed, so if you don't have a clean directory, orphan or stale copies of resource or project files will appear in the list as well.

Standalone.png

All versions

When you select a resource file, all entries and their translations will be displayed in an editable grid. The first column displays the resource key, the second column the neutral resource, continued by one column per localized language.
You can add new languages and easily add translations by simply typing the localized string in the new columns that appear in the ResX Resource Manager. All entries will be created as you type.

Empty, untranslated entries are marked red, so they are easy to find; you can also sort the columns by clicking the header of any column to move all empty entries to the top. This project has integrated the Data Grid Extensions, so you can simply filter columns to search the view for something special to translate or verify.

Automatic Translations

Detect code references

DetectCodeReferences.png

This feature helps finding orphan strings that are no longer used. If enabled it shows a new column beside the key, displaying the count of possible references to this key found in code. If you hover the mouse over the column, a tool tip shows the location and context of the detected reference.
The engine does not fully parse the source code, but is using a simple text look up algorithm searching for several patterns like ResourceFile.ResourceKey or ResourceFile->ResourceKey; it may also count references in commented code, or maybe other occurrences of any of the patterns, so even if a resources count is greater than zero it may not be used.
On the other hand it will not find indirect references like ResourceFile["ResourceKey"] or even ResourceFile["Resource" + "Key"]. So be aware that a count of zero is no guarantee that this resource is not used; e.g. resources of localized WinForms controls always have a count of zero!

The patterns the algorithm is looking for are:
- Class.Key (e.g. .cs, .vb, .xaml, .cshtml)
- Class::Key (e.g. c++)
- <%$ Resources: Class, Key &> (e.g. .aspx)
- Class.ResourceManager.GetString("Key") (e.g. indirect look up in .cs or .vb)
- both typeof(Class) and "Key" on the same line (e.g. in attributes like [Required(ErrorMessageResourceType = typeof(Class), ErrorMessageResourceName = "Key")], or MyClass.MyLookUpResource("Key", typeof(Class))
- both <Class> and "Key" on the same line (e.g. generic look up method like MyClass.MyLookUpResource<Class>("Key")

Only patterns that appear on a single line are detected. Patterns that span more than one line are not detected.

Invariant strings

Invariant.png

Entries that do not need a translation even though they are stored in a resource file can be marked as invariant. They are not highlighted red when empty but will show up in grey, and they do not appear when the "show only lines with missing strings" filter is activated.

Show only columns of interest

ChooseColumns.png

You can select what columns are visible, to hide languages or comments you're currently not working on.

Copy & Paste or directly export to Excel

CopyPasteExport.png

You can copy and paste selected rows or directly export entire resource tables to an Excel file if you prefer editing in another editor or want to send it in a generic format to your translator. When pasting back or importing Excel files also subsets are supported; you can remove any of the language or comment columns or text rows, only the header row and the first column are mandatory.

Cut and paste are only available if you have selected a single resource file on the left - otherwise it would be ambiguous in which file to add or replace the items.


Note: This tool instantly saves the changes as soon as you leave a cell in the data grid. There is no save button, and undo is limited to the local undo of the grid's cell. If you are using Source Control Management, this is no limitation, since you will anyhow verify the changes before checking in. If you don't use an SCM, I would strongly recommend starting to use one ;-)



Updated Wiki: Detect Code References

$
0
0

Detect code references

Cannot resolve image macro, invalid image name or id.

This feature helps finding orphan strings that are no longer used. If enabled it shows a new column beside the key, displaying the count of possible references to this key found in code. If you hover the mouse over the column, a tool tip shows the location and context of the detected reference.
The engine does not fully parse the source code, but is using a simple text look up algorithm searching for several patterns like ResourceFile.ResourceKey or ResourceFile->ResourceKey; it may also count references in commented code, or maybe other occurrences of any of the patterns, so even if a resources count is greater than zero it may not be used.
On the other hand it will not find indirect references like ResourceFile["ResourceKey"] or even ResourceFile["Resource" + "Key"]. So be aware that a count of zero is no guarantee that this resource is not used; e.g. resources of localized WinForms controls always have a count of zero!

The patterns the algorithm is looking for are:
- Class.Key (e.g. .cs, .vb, .xaml, .cshtml)
- Class::Key (e.g. c++)
- <%$ Resources: Class, Key &> (e.g. .aspx)
- Class.ResourceManager.GetString("Key") (e.g. indirect look up in .cs or .vb)
- both typeof(Class) and "Key" on the same line (e.g. in attributes like [Required(ErrorMessageResourceType = typeof(Class), ErrorMessageResourceName = "Key")], or MyClass.MyLookUpResource("Key", typeof(Class))
- both <Class> and "Key" on the same line (e.g. generic look up method like MyClass.MyLookUpResource<Class>("Key")

Only patterns that appear on a single line are detected. Patterns that span more than one line are not detected.


Updated Wiki: Detect Code References

$
0
0

Detect code references

Cannot resolve image macro, invalid image name or id.

This feature helps finding orphan strings that are no longer used. If enabled it shows a new column beside the key, displaying the count of possible references to this key found in code. If you hover the mouse over the column, a tool tip shows the location and context of the detected reference.
The engine does not fully parse the source code, but is using a simple text look up algorithm searching for several patterns like ResourceFile.ResourceKey or ResourceFile->ResourceKey; it may also count references in commented code, or maybe other occurrences of any of the patterns, so even if a resources count is greater than zero it may not be used.
On the other hand it will not find indirect references like ResourceFile["ResourceKey"] or even ResourceFile["Resource" + "Key"]. So be aware that a count of zero is no guarantee that this resource is not used; e.g. resources of localized WinForms controls always have a count of zero!

The patterns the algorithm is looking for are:
- Class.Key (e.g. .cs, .vb, .xaml, .cshtml)
- Class::Key (e.g. c++)
- <%$ Resources: Class, Key &> (e.g. .aspx)
- Class.ResourceManager.GetString("Key") (e.g. indirect look up in .cs or .vb)
- both typeof(Class) and "Key" on the same line (e.g. in attributes like [Required(ErrorMessageResourceType = typeof(Class), ErrorMessageResourceName = "Key")], or MyClass.MyLookUpResource("Key", typeof(Class))
- both <Class> and "Key" on the same line (e.g. generic look up method like MyClass.MyLookUpResource<Class>("Key")

Only patterns that appear on a single line are detected. Patterns that span more than one line are not detected.


Updated Wiki: Documentation

$
0
0

Installation

Visual Studio Extension

Use the Visual Studio Extension Manager (search for RESX), install from the Visual Studio Galery, or download the binaries and double click the ResXManager.VSIX.vsix

Standalone

Run the ClickOnce installer from the Downloads page.

Usage

Visual Studio Extension

ResX Resource Manager Extension can be found in the Tools and in the View|Other Windows menus of Visual Studio. The window will show all ResX based resources in the active solution. Navigating to a resource in the Solution Explorer will automatically select the resource in the ResX Resource Manager. If you are using an integrated SCM, files will be checked out as you type.

Extension.png

Standalone

Start the ResX Resource Manager and select a directory (usually the solutions directory) in the applications main menu. The window will show all ResX based resources in the directory and all sub directories. It will simply group the resources by the nearest project file in the directory tree; no solution will be parsed, so if you don't have a clean directory, orphan or stale copies of resource or project files will appear in the list as well.

Standalone.png

All versions

When you select a resource file, all entries and their translations will be displayed in an editable grid. The first column displays the resource key, the second column the neutral resource, continued by one column per localized language.
You can add new languages and easily add translations by simply typing the localized string in the new columns that appear in the ResX Resource Manager. All entries will be created as you type.

Empty, untranslated entries are marked red, so they are easy to find; you can also sort the columns by clicking the header of any column to move all empty entries to the top. This project has integrated the Data Grid Extensions, so you can simply filter columns to search the view for something special to translate or verify.

Automatic Translations

Detect Code References

DetectCodeReferences.png

This feature helps finding orphan strings that are no longer used. If enabled it shows a new column beside the key, displaying the count of possible references to this key found in code. If you hover the mouse over the column, a tool tip shows the location and context of the detected reference.
The engine does not fully parse the source code, but is using a simple text look up algorithm searching for several patterns like ResourceFile.ResourceKey or ResourceFile->ResourceKey; it may also count references in commented code, or maybe other occurrences of any of the patterns, so even if a resources count is greater than zero it may not be used.
On the other hand it will not find indirect references like ResourceFile["ResourceKey"] or even ResourceFile["Resource" + "Key"]. So be aware that a count of zero is no guarantee that this resource is not used; e.g. resources of localized WinForms controls always have a count of zero!

The patterns the algorithm is looking for are:
- Class.Key (e.g. .cs, .vb, .xaml, .cshtml)
- Class::Key (e.g. c++)
- <%$ Resources: Class, Key &> (e.g. .aspx)
- Class.ResourceManager.GetString("Key") (e.g. indirect look up in .cs or .vb)
- both typeof(Class) and "Key" on the same line (e.g. in attributes like [Required(ErrorMessageResourceType = typeof(Class), ErrorMessageResourceName = "Key")], or MyClass.MyLookUpResource("Key", typeof(Class))
- both <Class> and "Key" on the same line (e.g. generic look up method like MyClass.MyLookUpResource<Class>("Key")

Only patterns that appear on a single line are detected. Patterns that span more than one line are not detected.

Invariant strings

Invariant.png

Entries that do not need a translation even though they are stored in a resource file can be marked as invariant. They are not highlighted red when empty but will show up in grey, and they do not appear when the "show only lines with missing strings" filter is activated.

Show only columns of interest

ChooseColumns.png

You can select what columns are visible, to hide languages or comments you're currently not working on.

Copy & Paste or directly export to Excel

CopyPasteExport.png

You can copy and paste selected rows or directly export entire resource tables to an Excel file if you prefer editing in another editor or want to send it in a generic format to your translator. When pasting back or importing Excel files also subsets are supported; you can remove any of the language or comment columns or text rows, only the header row and the first column are mandatory.

Cut and paste are only available if you have selected a single resource file on the left - otherwise it would be ambiguous in which file to add or replace the items.


Note: This tool instantly saves the changes as soon as you leave a cell in the data grid. There is no save button, and undo is limited to the local undo of the grid's cell. If you are using Source Control Management, this is no limitation, since you will anyhow verify the changes before checking in. If you don't use an SCM, I would strongly recommend starting to use one ;-)


Updated Wiki: Detect Code References

$
0
0

Detect code references

DetectCodeReferences.png

This feature helps finding orphan strings that are no longer used. If enabled it shows a new column beside the key, displaying the count of possible references to this key found in code. If you hover the mouse over the column, a tool tip shows the location and context of the detected reference.
The engine does not fully parse the source code, but is using a simple text look up algorithm searching for several patterns like ResourceFile.ResourceKey or ResourceFile->ResourceKey; it may also count references in commented code, or maybe other occurrences of any of the patterns, so even if a resources count is greater than zero it may not be used.
On the other hand it will not find indirect references like ResourceFile["ResourceKey"] or even ResourceFile["Resource" + "Key"]. So be aware that a count of zero is no guarantee that this resource is not used; e.g. resources of localized WinForms controls always have a count of zero!

The patterns the algorithm is looking for are configurable on the configuration tab:
DetectCodeReferencesConfig.png

Only patterns that appear on a single line are detected. Patterns that span more than one line are not detected.


Updated Wiki: Invariant Strings

$
0
0
Cannot resolve image macro, invalid image name or id.

Entries that do not need a translation even though they are stored in a resource file can be marked as invariant. They are not highlighted red when empty but will show up in gray, and they do not appear when the "show only lines with missing strings" filter is activated.
Viewing all 2435 articles
Browse latest View live