Browse Source

Replace StringResourceTool with ResGet, and update the string resources.

4.x
Daniel Grunwald 11 years ago
parent
commit
58a4f65b5d
  1. 1
      .gitignore
  2. 6
      data/resources/StringResources.cz.resx
  3. 6
      data/resources/StringResources.de.resx
  4. 23
      data/resources/StringResources.es-mx.resx
  5. 23
      data/resources/StringResources.es.resx
  6. 6
      data/resources/StringResources.fi.resx
  7. 69
      data/resources/StringResources.fr.resx
  8. 8
      data/resources/StringResources.hu.resx
  9. 29
      data/resources/StringResources.it.resx
  10. 6
      data/resources/StringResources.kr.resx
  11. 21
      data/resources/StringResources.nl.resx
  12. 8
      data/resources/StringResources.no.resx
  13. 8
      data/resources/StringResources.pl.resx
  14. 33
      data/resources/StringResources.pt-br.resx
  15. 6
      data/resources/StringResources.pt.resx
  16. 8
      data/resources/StringResources.ro.resx
  17. 8
      data/resources/StringResources.ru.resx
  18. 349
      data/resources/StringResources.se.resx
  19. 248
      data/resources/StringResources.tr.resx
  20. 6
      data/resources/StringResources.zh.resx
  21. 32
      src/Tools/LocalizationDbToResFile/AssemblyInfo.cs
  22. 44
      src/Tools/LocalizationDbToResFile/LocalizationDbToResFile.csproj
  23. 4
      src/Tools/LocalizationDbToResFile/LocalizationDbToResFile.csproj.user
  24. 109
      src/Tools/LocalizationDbToResFile/Main.cs
  25. 72
      src/Tools/LocalizationXmlToResFile/LocalizationXmlToResFile.cs
  26. 43
      src/Tools/LocalizationXmlToResFile/LocalizationXmlToResFile.csproj
  27. 4
      src/Tools/LocalizationXmlToResFile/LocalizationXmlToResFile.csproj.user
  28. 1
      src/Tools/ResGet/DownloadAll.bat
  29. 4
      src/Tools/ResGet/README.txt
  30. BIN
      src/Tools/ResGet/ResGet.exe
  31. 26
      src/Tools/ResGet/ResGet.exe.config
  32. 56
      src/Tools/StringResourceTool/BuildResourceFiles.cs
  33. 32
      src/Tools/StringResourceTool/CookieAwareWebClient.cs
  34. 566
      src/Tools/StringResourceTool/MainForm.cs
  35. 120
      src/Tools/StringResourceTool/MainForm.resx
  36. 93
      src/Tools/StringResourceTool/ResourceDatabase.cs
  37. 67
      src/Tools/StringResourceTool/StringResourceTool.csproj
  38. 22
      src/Tools/StringResourceTool/StringResourceTool.sln
  39. 152
      src/Tools/StringResourceTool/TranslationServer.cs
  40. 27
      src/Tools/StringResourceToolAddIn/Configuration/AssemblyInfo.cs
  41. 92
      src/Tools/StringResourceToolAddIn/Src/Command.cs
  42. 19
      src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.addin
  43. 61
      src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.csproj
  44. 18
      src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.sln

1
.gitignore vendored

