Manage a multilingual app - visual-studio

Actually I'm using App Multilingual Toolkit from Microsoft to manage translations from two different languages. I decided to translate it in Brazilian, so I'd like a friend from Brazil to translate of the strings for me. He hasbn't got any programming knowledge, Visual Studio tools and so on.
The question is how can I export from VS and pass him all the string in a readable format? Something that will be easy for me to import later as well.

I'm not sure of AMT, but I used the gnu text translation toolkit (Windows version), which was very easy to use. You can use a webapp called Pootle that non-technical users can use to provide translated strings.
Users would update the strings via the website, which I could download an updated .po file from, this was then added to my deployment, using a little C# helper that read the strings and displayed the correct version depending on the user's language. It was remarkably easy all round, and as Gettext uses English words as the key, if you add a word that is not translated for a language you will get the English 'default' instead which is better than "error: word not defined" :)
IIRC I got into this because someone on the SVN team enabled the tool as a test, since then they've moved to Transifex - I'm not sure if its significantly better as its a commercial web tool, but it might work for you.
That said, there's also Google translation toolkit - good luck getting to it as its now hidden behind Google's "one account login" guff.

There used to be a utility software, appTranslator (http://www.apptranslator.com/), that helped a lot when trying to translate MFC programs.
It will not only help you translate the strings (STRINGTABLE) but will help you translate dialog content as well (update strings in dialogs, move resources if applicable, ... )
It has not been updated in a couple of years.
(just quickly tried it and it seems to work).

I would say CSV is the most readable way to export/import

Related

Working with a foreign language codebase

I work with French-Canadians on a medium to large Web form app. French is their native language while mine is English. I just wondered what others have done in similar situations. I've search for a Translator Extension that would work in Visual Studio but haven't come up with anything.
Usually I just copy and paste portions into Bing/Google Translate but that makes it pretty tedious.
Here you can find a nice Visual Studio extension for translating source code on fly:
https://visualstudiogallery.msdn.microsoft.com/f2321406-c5bb-42b7-9660-dfacd313eeed
It's not as perfect as it could be (which I imagine could be on fly translation of the whole class/file), but it's far more better than switching between windows and copy-pasting to google translator. By the way - the tool uses Google translate and does it quite effectively.

Add Simple Language Support to Visual Studio 2010

I'm developing some VBScript using Visual Studio 2010. The native support for this language isn't great, so going forwards I'm hoping to look into taking advantage of language services / VS Extensions to allow me to improve support for these languages.
For the moment however I just want to make my life simpler by adding a couple of features:
Allow the VS Task List to recognise my 'todo: comments
Allow c# like #region...#endregion functionality to make it easy to break the script up into more easily readable blocks (to comply with VBScript I'd stick an apostrophe before the hash to make it a comment).
Is there a simple way to do this through configuration in VS, or do I have to create an entire language service to get this functionality?
What I'm asking may be impossible; but thought it worth asking on the off chance.
Thanks in advance.
My bet is you could do the tasklist stuff with a simple extension:
http://msdn.microsoft.com/en-us/library/163ba701%28v=vs.80%29.aspx
But to do the #region behavior I'm fairly certain you need a simple stripped out Language Service to get to the Source's AuthoringSink
http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.package.authoringsink.addhiddenregion.aspx
and
http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.package.authoringsink%28v=vs.90%29.aspx

Erlang Internationalization of a web app?

I'm looking to internationalize strings in an Erlang web app. I came across Gettext on trapexit. Any other suggestions as to how to externalize strings in an Erlang app?
gettext has been in daily use since 2003.
Actually, today at the EUC in Stockholm, a tool named POlish was presented that is built on top of gettext. POlish helps with coordinating the translation efforts. See a demo here: http://www.youtube.com/watch?v=UdhE2YOkBCU you'll find POlish (and gettext) at github.
ohh.. this is really old stuff.
I would use Erlectricity (https://github.com/mojombo/erlectricity) and send out strings to Ruby. Right tool for the right job.
If you want to stick to Erlang see whats the status of Zotonic (it is quite rich in this kind of stuff framework). http://zotonic.com/
I haven't used it personally but the last time someone asked this question I found this, which appears to be maintained:
https://github.com/etnt/gettext
Late reply, but I just released yet another gettext library for Erlang https://github.com/seriyps/gettexter .
It have some advantages:
Support for plural forms
GNU gettext compatibility (eg, you can use standard xgettext to extract strings from .erl to .pot)
Comments for translators
Fast string lookup (no message passing, O(1))
Fupport for namespaces (domains). So, you can translate library applications and don't worry about clashes / conflicts.
It's in beta now, but already runs in production.

Reasons to use localized version of Visual Studio 2010?

What reasons to use localized version of Visual Studio 2010? What problems / benefits can you list while using localized versions? Are localized versions really useful?
I can only see problems and very few benefits. Any problems you are likely to experience you will will get them in language other then English, which means searching how to resolve problem in that language is limited on start. Although it may be not directly related but I've been managing servers in polish language for a long time and man I was so many times wishing the errors by polish system was in English. Finding resolution to problems in English is 50x easier then in my native tongue. If you even try to translate error message yourself you will have to be very careful because one translation isn't equal to another, especially when it comes to Microsoft programs (although not only). Many times error in my language given by SharePoint or Windows is so meaningless that you don't even know where to start looking for answers and if you see that error in English you just do "Oh.. it's about this.. simple stuff. Lets fix it".
Back to development.. Visual Studio in English gives you no problems to develop programs for any language you want. And most likely any addons will be in English so you will have mixed environment at some point having one Menu in English and other one in German. Also asking for help and following some tutorials/tips etc will be far easier in English so you won't have to translate stuff On-The-Fly yourself but will just follow the steps.

Macro/Scripting language for non-developers with a simple GUI-based editor

We wish to provide people to be able to add some logic to their accounts(say, given a few arguments, how to compute a particular result). So, essentially, this would be tantamount to writing simple business rules with support for conditionals and expressions. However, the challenge is to provide them a simple online editor where they can create the logic (preferably) by completely visual means (drag/drop Expr-tree nodes maybe -- kinda like Y! pipes).
Does anybody know of a scripting/macro/domain-specific language that lets people do this? The challenge is the visual editor, since we don't wish to invest in developing the UI to do the editing. The basic requirements would be:
1. Embedded into another language, or run securely (no reboot -n or <JUNK-DANGEROUS-COMMAND> >> ~/.bashrc)
2. Easily accessible to users without coding background (no need of any advanced features)
3. Preferably have a simple GUI based editor to create the logic programs accessible to non-developers (kinda like spreadsheets)
4. Some ability to generate compile-time warnings (invalid code) would be good (Type safety?)
5. Ability to embed some data before execution which is available to the interpreter (Eg., name, birthday, amount)
Anybody tried doing something like this and got any ideas? I looked at Lua, Io, Python, Ruby and a host of others, but the challenge essentially is that I don't think non-programmers will be able to understand the code all that much. Something that could be added via "meta-programming" to say a Ruby would be good as well, if an editor could be easily developed!
As a matter fact, Microsoft is developing Oslo, which is right up your alley.
Chris Sells has been writing a lot about it recently.
It is designed to be a way to author DSLs and also to visually author these models with a graphical tool called Quadrant. Sounds very very similar to what you are looking for.
Open source wise, Ruby I think can be close, as you can see if you look at _whytheluckystiff's Try Ruby or Hackety.
I don't think you'll find anything that isn't too generic, especially regarding the GUI editor. There's no generic tools as far as I know that will be able to automatically interface with your program and be able to query data from it and interpret the script into commands in your software -- if there is I'd like to have a copy. Not being flippant, but you will have to do some (probably alot) of work to get this working. It will probably result in you writing a custom DSL.
I would take a look at PowerShell. You could surface all the activities a user would like to script in a very readable way.
There is some talk of using PowerShell to create a DSL on the PowerShell team blog and Bruce Payette, the technical lead, talks about this in his book Windows PowerShell in Action from Manning.
At the other end of the scale is to write something simple as a HyperText Application (HTA) -- assuming Windows of course -- along the lines of my Clive tool. The article on the blog doesn't mention the HTA version, but essentially I could enter VBScript-ish code into one textarea and interpret it on the spot, output going into another text area on the form.
With HTAs giving you all the form control of HTML, plus the DOM, you could come up with something interesting fairly quickly.

Resources