2008-10-13 5 views

Répondre

2

Vous pouvez utiliser Simple Resx Editor, il a quelques fonctionnalités intéressantes qui vous aideront dans le processus de traduction.

3

Vous pouvez utiliser Resx Editor, un petit éditeur de fichiers orienté vers la traduction.

  • Public cible: traducteurs.
  • format de fichier pris en charge: Microsoft RESX 2,0

Voici un lien vers Joannès de Vermoel (l'auteur de l'outil gratuit) weblog entry à ce sujet.

+0

@takrl merci, le projet a été déplacé vers ce lien apparemment http: //resx.sourceforge.net/(J'ai mis à jour la réponse) – splattne

1

Même si elle est contre-intuitif, il est une meilleure idée de traduire l'exe plutôt que le fichier de ressources. Lisez pourquoi ici:

http://www.apptranslator.com/misconceptions.html

+0

bonne idée, connaissez-vous des applications comme ça pour les fichiers de ressources ASP.NET? –

0

Vous pouvez utiliser Winres.exe de Microsoft, il vous permet de localiser les formulaires Windows sans avoir à utiliser Visual Studio. Il ne sauvegarde pas les ressources dans un fichier texte, mais l'idée est que l'expert en localisation de chaque culture puisse utiliser l'outil pour générer des versions localisées de l'application.

Voici une meilleure explication: http://msdn.microsoft.com/en-us/library/8bxdx003(VS.80).aspx

1

Vous pouvez jeter un oeil à Excel Resource Transfer. Il est un Add-In pour Microsoft Excel pour importer et exporter des textes des fichiers de ressources. Il existe une version d'essai. La version complète coûte 25, - Euro.

1

En fin de compte, je viens d'utiliser un hack rapide:

public class Export 
{ 
    public string Run() 
    { 
     var resources = new StringBuilder(); 

     var assembly = Assembly.GetExecutingAssembly(); 
     var types = from t in assembly.GetTypes() 
        where t != typeof(Export) 
        select t; 
     foreach (Type t in types) 
     { 
      resources.AppendLine(t.Name); 
      resources.AppendLine("Key, Value"); 
      var props = from p in t.GetProperties() 
         where !p.CanWrite && p.Name != "ResourceManager" 
         select p; 
      foreach (PropertyInfo p in props) 
      { 
       resources.AppendFormat("\"{0}\",\"{1}\"\n", p.Name, p.GetValue(null)); 
      } 

      resources.AppendLine(); 
     } 
     return resources.ToString(); 
    } 
} 

Ajoutez ce code au projet qui contient des fichiers your.resx (les miens sont dans un projet « Langues » distinct) puis utilisez le code suivant enregistrer le résultat dans un fichier .csv afin qu'il puisse être chargé avec un éditeur de feuille de calcul.

var hack = new Languages.Export(); 
var resourcesSummary = hack.Run(); 
var cultureName = System.Threading.Thread.CurrentThread.CurrentCulture.Name; 
using (TextWriter file = File.CreateText(@"C:\resources." + cultureName + ".csv")) 
{ 
    file.Write(resourcesSummary); 
} 

Cela ne vous permet pas d'importer des fichiers .csv du retour à vos fichiers .resx afin qu'ils puissent être compilés. Ce serait bien d'avoir un utilitaire qui ferait cela.

+1

Ceci est la vraie réponse. – aliopi

0

Si vous faites cela pour un projet web, est d'utiliser la i18n nuget package une meilleure façon de faire l'internationalisation (y compris la traduction). Non seulement fonctionne-t-il mieux avec les modèles, mais il a aussi d'autres caractéristiques comme les URL localisées.

Voici un exemple de la mise en pension de github:

<div id="content"> 
    <h2>[[[Welcome to my web app!]]]</h2> 
    <h3><span>[[[Amazing slogan here]]]</span></h3> 
    <p>[[[Ad copy that would make Hiten Shah fall off his chair!]]]</p> 
    <span class="button" title="[[[Click to see plans and pricing]]]"> 
     <a href="@Url.Action("Plans", "Home", new { area = "" })"> 
      <strong>[[[SEE PLANS & PRICING]]]</strong> 
      <span>[[[Free unicorn with all plans!]]]</span> 
     </a> 
    </span> 
</div> 

L'exécution d'une tâche de post-construction génère une base de données de bon de commande qui peut être fourni aux traducteurs qui utilisent des outils d'édition PO (comme POEdit) pour fournir un texte spécifique aux paramètres régionaux .

Questions connexes