@ -20,3 +20,4 @@ bin/ @@ -20,3 +20,4 @@ bin/
/src/AddIns/Misc/UsageDataCollector/UsageDataCollector.AddIn/AnalyticsMonitor.AppProperties.cs
/src/AddIns/Misc/PackageManagement/Packages/AvalonEdit/lib
/src/Tools/ResGet/*.log

6
data/resources/StringResources.cz.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Tento zdroj není používán. Jeho účelem je testování kvality překladu a konce řádku</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>O pluginu</value>
</data>
@ -6155,7 +6158,4 @@ Došlo k chybě při spuštění:</value> @@ -6155,7 +6158,4 @@ Došlo k chybě při spuštění:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Odkomentovat oblast</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Tento zdroj není používán. Jeho účelem je testování kvality překladu a konce řádku</value>
</data>
</root>

6
data/resources/StringResources.de.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>6e61ff43-0241-47da-95bd-2ab6cd6d60f7</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Über...</value>
</data>
@ -7718,7 +7721,4 @@ Fehler beim Starten: @@ -7718,7 +7721,4 @@ Fehler beim Starten:
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Kommentar entfernen</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>6e61ff43-0241-47da-95bd-2ab6cd6d60f7</value>
</data>
</root>

23
data/resources/StringResources.es-mx.resx

@ -117,6 +117,10 @@ @@ -117,6 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Este recurso no es utilizado. Su propósito es probar la base de datos de traducción y tiene
un retorno de línea.</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Acerca de</value>
</data>
@ -2352,6 +2356,9 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".</value> @@ -2352,6 +2356,9 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".</value>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightBracketCheckBox" xml:space="preserve">
<value>Resaltar &amp;corchetes</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightCurrentLineCheckBox" xml:space="preserve">
<value>Resaltar la línea actual</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightSymbolCheckBox" xml:space="preserve">
<value>Resaltar símbolos</value>
</data>
@ -6097,6 +6104,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension< @@ -6097,6 +6104,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
<data name="SharpDevelop.Refactoring.ClassesDerivingFrom" xml:space="preserve">
<value>Clases derivadas de ${Name}</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingCommand" xml:space="preserve">
<value>Pegar desde el anillo del portapapeles...</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingEmpty" xml:space="preserve">
<value>El anillo del portapapeles esta vacío</value>
</data>
<data name="SharpDevelop.Refactoring.ConvertToAutomaticProperty" xml:space="preserve">
<value>Convertir a propiedad automática</value>
</data>
@ -6572,6 +6585,12 @@ Los archivos de recursos han sido renombrados/movidos convenientemente.</value> @@ -6572,6 +6585,12 @@ Los archivos de recursos han sido renombrados/movidos convenientemente.</value>
<data name="StatusBarService.CursorStatusBarPanelText" xml:space="preserve">
<value>ln ${Line} col ${Column} car ${Character}</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextMulti" xml:space="preserve">
<value>len ${Rows} * ${Cols} (${Total})</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextSingle" xml:space="preserve">
<value>len ${Length}</value>
</data>
<data name="Templates.File.Categories.Misc" xml:space="preserve">
<value>Varios</value>
</data>
@ -7719,8 +7738,4 @@ Error al iniciar:</value> @@ -7719,8 +7738,4 @@ Error al iniciar:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Descomentar región</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Este recurso no es utilizado. Su propósito es probar la base de datos de traducción y tiene
un retorno de línea.</value>
</data>
</root>

23
data/resources/StringResources.es.resx

@ -117,6 +117,10 @@ @@ -117,6 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Este recurso no se está usando. Su propósito es probar la base de datos de traducción y tiene
un salto de línea</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Acerca de...</value>
</data>
@ -2349,6 +2353,9 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib @@ -2349,6 +2353,9 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightBracketCheckBox" xml:space="preserve">
<value>Resaltar &amp;corchetes</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightCurrentLineCheckBox" xml:space="preserve">
<value>Resaltar la línea actual</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightSymbolCheckBox" xml:space="preserve">
<value>Resaltar símbolos</value>
</data>
@ -6103,6 +6110,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension< @@ -6103,6 +6110,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
<data name="SharpDevelop.Refactoring.ClassesDerivingFrom" xml:space="preserve">
<value>Clases derivadas de ${Name}</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingCommand" xml:space="preserve">
<value>Pegar desde el anillo del portapapeles...</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingEmpty" xml:space="preserve">
<value>El anillo del portapapeles esta vacío</value>
</data>
<data name="SharpDevelop.Refactoring.ConvertToAutomaticProperty" xml:space="preserve">
<value>Convertir a propiedad automática</value>
</data>
@ -6579,6 +6592,12 @@ Los archivos de recursos han sido renombrados o cambiados de ubicación de acuer @@ -6579,6 +6592,12 @@ Los archivos de recursos han sido renombrados o cambiados de ubicación de acuer
<data name="StatusBarService.CursorStatusBarPanelText" xml:space="preserve">
<value>ln ${Line} col ${Column} car ${Character}</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextMulti" xml:space="preserve">
<value>len ${Rows} * ${Cols} (${Total})</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextSingle" xml:space="preserve">
<value>len ${Length}</value>
</data>
<data name="Templates.File.Categories.Misc" xml:space="preserve">
<value>Misceláneo</value>
</data>
@ -7726,8 +7745,4 @@ Error mientras se iniciaba:</value> @@ -7726,8 +7745,4 @@ Error mientras se iniciaba:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Descomentar Región</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Este recurso no se está usando. Su propósito es probar la base de datos de traducción y tiene
un salto de línea</value>
</data>
</root>

6
data/resources/StringResources.fi.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Resurssia ei käytetä. Sen tarkoituksena on testata suomennosta ja rivinvaihtoa.</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>About SharpDevelop, finnish lang dev: Pekka Herala domain: sivustot.net</value>
</data>
@ -5654,7 +5657,4 @@ Työkalusarja, joka rakentaa Windows asennuspaketteja XML-lähdekoodilla. Sarja @@ -5654,7 +5657,4 @@ Työkalusarja, joka rakentaa Windows asennuspaketteja XML-lähdekoodilla. Sarja
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Kommentti valinta</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Resurssia ei käytetä. Sen tarkoituksena on testata suomennosta ja rivinvaihtoa.</value>
</data>
</root>

69
data/resources/StringResources.fr.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Cette ressource n'est pas utilisée. Son but est de tester la base de données de traduction.</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>A propos</value>
</data>
@ -206,7 +209,7 @@ @@ -206,7 +209,7 @@
</data>
<data name="AddInManager.NoAddInsInstalled" xml:space="preserve">
<value>Vous n'avez aucun AddIn installé.
Téléchargez un AddIn depuis l'Internet, cliquez ensuite sur 'Installer un AddIn' et choisissez le fichier téléchargé pour l'installer.</value>
Téléchargez un AddIn depuis Internet, cliquez ensuite sur 'Installer un AddIn' et choisissez le fichier téléchargé pour l'installer.</value>
</data>
<data name="AddInManager.OpenWebsite" xml:space="preserve">
<value>Ouvrir le site Web</value>
@ -287,17 +290,11 @@ Téléchargez un AddIn depuis l'Internet, cliquez ensuite sur 'Installer un AddI @@ -287,17 +290,11 @@ Téléchargez un AddIn depuis l'Internet, cliquez ensuite sur 'Installer un AddI
<value>Voir le contrat de license</value>
</data>
<data name="AddInManager2.DisableDependentWarning" xml:space="preserve">
<value>Les Add-Ins installés suivant sont dépendant de "{0}":
{1}
<value>Les Add-Ins installés suivant sont dépendant de "{0}": {1}
Ils ne fonctionneront plus si vous désactivez cet Add-In! Souhaitez-vous continuer?</value>
</data>
<data name="AddInManager2.InstallDependentMessage" xml:space="preserve">
<value>Package "{0}" nécessite au moins une dépendance:
{1}
<value>Package "{0}" nécessite au moins une dépendance: {1}
L'application va essayer de les télécharger et de les installer. Souhaitez-vous continuer?</value>
</data>
<data name="AddInManager2.InvalidPackage" xml:space="preserve">
@ -314,8 +311,8 @@ L'application va essayer de les télécharger et de les installer. Souhaitez-vou @@ -314,8 +311,8 @@ L'application va essayer de les télécharger et de les installer. Souhaitez-vou
Si vous ne le souhaitez pas, veuillez cliquer "Je décline".</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Explanation.Packages" xml:space="preserve">
<value>En cliquant "J'accepte", vous êtes d'accord pour la license des packages suivant.
Si vous ne le souhaitez pas, veuillez cliquer "Je décline".</value>
<value>En cliquant sur "J'accepte", vous êtes d'accord pour la license des packages suivant.
Si vous ne le souhaitez pas, veuillez cliquer sur "Je décline".</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Introduction.Package" xml:space="preserve">
<value>Le package suivant nécessite que vous acceptiez sa license:</value>
@ -357,10 +354,7 @@ Si vous ne le souhaitez pas, veuillez cliquer "Je décline".</value> @@ -357,10 +354,7 @@ Si vous ne le souhaitez pas, veuillez cliquer "Je décline".</value>
<value>Dépots</value>
</data>
<data name="AddInManager2.RemoveDependentWarning" xml:space="preserve">
<value>Les Add-Ins installés suivant sont dépendants de "{0}":
{1}
<value>Les Add-Ins installés suivant sont dépendants de "{0}": {1}
Ils ne fonctionneront plus si vous désinstallez cet Add-In! Souhaitez-vous continuer?</value>
</data>
<data name="AddInManager2.SDAddInFileFilter" xml:space="preserve">
@ -538,7 +532,7 @@ Ils ne fonctionneront plus si vous désinstallez cet Add-In! Souhaitez-vous cont @@ -538,7 +532,7 @@ Ils ne fonctionneront plus si vous désinstallez cet Add-In! Souhaitez-vous cont
<value>Session de profilage SharpDevelop</value>
</data>
<data name="AddIns.Profiler.Messages.FileNotFound" xml:space="preserve">
<value>Ce projet ne peut pas démarrer, exécutable introuvable, assurez-vous que le projet et toutes ses dépendances sont construites.</value>
<value>Ce projet ne peut pas démarrer, l'exécutable est introuvable. Assurez-vous que le projet et toutes ses dépendances sont compilées correctement!</value>
</data>
<data name="AddIns.Profiler.Messages.NoStartableProjectFound" xml:space="preserve">
<value>Aucun projet n'est démarrable. Arrêt...</value>
@ -1026,7 +1020,7 @@ Sauvegardez ces fichiers avant de déclencher l'opération.</value> @@ -1026,7 +1020,7 @@ Sauvegardez ces fichiers avant de déclencher l'opération.</value>
<value>Sauvegarder en UTF-8</value>
</data>
<data name="BackendBindings.ExecutionManager.CantExecuteDLLError" xml:space="preserve">
<value>Le projet est configuré comme dll et aucune commande a exécuter n'a été spécifiée. Vous pouvez spécifier une commande a exécuter dans les options du projet.</value>
<value>Le projet est configuré comme DLL et aucune commande a exécuter n'a été spécifiée. Vous pouvez spécifier une commande a exécuter dans les options du projet.</value>
</data>
<data name="BackendBindings.ExecutionManager.NoSingleFileCompilation" xml:space="preserve">
<value>Compiler un fichier seul n'est pas possible, veuillez créer un projet!</value>
@ -1636,7 +1630,8 @@ Pour créer ou manipuler un objet ActiveX/COM, déplcaer une classe depuis TypeL @@ -1636,7 +1630,8 @@ Pour créer ou manipuler un objet ActiveX/COM, déplcaer une classe depuis TypeL
<value>Aller à la ligne</value>
</data>
<data name="Dialog.Goto.IntroText" xml:space="preserve">
<value>Veuillez entrer une expression à atteindre. Vous pouvez donner un numéro de ligne, un nom de classe ou de fichier ("120", "MainClass" "Main.cs, 120" par exemple).</value>
<value>Veuillez entrer une expression à atteindre. Vous pouvez donner un numéro de ligne, un nom de classe ou de fichier.
Exemples: "120", "MainClass" "Main.cs, 120".</value>
</data>
<data name="Dialog.HighlightingEditor.ColorDlg.Background" xml:space="preserve">
<value>Couleur de l'arrière-plan</value>
@ -2348,6 +2343,9 @@ Voulez-vous ajouter le nouveau fichier au projet ${CurrentProjectName}?</value> @@ -2348,6 +2343,9 @@ Voulez-vous ajouter le nouveau fichier au projet ${CurrentProjectName}?</value>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightBracketCheckBox" xml:space="preserve">
<value>Accolades en surbrillance</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightCurrentLineCheckBox" xml:space="preserve">
<value>Surligner la ligne actuelle</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightSymbolCheckBox" xml:space="preserve">
<value>Surligner symboles</value>
</data>
@ -2758,7 +2756,7 @@ Voulez-vous ajouter le nouveau fichier au projet ${CurrentProjectName}?</value> @@ -2758,7 +2756,7 @@ Voulez-vous ajouter le nouveau fichier au projet ${CurrentProjectName}?</value>
</data>
<data name="Dialog.ProjectOptions.StorageLocationHelp" xml:space="preserve">
<value>Le petit button devant chaque option de configuration vous permet de choisir l'endroit où est enregistré la configuration.
'Configuration-specific' signigie que la configuration est appliqué au type de Projet (Debug/Release).
'Configuration-specific' signifie que la configuration est appliquée au type de Projet (Debug/Release).
'Platform-specific' signifie que la configuration peut avoir une valeur différente par plateforme.
Vous pouvez aussi choisir de stocker la configuration dans le fichier .user-file au lieu du projet, permettant à chaque développeur d'utiliser une valeur différente sans entrer en conflit avec le système de gestion du code source.</value>
</data>
@ -3442,7 +3440,6 @@ Vous pouvez aussi choisir de stocker la configuration dans le fichier .user-file @@ -3442,7 +3440,6 @@ Vous pouvez aussi choisir de stocker la configuration dans le fichier .user-file
</data>
<data name="ICSharpCode.NAntAddIn.AbstractRunNAntCommand.NAntExeNotFoundMessage" xml:space="preserve">
<value>Impossible de trouver NAnt '{0}'.
Configurez le chemin vers NAnt dans les options de SharpDevelop.</value>
</data>
<data name="ICSharpCode.NAntAddIn.AbstractRunNAntCommand.NAntStoppedMessage" xml:space="preserve">
@ -3596,10 +3593,10 @@ Configurez le chemin vers NAnt dans les options de SharpDevelop.</value> @@ -3596,10 +3593,10 @@ Configurez le chemin vers NAnt dans les options de SharpDevelop.</value>
<value>Envoyer vers la console Ruby</value>
</data>
<data name="ICSharpCode.Services.FileUtilityService.CantLoadFileStandardText" xml:space="preserve">
<value>Chargement du fichier ${FileNameWithoutPath} depuis ${Path}. Controler les droits et l'existence du fichier.</value>
<value>Chargement du fichier ${FileNameWithoutPath} depuis ${Path}. Controlez les droits et l'existence du fichier.</value>
</data>
<data name="ICSharpCode.Services.FileUtilityService.CantSaveFileStandardText" xml:space="preserve">
<value>Enregistrement impossible du fichier ${FileNameWithoutPath} sous ${Path}. Choisir un autre nom de fichier ou controler si le répertoire existe ainsi que les droits d'écriture pour le chemin et le fichier. (Peut être un problème de protection en écriture)</value>
<value>Enregistrement impossible du fichier ${FileNameWithoutPath} sous ${Path}. Choisissez un autre nom de fichier ou controlez si le répertoire existe ainsi que les droits d'écriture pour le chemin et le fichier.</value>
</data>
<data name="ICSharpCode.SharpDevelop.BrowserDisplayBinding.Browser" xml:space="preserve">
<value>Navigateur</value>
@ -3632,7 +3629,7 @@ Configurez le chemin vers NAnt dans les options de SharpDevelop.</value> @@ -3632,7 +3629,7 @@ Configurez le chemin vers NAnt dans les options de SharpDevelop.</value>
<value>&lt;Par défaut&gt;</value>
</data>
<data name="ICSharpCode.SharpDevelop.Commands.ChooseLayoutCommand.ResetToDefaultsQuestion" xml:space="preserve">
<value>Etes-vous sûr de vouloir charger la configuration par défaut de l'espace de travail? Note: Ceci n'affectera pas vos layouts personnalisés.</value>
<value>Etes-vous sûr de vouloir charger la configuration par défaut de l'espace de travail ? Note: Ceci n'affectera pas vos layouts personnalisés.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Commands.Convert" xml:space="preserve">
<value>Conversion</value>
@ -3713,7 +3710,7 @@ Configurez le chemin vers NAnt dans les options de SharpDevelop.</value> @@ -3713,7 +3710,7 @@ Configurez le chemin vers NAnt dans les options de SharpDevelop.</value>
<value>Le fichier est introuvable.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Commands.ReloadFile.ReloadFileQuestion" xml:space="preserve">
<value>Etes vous sûr que vous voulez recharger le fichier ?
<value>Etes-vous sûr que vous voulez recharger le fichier ?
Toutes les modifications seront perdues.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Commands.RunCompile.LanguageBindingCantCompileFileError" xml:space="preserve">
@ -3985,7 +3982,7 @@ Toutes les modifications seront perdues.</value> @@ -3985,7 +3982,7 @@ Toutes les modifications seront perdues.</value>
<value>L'ajout de ce composant conduirait à une dépendance cyclique.</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Hosts.DefaultDesignerHost.ExceptionDuringComponentCreationError" xml:space="preserve">
<value>Exception lors de la création d'un composant pour le Form Designer (un composant a levé une exception dans son constructeur). CELA N'AFFECTE EN RIEN VOTRE CODE SOURCE.</value>
<value>Exception lors de la création d'un composant pour le Form Designer (un composant a levé une exception dans son constructeur). CELA N'AFFECTE PAS VOTRE CODE SOURCE.</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.LoadErrorCheckSourceCodeForErrors" xml:space="preserve">
<value>Impossible de charger le concepteur. Vérifier les erreurs de syntaxe du code source et si toutes les références sont disponibles.</value>
@ -4476,7 +4473,7 @@ Allez dans 'Outils/Options-&gt;Style Visuel pour changer l'ambiance actuelle.</v @@ -4476,7 +4473,7 @@ Allez dans 'Outils/Options-&gt;Style Visuel pour changer l'ambiance actuelle.</v
<value>Impossible de trouver le dialogue id '{0}' dans le document.</value>
</data>
<data name="ICSharpCode.WixBinding.ExtensionBinding.InvalidExtension" xml:space="preserve">
<value>Une extension doit être de la forme: Classe, Assembly
<value>Une extension doit être de la forme: Classe, Nom d'Assembly
Par exemple: Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension</value>
</data>
@ -6092,6 +6089,15 @@ Soit ils n'existent pas, soit le document Wix n'est pas pour WiX 3.0 et l'espace @@ -6092,6 +6089,15 @@ Soit ils n'existent pas, soit le document Wix n'est pas pour WiX 3.0 et l'espace
<data name="SharpDevelop.Refactoring.ClassesDerivingFrom" xml:space="preserve">
<value>Classes dérivant de ${Name}</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRing" xml:space="preserve">
<value>Presse-papiers circulaire</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingCommand" xml:space="preserve">
<value>Coller depuis le presse-papier circulaire...</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingEmpty" xml:space="preserve">
<value>Le presse-papier circulaire est vide</value>
</data>
<data name="SharpDevelop.Refactoring.ConvertToAutomaticProperty" xml:space="preserve">
<value>Convertir en propriété automatique</value>
</data>
@ -6567,6 +6573,12 @@ Les fichiers de resources ont été renommés/déplacés en conséquence.</value @@ -6567,6 +6573,12 @@ Les fichiers de resources ont été renommés/déplacés en conséquence.</value
<data name="StatusBarService.CursorStatusBarPanelText" xml:space="preserve">
<value>li. ${Line} col. ${Column} car. ${Character}</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextMulti" xml:space="preserve">
<value>longueur ${Rows} * ${Cols} (${Total})</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextSingle" xml:space="preserve">
<value>longueur ${Length}</value>
</data>
<data name="Templates.File.Categories.Misc" xml:space="preserve">
<value>Divers</value>
</data>
@ -7540,7 +7552,7 @@ Les fichiers de resources ont été renommés/déplacés en conséquence.</value @@ -7540,7 +7552,7 @@ Les fichiers de resources ont été renommés/déplacés en conséquence.</value
<value>Compiler projet actif ou buffer (si pas de projet ouvert) (Sauvegarde auto.)</value>
</data>
<data name="XML.MainMenu.RunMenu.Compile.StopDebuggingQuestion" xml:space="preserve">
<value>Une session de déboguage est en cours, voulez vous l'arrêter pour reconstruire le projet?</value>
<value>Une session de déboguage est en cours, voulez-vous l'arrêter pour reconstruire le projet?</value>
</data>
<data name="XML.MainMenu.RunMenu.Compile.StopDebuggingTitle" xml:space="preserve">
<value>Arrêter le déboguage</value>
@ -7714,7 +7726,4 @@ Erreur lors du démarrage:</value> @@ -7714,7 +7726,4 @@ Erreur lors du démarrage:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Partie non commentée</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Cette ressource n'est pas utilisée. Son but est de tester la base de donnée de traduction.</value>
</data>
</root>

8
data/resources/StringResources.hu.resx

@ -117,6 +117,10 @@ @@ -117,6 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Ez az erőforrás nincs használva. Célja a fordító adatbázis tesztelése.
Valamint soremelést tartalmaz.</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>About</value>
</data>
@ -5079,8 +5083,4 @@ Hiba az indításkor:</value> @@ -5079,8 +5083,4 @@ Hiba az indításkor:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Megjegyzésből ki</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Ez az erőforrás nincs használva. Célja a fordító adatbázis tesztelése.
Valamint soremelést tartalmaz.</value>
</data>
</root>

29
data/resources/StringResources.it.resx

@ -117,6 +117,10 @@ @@ -117,6 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Questa risorsa non viene utilizzata. Il suo scopo è di testare il database di traduzione ed ha
una riga a capo</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Informazioni su...</value>
</data>
@ -309,6 +313,17 @@ L'applicazione tenterà di scaricarlo e installarlo. Sei sicuro di voler continu @@ -309,6 +313,17 @@ L'applicazione tenterà di scaricarlo e installarlo. Sei sicuro di voler continu
<data name="AddInManager2.LicenseAcceptance.DeclineButton" xml:space="preserve">
<value>&amp;Rifiuto</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Explanation.Package" xml:space="preserve">
<value>Cliccando "Accetto" accetti i termini di licenza del pacchetto specificato sopra.
Se non accetti i termini di licenza clicca "Rifiuto".</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Explanation.Packages" xml:space="preserve">
<value>Cliccando "Accetto" accetti i termini di licenza dei pacchetti specificati sopra.
Se non accetti i termini di licenza clicca "Rifiuto".</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Introduction.Package" xml:space="preserve">
<value>Questo pacchetto richiede l'accettazione della licenza:</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Introduction.Packages" xml:space="preserve">
<value>I seguenti pacchetti richiedono un clic per accettare la licenza:</value>
</data>
@ -318,6 +333,9 @@ L'applicazione tenterà di scaricarlo e installarlo. Sei sicuro di voler continu @@ -318,6 +333,9 @@ L'applicazione tenterà di scaricarlo e installarlo. Sei sicuro di voler continu
<data name="AddInManager2.OptionPanel.Add" xml:space="preserve">
<value>Aggiungi</value>
</data>
<data name="AddInManager2.OptionPanel.AutoCheckForUpdates" xml:space="preserve">
<value>Ricerca aggiornamenti automaticamente</value>
</data>
<data name="AddInManager2.OptionPanel.MoveDown" xml:space="preserve">
<value>Sposta Giù</value>
</data>
@ -336,6 +354,9 @@ L'applicazione tenterà di scaricarlo e installarlo. Sei sicuro di voler continu @@ -336,6 +354,9 @@ L'applicazione tenterà di scaricarlo e installarlo. Sei sicuro di voler continu
<data name="AddInManager2.OptionPanel.Tree.AddIns" xml:space="preserve">
<value>AddIns</value>
</data>
<data name="AddInManager2.OptionPanel.Tree.General" xml:space="preserve">
<value>Generale</value>
</data>
<data name="AddInManager2.OptionPanel.Tree.Repositories" xml:space="preserve">
<value>Repositories</value>
</data>
@ -404,7 +425,7 @@ Smetteranno di funzionare dopo la rimozione di questo AddIn! Sei sicuro di voler @@ -404,7 +425,7 @@ Smetteranno di funzionare dopo la rimozione di questo AddIn! Sei sicuro di voler
<value>Aiuto in linea</value>
</data>
<data name="AddIns.HelpViewer.HelpModeLabel" xml:space="preserve">
<value>Modalità di Aiuto</value>
<value>Imposta le Preferenze di Aiuto</value>
</data>
<data name="AddIns.HelpViewer.HLMNotFound" xml:space="preserve">
<value>Aiuto in linea non trovato. Per favore controlla che sia installato correttamente.</value>
@ -434,7 +455,7 @@ Smetteranno di funzionare dopo la rimozione di questo AddIn! Sei sicuro di voler @@ -434,7 +455,7 @@ Smetteranno di funzionare dopo la rimozione di questo AddIn! Sei sicuro di voler
<value>Mostra Aiuto</value>
</data>
<data name="AddIns.HelpViewer.UseExternalHelp" xml:space="preserve">
<value>Usa un aiuto esterno</value>
<value>Visualizza l'Aiuto con un programma esterno</value>
</data>
<data name="AddIns.HelpViewer.UseOfflineHelpLabel" xml:space="preserve">
<value>Usa l'aiuto locale</value>
@ -7690,8 +7711,4 @@ Errore durante esecuzione:</value> @@ -7690,8 +7711,4 @@ Errore durante esecuzione:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Rimuovi commento regione</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Questa risorsa non viene utilizzata. Il suo scopo è di testare il database di traduzione ed ha
una riga a capo</value>
</data>
</root>

6
data/resources/StringResources.kr.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>ちょっとくらいのわがままは、大目に見てね。</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>정보</value>
</data>
@ -6263,7 +6266,4 @@ SharpDevelop 2는 리소스를 다른 방법으로 컴파일합니다: 리소스 @@ -6263,7 +6266,4 @@ SharpDevelop 2는 리소스를 다른 방법으로 컴파일합니다: 리소스
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>이 부분의 주석 해제</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>ちょっとくらいのわがままは、大目に見てね。</value>
</data>
</root>

21
data/resources/StringResources.nl.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Deze bron is niet in gebruik. Het doel is om vertalingsdatabase te testen en heeft een 'line break'</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Info...</value>
</data>
@ -2353,6 +2356,9 @@ Wilt u het nieuwe bestand toevoegen aan project ${CurrentProjectName}?</value> @@ -2353,6 +2356,9 @@ Wilt u het nieuwe bestand toevoegen aan project ${CurrentProjectName}?</value>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightBracketCheckBox" xml:space="preserve">
<value>&amp;Markeren passend haakje</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightCurrentLineCheckBox" xml:space="preserve">
<value>Benadruk momentele regel</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightSymbolCheckBox" xml:space="preserve">
<value>Markeer symbolen</value>
</data>
@ -6093,6 +6099,12 @@ Microsoft.Tools.WindowsInstallerXml.Extenties.NetFxCompiler, WixNetFxExtentie</v @@ -6093,6 +6099,12 @@ Microsoft.Tools.WindowsInstallerXml.Extenties.NetFxCompiler, WixNetFxExtentie</v
<data name="SharpDevelop.Refactoring.ClassesDerivingFrom" xml:space="preserve">
<value>Van ${Name} afgeleidde klassen</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingCommand" xml:space="preserve">
<value>Voeg in vanaf klembord ring...</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingEmpty" xml:space="preserve">
<value>Klembord ring is leeg</value>
</data>
<data name="SharpDevelop.Refactoring.ConvertToAutomaticProperty" xml:space="preserve">
<value>Converteer naar automatische eigenschap</value>
</data>
@ -6569,6 +6581,12 @@ De hulpbron bestanden zijn hernoemd/verplaatst op de beschreven wijze.</value> @@ -6569,6 +6581,12 @@ De hulpbron bestanden zijn hernoemd/verplaatst op de beschreven wijze.</value>
<data name="StatusBarService.CursorStatusBarPanelText" xml:space="preserve">
<value>ln ${Line} kol ${Column} kar ${Character}</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextMulti" xml:space="preserve">
<value>len ${Regels} * ${Kolommen} (${Totaal})</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextSingle" xml:space="preserve">
<value>len $(Lengte)</value>
</data>
<data name="Templates.File.Categories.Misc" xml:space="preserve">
<value>Varia</value>
</data>
@ -7717,7 +7735,4 @@ Startfout:</value> @@ -7717,7 +7735,4 @@ Startfout:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Regiocommentaar verwijderen</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Deze bron is niet in gebruik. Het doel is om vertalingsdatabase te testen en heeft een 'line break'</value>
</data>
</root>

8
data/resources/StringResources.no.resx

@ -117,6 +117,10 @@ @@ -117,6 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Denne ressursen er ikke i bruk. Formålet er å teste oversettingsdatabasen, og har
et linjeskift</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Om</value>
</data>
@ -7047,8 +7051,4 @@ SharpDevelop 2 kompilerer ressurser annerledes: ressursnavnet er ikke bare filna @@ -7047,8 +7051,4 @@ SharpDevelop 2 kompilerer ressurser annerledes: ressursnavnet er ikke bare filna
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Fjern kommentarer</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Denne ressursen er ikke i bruk. Formålet er å teste oversettingsdatabasen, og har
et linjeskift</value>
</data>
</root>

8
data/resources/StringResources.pl.resx

@ -117,6 +117,10 @@ @@ -117,6 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Ten zasób nie jest używany. Jego przeznaczeniem jest testowanie bazy tłumaczeń i posiada
łamanie wiersza</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>O Menadżerze Dodatków</value>
</data>
@ -5661,8 +5665,4 @@ Błąd podczas uruchamiania:</value> @@ -5661,8 +5665,4 @@ Błąd podczas uruchamiania:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Odkomentuj region</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Ten zasób nie jest używany. Jego przeznaczeniem jest testowanie bazy tłumaczeń i posiada
łamanie wiersza</value>
</data>
</root>

33
data/resources/StringResources.pt-br.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Este recurso não está sendo utilizado. O seu proposito é testar o banco de dados de traduções e tem uma quebra de linha</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Sobre</value>
</data>
@ -228,6 +231,33 @@ @@ -228,6 +231,33 @@
<data name="AddInManager.UnknownFileFormat" xml:space="preserve">
<value>Formato de arquivo desconhecido.</value>
</data>
<data name="AddInManager2.AddInsView.InstallFromArchive" xml:space="preserve">
<value>Instalar do arquivo...</value>
</data>
<data name="AddInManager2.AddInsView.Repository" xml:space="preserve">
<value>Repositorio:</value>
</data>
<data name="AddInManager2.AddInsView.Search" xml:space="preserve">
<value>Pesquisar:</value>
</data>
<data name="AddInManager2.AddInsView.ShowPreinstalledAddIns" xml:space="preserve">
<value>Mostrar adicionais instalados</value>
</data>
<data name="AddInManager2.CannotRemoveAddInManager" xml:space="preserve">
<value>Você não pode desinstalar o Gerenciador de Adicionais porque você precisa dele para reinstalar os adicionais!</value>
</data>
<data name="AddInManager2.DefaultRepository" xml:space="preserve">
<value>Repositório de adicionais do SharpDevelop</value>
</data>
<data name="AddInManager2.Details.CreatedBy" xml:space="preserve">
<value>Criado por:</value>
</data>
<data name="AddInManager2.Details.Dependencies" xml:space="preserve">
<value>Dependências:</value>
</data>
<data name="AddInManager2.Details.DownloadCount" xml:space="preserve">
<value>Baixados:</value>
</data>
<data name="AddIns.AvalonEdit.InconsistentNewlines.Description" xml:space="preserve">
<value>Esse arquivo contem novas linhas inconsistentes.</value>
</data>
@ -6199,7 +6229,4 @@ Use somente letras, dígitos, espaço, "." ou "_" são permitidos.</value> @@ -6199,7 +6229,4 @@ Use somente letras, dígitos, espaço, "." ou "_" são permitidos.</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Desfazer comentário</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Este recurso não está sendo utilizado. O seu proposito é testar o banco de dados de traduções e tem uma quebra de linha</value>
</data>
</root>

6
data/resources/StringResources.pt.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Este recurso não é utilizado. A sua finalidade é testar a base de dados de traduções</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Sobre</value>
</data>
@ -5846,7 +5849,4 @@ O erro no início foi:</value> @@ -5846,7 +5849,4 @@ O erro no início foi:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Desfazer comentário</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Este recurso não é utilizado. A sua finalidade é testar a base de dados de traduções</value>
</data>
</root>

8
data/resources/StringResources.ro.resx

@ -117,6 +117,10 @@ @@ -117,6 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Această resursă nu este utilzată. Scopul ei este de a testa traducerile şi conţine un retur de car
</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Despre</value>
</data>
@ -3794,8 +3798,4 @@ Eroare la pornire:</value> @@ -3794,8 +3798,4 @@ Eroare la pornire:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Regiune necomentată</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Această resursă nu este utilzată. Scopul ei este de a testa traducerile şi conţine un retur de car
</value>
</data>
</root>

8
data/resources/StringResources.ru.resx

@ -117,6 +117,10 @@ @@ -117,6 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Эта строка нигде не используется. Она нужна для тестирования базы данных переводов, а также в ней есть
перенос строки</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>О Менеджере Плагинов</value>
</data>
@ -6648,8 +6652,4 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес @@ -6648,8 +6652,4 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Раскомментировать</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Эта строка нигде не используется. Она нужна для тестирования базы данных переводов, а также в ней есть
перенос строки</value>
</data>
</root>

349
data/resources/StringResources.se.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Den här resursen används inte. Dess syfte är att testa översättningsdatabasen och har en linjebrytning.</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Om SharpDevelop</value>
</data>
@ -229,6 +232,122 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -229,6 +232,122 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddInManager.UnknownFileFormat" xml:space="preserve">
<value>Okänt filformat:</value>
</data>
<data name="AddInManager2.AddInsView.InstallFromArchive" xml:space="preserve">
<value>Installera från arkivfil...</value>
</data>
<data name="AddInManager2.AddInsView.Search" xml:space="preserve">
<value>Sök:</value>
</data>
<data name="AddInManager2.AddInsView.ShowPreinstalledAddIns" xml:space="preserve">
<value>Visa förinstallerade AddIns</value>
</data>
<data name="AddInManager2.CannotRemoveAddInManager" xml:space="preserve">
<value>Du kan inte avinstallera AddInManager eftersom denna behövs för att på nytt installera AddIns!</value>
</data>
<data name="AddInManager2.Details.CreatedBy" xml:space="preserve">
<value>Skapad av:</value>
</data>
<data name="AddInManager2.Details.Dependencies" xml:space="preserve">
<value>Beroenden:</value>
</data>
<data name="AddInManager2.Details.DownloadCount" xml:space="preserve">
<value>Nerladdningar:</value>
</data>
<data name="AddInManager2.Details.FileName" xml:space="preserve">
<value>Filens namn:</value>
</data>
<data name="AddInManager2.Details.InstalledVersion" xml:space="preserve">
<value>Installerad version:</value>
</data>
<data name="AddInManager2.Details.LastUpdated" xml:space="preserve">
<value>Senast uppdaterad:</value>
</data>
<data name="AddInManager2.Details.MoreInformation" xml:space="preserve">
<value>Mer information:</value>
</data>
<data name="AddInManager2.Details.NewVersion" xml:space="preserve">
<value>Senaste version:</value>
</data>
<data name="AddInManager2.Details.Rating" xml:space="preserve">
<value>Omdöme:</value>
</data>
<data name="AddInManager2.Details.ReportAbuse" xml:space="preserve">
<value>Rapportera missbruk</value>
</data>
<data name="AddInManager2.Details.Version" xml:space="preserve">
<value>Version:</value>
</data>
<data name="AddInManager2.Details.ViewLicenseTerms" xml:space="preserve">
<value>Visa licensavtal</value>
</data>
<data name="AddInManager2.DisableDependentWarning" xml:space="preserve">
<value>Följande AddIns är beroende av "{0}":
{1}
Dessa kommer att sluta fungera om detta AddIn avaktiveras! Är du säker på att du vill fortsätta?</value>
</data>
<data name="AddInManager2.LicenseAcceptance.AcceptButton" xml:space="preserve">
<value>Jag &amp;Accepterar</value>
</data>
<data name="AddInManager2.LicenseAcceptance.DeclineButton" xml:space="preserve">
<value>Jag av&amp;böjer</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Title" xml:space="preserve">
<value>Licensavtal</value>
</data>
<data name="AddInManager2.OptionPanel.Add" xml:space="preserve">
<value>Lägg till</value>
</data>
<data name="AddInManager2.OptionPanel.AutoCheckForUpdates" xml:space="preserve">
<value>Kontrollera automatiskt om det finns uppdateringar</value>
</data>
<data name="AddInManager2.OptionPanel.MoveDown" xml:space="preserve">
<value>Flytta ner</value>
</data>
<data name="AddInManager2.OptionPanel.MoveUp" xml:space="preserve">
<value>Flytta upp</value>
</data>
<data name="AddInManager2.OptionPanel.Name" xml:space="preserve">
<value>Namn:</value>
</data>
<data name="AddInManager2.OptionPanel.Remove" xml:space="preserve">
<value>Ta bort</value>
</data>
<data name="AddInManager2.OptionPanel.Source" xml:space="preserve">
<value>Källa:</value>
</data>
<data name="AddInManager2.OptionPanel.Tree.AddIns" xml:space="preserve">
<value>AddIns</value>
</data>
<data name="AddInManager2.OptionPanel.Tree.General" xml:space="preserve">
<value>Allmänt</value>
</data>
<data name="AddInManager2.RemoveDependentWarning" xml:space="preserve">
<value>Följande AddIns är beroende av "{0}":
{1}
Dessa kommer att sluta fungera om detta AddIn tas bort! Är du säker på att du vill fortsätta?</value>
</data>
<data name="AddInManager2.SDAddInFileFilter" xml:space="preserve">
<value>SharpDevelop AddIns|*.sdaddin;*.addin|Alla filer|*.*</value>
</data>
<data name="AddInManager2.UpdateNotifier.BubbleText" xml:space="preserve">
<value>Klicka här för att se uppdateringarna.</value>
</data>
<data name="AddInManager2.UpdateNotifier.BubbleTitle" xml:space="preserve">
<value>Uppdateringar till SharpDevelop finns tillgängliga</value>
</data>
<data name="AddInManager2.Views.Available" xml:space="preserve">
<value>Tillgängliga</value>
</data>
<data name="AddInManager2.Views.Installed" xml:space="preserve">
<value>Installerade</value>
</data>
<data name="AddInManager2.Views.Updates" xml:space="preserve">
<value>Uppdateringar</value>
</data>
<data name="AddIns.AvalonEdit.InconsistentNewlines.Description" xml:space="preserve">
<value>Den här filen innehåller inkonsekvent information (newlines).</value>
</data>
@ -269,7 +388,7 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -269,7 +388,7 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<value>Hjälp bibliotek</value>
</data>
<data name="AddIns.HelpViewer.HelpModeLabel" xml:space="preserve">
<value>Hjälpläge</value>
<value>Välj hjälpinställningar</value>
</data>
<data name="AddIns.HelpViewer.HLMNoActiveCatalogError" xml:space="preserve">
<value>Kunde inte starta Hjälp bibliotekshanteraren på grund av att katalog inte är installerad eller vald. Vänligen kontrollera dina inställningar (se Verktyg&gt;Inställningar&gt;Microsoft Help Viewer)</value>
@ -299,7 +418,13 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -299,7 +418,13 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<value>Visa hjälp</value>
</data>
<data name="AddIns.HelpViewer.UseExternalHelp" xml:space="preserve">
<value>Använd extern hjälp</value>
<value>Använd extern hjälpvisare</value>
</data>
<data name="AddIns.HelpViewer.UseOfflineHelpLabel" xml:space="preserve">
<value>Jag vill använda lokal hjälp</value>
</data>
<data name="AddIns.HelpViewer.UseOnlineHelpLabel" xml:space="preserve">
<value>Jag vill använda online-baserad hjälp</value>
</data>
<data name="AddIns.HexEditor.DefaultBytesPerLine" xml:space="preserve">
<value>Antal bytes per rad</value>
@ -310,6 +435,9 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -310,6 +435,9 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddIns.HexEditor.Display.Elements.Data" xml:space="preserve">
<value>Data</value>
</data>
<data name="AddIns.HexEditor.Display.Elements.Offset" xml:space="preserve">
<value>Förskjutning</value>
</data>
<data name="AddIns.HexEditor.NumeralSystem" xml:space="preserve">
<value>Numeriskt system</value>
</data>
@ -364,9 +492,39 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -364,9 +492,39 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddIns.Profiler.Commands.ShowFunctions.TabTitle" xml:space="preserve">
<value>Alla funktioner för {0}</value>
</data>
<data name="AddIns.Profiler.DatabaseTooNewError" xml:space="preserve">
<value>Den valda SharpDevelop-profileringssessionen skapades av en nyare version av SharpDevelop och kan därför inte öppnas.</value>
</data>
<data name="AddIns.Profiler.FileExtensionDescription" xml:space="preserve">
<value>SharpDevelop-profileringssession</value>
</data>
<data name="AddIns.Profiler.Messages.FileNotFound" xml:space="preserve">
<value>Detta projekt kunde inte startas eftersom den exekverbara filen inte kunde hittas. Kontrollera att projektet och dess beroenden är korrekt byggda!</value>
</data>
<data name="AddIns.Profiler.Messages.NoStartableProjectFound" xml:space="preserve">
<value>Hittade inget projekt som kan startas. Avbryter...</value>
</data>
<data name="AddIns.Profiler.Messages.PreparingForAnalysis" xml:space="preserve">
<value>Förbereder för analys...</value>
</data>
<data name="AddIns.Profiler.Messages.RegisterFailed" xml:space="preserve">
<value>Kunde inte registrera profileraren i COM-registret. Profileringen kan inte påbörjas!</value>
</data>
<data name="AddIns.Profiler.Messages.UnregisterFailed" xml:space="preserve">
<value>Kunde inte avregistrera profileraren från COM-registret!</value>
</data>
<data name="AddIns.Profiler.MessageViewCategory" xml:space="preserve">
<value>Profil</value>
</data>
<data name="AddIns.Profiler.Options.General.DataCollection.CombineRecursiveCalls" xml:space="preserve">
<value>Kombinera rekursiva anrop.</value>
</data>
<data name="AddIns.Profiler.Options.General.DataCollection.DoNotProfileNetInternals" xml:space="preserve">
<value>Profilera inte interna anropa hos .NET.</value>
</data>
<data name="AddIns.Profiler.Options.General.DataCollection.EnableDC" xml:space="preserve">
<value>Samla data endast vid sessionens slut.</value>
</data>
<data name="AddIns.Profiler.Options.General.DataCollection.EnableDCAtStartup" xml:space="preserve">
<value>Börja insamling av data direkt efter att sessionen har startat.</value>
</data>
@ -376,9 +534,18 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -376,9 +534,18 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddIns.Profiler.Options.General.DataCollection.SizeOfStorageDescription" xml:space="preserve">
<value>Storlek av temporär data fil.</value>
</data>
<data name="AddIns.Profiler.Options.General.DataCollection.TrackEvents" xml:space="preserve">
<value>Spåra händelser</value>
</data>
<data name="AddIns.Profiler.Options.Title" xml:space="preserve">
<value>Profilering</value>
</data>
<data name="AddIns.Profiler.ProfileCurrentProject" xml:space="preserve">
<value>Profilera nuvarande projekt</value>
</data>
<data name="AddIns.Profiler.ProfileExecutable" xml:space="preserve">
<value>Välj en exekverbar att profilera</value>
</data>
<data name="AddIns.Profiler.ProfileExecutable.ErrorMessage" xml:space="preserve">
<value>Ogiltigt data, vänligen försök igen!</value>
</data>
@ -388,12 +555,18 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -388,12 +555,18 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddIns.Profiler.ProfileExecutableForm.StartText" xml:space="preserve">
<value>Starta profilering</value>
</data>
<data name="AddIns.Profiler.ProfileExecutableForm.Title" xml:space="preserve">
<value>Profilera exekverbar</value>
</data>
<data name="AddIns.Profiler.ProfilerControlWindow.CollectData" xml:space="preserve">
<value>Samla data</value>
</data>
<data name="AddIns.Profiler.ProfilerControlWindow.Shutdown" xml:space="preserve">
<value>Stäng ner</value>
</data>
<data name="AddIns.Profiler.ProfilerControlWindow.Title" xml:space="preserve">
<value>Kontrollfönster för profileraren</value>
</data>
<data name="AddIns.Profiler.ProfilingView.CallCountColumnText" xml:space="preserve">
<value>Antal anrop</value>
</data>
@ -403,9 +576,15 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -403,9 +576,15 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddIns.Profiler.ProfilingView.ContextMenu.CopySelectedData" xml:space="preserve">
<value>Kopiera markerat</value>
</data>
<data name="AddIns.Profiler.ProfilingView.ContextMenu.FindCallsOfSelected" xml:space="preserve">
<value>Hitta anrop för valda funktioner</value>
</data>
<data name="AddIns.Profiler.ProfilingView.ContextMenu.GoToDefinition" xml:space="preserve">
<value>Gå till definition</value>
</data>
<data name="AddIns.Profiler.ProfilingView.ContextMenu.SetAsRoot" xml:space="preserve">
<value>Ange som rot/Slå ihop</value>
</data>
<data name="AddIns.Profiler.ProfilingView.ContextMenu.ShowFunctions" xml:space="preserve">
<value>Visa funktioner</value>
</data>
@ -439,15 +618,33 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -439,15 +618,33 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddIns.Profiler.ProfilingView.TimeText" xml:space="preserve">
<value>Tid:</value>
</data>
<data name="AddIns.Profiler.ProfilingView.Title" xml:space="preserve">
<value>Analyserare av profileringssession</value>
</data>
<data name="AddIns.Profiler.ProfilingView.Top20TabText" xml:space="preserve">
<value>Topp 20</value>
</data>
<data name="AddIns.Profiler.ProfilingView.WaitBarText" xml:space="preserve">
<value>Uppdaterar vy, vänligen vänta...</value>
</data>
<data name="AddIns.Profiler.UnitTests.RunWithProfiler" xml:space="preserve">
<value>Kör med profilerare</value>
</data>
<data name="AddIns.SearchReplace.SearchProgressTitle" xml:space="preserve">
<value>Söker...</value>
</data>
<data name="AddIns.SharpRefactoring.CreateProperties.AddSetterLabel" xml:space="preserve">
<value>Lägg till Setter</value>
</data>
<data name="AddIns.SharpRefactoring.CreateProperties.Description" xml:space="preserve">
<value>Välj de fält som du vill skapa egenskaper för:</value>
</data>
<data name="AddIns.SharpRefactoring.CreateProperties.Description.ImplementINotifyPropertyChanged" xml:space="preserve">
<value>Implementera INotifyPropertyChanged</value>
</data>
<data name="AddIns.SharpRefactoring.CreateProperties.Title" xml:space="preserve">
<value>Skapa egenskaper</value>
</data>
<data name="AddIns.SharpRefactoring.ExtractMethod" xml:space="preserve">
<value>Extrahera funktion</value>
</data>
@ -469,9 +666,18 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -469,9 +666,18 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddIns.SharpRefactoring.IntroduceMethod" xml:space="preserve">
<value>Introducera funktion {0} i {1}</value>
</data>
<data name="AddIns.SharpRefactoring.OverrideEqualsGetHashCodeMethods" xml:space="preserve">
<value>Åsidosätt Equals() och GetHashCode()</value>
</data>
<data name="AddIns.SharpRefactoring.OverrideEqualsGetHashCodeMethods.AddInterface" xml:space="preserve">
<value>Lägg till interface {0}</value>
</data>
<data name="AddIns.SharpRefactoring.OverrideEqualsGetHashCodeMethods.AddOtherMethod" xml:space="preserve">
<value>Lägg till åsidosättande av ${otherMethod}</value>
</data>
<data name="AddIns.SharpRefactoring.OverrideToStringMethod" xml:space="preserve">
<value>Åsidosätt ToString()</value>
</data>
<data name="AddIns.SourceAnalysis.CheckProjectWithStyleCop" xml:space="preserve">
<value>Kontrollera nuvarande projekt med StyleCop</value>
</data>
@ -583,9 +789,18 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg' @@ -583,9 +789,18 @@ Ladda hem ett tillägg från Internet och klicka sedan på 'Installera Tillägg'
<data name="AddIns.UsageDataCollector.AcceptConfirmation" xml:space="preserve">
<value>Tack för din medverkan! Du kan alltid gå ur genom att ändra inställningarna.i SharpDevelop.</value>
</data>
<data name="AddIns.UsageDataCollector.AcceptRadioButton" xml:space="preserve">
<value>Jag vill delta - samla och skicka användningsdata</value>
</data>
<data name="AddIns.UsageDataCollector.DeclineRadioButton" xml:space="preserve">
<value>Jag vill inte delta</value>
</data>
<data name="AddIns.UsageDataCollector.ShowCollectedData" xml:space="preserve">
<value>Visa insamlad data</value>
</data>
<data name="AddIns.XamlBinding.Menu.RemoveMargin" xml:space="preserve">
<value>Ta bort marginal</value>
</data>
<data name="AddIns.XamlBinding.Options.EventColor" xml:space="preserve">
<value>Händelsefärg:</value>
</data>
@ -644,9 +859,15 @@ Du kan specificera ett startcommando i projektinställningarna.</value> @@ -644,9 +859,15 @@ Du kan specificera ett startcommando i projektinställningarna.</value>
<data name="ComponentInspector.ActionMenu.UnregisterTypeLibMenuItem" xml:space="preserve">
<value>Avregistrera TypeLib</value>
</data>
<data name="ComponentInspector.AttachDialog.AttachFailedMessage" xml:space="preserve">
<value>Misslyckades med att bifoga till processen {0}.</value>
</data>
<data name="ComponentInspector.AttachDialog.ProcessLabel" xml:space="preserve">
<value>Process</value>
</data>
<data name="ComponentInspector.AttachDialog.Title" xml:space="preserve">
<value>Bifoga</value>
</data>
<data name="ComponentInspector.CastDialog.CannotFindType" xml:space="preserve">
<value>Kan inte hitta typen</value>
</data>
@ -767,6 +988,9 @@ Du kan specificera ett startcommando i projektinställningarna.</value> @@ -767,6 +988,9 @@ Du kan specificera ett startcommando i projektinställningarna.</value>
<data name="ComponentInspector.GacList.OpenMenuItem" xml:space="preserve">
<value>&amp;Öppna</value>
</data>
<data name="ComponentInspector.GacList.PublicKeyTokenColumn" xml:space="preserve">
<value>Token för publik nyckel</value>
</data>
<data name="ComponentInspector.GacList.VersionColumn" xml:space="preserve">
<value>Version</value>
</data>
@ -1227,7 +1451,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1227,7 +1451,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value>
<value>Detaljinställningar för kodkomplettering</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.LanguageDependend" xml:space="preserve">
<value>Följande inställningar är programspråksberoende, varför inställningarna kan variera mellan resp. språk.</value>
<value>Följande inställningar är språkberoende, vissa inställningar är inte tillgängliga för vissa språk.</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.MainOption" xml:space="preserve">
<value>Använd följande inställning för att avaktivera kodkomplettering:</value>
@ -1302,7 +1526,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1302,7 +1526,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value>
<value>Redigera Standardrubriker</value>
</data>
<data name="Dialog.Options.IDEOptions.General" xml:space="preserve">
<value>Generella</value>
<value>Allmänt</value>
</data>
<data name="Dialog.Options.IDEOptions.LoadSaveOptions.CreateBackupCopyCheckBox" xml:space="preserve">
<value>Skapa &amp;alltid säkerhetskopia</value>
@ -1548,11 +1772,14 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1548,11 +1772,14 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value>
<value>Ingen</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.MarkersGroupBox" xml:space="preserve">
<value>Markörer och linjaler</value>
<value>Markörer</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.PanelName" xml:space="preserve">
<value>Markörer och linjaler</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.RulersGroupBox" xml:space="preserve">
<value>Linjaler</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.SpacesCheckBox" xml:space="preserve">
<value>Visa &amp;blanksteg</value>
</data>
@ -1638,7 +1865,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1638,7 +1865,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value>
<value>Projektinformation</value>
</data>
<data name="Dialog.ProjectOptions.ApplicationSettings.RootNamespace" xml:space="preserve">
<value>&amp;Rot namespace:</value>
<value>&amp;Rotnamnrymd:</value>
</data>
<data name="Dialog.ProjectOptions.ApplicationSettings.StartupObject" xml:space="preserve">
<value>&amp;Startobjekt:</value>
@ -1737,7 +1964,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1737,7 +1964,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value>
<value>Tillåt &amp;osäker kod</value>
</data>
<data name="Dialog.ProjectOptions.BuildOptions.General" xml:space="preserve">
<value>Generell</value>
<value>Allmänt</value>
</data>
<data name="Dialog.ProjectOptions.BuildOptions.NoCorlib" xml:space="preserve">
<value>Referera inte till &amp;mscorlib.dll</value>
@ -1806,7 +2033,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1806,7 +2033,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value>
<value>&amp;Lägg till importering</value>
</data>
<data name="Dialog.ProjectOptions.ProjectImports.Namespace" xml:space="preserve">
<value>&amp;Namespace:</value>
<value>&amp;Namnrymd:</value>
</data>
<data name="Dialog.ProjectOptions.Publish" xml:space="preserve">
<value>Publicera</value>
@ -1997,6 +2224,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -1997,6 +2224,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="Global.AddButtonText" xml:space="preserve">
<value>&amp;Lägg till</value>
</data>
<data name="Global.Advanced" xml:space="preserve">
<value>Avancerad</value>
</data>
<data name="Global.BackButtonText" xml:space="preserve">
<value>&lt; Tillbaka</value>
</data>
@ -2090,6 +2320,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2090,6 +2320,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="Global.MoveUp" xml:space="preserve">
<value>Flytta &amp;Upp</value>
</data>
<data name="Global.NA" xml:space="preserve">
<value>Ej tillämpbar</value>
</data>
<data name="Global.Name" xml:space="preserve">
<value>Namn</value>
</data>
@ -2207,6 +2440,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2207,6 +2440,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="Gui.ProjectBrowser.OpenWith.Bindings.XmlEditor" xml:space="preserve">
<value>XML redigerare</value>
</data>
<data name="Gui.ProjectBrowser.OpenWith.ChooseProgram" xml:space="preserve">
<value>Välj vilket program som du vill öppna denna fil med:</value>
</data>
<data name="Gui.ProjectBrowser.OpenWith.Default" xml:space="preserve">
<value>Standard</value>
</data>
@ -2264,9 +2500,21 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2264,9 +2500,21 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="ICSharpCode.BooInterpreter" xml:space="preserve">
<value>Boo tolkare</value>
</data>
<data name="ICSharpCode.Build.CannotFindFxCop" xml:space="preserve">
<value>SharpDevelop kan inte hitta FxCop. Välj installationsmapp för FxCop i SharpDevelops inställningar.</value>
</data>
<data name="ICSharpCode.Build.CannotReadFxCopLogFile" xml:space="preserve">
<value>Kan inte läsa loggfilen för FxCop:</value>
</data>
<data name="ICSharpCode.Build.MonoIsNotInstalled" xml:space="preserve">
<value>Mono är inte installerad.</value>
</data>
<data name="ICSharpCode.Build.RunningCodeAnalysis" xml:space="preserve">
<value>Kör kodanalys...</value>
</data>
<data name="ICSharpCode.Build.UnknownTargetMonoFrameworkVersion" xml:space="preserve">
<value>Okänd version av vald Mono Framework</value>
</data>
<data name="ICSharpCode.CodeAnalysis" xml:space="preserve">
<value>Kodanalys</value>
</data>
@ -2291,6 +2539,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2291,6 +2539,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="ICSharpCode.CodeAnalysis.ProjectOptions.CannotFindFxCop" xml:space="preserve">
<value>Kunde inte hitta FxCop - kontrollera att FxCop finns installerad.</value>
</data>
<data name="ICSharpCode.CodeAnalysis.ProjectOptions.LoadingRules" xml:space="preserve">
<value>Laddar tillgängliga regler...</value>
</data>
<data name="ICSharpCode.CodeAnalysis.ProjectOptions.SpecifyFxCopPath" xml:space="preserve">
<value>Du kan specificera sökvägen till FxCop under inställningarna för SharpDevelop.</value>
</data>
@ -2306,6 +2557,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2306,6 +2557,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="ICSharpCode.CodeAnalysis.RunningFxCopOn" xml:space="preserve">
<value>Kör FxCop på</value>
</data>
<data name="ICSharpCode.CodeAnalysis.SuppressMessage" xml:space="preserve">
<value>Visa inte meddelande</value>
</data>
<data name="ICSharpCode.CodeCoverage.CodeCovered" xml:space="preserve">
<value>Kodtäckning</value>
</data>
@ -2318,6 +2572,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2318,6 +2572,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="ICSharpCode.CodeCoverage.EndColumn" xml:space="preserve">
<value>Slutkolumn</value>
</data>
<data name="ICSharpCode.CodeCoverage.EndLine" xml:space="preserve">
<value>Radslut</value>
</data>
<data name="ICSharpCode.CodeCoverage.NoCodeCoverageResultsGenerated" xml:space="preserve">
<value>Ingen resultatfil för kodtäckning genererades:</value>
</data>
@ -2369,6 +2626,21 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2369,6 +2626,21 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="ICSharpCode.CppBinding.ProjectOptions.AdditionalOptions" xml:space="preserve">
<value>Ytterligare inställningar</value>
</data>
<data name="ICSharpCode.CppBinding.ProjectOptions.Linker" xml:space="preserve">
<value>Länkskapare</value>
</data>
<data name="ICSharpCode.CppBinding.ProjectOptions.Linker.AdditionalLibs" xml:space="preserve">
<value>Länka ytterligare filer</value>
</data>
<data name="ICSharpCode.CppBinding.ProjectOptions.Linker.AddModule" xml:space="preserve">
<value>Länka specifika .NET-moduler</value>
</data>
<data name="ICSharpCode.CppBinding.ProjectOptions.Linker.Library" xml:space="preserve">
<value>Biblioteksfilernas placeringar</value>
</data>
<data name="ICSharpCode.CppBinding.ProjectOptions.Linker.ManagedResourceFile" xml:space="preserve">
<value>Bädda in .NET-resursfil</value>
</data>
<data name="ICSharpCode.CppBinding.ProjectOptions.Preprocessor" xml:space="preserve">
<value>Preprocessor</value>
</data>
@ -2666,6 +2938,9 @@ Alla ändringar kommer att förloras.</value> @@ -2666,6 +2938,9 @@ Alla ändringar kommer att förloras.</value>
<data name="ICSharpCode.SharpDevelop.ExceptionBox.QuitWarning" xml:space="preserve">
<value>Vill du verkligen avsluta SharpDevelop? Alla ändringar som inte sparats kommer att förloras!</value>
</data>
<data name="ICSharpCode.SharpDevelop.ExceptionBox.ReportError" xml:space="preserve">
<value>Rapportera fel till SharpDevelop-teamet</value>
</data>
<data name="ICSharpCode.SharpDevelop.ExceptionBox.ThankYouMsg" xml:space="preserve">
<value>Tack för att du hjälper oss att göra SharpDevelop till ett bättre program.</value>
</data>
@ -2685,7 +2960,7 @@ Alla ändringar kommer att förloras.</value> @@ -2685,7 +2960,7 @@ Alla ändringar kommer att förloras.</value>
<value>Sökväg</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.AddSidebarComponents.Components.Namespace" xml:space="preserve">
<value>Namespace</value>
<value>Namnrymd</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.AddSidebarComponents.ComponentsToAddLabel" xml:space="preserve">
<value>K&amp;omponenter att lägga till</value>
@ -2721,7 +2996,7 @@ Alla ändringar kommer att förloras.</value> @@ -2721,7 +2996,7 @@ Alla ändringar kommer att förloras.</value>
<value>Konfigurera Verktygsfält</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.ConfigureSidebarDialog.Namespace" xml:space="preserve">
<value>Namespace</value>
<value>Namnrymd</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.ConfigureSidebarDialog.NewButton" xml:space="preserve">
<value>&amp;Ny</value>
@ -2763,7 +3038,7 @@ Alla ändringar kommer att förloras.</value> @@ -2763,7 +3038,7 @@ Alla ändringar kommer att förloras.</value>
<value>markera metoden InitializeComponents i kodvyn som endast läsbar</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.OptionPanels.GeneralOptionsPanel.PanelName" xml:space="preserve">
<value>Generell</value>
<value>Allmänt</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.OptionPanels.GridOptionsPanel.GridPropertiesGroupBox" xml:space="preserve">
<value>Rutsystemets egenskaper</value>
@ -2771,6 +3046,9 @@ Alla ändringar kommer att förloras.</value> @@ -2771,6 +3046,9 @@ Alla ändringar kommer att förloras.</value>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.OptionPanels.GridOptionsPanel.HeightLabel" xml:space="preserve">
<value>&amp;Höjd</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.OptionPanels.GridOptionsPanel.OptimizedCodeGenerationCheckBox" xml:space="preserve">
<value>Använd optimerad kodgenerering</value>
</data>
<data name="ICSharpCode.SharpDevelop.FormDesigner.Gui.OptionPanels.GridOptionsPanel.PanelName" xml:space="preserve">
<value>Rutsystemets Inställningar</value>
</data>
@ -2844,13 +3122,13 @@ Inga komponenter för WindowsFormer kommer att vara tillgängliga, var god konfi @@ -2844,13 +3122,13 @@ Inga komponenter för WindowsFormer kommer att vara tillgängliga, var god konfi
<value>Gå till</value>
</data>
<data name="ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.InvalidNamespaceError" xml:space="preserve">
<value>Namespace innehåller ogiltiga tecken. Ett namespace kan endast innehålla bokstäver, siffror eller underscore tecken.</value>
<value>Namnrymden innehåller ogiltiga tecken. En namnrymd kan endast innehålla tecken som består av bokstäver, siffror eller understreck.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.InvalidReferenceNameError" xml:space="preserve">
<value>Referensnamnet innehåller ogiltiga tecken.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.NamespaceLabel" xml:space="preserve">
<value>&amp;Namespace:</value>
<value>&amp;Namnrymd:</value>
</data>
<data name="ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.ParametersProperty" xml:space="preserve">
<value>Parametrar</value>
@ -2972,13 +3250,16 @@ Endast bokstäver, siffror, mellanslag, '.' eller '_' får användas.</value> @@ -2972,13 +3250,16 @@ Endast bokstäver, siffror, mellanslag, '.' eller '_' får användas.</value>
<value>Specificerar om filen skall kopieras till utdatamappen</value>
</data>
<data name="ICSharpCode.SharpDevelop.Internal.Project.ProjectFile.CustomTool" xml:space="preserve">
<value>Anpassa verktyg</value>
<value>Anpassningsverktyg</value>
</data>
<data name="ICSharpCode.SharpDevelop.Internal.Project.ProjectFile.CustomTool.Description" xml:space="preserve">
<value>Specificerar verktyget som konverterar filen till utdatat.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Internal.Project.ProjectFile.CustomToolNamespace" xml:space="preserve">
<value>Namespace för anpassa verktyg</value>
<value>Namnrymd för anpassningsverktyget</value>
</data>
<data name="ICSharpCode.SharpDevelop.Internal.Project.ProjectFile.CustomToolNamespace.Description" xml:space="preserve">
<value>Specificerar namnrymden som anpassningsverktyget placerar utdata i.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Internal.Project.ProjectFile.FileName.Description" xml:space="preserve">
<value>Fullständig sökväg till filen.</value>
@ -3043,6 +3324,9 @@ Endast bokstäver, siffror, mellanslag, '.' eller '_' får användas.</value> @@ -3043,6 +3324,9 @@ Endast bokstäver, siffror, mellanslag, '.' eller '_' får användas.</value>
<data name="ICSharpCode.SharpDevelop.Project.UpgradeView.ChangeCompilerVersionLabel" xml:space="preserve">
<value>Konvertera valda &amp;projekt till:</value>
</data>
<data name="ICSharpCode.SharpDevelop.Project.UpgradeView.CompilerVersion" xml:space="preserve">
<value>Kompilatorversion</value>
</data>
<data name="ICSharpCode.SharpDevelop.Project.UpgradeView.ConvertButton" xml:space="preserve">
<value>&amp;Konvertera</value>
</data>
@ -3149,6 +3433,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3149,6 +3433,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<data name="ICSharpCode.WixBinding.PackagesFilesView.ContextMenu.AddFiles" xml:space="preserve">
<value>Lägg till filer...</value>
</data>
<data name="ICSharpCode.WixBinding.ProjectOptions.OutputType.Installer" xml:space="preserve">
<value>Installationspaket</value>
</data>
<data name="ICSharpCode.WixBinding.ViewDialogXml.DialogIdNotFoundMessage" xml:space="preserve">
<value>Kunde inte hitta '{0}' i {1}</value>
</data>
@ -3218,6 +3505,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3218,6 +3505,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<data name="ICSharpCode.WixBinding.WixLibraryFolderNode.Text" xml:space="preserve">
<value>WiX bibliotek</value>
</data>
<data name="ICSharpCode.WixBinding.WixPackageFilesDiffControl.NoDiffFound" xml:space="preserve">
<value>Inga skillnader upptäckta.</value>
</data>
<data name="ICSharpCode.WixBinding.WixProjectFileAssociation" xml:space="preserve">
<value>WIX projekt</value>
</data>
@ -3303,10 +3593,10 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3303,10 +3593,10 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<value>Schemata</value>
</data>
<data name="ICSharpCode.XmlEditor.XmlSchemasPanel.NamespaceExists" xml:space="preserve">
<value>Det gick inte att lägga till schemat. Namespace '{0}' existerar redan.</value>
<value>Det gick inte att lägga till schemat. Namnrymden '{0}' existerar redan.</value>
</data>
<data name="ICSharpCode.XmlEditor.XmlSchemasPanel.NoTargetNamespace" xml:space="preserve">
<value>Schema '{0}' saknar ett namespace (mål).</value>
<value>Schema '{0}' saknar en namnrymd som mål.</value>
</data>
<data name="ICSharpCode.XmlEditor.XmlSchemasPanel.Title" xml:space="preserve">
<value>XML Schemata</value>
@ -3344,6 +3634,12 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3344,6 +3634,12 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<data name="ICSharpCode.XmlEditor.XmlTreeView.Title" xml:space="preserve">
<value>XML träd</value>
</data>
<data name="ICSharpCode.XmlEditor.XPathQueryPad.NamespaceColumnHeaderTitle" xml:space="preserve">
<value>Namnrymd</value>
</data>
<data name="ICSharpCode.XmlEditor.XPathQueryPad.NamespacesTab" xml:space="preserve">
<value>Namnrymd</value>
</data>
<data name="ICSharpCode.XmlEditor.XPathQueryPad.PrefixColumnHeaderTitle" xml:space="preserve">
<value>Prefix</value>
</data>
@ -3392,6 +3688,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3392,6 +3688,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<data name="MainWindow.DiscardChangesMessage" xml:space="preserve">
<value>Vill du verkligen kassera dina ändringar?</value>
</data>
<data name="MainWindow.Editor.Tooltip.Namespace" xml:space="preserve">
<value>namnrymd</value>
</data>
<data name="MainWindow.SaveChangesMessage" xml:space="preserve">
<value>Vill du spara ändringarna?</value>
</data>
@ -3968,6 +4267,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3968,6 +4267,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<data name="ProjectComponent.ContextMenu.GenerateDocumentation.ProjectNeedsToBeCompiled2" xml:space="preserve">
<value>XML dokumentationsfilen existerar inte, du måste kompilera projektet först.</value>
</data>
<data name="ProjectComponent.ContextMenu.GenerateDocumentation.SHFBNotFound" xml:space="preserve">
<value>För att skapa dokumentation från XML-kommentarer så krävs att 'Sandcastle Help File Builder' är installerad.</value>
</data>
<data name="ProjectComponent.ContextMenu.HtmlExport" xml:space="preserve">
<value>HTML-e&amp;xport</value>
</data>
@ -4062,7 +4364,7 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -4062,7 +4364,7 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<value>Multilinje</value>
</data>
<data name="RegExpTk.MainDialog.Namespace" xml:space="preserve">
<value>Namespace</value>
<value>Namnrymd</value>
</data>
<data name="RegExpTk.MainDialog.PublicVisible" xml:space="preserve">
<value>Publik synlig</value>
@ -4235,6 +4537,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -4235,6 +4537,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<data name="SharpDevelop.Refactoring.CannotPerformOperationBecauseOfSyntaxErrors" xml:space="preserve">
<value>Operationen kunde inte utföras på grund av att källkoden innehåller fel:</value>
</data>
<data name="SharpDevelop.Refactoring.CreateGetter" xml:space="preserve">
<value>Skapa &amp;Getter</value>
</data>
<data name="SharpDevelop.Refactoring.CreateOnEventMethod" xml:space="preserve">
<value>Skapa OnEvent-metod</value>
</data>
@ -4298,6 +4603,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -4298,6 +4603,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<data name="SharpDevelop.Refactoring.MoveClassToFile" xml:space="preserve">
<value>Flytta klassen till filen '${FileName}'</value>
</data>
<data name="SharpDevelop.Refactoring.OverridesOf" xml:space="preserve">
<value>Åsidosättanden av ${Name}</value>
</data>
<data name="SharpDevelop.Refactoring.ReferencesTo" xml:space="preserve">
<value>Referenser till ${Name}</value>
</data>
@ -4329,7 +4637,7 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -4329,7 +4637,7 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö
<value>C# Dokumentations Taggar</value>
</data>
<data name="SharpDevelop.SideBar.GeneralCategory" xml:space="preserve">
<value>Generell</value>
<value>Allmänt</value>
</data>
<data name="SharpDevelop.SideBar.LicensesTags" xml:space="preserve">
<value>Licenser</value>
@ -5660,7 +5968,4 @@ Resursfilerna har därför bytt namn/flyttats enligt ovan.</value> @@ -5660,7 +5968,4 @@ Resursfilerna har därför bytt namn/flyttats enligt ovan.</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Avkommentera region</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Den här resursen används inte. Dess syfte är att testa översättningsdatabasen och har en linjebrytning.</value>
</data>
</root>

248
data/resources/StringResources.tr.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Bu kaynak kullanılamıyor. Amacı, çeviri veritabanını test etmek ve bir satır kesmesi var.</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>Hakkında</value>
</data>
@ -160,7 +163,7 @@ @@ -160,7 +163,7 @@
<value>Bu eklenti iki kez kurulmuş. Lütfen birini kaldırın.</value>
</data>
<data name="AddInManager.AddInMustHaveIdentity" xml:space="preserve">
<value>Eklentinin Eklenti Yöneticisi tarafindan kullanılmasi için bir kimliği olmalıdır.</value>
<value>Eklenti Eklenti Yöneticisi tarafından kullanılabilmesi için bir &lt;kimlik&gt; sahibi olmalıdır.</value>
</data>
<data name="AddInManager.AddInRemoved" xml:space="preserve">
<value>Eklenti SharpDevelop yeniden başlatıldığında kaldırılacak.</value>
@ -229,6 +232,158 @@ @@ -229,6 +232,158 @@
<data name="AddInManager.UnknownFileFormat" xml:space="preserve">
<value>Bilinmeyen dosya biçimi:</value>
</data>
<data name="AddInManager2.AddInsView.InstallFromArchive" xml:space="preserve">
<value>Arşivden yükle...</value>
</data>
<data name="AddInManager2.AddInsView.Repository" xml:space="preserve">
<value>Depo:</value>
</data>
<data name="AddInManager2.AddInsView.Search" xml:space="preserve">
<value>Ara:</value>
</data>
<data name="AddInManager2.AddInsView.ShowPreinstalledAddIns" xml:space="preserve">
<value>Önyüklü eklentileri göster</value>
</data>
<data name="AddInManager2.AddInsView.ShowPrereleaseAddIns" xml:space="preserve">
<value>Önsürümleri göster</value>
</data>
<data name="AddInManager2.CannotRemoveAddInManager" xml:space="preserve">
<value>Eklentileri yeniden yüklemeden, eklenti yöneticisini kaldıramazsınız!</value>
</data>
<data name="AddInManager2.DefaultRepository" xml:space="preserve">
<value>SharpDevelop Eklenti Arşivi</value>
</data>
<data name="AddInManager2.Details.CreatedBy" xml:space="preserve">
<value>Düzenleyen:</value>
</data>
<data name="AddInManager2.Details.Dependencies" xml:space="preserve">
<value>Bağımlılıklar:</value>
</data>
<data name="AddInManager2.Details.DownloadCount" xml:space="preserve">
<value>İndirilenler:</value>
</data>
<data name="AddInManager2.Details.FileName" xml:space="preserve">
<value>Dosya adı:</value>
</data>
<data name="AddInManager2.Details.InstalledVersion" xml:space="preserve">
<value>Yüklü sürüm:</value>
</data>
<data name="AddInManager2.Details.LastUpdated" xml:space="preserve">
<value>Son güncelleme:</value>
</data>
<data name="AddInManager2.Details.MoreInformation" xml:space="preserve">
<value>Daha fazla bilgi</value>
</data>
<data name="AddInManager2.Details.NewVersion" xml:space="preserve">
<value>Yeni sürüm:</value>
</data>
<data name="AddInManager2.Details.Rating" xml:space="preserve">
<value>Değerlendirme:</value>
</data>
<data name="AddInManager2.Details.ReportAbuse" xml:space="preserve">
<value>Uygunsuzluğu bildir</value>
</data>
<data name="AddInManager2.Details.Version" xml:space="preserve">
<value>Sürüm:</value>
</data>
<data name="AddInManager2.Details.ViewLicenseTerms" xml:space="preserve">
<value>Lisans Koşulları:</value>
</data>
<data name="AddInManager2.DisableDependentWarning" xml:space="preserve">
<value>Kurulu Eklenti, "{0}"'a bağlıdır:
{1}
Eklenti devre dışı olduktan sonra durabilir! Devam etmek istediğinizden emin misiniz?</value>
</data>
<data name="AddInManager2.InstallDependentMessage" xml:space="preserve">
<value>Paket "{0}", ilave pakete ihtiyaç duymaktadır:
{1}
Uygulama, onları da indirip yüklemek için çalışacak. Devam etmek istiyor musunuz?</value>
</data>
<data name="AddInManager2.InvalidPackage" xml:space="preserve">
<value>Seçili paket geçerli SharpDevelop Eklentisi içermiyor.</value>
</data>
<data name="AddInManager2.LicenseAcceptance.AcceptButton" xml:space="preserve">
<value>&amp;Kabul et</value>
</data>
<data name="AddInManager2.LicenseAcceptance.DeclineButton" xml:space="preserve">
<value>&amp;Reddet</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Explanation.Package" xml:space="preserve">
<value>"Kabul et" butonuna tıklayarak paket için lisans şartlarını kabul ediyorsunuz.
Eğer lisans şartlarını kabul etmiyorsanız "Reddet" butonuna tıklayın.</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Explanation.Packages" xml:space="preserve">
<value>"Kabul et" butonuna tıklayarak yukarıda listelenen paketler için lisans şartlarını kabul ediyorsunuz.
Eğer lisans şartlarını kabul etmiyorsanız "Reddet" tıklayın.</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Introduction.Package" xml:space="preserve">
<value>Aşağıdaki paket için bir lisans koşulunu kabul gerekiyor:</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Introduction.Packages" xml:space="preserve">
<value>Aşağıdaki paketler için lisans koşullarını kabul etmeniz gerekli:</value>
</data>
<data name="AddInManager2.LicenseAcceptance.Title" xml:space="preserve">
<value>Lisans Koşulları</value>
</data>
<data name="AddInManager2.OptionPanel.Add" xml:space="preserve">
<value>Ekle</value>
</data>
<data name="AddInManager2.OptionPanel.AutoCheckForUpdates" xml:space="preserve">
<value>Güncellemeleri otomatik kontrol et</value>
</data>
<data name="AddInManager2.OptionPanel.MoveDown" xml:space="preserve">
<value>Aşağı Taşı</value>
</data>
<data name="AddInManager2.OptionPanel.MoveUp" xml:space="preserve">
<value>Yukarı Taşı</value>
</data>
<data name="AddInManager2.OptionPanel.Name" xml:space="preserve">
<value>Ad:</value>
</data>
<data name="AddInManager2.OptionPanel.Remove" xml:space="preserve">
<value>Kaldır</value>
</data>
<data name="AddInManager2.OptionPanel.Source" xml:space="preserve">
<value>Kaynak:</value>
</data>
<data name="AddInManager2.OptionPanel.Tree.AddIns" xml:space="preserve">
<value>Eklenti</value>
</data>
<data name="AddInManager2.OptionPanel.Tree.General" xml:space="preserve">
<value>Genel</value>
</data>
<data name="AddInManager2.OptionPanel.Tree.Repositories" xml:space="preserve">
<value>Depolar</value>
</data>
<data name="AddInManager2.RemoveDependentWarning" xml:space="preserve">
<value>"{0}", aşağıdaki yüklü Eklentiye bağlı:
{1}
Eklenti kaldırıldıktan sonra çalışması durabilir! Devam etmek istediğinizden emin misiniz?</value>
</data>
<data name="AddInManager2.SDAddInFileFilter" xml:space="preserve">
<value>SharpDevelop Eklentileri|*.sdaddin;*.addin|All files|*.*</value>
</data>
<data name="AddInManager2.UpdateNotifier.BubbleText" xml:space="preserve">
<value>Güncellemeleri görmek için buraya tıklayın.</value>
</data>
<data name="AddInManager2.UpdateNotifier.BubbleTitle" xml:space="preserve">
<value>SharpDevelop için yararlanılabilir güncelleştirmeler</value>
</data>
<data name="AddInManager2.Views.Available" xml:space="preserve">
<value>Yararlanılabilir</value>
</data>
<data name="AddInManager2.Views.Installed" xml:space="preserve">
<value>Yüklü</value>
</data>
<data name="AddInManager2.Views.Updates" xml:space="preserve">
<value>Güncellemeler</value>
</data>
<data name="AddIns.AvalonEdit.InconsistentNewlines.Description" xml:space="preserve">
<value>Bu dosya tutarsız satırlar içeriyor.</value>
</data>
@ -269,11 +424,14 @@ @@ -269,11 +424,14 @@
<value>Yardım Kitaplığı</value>
</data>
<data name="AddIns.HelpViewer.HelpModeLabel" xml:space="preserve">
<value>Yardım Modu</value>
<value>Yardım Tercihi Ayarı</value>
</data>
<data name="AddIns.HelpViewer.HLMNoActiveCatalogError" xml:space="preserve">
<value>Seçili veya yüklü bir yardım kataloğu olmadığından, Kütüphane Yöneticisi Yardımı başlatılamıyor. Yardım ayarlarınızı kontrol ediniz(Araçlar&gt; Seçenekler&gt; Araçlar&gt; Microsoft Yardım Görüntüleyici).</value>
</data>
<data name="AddIns.HelpViewer.HLMNotAvailableDownloadWinSDK" xml:space="preserve">
<value>Yardım Kitaplığı Yöneticisi bulunamadı. SharpDevelop yardım özelliğini kullanmak için Microsoft Windows SDK 7.1 indirin ve kurun.</value>
</data>
<data name="AddIns.HelpViewer.HLMNotFound" xml:space="preserve">
<value>Kütüphane Yöneticisi Yardımı bulunamadı. Yüklemeyi kontrol edin.</value>
</data>
@ -302,7 +460,7 @@ @@ -302,7 +460,7 @@
<value>Yardımı Göster</value>
</data>
<data name="AddIns.HelpViewer.UseExternalHelp" xml:space="preserve">
<value>Harici yardımı kullan</value>
<value>Harici yardım görüntüleyici kullan</value>
</data>
<data name="AddIns.HelpViewer.UseOfflineHelpLabel" xml:space="preserve">
<value>Yerel yardımı kullanmak istiyorum</value>
@ -1871,6 +2029,12 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value> @@ -1871,6 +2029,12 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value>
<data name="Dialog.Options.IDEOptions.Debugging" xml:space="preserve">
<value>Hata ayıklama</value>
</data>
<data name="Dialog.Options.IDEOptions.Debugging.AskForArguments" xml:space="preserve">
<value>Bağımsız değişkenleri ve yürütülebilir lansman üzerinde çalışan dizini iste.</value>
</data>
<data name="Dialog.Options.IDEOptions.Debugging.BreakAtBeginning" xml:space="preserve">
<value>Yürütmenin ilk satırında ara ver.</value>
</data>
<data name="Dialog.Options.IDEOptions.Debugging.EnableDecompiler" xml:space="preserve">
<value>Tekrar derlemeyi etkinleştir</value>
</data>
@ -1919,6 +2083,9 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value> @@ -1919,6 +2083,9 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value>
<data name="Dialog.Options.IDEOptions.Debugging.Symbols.ListCaption" xml:space="preserve">
<value>Sembol ve kaynak kodu yolları:</value>
</data>
<data name="Dialog.Options.IDEOptions.Debugging.WithoutSource" xml:space="preserve">
<value>Kaynak Ayıklama Olmadan</value>
</data>
<data name="Dialog.Options.IDEOptions.EditStandardHeaderPanel.HeaderLabel" xml:space="preserve">
<value>Başlık</value>
</data>
@ -2186,6 +2353,9 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value> @@ -2186,6 +2353,9 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightBracketCheckBox" xml:space="preserve">
<value>Eşleşen parantezleri vurgula</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightCurrentLineCheckBox" xml:space="preserve">
<value>Geçerli satırı vurgulayın</value>
</data>
<data name="Dialog.Options.IDEOptions.TextEditor.Markers.HighlightSymbolCheckBox" xml:space="preserve">
<value>Sembolleri vurgula</value>
</data>
@ -3596,6 +3766,12 @@ Not: Bu işlem özel düzenlemelerinizi etkilemez.</value> @@ -3596,6 +3766,12 @@ Not: Bu işlem özel düzenlemelerinizi etkilemez.</value>
<data name="ICSharpCode.SharpDevelop.DefaultEditor.IncrementalSearch.ReverseSearchStatusBarMessage" xml:space="preserve">
<value>Artan Ters Arama:</value>
</data>
<data name="ICSharpCode.SharpDevelop.Dom.AssemblyInvalid" xml:space="preserve">
<value>{0} geçerli bir .NET derlemesi değil.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Dom.AssemblyNotAccessible" xml:space="preserve">
<value>{0} erişilebilir değil ya da artık yok.</value>
</data>
<data name="ICSharpCode.SharpDevelop.ErrorLoadingCodeCompletionInformation" xml:space="preserve">
<value>${Filename} dosyasından ${Assembly} için kod tamamlama bilgisi yükleme hatası:</value>
</data>
@ -4472,6 +4648,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4472,6 +4648,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="ICSharpCode.WixBinding.WixNetFxExtensionTitle" xml:space="preserve">
<value>.NET Framework Uzantısı</value>
</data>
<data name="ICSharpCode.WixBinding.WixNotInstalled" xml:space="preserve">
<value>WİX yüklü değil. Lütfen http://wixtoolset.org/ adresinden indirin.</value>
</data>
<data name="ICSharpCode.WixBinding.WixPackageFilesDiffControl.NoDiffFound" xml:space="preserve">
<value>Fark bulunamadı</value>
</data>
@ -4493,6 +4672,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4493,6 +4672,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="ICSharpCode.WixBinding.WixVisualStudioExtensionTitle" xml:space="preserve">
<value>Visual Studio Uzantısı</value>
</data>
<data name="ICSharpCode.WpfDesign.AddIn.ThumbnailViewPad" xml:space="preserve">
<value>WPF Tasarımcısı Küçük Resim Görünümü</value>
</data>
<data name="ICSharpCode.WPFDesigner.ContextMenu.Copy" xml:space="preserve">
<value>Kopyala</value>
</data>
@ -4793,6 +4975,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4793,6 +4975,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="MainWindow.Windows.BookmarksLabel" xml:space="preserve">
<value>Sık Kullanılanlar</value>
</data>
<data name="MainWindow.Windows.ClassBrowser.AddToWorkspace" xml:space="preserve">
<value>Çalışma alanına ekle</value>
</data>
<data name="MainWindow.Windows.ClassBrowser.BackButton.ToolTip" xml:space="preserve">
<value>Geri</value>
</data>
@ -4832,9 +5017,24 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4832,9 +5017,24 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="MainWindow.Windows.ClassBrowser.NoResultsFound" xml:space="preserve">
<value>Arama sonucu olumsuz.</value>
</data>
<data name="MainWindow.Windows.ClassBrowser.OpenAssemblyButton.ToolTip" xml:space="preserve">
<value>Derleme aç</value>
</data>
<data name="MainWindow.Windows.ClassBrowser.OpenAssemblyFromFile" xml:space="preserve">
<value>Dosyadan derleme aç...</value>
</data>
<data name="MainWindow.Windows.ClassBrowser.OpenAssemblyFromGAC" xml:space="preserve">
<value>GAC'dan derleme aç...</value>
</data>
<data name="MainWindow.Windows.ClassBrowser.OpenInClassBrowser" xml:space="preserve">
<value>Sınıf Tarayıcıda Aç</value>
</data>
<data name="MainWindow.Windows.ClassBrowser.SearchButton.ToolTip" xml:space="preserve">
<value>Sınıf Görünümü Arama</value>
</data>
<data name="MainWindow.Windows.ClassBrowser.Workspace" xml:space="preserve">
<value>{0} Çalışma alanı</value>
</data>
<data name="MainWindow.Windows.ClassScoutLabel" xml:space="preserve">
<value>Sınıflar</value>
</data>
@ -4847,6 +5047,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4847,6 +5047,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="MainWindow.Windows.CompilerMessageView.ToggleWordWrapButton.ToolTip" xml:space="preserve">
<value>Sözcük Kaydırmaya Geç</value>
</data>
<data name="MainWindow.Windows.Debug.AddWatchExpression" xml:space="preserve">
<value>İzleme ifadesi ekle</value>
</data>
<data name="MainWindow.Windows.Debug.Breakpoints" xml:space="preserve">
<value>DuraksamaNoktaları</value>
</data>
@ -4943,6 +5146,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4943,6 +5146,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="MainWindow.Windows.Debug.Console" xml:space="preserve">
<value>Konsol</value>
</data>
<data name="MainWindow.Windows.Debug.DebugExecutable" xml:space="preserve">
<value>Çalıştırılabilir ayıkla</value>
</data>
<data name="MainWindow.Windows.Debug.ExceptionForm.Break" xml:space="preserve">
<value>Kesme</value>
</data>
@ -5300,6 +5506,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5300,6 +5506,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="MainWindow.Windows.SearchResultPanel.In" xml:space="preserve">
<value>deki</value>
</data>
<data name="MainWindow.Windows.SearchResultPanel.NoProject" xml:space="preserve">
<value>&lt;proje yok&gt;</value>
</data>
<data name="MainWindow.Windows.SearchResultPanel.OccurrencesCount" xml:space="preserve">
<value>${Count} tane bulundu</value>
</data>
@ -5315,6 +5524,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5315,6 +5524,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="MainWindow.Windows.SearchResultPanel.PerFile" xml:space="preserve">
<value>Dosya başına</value>
</data>
<data name="MainWindow.Windows.SearchResultPanel.PerProject" xml:space="preserve">
<value>Proje başına</value>
</data>
<data name="MainWindow.Windows.SearchResultPanel.PerProjectAndFile" xml:space="preserve">
<value>Proje ve dosya başına</value>
</data>
<data name="MainWindow.Windows.SearchResultPanel.SelectViewMode.ToolTip" xml:space="preserve">
<value>Liste modu aramayı seç</value>
</data>
@ -5750,6 +5965,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5750,6 +5965,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="ResourceEditor.ResourceCodeGeneratorTool.CouldNotGenerateResourceProperty" xml:space="preserve">
<value>Kaynak kod üreteci: '{0}' kaynağı için hiçbir kaynak özelliği oluşturamıyor.</value>
</data>
<data name="ResourceEditor.ResourceEdit.CommentColumn" xml:space="preserve">
<value>Yorum</value>
</data>
<data name="ResourceEditor.ResourceEdit.ContentColumn" xml:space="preserve">
<value>İçerik</value>
</data>
@ -5762,6 +5980,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5762,6 +5980,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="ResourceEditor.ResourceEdit.ContextMenu.CopyResourceName" xml:space="preserve">
<value>Kaynak adı kopyala</value>
</data>
<data name="ResourceEditor.ResourceEdit.ContextMenu.EditComment" xml:space="preserve">
<value>Yorumu düzenle</value>
</data>
<data name="ResourceEditor.ResourceEdit.ContextMenu.EditCommentText" xml:space="preserve">
<value>Kaynak yorumunuz için yeni metin giriniz:</value>
</data>
<data name="ResourceEditor.ResourceEdit.ContextMenu.Rename" xml:space="preserve">
<value>Yeniden adlandır</value>
</data>
@ -5879,6 +6103,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5879,6 +6103,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="SharpDevelop.Refactoring.ClassesDerivingFrom" xml:space="preserve">
<value>${Name} 'den türeme sınıflar</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingCommand" xml:space="preserve">
<value>Pano halkasından yapıştır...</value>
</data>
<data name="SharpDevelop.Refactoring.ClipboardRingEmpty" xml:space="preserve">
<value>Pano halkası boş</value>
</data>
<data name="SharpDevelop.Refactoring.ConvertToAutomaticProperty" xml:space="preserve">
<value>Otomatik özelliği dönüştür</value>
</data>
@ -5963,6 +6193,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5963,6 +6193,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="SharpDevelop.Refactoring.OverridesOf" xml:space="preserve">
<value>${Name} geçersiz kıl</value>
</data>
<data name="SharpDevelop.Refactoring.PartsOfClass" xml:space="preserve">
<value>${Name} parçaları</value>
</data>
<data name="SharpDevelop.Refactoring.ReferencesTo" xml:space="preserve">
<value>${Name} referansları</value>
</data>
@ -6351,6 +6584,12 @@ Kaynak dosyaları buna göre yeniden adlandırıldı/taşındı.</value> @@ -6351,6 +6584,12 @@ Kaynak dosyaları buna göre yeniden adlandırıldı/taşındı.</value>
<data name="StatusBarService.CursorStatusBarPanelText" xml:space="preserve">
<value>satır ${Line} sütun ${Column} ${Character}</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextMulti" xml:space="preserve">
<value>Uzunluk ${Rows} * ${Cols}(${Total})</value>
</data>
<data name="StatusBarService.SelectionStatusBarPanelTextSingle" xml:space="preserve">
<value>Uzunluk ${Length}</value>
</data>
<data name="Templates.File.Categories.Misc" xml:space="preserve">
<value>Çeşitli</value>
</data>
@ -7498,7 +7737,4 @@ Başlatma hatası:</value> @@ -7498,7 +7737,4 @@ Başlatma hatası:</value>
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>Bölgeyi yorumlama</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>Bu kaynak kullanılamıyor. Amacı, çeviri veritabanını test etmek ve bir satır kesmesi var.</value>
</data>
</root>

6
data/resources/StringResources.zh.resx

@ -117,6 +117,9 @@ @@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>该资源不被使用.它仅仅用来测试翻译数据库.</value>
</data>
<data name="AddInManager.About" xml:space="preserve">
<value>关于</value>
</data>
@ -7241,7 +7244,4 @@ SharpDevelop 编译资源时发现不对应:资源名称不是文件名,而 @@ -7241,7 +7244,4 @@ SharpDevelop 编译资源时发现不对应:资源名称不是文件名,而
<data name="XML.TextAreaContextMenu.UncommentSelection" xml:space="preserve">
<value>设为非注释区</value>
</data>
<data name="_Internal.Bogus.Translation.Test1" xml:space="preserve">
<value>该资源不被使用.它仅仅用来测试翻译数据库.</value>
</data>
</root>

32
src/Tools/LocalizationDbToResFile/AssemblyInfo.cs

@ -1,32 +0,0 @@ @@ -1,32 +0,0 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following
// attributes.
//
// change them to the information which is associated with the assembly
// you compile.
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has following format :
//
// Major.Minor.Build.Revision
//
// You can specify all values by your own or you can build default build and revision
// numbers with the '*' character (the default):
[assembly: AssemblyVersion("2.0.0.1")]
// The following attributes specify the key for the sign of your assembly. See the
// .NET Framework documentation for more information about signing.
// This is not required, if you don't want signing let these attributes like they're.
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]

44
src/Tools/LocalizationDbToResFile/LocalizationDbToResFile.csproj

@ -1,44 +0,0 @@ @@ -1,44 +0,0 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.40607</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{244dd983-dc60-42f7-9bb9-35b7b5c8b737}</ProjectGuid>
<RootNamespace>NewProject</RootNamespace>
<AssemblyName>LocalizationDbToResFile</AssemblyName>
<OutputTarget>Exe</OutputTarget>
<WarningLevel>4</WarningLevel>
<NoStdLib>False</NoStdLib>
<NoConfig>False</NoConfig>
<RunPostBuildEvent>OnSuccessfulBuild</RunPostBuildEvent>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>True</DebugSymbols>
<Optimize>True</Optimize>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
<OutputPath>\</OutputPath>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugSymbols>True</DebugSymbols>
<Optimize>True</Optimize>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
<OutputPath>\</OutputPath>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.cs" />
<Compile Include="Main.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
</Project>

4
src/Tools/LocalizationDbToResFile/LocalizationDbToResFile.csproj.user

@ -1,4 +0,0 @@ @@ -1,4 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' " />
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' " />
</Project>

109
src/Tools/LocalizationDbToResFile/Main.cs

@ -1,109 +0,0 @@ @@ -1,109 +0,0 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="" email=""/>
// <version>$Revision$</version>
// </file>
using System;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Windows.Forms;
using System.Text;
namespace Assemble {
/// <summary>
/// This tool is written especially for SharpDevelop to translate the
/// database that containes the localization information to resasm files.
/// Resasm compiles these files to resource files which are used for sharpdevelop.
/// </summary>
class MainClass
{
static OleDbConnection myConnection;
/// <remarks>
/// Open the database connection (LocalizeDb.mdb must exists
/// in the Application.StartupPath)
/// </remarks>
static void Open()
{
string connection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
Application.StartupPath +
Path.DirectorySeparatorChar + "LocalizeDb.mdb;";
myConnection = new OleDbConnection(connection);
myConnection.Open();
}
/// <remarks>
/// Parses a string, if it has " or \n sequences in it
/// and puts them into the string as backslash code sequences
/// </remarks>
static string ConvertIllegalChars(string str)
{
StringBuilder newString = new StringBuilder();
for (int i = 0; i < str.Length; ++i) {
switch (str[i]) {
case '\r':
break;
case '\n':
newString.Append("\\n");
break;
case '"':
newString.Append("\\\"");
break;
case '\\':
newString.Append("\\\\");
break;
default:
newString.Append(str[i]);
break;
}
}
return newString.ToString();
}
public static void Main(string[] args)
{
Open();
string lang = "PrimaryResLangValue";
StreamWriter writer = null;
// gets the /F: parameter for the filename
// gets the /T: parameter for the language to extract
foreach (string param in args) {
string par = param;
if (par.StartsWith("/F:")) {
par = par.Substring(3);
writer = new StreamWriter(par, false, new UTF8Encoding());;
}
if (par.StartsWith("/T:")) {
par = par.Substring(3);
lang = par;
}
}
// now select all database entries and write
// the resasm file (if no /F: is specified it prints to stdout)
OleDbCommand myOleDbCommand = new OleDbCommand("SELECT * FROM Localization", myConnection);
OleDbDataReader reader = myOleDbCommand.ExecuteReader();
while (reader.Read()) {
string val = ConvertIllegalChars(reader[lang].ToString()).Trim();
if (val.Length > 0) {
string str = reader["ResourceName"].ToString() + " = \"" + val + "\"";
if (writer == null) {
Console.WriteLine(str);
} else {
writer.WriteLine(str);
}
}
}
reader.Close();
if (writer != null) {
writer.Close();
}
myConnection.Close();
}
}
}

72
src/Tools/LocalizationXmlToResFile/LocalizationXmlToResFile.cs

@ -1,72 +0,0 @@ @@ -1,72 +0,0 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="" email=""/>
// <version>$Revision$</version>
// </file>
using System;
using System.Collections;
using System.Drawing;
using System.Resources;
using System.IO;
using System.Text;
using System.Drawing.Imaging;
using System.Windows.Forms;
using System.Runtime.Serialization.Formatters.Binary;
using System.Xml;
public class TranslationBuilder
{
static void Assemble(string pattern)
{
string[] files = Directory.GetFiles(Directory.GetCurrentDirectory(), pattern);
foreach (string file in files) {
if (Path.GetExtension(file).ToUpper() == ".XML") {
try {
XmlDocument doc = new XmlDocument();
doc.Load(file);
string resfilename = "StringResources." + doc.DocumentElement.Attributes["language"].InnerText + ".resources";
ResourceWriter rw = new ResourceWriter(resfilename);
foreach (XmlElement el in doc.DocumentElement.ChildNodes) {
rw.AddResource(el.Attributes["name"].InnerText,
el.InnerText);
}
rw.Generate();
rw.Close();
} catch (Exception e) {
Console.WriteLine("Error while processing " + file + " :");
Console.WriteLine(e.ToString());
}
}
}
}
static void ShowHelp()
{
Console.WriteLine(".NET Translation Builder Version 0.1");
Console.WriteLine("Copyright (C) Mike Krueger 2001. Released under GPL.\n");
Console.WriteLine(" Translation Builder Options Options\n");
Console.WriteLine(" - INPUT FILES -");
Console.WriteLine("<wildcard> translates the given xml files into resource files");
}
public static void Main(string[] args)
{
if (args.Length == 0) {
ShowHelp();
}
foreach (string param in args) {
string par = param.ToUpper();
if (par == "/?" || par == "/H" || par== "-?" || par == "-H" || par == "?") {
ShowHelp();
return;
} else {
Assemble(param);
}
}
}
}

43
src/Tools/LocalizationXmlToResFile/LocalizationXmlToResFile.csproj

@ -1,43 +0,0 @@ @@ -1,43 +0,0 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.40607</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{6084d932-aafb-4335-831a-519226095ba6}</ProjectGuid>
<RootNamespace>NewProject</RootNamespace>
<AssemblyName>LocalizationXmlToResFile</AssemblyName>
<OutputTarget>Exe</OutputTarget>
<WarningLevel>4</WarningLevel>
<NoStdLib>False</NoStdLib>
<NoConfig>False</NoConfig>
<RunPostBuildEvent>OnSuccessfulBuild</RunPostBuildEvent>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>True</DebugSymbols>
<Optimize>True</Optimize>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
<OutputPath>..\bin\Debug\</OutputPath>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugSymbols>True</DebugSymbols>
<Optimize>True</Optimize>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
<OutputPath>..\bin\Release\</OutputPath>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="LocalizationXmlToResFile.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
</Project>

4
src/Tools/LocalizationXmlToResFile/LocalizationXmlToResFile.csproj.user

@ -1,4 +0,0 @@ @@ -1,4 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' " />
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' " />
</Project>

1
src/Tools/ResGet/DownloadAll.bat

@ -0,0 +1 @@ @@ -0,0 +1 @@
resget --url "http://translation.sharpdevelop.net/resources/" --format "resx" --branch 400 --targetDir "%~dp0\..\..\..\data\resources" --overwrite true

4
src/Tools/ResGet/README.txt

@ -0,0 +1,4 @@ @@ -0,0 +1,4 @@
This tool downloads the translation .resx files from the online translation database.
The source code for ResGet can be found at:
https://github.com/icsharpcode/ResourceFirstTranslations/tree/master/src/ResGet

BIN
src/Tools/ResGet/ResGet.exe

Binary file not shown.

26
src/Tools/ResGet/ResGet.exe.config

@ -0,0 +1,26 @@ @@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<system.diagnostics>
<trace autoflush="true">
<listeners>
<add name="logListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="resget.log" />
<add name="consoleListener" type="System.Diagnostics.ConsoleTraceListener" />
</listeners>
</trace>
</system.diagnostics>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Extensions" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.22.0" newVersion="2.2.22.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.22.0" newVersion="4.2.22.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

56
src/Tools/StringResourceTool/BuildResourceFiles.cs

@ -1,56 +0,0 @@ @@ -1,56 +0,0 @@
/*
* Created by SharpDevelop.
* User: daniel
* Date: 29.08.2009
* Time: 09:46
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Xml.Linq;
namespace StringResourceTool
{
/// <summary>
/// Description of BuildResourceFiles.
/// </summary>
public class BuildResourceFiles
{
// map of languages with different name in the database
static readonly Dictionary<string, string> codeMap = new Dictionary<string, string> {
{ "br", "pt-br" },
{ "cn-gb", "zh" }
};
public static void Build(ResourceDatabase db, string resourceDir, Action<string> debugOutput)
{
XDocument languageDefinition = XDocument.Load(Path.Combine(resourceDir, "languages/LanguageDefinition.xml"));
var languageCodes = languageDefinition.Root.Elements().Select(e => e.Attribute("code").Value);
foreach (LanguageTable language in db.Languages) {
string databaseCode = language.LanguageName;
string code = codeMap.ContainsKey(databaseCode) ? codeMap[databaseCode] : databaseCode;
string filename;
if (code == "en")
filename = Path.Combine(resourceDir, "StringResources.resx");
else
filename = Path.Combine(resourceDir, "StringResources." + code + ".resx");
if (File.Exists(filename)) {
language.SaveAsResx(filename, code == "en");
} else if (language.Entries.Count > 0.5 * db.Languages[0].Entries.Count) {
debugOutput("Language " + code + " is more than 50% complete but not present in resourceDir");
}
if (language.Entries.Count > 0.75 * db.Languages[0].Entries.Count && !languageCodes.Contains(code)) {
debugOutput("Language " + code + " is more than 75% complete but not defined in LanguageDefinition.xml");
} else if (language.Entries.Count < 0.75 * db.Languages[0].Entries.Count && languageCodes.Contains(code)) {
debugOutput("Language " + code + " is less than 75% complete but defined in LanguageDefinition.xml");
}
}
}
}
}

32
src/Tools/StringResourceTool/CookieAwareWebClient.cs

@ -1,32 +0,0 @@ @@ -1,32 +0,0 @@
/*
* Created by SharpDevelop.
* User: Daniel Grunwald
* Date: 08.10.2005
* Time: 19:47
*/
using System;
using System.Net;
namespace StringResourceTool
{
public class CookieAwareWebClient : WebClient
{
CookieContainer container;
public CookieAwareWebClient(CookieContainer container)
{
if (container == null)
throw new ArgumentNullException("container");
this.container = container;
}
protected override WebRequest GetWebRequest(Uri address)
{
WebRequest request = base.GetWebRequest(address);
if (request is HttpWebRequest) {
(request as HttpWebRequest).CookieContainer = container;
}
return request;
}
}
}

