A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More


Jan 29, 2012
  4180
(0 votes)

Language files Visual Studio Extension for EPiServer

As you certainly know, EPiServer localization is based on XML files with a certain structure. Working with translations in code is not hard, but I believe it could be even easier with a small extension, that I am going to introduce to you. This is a Visual Studio 2010 extension that has three main functions:

  1. Show values of translation keys as a tool-tips.
  2. Navigate to a line in a language file containing the key.
  3. Copy to the clipboard an expression with path to the key selected in a language file.


In code editor all recognized translation keys are decorated with a thin border.  Tool-tips are shown if you hover a mouse pointer over a decorated translation key. Smart-tags used for navigation can be expanded with left mouse click or by pressing "Ctrl + ." key combination.

The extension can recognize two types of translation references: basic XPath “/admin/settings/heading” and resource binding <%$ Resources: EPiServer, admin.settings.heading %>. Relative paths like Translate(“#heading”) and filtering by attribute value expressions  like Translate(“/pagetypes/property[@name=’Description’]”) are not supported for now.

The extension can be installed from Extension Manager in Visual Studio 2010 (select Online gallery and type “EPiServer” in the search request) or alternatively it can be downloaded from this page.  The source code for the extension is available here.

This project was born during a series of hack-days that we have here in EPiServer development team and it is not an official EPiServer release. You are very welcome to leave feedback and suggestions here in comments or on extensions page. Bugs can be reported and tracked here.

Jan 29, 2012

Comments

Please login to comment.
Latest blogs
A day in the life of an Optimizely OMVP: Learning Optimizely Just Got Easier: Introducing the Optimizely Learning Centre

On the back of my last post about the Opti Graph Learning Centre, I am now happy to announce a revamped interactive learning platform that makes...

Graham Carr | Jan 31, 2026

Scheduled job for deleting content types and all related content

In my previous blog post which was about getting an overview of your sites content https://world.optimizely.com/blogs/Per-Nergard/Dates/2026/1/sche...

Per Nergård (MVP) | Jan 30, 2026

Working With Applications in Optimizely CMS 13

💡 Note:  The following content has been written based on Optimizely CMS 13 Preview 2 and may not accurately reflect the final release version. As...

Mark Stott | Jan 30, 2026

Experimentation at Speed Using Optimizely Opal and Web Experimentation

If you are working in experimentation, you will know that speed matters. The quicker you can go from idea to implementation, the faster you can...

Minesh Shah (Netcel) | Jan 30, 2026