566
src/Tools/StringResourceTool/MainForm.cs

@ -1,566 +0,0 @@ @@ -1,566 +0,0 @@
/*
* Created by SharpDevelop.
* User: Daniel Grunwald
* Date: 08.10.2005
* Time: 19:47
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Resources;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace StringResourceTool
{
public class MainForm : System.Windows.Forms.Form
{
public MainForm()
{
//
// The InitializeComponent() call is required for Windows Forms designer support.
//
InitializeComponent();
try {
using (StreamReader r = new StreamReader("password.txt")) {
userNameTextBox.Text = r.ReadLine();
passwordTextBox.Text = r.ReadLine();
}
savePasswordCheckBox.Checked = true;
} catch {}
Dictionary<string, string> languages = new Dictionary<string, string>() {
{ "cz", "Czech" },
{ "nl", "Dutch" },
{ "fr", "French" },
{ "de", "German" },
{ "it", "Italian" },
{ "pt", "Portuguese" },
{ "es", "Spanish" },
{ "se", "Swedish" },
{ "goisern", "Goiserisch" },
{ "ru", "Russian" },
{ "br", "Brazilian Portuguese" },
{ "pl", "Polish" },
{ "jp", "Japanese" },
{ "th", "Thai" },
{ "kr", "Korean" },
{ "dk", "Danish" },
{ "hu", "Hungarian" },
{ "ro", "Romanian" },
{ "cn-gb", "Chinese Simplified" },
{ "cn-big", "Chinese Traditional" },
{ "ca", "Catalan" },
{ "bg", "Bulgarian" },
{ "urdu", "Urdu" },
{ "be", "Belarusian" },
{ "el", "Greek" },
{ "tr", "Turkish" },
{ "sk", "Slovak" },
{ "lt", "Lithuanian" },
{ "he", "Hebrew" },
{ "sl", "Slovenian" },
{ "es-mx", "Spanish (Mexico)" },
{ "af", "Afrikaans" },
{ "vi", "Vietnamese" },
{ "ar", "Arabic" },
{ "no", "Norwegian" },
{ "fa", "Persian" },
{ "sr", "Serbian" },
{ "fi", "Finnish" },
{ "hr", "Croatian" },
{ "id", "Indonesian" }
};
// Clear the combobox
comboBox1.DataSource = null;
comboBox1.Items.Clear();
// Bind the combobox
comboBox1.DataSource = new BindingSource(languages, null);
comboBox1.DisplayMember = "Value";
comboBox1.ValueMember = "Key";
}
[STAThread]
public static void Main(string[] args)
{
if (args.Length == 3) {
try {
string userName, password;
using (StreamReader r = new StreamReader("password.txt")) {
userName = r.ReadLine();
password = r.ReadLine();
}
TranslationServer server = new TranslationServer(new TextBox());
if (!server.Login(userName, password)) {
MessageBox.Show("Login failed");
return;
}
server.AddResourceString(args[0], args[1], args[2]);
MessageBox.Show("Resource string added to database on server");
return;
} catch (Exception ex) {
MessageBox.Show(ex.ToString());
}
}
Application.EnableVisualStyles();
Application.Run(new MainForm());
}
#region Windows Forms Designer generated code
/// <summary>
/// This method is required for Windows Forms designer support.
/// Do not change the method contents inside the source code editor. The Forms designer might
/// not be able to load this method if it was changed manually.
/// </summary>
private void InitializeComponent()
{
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.comboBox1 = new System.Windows.Forms.ComboBox();
this.label3 = new System.Windows.Forms.Label();
this.deleteStringsButton = new System.Windows.Forms.Button();
this.button4 = new System.Windows.Forms.Button();
this.savePasswordCheckBox = new System.Windows.Forms.CheckBox();
this.button3 = new System.Windows.Forms.Button();
this.passwordTextBox = new System.Windows.Forms.TextBox();
this.userNameTextBox = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label();
this.button2 = new System.Windows.Forms.Button();
this.button1 = new System.Windows.Forms.Button();
this.outputTextBox = new System.Windows.Forms.TextBox();
this.button5 = new System.Windows.Forms.Button();
this.groupBox1.SuspendLayout();
this.SuspendLayout();
//
// groupBox1
//
this.groupBox1.Controls.Add(this.comboBox1);
this.groupBox1.Controls.Add(this.label3);
this.groupBox1.Controls.Add(this.deleteStringsButton);
this.groupBox1.Controls.Add(this.button4);
this.groupBox1.Controls.Add(this.savePasswordCheckBox);
this.groupBox1.Controls.Add(this.button3);
this.groupBox1.Controls.Add(this.passwordTextBox);
this.groupBox1.Controls.Add(this.userNameTextBox);
this.groupBox1.Controls.Add(this.label2);
this.groupBox1.Controls.Add(this.label1);
this.groupBox1.Location = new System.Drawing.Point(12, 12);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(597, 100);
this.groupBox1.TabIndex = 0;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "Translation server";
//
// comboBox1
//
this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBox1.FormattingEnabled = true;
this.comboBox1.Items.AddRange(new object[] {
"cz\">Czech</option>",
"<option value=\"nl\">Dutch</option>",
"<option value=\"fr\">French</option>",
"<option selected=\"\" value=\"de\">German</option>",
"<option value=\"it\">Italian</option>",
"<option value=\"pt\">Portuguese</option>",
"<option value=\"es\">Spanish</option>",
"<option value=\"se\">Swedish</option>",
"<option value=\"goisern\">Goiserisch</option>",
"<option value=\"ru\">Russian</option>",
"<option value=\"br\">Brazilian Portuguese</option>",
"<option value=\"pl\">Polish</option>",
"<option value=\"jp\">Japanese</option>",
"<option value=\"th\">Thai</option>",
"<option value=\"kr\">Korean</option>",
"<option value=\"dk\">Danish</option>",
"<option value=\"hu\">Hungarian</option>",
"<option value=\"ro\">Romanian</option>",
"<option value=\"cn-gb\">Chinese Simplified</option>",
"<option value=\"cn-big\">Chinese Traditional</option>",
"<option value=\"ca\">Catalan</option>",
"<option value=\"bg\">Bulgarian</option>",
"<option value=\"urdu\">Urdu</option>",
"<option value=\"be\">Belarusian</option>",
"<option value=\"el\">Greek</option>",
"<option value=\"tr\">Turkish</option>",
"<option value=\"sk\">Slovak</option>",
"<option value=\"lt\">Lithuanian</option>",
"<option value=\"he\">Hebrew</option>",
"<option value=\"sl\">Slovenian</option>",
"<option value=\"es-mx\">Spanish (Mexico)</option>",
"<option value=\"af\">Afrikaans</option>",
"<option value=\"vi\">Vietnamese</option>",
"<option value=\"ar\">Arabic</option>",
"<option value=\"no\">Norwegian</option>",
"<option value=\"fa\">Persian</option>",
"<option value=\"sr\">Serbian</option>",
"<option value=\"fi\">Finnish</option>",
"<option value=\"hr\">Croatian</option>",
"<option value=\"id\">Indonesian </option>"});
this.comboBox1.Location = new System.Drawing.Point(76, 65);
this.comboBox1.Name = "comboBox1";
this.comboBox1.Size = new System.Drawing.Size(121, 21);
this.comboBox1.TabIndex = 9;
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(12, 68);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(58, 13);
this.label3.TabIndex = 8;
this.label3.Text = "Language:";
//
// deleteStringsButton
//
this.deleteStringsButton.Enabled = false;
this.deleteStringsButton.Location = new System.Drawing.Point(411, 20);
this.deleteStringsButton.Name = "deleteStringsButton";
this.deleteStringsButton.Size = new System.Drawing.Size(144, 23);
this.deleteStringsButton.TabIndex = 7;
this.deleteStringsButton.Text = "Delete resource strings";
this.deleteStringsButton.Click += new System.EventHandler(this.DeleteStringsButtonClick);
//
// button4
//
this.button4.Enabled = false;
this.button4.Location = new System.Drawing.Point(292, 20);
this.button4.Name = "button4";
this.button4.Size = new System.Drawing.Size(113, 23);
this.button4.TabIndex = 6;
this.button4.Text = "Download database";
this.button4.Click += new System.EventHandler(this.DownloadButtonClick);
//
// savePasswordCheckBox
//
this.savePasswordCheckBox.Location = new System.Drawing.Point(182, 44);
this.savePasswordCheckBox.Name = "savePasswordCheckBox";
this.savePasswordCheckBox.Size = new System.Drawing.Size(104, 24);
this.savePasswordCheckBox.TabIndex = 5;
this.savePasswordCheckBox.Text = "Save password";
//
// button3
//
this.button3.Location = new System.Drawing.Point(182, 20);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(75, 23);
this.button3.TabIndex = 4;
this.button3.Text = "Login";
this.button3.Click += new System.EventHandler(this.Button3Click);
//
// passwordTextBox
//
this.passwordTextBox.Location = new System.Drawing.Point(76, 42);
this.passwordTextBox.Name = "passwordTextBox";
this.passwordTextBox.PasswordChar = '●';
this.passwordTextBox.Size = new System.Drawing.Size(100, 20);
this.passwordTextBox.TabIndex = 3;
this.passwordTextBox.UseSystemPasswordChar = true;
//
// userNameTextBox
//
this.userNameTextBox.Location = new System.Drawing.Point(76, 19);
this.userNameTextBox.Name = "userNameTextBox";
this.userNameTextBox.Size = new System.Drawing.Size(100, 20);
this.userNameTextBox.TabIndex = 1;
//
// label2
//
this.label2.Location = new System.Drawing.Point(6, 40);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(64, 23);
this.label2.TabIndex = 2;
this.label2.Text = "Password:";
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// label1
//
this.label1.Location = new System.Drawing.Point(6, 17);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(64, 23);
this.label1.TabIndex = 0;
this.label1.Text = "Username:";
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// button2
//
this.button2.Location = new System.Drawing.Point(141, 118);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(124, 23);
this.button2.TabIndex = 2;
this.button2.Text = "Find missing strings";
this.button2.Click += new System.EventHandler(this.Button2Click);
//
// button1
//
this.button1.Location = new System.Drawing.Point(11, 118);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(124, 23);
this.button1.TabIndex = 1;
this.button1.Text = "Find unused strings";
this.button1.Click += new System.EventHandler(this.Button1Click);
//
// outputTextBox
//
this.outputTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.outputTextBox.Location = new System.Drawing.Point(12, 147);
this.outputTextBox.Multiline = true;
this.outputTextBox.Name = "outputTextBox";
this.outputTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Both;
this.outputTextBox.Size = new System.Drawing.Size(597, 309);
this.outputTextBox.TabIndex = 3;
//
// button5
//
this.button5.Location = new System.Drawing.Point(271, 118);
this.button5.Name = "button5";
this.button5.Size = new System.Drawing.Size(280, 23);
this.button5.TabIndex = 4;
this.button5.Text = "Upload resources (check language! dangerous!)";
this.button5.UseVisualStyleBackColor = true;
this.button5.Click += new System.EventHandler(this.Button5Click);
//
// MainForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(621, 468);
this.Controls.Add(this.button5);
this.Controls.Add(this.groupBox1);
this.Controls.Add(this.button2);
this.Controls.Add(this.button1);
this.Controls.Add(this.outputTextBox);
this.Name = "MainForm";
this.Text = "StringResourceTool";
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
private System.Windows.Forms.Label label3;
private System.Windows.Forms.ComboBox comboBox1;
private System.Windows.Forms.Button button5;
private System.Windows.Forms.Button deleteStringsButton;
private System.Windows.Forms.Button button4;
private System.Windows.Forms.CheckBox savePasswordCheckBox;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.TextBox passwordTextBox;
private System.Windows.Forms.TextBox userNameTextBox;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.TextBox outputTextBox;
#endregion
void Button1Click(object sender, EventArgs e)
{
button1.Enabled = false;
Display(FindMissing(FindResourceStrings(), FindUsedStrings()));
button1.Enabled = true;
}
void Button2Click(object sender, EventArgs e)
{
button2.Enabled = false;
Display(FindMissing(FindUsedStrings(), FindResourceStrings()));
button2.Enabled = true;
}
void Display(List<string> list)
{
StringBuilder b = new StringBuilder();
foreach (string entry in list) {
b.AppendLine(entry);
}
outputTextBox.Text = b.ToString();
}
/// <summary>Gets entries in t1 that are missing from t2.</summary>
List<string> FindMissing(HashSet<string> t1, HashSet<string> t2)
{
return t1.Except(t2).OrderBy(s=>s).ToList();
}
HashSet<string> FindUsedStrings()
{
HashSet<string> t = new HashSet<string>();
FindUsedStrings(t, @"..\..\..\..\..");
return t;
}
void FindUsedStrings(HashSet<string> t, string path)
{
foreach (string subPath in Directory.GetDirectories(path)) {
if (!(subPath.EndsWith(".svn") || subPath.EndsWith("\\obj"))) {
FindUsedStrings(t, subPath);
}
}
foreach (string fileName in Directory.EnumerateFiles(path)) {
switch (Path.GetExtension(fileName).ToLowerInvariant()) {
case ".cs":
case ".boo":
FindUsedStrings(fileName, t, resourceService);
break;
case ".xaml":
FindUsedStrings(fileName, t, xamlLocalize, xamlLocalizeElementSyntax);
break;
case ".resx":
case ".resources":
case ".dll":
case ".exe":
case ".pdb":
break;
default:
FindUsedStrings(fileName, t);
break;
}
}
}
const string resourceNameRegex = @"[\.\w\d]+";
readonly static Regex pattern = new Regex(@"\$\{res:(" + resourceNameRegex + @")\}", RegexOptions.Compiled);
readonly static Regex resourceService = new Regex(@"ResourceService.GetString\(\""(" + resourceNameRegex + @")\""\)", RegexOptions.Compiled);
readonly static Regex xamlLocalize = new Regex(@"\{\w+:Localize\s+(" + resourceNameRegex + @")\}", RegexOptions.Compiled);
readonly static Regex xamlLocalizeElementSyntax = new Regex(@"\<\w+:LocalizeExtension\s+Key\s*=\s*[""'](" + resourceNameRegex + @")[""']", RegexOptions.Compiled);
void FindUsedStrings(string fileName, HashSet<string> t, params Regex[] extraPatterns)
{
StreamReader sr = File.OpenText(fileName);
string content = sr.ReadToEnd();
sr.Close();
foreach (Match m in pattern.Matches(content)) {
//Debug.WriteLine(fileName);
t.Add(m.Groups[1].Captures[0].Value);
}
foreach (var extraPattern in extraPatterns) {
foreach (Match m in extraPattern.Matches(content)) {
//Debug.WriteLine(fileName);
t.Add(m.Groups[1].Captures[0].Value);
}
}
}
const string srcDir = @"..\..\..\..\";
HashSet<string> FindResourceStrings()
{
var rs = new ResXResourceReader(srcDir + @"..\data\resources\StringResources.resx");
HashSet<string> t = new HashSet<string>();
foreach (DictionaryEntry e in rs) {
t.Add(e.Key.ToString());
}
rs.Close();
return t;
}
TranslationServer server;
void Button3Click(object sender, EventArgs e)
{
server = new TranslationServer(outputTextBox);
if (savePasswordCheckBox.Checked) {
using (StreamWriter w = new StreamWriter("password.txt")) {
w.WriteLine(userNameTextBox.Text);
w.WriteLine(passwordTextBox.Text);
}
} else {
File.Delete("password.txt");
}
if (server.Login(userNameTextBox.Text, passwordTextBox.Text)) {
button4.Enabled = true;
deleteStringsButton.Enabled = true;
}
}
void DownloadButtonClick(object sender, EventArgs e)
{
EventHandler onDownloadFinished = delegate {
outputTextBox.Text += "\r\nLoading database...";
Application.DoEvents();
ResourceDatabase db = ResourceDatabase.Load("LocalizeDb_DL_Corsavy.mdb");
outputTextBox.Text += "\r\nCreating resource files...";
Application.DoEvents();
BuildResourceFiles.Build(db, Path.Combine(srcDir, "../data/resources"),
text => { outputTextBox.Text += "\r\n" + text; Application.DoEvents();});
outputTextBox.Text += "\r\nBuilding SharpDevelop...";
RunBatch(Path.Combine(srcDir, ".."), "debugbuild.bat", null);
};
server.DownloadDatabase("LocalizeDb_DL_Corsavy.mdb", onDownloadFinished);
//onDownloadFinished(null, null);
}
void RunBatch(string dir, string batchFile, MethodInvoker exitCallback)
{
BeginInvoke(new MethodInvoker(delegate {
outputTextBox.Text += "\r\nRun " + dir + batchFile + "...";
}));
ProcessStartInfo psi = new ProcessStartInfo("cmd", "/c " + batchFile);
psi.WorkingDirectory = dir;
Process p = Process.Start(psi);
if (exitCallback != null) {
p.EnableRaisingEvents = true;
p.Exited += delegate {
p.Dispose();
exitCallback();
};
}
}
void DeleteStringsButtonClick(object sender, EventArgs e)
{
List<string> list = new List<string>();
string preview = "";
foreach (string line in outputTextBox.Lines) {
if (line.Length > 0) {
list.Add(line);
if (preview.Length == 0) {
preview = line;
} else if (preview.Length < 100) {
preview += ", " + line;
}
}
}
if (MessageBox.Show("Do you really want to delete the " + list.Count + " resource strings (" + preview + ")"
, "Delete resources", MessageBoxButtons.YesNo) == DialogResult.Yes) {
server.DeleteResourceStrings(list.ToArray());
}
}
void Button5Click(object sender, EventArgs e)
{
server.SetLanguage(comboBox1.SelectedValue.ToString());
using (OpenFileDialog dialog = new OpenFileDialog()) {
dialog.Filter = "String resources (.resources)|*.resources";
if (dialog.ShowDialog() != DialogResult.OK) return;
ImportResourcesFile(dialog.FileName);
}
}
void ImportResourcesFile(string fileName)
{
using (ResourceReader r = new ResourceReader(fileName)) {
IDictionaryEnumerator enumerator = r.GetEnumerator();
while (enumerator.MoveNext()) {
try {
server.UpdateTranslation(enumerator.Key.ToString(), enumerator.Value.ToString());
} catch (WebException ex) {
outputTextBox.AppendText(Environment.NewLine + "could not update: " + enumerator.Key + ": " + ex.Message);
}
}
}
}
}
}

120
src/Tools/StringResourceTool/MainForm.resx

@ -1,120 +0,0 @@ @@ -1,120 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

93
src/Tools/StringResourceTool/ResourceDatabase.cs

@ -1,93 +0,0 @@ @@ -1,93 +0,0 @@
/*
* Created by SharpDevelop.
* User: daniel
* Date: 28.08.2009
* Time: 23:40
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections.Generic;
using System.Data.OleDb;
using System.Linq;
using System.Resources;
using System.Xml.Linq;
namespace StringResourceTool
{
public class ResourceDatabase
{
public readonly List<LanguageTable> Languages = new List<LanguageTable>();
public static ResourceDatabase Load(string databaseFile)
{
string connection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
databaseFile + ";";
using (var myConnection = new OleDbConnection(connection)) {
myConnection.Open();
ResourceDatabase db = new ResourceDatabase();
using (OleDbCommand myOleDbCommand = new OleDbCommand("SELECT * FROM Localization", myConnection)) {
using (OleDbDataReader reader = myOleDbCommand.ExecuteReader()) {
string[] fieldNames = Enumerable.Range(0, reader.FieldCount).Select(i => reader.GetName(i)).ToArray();
db.Languages.Add(new LanguageTable("en"));
foreach (string fieldName in fieldNames) {
if (fieldName.StartsWith("lang-"))
db.Languages.Add(new LanguageTable(fieldName.Substring(5)));
}
while (reader.Read()) {
ResourceEntry primaryEntry = new ResourceEntry {
Key = reader["ResourceName"].ToString(),
Description = reader["PrimaryPurpose"].ToString(),
Value = reader["PrimaryResLangValue"].ToString()
};
db.Languages[0].Entries.Add(primaryEntry.Key, primaryEntry);
for (int i = 1; i < db.Languages.Count; i++) {
string val = reader["lang-" + db.Languages[i].LanguageName].ToString();
if (!string.IsNullOrEmpty(val)) {
ResourceEntry entry = new ResourceEntry {
Key = primaryEntry.Key,
Description = primaryEntry.Description,
Value = val
};
db.Languages[i].Entries.Add(entry.Key, entry);
}
}
}
}
}
return db;
}
}
}
public class LanguageTable
{
public readonly string LanguageName;
public readonly Dictionary<string, ResourceEntry> Entries = new Dictionary<string, ResourceEntry>();
public LanguageTable(string languageName)
{
this.LanguageName = languageName;
}
public void SaveAsResx(string filename, bool includeDescriptions)
{
using (ResXResourceWriter writer = new ResXResourceWriter(filename)) {
foreach (ResourceEntry entry in Entries.Values.OrderBy(e => e.Key, StringComparer.OrdinalIgnoreCase)) {
string normalizedValue = entry.Value.Replace("\r", "").Replace("\n", Environment.NewLine);
if (includeDescriptions) {
string normalizedDescription = entry.Description.Replace("\r", "").Replace("\n", Environment.NewLine);
writer.AddResource(new ResXDataNode(entry.Key, normalizedValue) { Comment = normalizedDescription });
} else {
writer.AddResource(entry.Key, normalizedValue);
}
}
}
}
}
public class ResourceEntry
{
public string Key, Description, Value;
}
}

67
src/Tools/StringResourceTool/StringResourceTool.csproj

@ -1,67 +0,0 @@ @@ -1,67 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<RootNamespace>StringResourceTool</RootNamespace>
<AssemblyName>StringResourceTool</AssemblyName>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{197537EA-78F4-4434-904C-C81B19459FE7}</ProjectGuid>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<NoStdLib>False</NoStdLib>
<WarningLevel>4</WarningLevel>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<OutputPath>bin\Debug\</OutputPath>
<Optimize>False</Optimize>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugSymbols>true</DebugSymbols>
<DebugType>Full</DebugType>
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<OutputPath>bin\Release\</OutputPath>
<Optimize>True</Optimize>
<DefineConstants>TRACE</DefineConstants>
<DebugSymbols>False</DebugSymbols>
<DebugType>None</DebugType>
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
<RegisterForComInterop>False</RegisterForComInterop>
<GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
<BaseAddress>4194304</BaseAddress>
<PlatformTarget>x86</PlatformTarget>
<FileAlignment>4096</FileAlignment>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Web" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="BuildResourceFiles.cs" />
<Compile Include="CookieAwareWebClient.cs" />
<Compile Include="MainForm.cs" />
<Compile Include="ResourceDatabase.cs" />
<Compile Include="TranslationServer.cs" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="MainForm.resx">
<DependentUpon>MainForm.cs</DependentUpon>
</EmbeddedResource>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
</Project>

22
src/Tools/StringResourceTool/StringResourceTool.sln

@ -1,22 +0,0 @@ @@ -1,22 +0,0 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# SharpDevelop 2.0.0.1006
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StringResourceTool", "StringResourceTool.csproj", "{197537EA-78F4-4434-904C-C81B19459FE7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StringResourceToolAddIn", "..\StringResourceToolAddIn\StringResourceToolAddIn.csproj", "{3648E209-B853-4168-BFB5-7A60EAF316F8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{197537EA-78F4-4434-904C-C81B19459FE7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{197537EA-78F4-4434-904C-C81B19459FE7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{197537EA-78F4-4434-904C-C81B19459FE7}.Release|Any CPU.Build.0 = Release|Any CPU
{197537EA-78F4-4434-904C-C81B19459FE7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Release|Any CPU.Build.0 = Release|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
EndGlobalSection
EndGlobal

152
src/Tools/StringResourceTool/TranslationServer.cs

@ -1,152 +0,0 @@ @@ -1,152 +0,0 @@
/*
* Created by SharpDevelop.
* User: Daniel Grunwald
* Date: 08.10.2005
* Time: 20:24
*/
using System;
using System.IO;
using System.Net;
using System.Text;
using System.Web;
using System.Windows.Forms;
namespace StringResourceTool
{
public class TranslationServer
{
TextBox output;
string baseURL = "http://developer.sharpdevelop.net/corsavy/translation/";
public TranslationServer(TextBox output)
{
this.output = output;
this.cookieContainer = new CookieContainer();
this.wc = new CookieAwareWebClient(cookieContainer);
}
CookieContainer cookieContainer;
CookieAwareWebClient wc;
public bool Login(string user, string pwd)
{
output.Text = "Contacting server...";
Application.DoEvents();
System.Threading.Thread.Sleep(50);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(baseURL + "logon.asp");
request.ContentType = "application/x-www-form-urlencoded";
string postString = "uname=" + user + "&upwd=" + HttpUtility.UrlEncode(pwd);
request.ContentLength = postString.Length;
request.CookieContainer = cookieContainer;
request.Method = "POST";
request.AllowAutoRedirect = false;
Stream s = request.GetRequestStream();
using (StreamWriter w = new StreamWriter(s)) {
w.Write(postString);
}
s.Close();
string result;
using (StreamReader r = new StreamReader(request.GetResponse().GetResponseStream())) {
result = r.ReadToEnd();
}
if (result.Contains("You couldn't be logged on")) {
output.Text += "\r\nInvalid username/password.";
return false;
}
output.Text += "\r\nLogin successful.";
return true;
}
public void DownloadDatabase(string targetFile, EventHandler successCallback)
{
wc.DownloadProgressChanged += delegate(object sender, DownloadProgressChangedEventArgs e) {
output.BeginInvoke((MethodInvoker)delegate {
output.Text = "Download: " + e.ProgressPercentage + "%";
});
};
wc.DownloadDataCompleted += delegate(object sender, DownloadDataCompletedEventArgs e) {
output.BeginInvoke((MethodInvoker)delegate {
if (e.Error != null)
output.Text = e.Error.ToString();
else
output.Text = "Download complete.";
});
if (e.Error == null) {
using (FileStream fs = new FileStream(targetFile, FileMode.Create, FileAccess.Write)) {
fs.Write(e.Result, 0, e.Result.Length);
}
successCallback(this, EventArgs.Empty);
}
wc.Dispose();
};
wc.DownloadDataAsync(new Uri(baseURL + "CompactNdownload.asp"));
}
public void AddResourceString(string idx, string value, string purpose)
{
wc.Headers.Set("Content-Type", "application/x-www-form-urlencoded");
wc.UploadString(new Uri(baseURL + "owners_AddNew.asp"),
"Idx=" + Uri.EscapeDataString(idx)
+ "&PrimaryResLangValue=" + Uri.EscapeDataString(value)
+ "&PrimaryPurpose=" + Uri.EscapeDataString(purpose));
}
public void UpdateTranslation(string idx, string newValue)
{
newValue = HttpUtility.UrlEncode(newValue, Encoding.Default);
wc.Headers.Set("Content-Type", "application/x-www-form-urlencoded");
wc.UploadString(new Uri(baseURL + "translation_edit.asp"),
"Idx=" + Uri.EscapeDataString(idx)
+ "&Localization=" + newValue);
}
public void DeleteResourceStrings(string[] idx)
{
const int threadCount = 3; // 3 parallel calls
output.Text = "Deleting...";
int index = 0;
int finishCount = 0;
EventHandler callback = null;
callback = delegate {
lock (idx) {
if (index < idx.Length) {
DeleteResourceString(idx[index++], callback);
} else {
finishCount += 1;
if (finishCount == threadCount) {
output.BeginInvoke((MethodInvoker)delegate {
output.Text += "\r\nFinished.";
output.Text += "\r\nYou have to re-download the database to see the changes.";
});
}
}
}
};
for (int i = 0; i < threadCount; i++) {
callback(null, null);
}
}
public void DeleteResourceString(string idx, EventHandler callback)
{
wc.Headers.Set("Content-Type", "application/x-www-form-urlencoded");
wc.UploadStringCompleted += delegate {
output.BeginInvoke((MethodInvoker)delegate {
output.Text += "\r\nDeleted " + idx;
});
wc.Dispose();
if (callback != null)
callback(this, EventArgs.Empty);
};
wc.UploadStringAsync(new Uri(baseURL + "owners_delete.asp"),
"Idx=" + Uri.EscapeDataString(idx) + "&ReallyDelete=on");
}
public void SetLanguage(string language)
{
wc.Headers.Set("Content-Type", "application/x-www-form-urlencoded");
wc.UploadString(new Uri(baseURL + "SelectLanguage.asp"),
"Language=" + Uri.EscapeDataString(language));
}
}
}

27
src/Tools/StringResourceToolAddIn/Configuration/AssemblyInfo.cs

@ -1,27 +0,0 @@ @@ -1,27 +0,0 @@
/*
* Created by SharpDevelop.
* User: Daniel Grunwald
* Date: 19.01.2006
* Time: 16:34
*/
using System.Reflection;
[assembly: AssemblyTitle("StringResourceToolAddIn")]
[assembly: AssemblyDescription("Macro AddIn for SharpDevelop 2.0")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("SharpDevelop")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has following format :
//
// Major.Minor.Build.Revision
//
// You can specify all values by your own or you can build default build and revision
// numbers with the '*' character (the default):
[assembly: AssemblyVersion("1.0.*")]

92
src/Tools/StringResourceToolAddIn/Src/Command.cs

@ -1,92 +0,0 @@ @@ -1,92 +0,0 @@
/*
* Created by SharpDevelop.
* User: Daniel Grunwald
* Date: 19.01.2006
* Time: 16:34
*/
using ICSharpCode.SharpDevelop.Editor;
using System;
using System.Collections;
using System.Diagnostics;
using System.IO;
using System.Resources;
using System.Text;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui;
namespace StringResourceToolAddIn
{
public class ToolCommand1 : AbstractMenuCommand
{
public override void Run()
{
// Here an example that shows how to access the current text document:
ITextEditorProvider tecp = WorkbenchSingleton.Workbench.ActiveContent as ITextEditorProvider;
if (tecp == null) {
// active content is not a text editor control
return;
}
// Get the active text area from the control:
ITextEditor textEditor = tecp.TextEditor;
if (textEditor.SelectionLength == 0)
return;
// get the selected text:
string text = textEditor.SelectedText;
string sdSrcPath = Path.Combine(Path.GetDirectoryName(GetType().Assembly.Location),
"../../../..");
string resxFile = Path.Combine(sdSrcPath, "../data/Resources/StringResources.resx");
using (ResXResourceReader r = new ResXResourceReader(resxFile)) {
IDictionaryEnumerator en = r.GetEnumerator();
// Goes through the enumerator, printing out the key and value pairs.
while (en.MoveNext()) {
if (object.Equals(en.Value, text)) {
SetText(textEditor, en.Key.ToString(), text);
return;
}
}
}
string resourceName = MessageService.ShowInputBox("Add Resource", "Please enter the name for the new resource.\n" +
"This should be a namespace-like construct, please see what the names of resources in the same component are.", PropertyService.Get("ResourceToolLastResourceName"));
if (resourceName == null || resourceName.Length == 0) return;
PropertyService.Set("ResourceToolLastResourceName", resourceName);
string purpose = MessageService.ShowInputBox("Add Resource", "Enter resource purpose (may be empty)", "");
if (purpose == null) return;
SetText(textEditor, resourceName, text);
string path = Path.GetFullPath(Path.Combine(sdSrcPath, "Tools/StringResourceTool/bin/Debug"));
ProcessStartInfo info = new ProcessStartInfo(path + "\\StringResourceTool.exe",
"\"" + resourceName + "\" "
+ "\"" + text + "\" "
+ "\"" + purpose + "\"");
info.WorkingDirectory = path;
try {
Process.Start(info);
} catch (Exception ex) {
MessageService.ShowException(ex, "Error starting " + info.FileName);
}
}
void SetText(ITextEditor textEditor, string resourceName, string oldText)
{
// ensure caret is at start of selection / deselect text
textEditor.Select(textEditor.SelectionStart, 0);
// replace the selected text with the new text:
string newText;
if (Path.GetExtension(textEditor.FileName) == ".xaml")
newText = "{core:Localize " + resourceName + "}";
else
newText = "$" + "{res:" + resourceName + "}";
// Replace() takes the arguments: start offset to replace, length of the text to remove, new text
textEditor.Document.Replace(textEditor.Caret.Offset, oldText.Length, newText);
}
}
}

19
src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.addin

@ -1,19 +0,0 @@ @@ -1,19 +0,0 @@
<AddIn name = "StringResourceToolAddIn"
author = "Daniel Grunwald"
description = "Provides a shortcut (Ctrl+Shift+R) to upload the selected text into the translation database">
<Manifest>
<Identity name="ICSharpCode.Internal.StringResourceToolAddIn" version="@StringResourceToolAddIn.dll"/>
</Manifest>
<Runtime>
<Import assembly = "StringResourceToolAddIn.dll"/>
</Runtime>
<Path name = "/Workspace/Tools">
<MenuItem id = "StringResourceToolAddInCommand1"
label = "StringResourceToolAddIn"
shortcut = "Control|Shift|R"
class = "StringResourceToolAddIn.ToolCommand1"/>
</Path>
</AddIn>

61
src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.csproj

@ -1,61 +0,0 @@ @@ -1,61 +0,0 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<OutputType>Library</OutputType>
<RootNamespace>StringResourceToolAddIn</RootNamespace>
<AssemblyName>StringResourceToolAddIn</AssemblyName>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{3648E209-B853-4168-BFB5-7A60EAF316F8}</ProjectGuid>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<NoStdLib>False</NoStdLib>
<RegisterForComInterop>False</RegisterForComInterop>
<GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
<BaseAddress>4194304</BaseAddress>
<PlatformTarget>AnyCPU</PlatformTarget>
<FileAlignment>4096</FileAlignment>
<WarningLevel>4</WarningLevel>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<Optimize>False</Optimize>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugSymbols>true</DebugSymbols>
<DebugType>Full</DebugType>
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
<OutputPath>bin\Debug</OutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<Optimize>True</Optimize>
<DefineConstants>TRACE</DefineConstants>
<DebugSymbols>false</DebugSymbols>
<DebugType>None</DebugType>
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
<OutputPath>bin\Release</OutputPath>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="ICSharpCode.SharpDevelop">
<HintPath>..\..\..\bin\ICSharpCode.SharpDevelop.dll</HintPath>
<SpecificVersion>False</SpecificVersion>
<Private>False</Private>
</Reference>
<Reference Include="ICSharpCode.Core">
<HintPath>..\..\..\bin\ICSharpCode.Core.dll</HintPath>
<SpecificVersion>False</SpecificVersion>
<Private>False</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<None Include="StringResourceToolAddIn.addin">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<Compile Include="Src\Command.cs" />
<Compile Include="Configuration\AssemblyInfo.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
</Project>

18
src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.sln

@ -1,18 +0,0 @@ @@ -1,18 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
# SharpDevelop 4.0.0.5303
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StringResourceToolAddIn", "StringResourceToolAddIn.csproj", "{3648E209-B853-4168-BFB5-7A60EAF316F8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Release|Any CPU.Build.0 = Release|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
EndGlobalSection
EndGlobal
Loading…
Cancel
Save