Browse Source

Replace StringResourceTool with ResGet, and update the string resources.

pull/520/head
Daniel Grunwald 11 years ago
parent
commit
181731849c
  1. 1
      .gitignore
  2. 6
      data/resources/StringResources.cz.resx
  3. 6
      data/resources/StringResources.de.resx
  4. 74
      data/resources/StringResources.es-mx.resx
  5. 74
      data/resources/StringResources.es.resx
  6. 6
      data/resources/StringResources.fi.resx
  7. 58
      data/resources/StringResources.fr.resx
  8. 8
      data/resources/StringResources.hu.resx
  9. 8
      data/resources/StringResources.it.resx
  10. 6
      data/resources/StringResources.kr.resx
  11. 15
      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. 361
      data/resources/StringResources.se.resx
  19. 299
      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. 120
      src/Tools/LocalizationDbToResFile/Main.cs
  25. 83
      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. 66
      src/Tools/StringResourceTool/BuildResourceFiles.cs
  33. 44
      src/Tools/StringResourceTool/CookieAwareWebClient.cs
  34. 578
      src/Tools/StringResourceTool/MainForm.cs
  35. 120
      src/Tools/StringResourceTool/MainForm.resx
  36. 103
      src/Tools/StringResourceTool/ResourceDatabase.cs
  37. 71
      src/Tools/StringResourceTool/StringResourceTool.csproj
  38. 24
      src/Tools/StringResourceTool/StringResourceTool.sln
  39. 163
      src/Tools/StringResourceTool/TranslationServer.cs
  40. 6
      src/Tools/StringResourceTool/app.config
  41. 37
      src/Tools/StringResourceToolAddIn/Configuration/AssemblyInfo.cs
  42. 100
      src/Tools/StringResourceToolAddIn/Src/Command.cs
  43. 19
      src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.addin
  44. 67
      src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.csproj
  45. 18
      src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.sln

1
.gitignore vendored

@ -22,3 +22,4 @@ bin/ @@ -22,3 +22,4 @@ bin/
/src/AddIns/Misc/PackageManagement/Packages/AvalonEdit/lib
/packages/
/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>
@ -7721,7 +7724,4 @@ Fehler beim Starten: @@ -7721,7 +7724,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>

74
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>
@ -1538,6 +1542,30 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib @@ -1538,6 +1542,30 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib
<data name="CQA.MainWindow.FormTitle" xml:space="preserve">
<value>Análisis de Calidad de Código</value>
</data>
<data name="CSharpBinding.Formatting.AutoFormat" xml:space="preserve">
<value>Formatear código automáticamente</value>
</data>
<data name="CSharpBinding.Formatting.DefaultOptionReference" xml:space="preserve">
<value>(predeterminado)</value>
</data>
<data name="CSharpBinding.Formatting.GlobalOptionReference" xml:space="preserve">
<value>(global)</value>
</data>
<data name="CSharpBinding.Formatting.NoPresetSelectedMessage" xml:space="preserve">
<value>No se seleccionó un formato preestablecido!</value>
</data>
<data name="CSharpBinding.Formatting.PresetOverwriteQuestion" xml:space="preserve">
<value>¿Esta seguro/a que quiere restablecer todas las opciones de formato previamente definidas?</value>
</data>
<data name="CSharpBinding.Formatting.ProjectOptionReference" xml:space="preserve">
<value>(proyecto)</value>
</data>
<data name="CSharpBinding.Formatting.ResetTo" xml:space="preserve">
<value>Restablecer a:</value>
</data>
<data name="CSharpBinding.Formatting.SolutionOptionReference" xml:space="preserve">
<value>(solución)</value>
</data>
<data name="CSharpBinding.GenerateNewHandlerInstructions" xml:space="preserve">
<value>Inserta una referencia a un método explicito; presione tabulador o enter otra vez para insertar una nueva porción de método.</value>
</data>
@ -1980,6 +2008,15 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".</value> @@ -1980,6 +2008,15 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".</value>
<data name="Dialog.Options.IDEOptions.CodeCompletion.SaveItemCountBeforeNumber" xml:space="preserve">
<value>Guardar</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTarget" xml:space="preserve">
<value>Enlaces en tooltips deben ir en</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTargetDefinition" xml:space="preserve">
<value>Definición en código</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTargetDocumentation" xml:space="preserve">
<value>Documentación (si esta disponible)</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.UseDataUsageCache" xml:space="preserve">
<value>Pre-seleccionar miembros usados recientemente</value>
</data>
@ -2352,6 +2389,9 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".</value> @@ -2352,6 +2389,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>
@ -2613,6 +2653,9 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".</value> @@ -2613,6 +2653,9 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".</value>
<data name="Dialog.ProjectOptions.BuildOptions.VBOptionsDefaultValues" xml:space="preserve">
<value>Valores predeterminados de VB:</value>
</data>
<data name="Dialog.ProjectOptions.CodeFormatting" xml:space="preserve">
<value>Formato de Código</value>
</data>
<data name="Dialog.ProjectOptions.Configuration" xml:space="preserve">
<value>&amp;Configuración</value>
</data>
@ -3317,9 +3360,15 @@ También puede elegir guardar la opción en el archivo .user en lugar de en el a @@ -3317,9 +3360,15 @@ También puede elegir guardar la opción en el archivo .user en lugar de en el a
<data name="ICSharpCode.CodeCoverage.CodeNotCovered" xml:space="preserve">
<value>Código No Cubierto</value>
</data>
<data name="ICSharpCode.CodeCoverage.CodePartCovered" xml:space="preserve">
<value>Código Parcialmente Cubierto</value>
</data>
<data name="ICSharpCode.CodeCoverage.Column" xml:space="preserve">
<value>Columna</value>
</data>
<data name="ICSharpCode.CodeCoverage.Content" xml:space="preserve">
<value>Contenido</value>
</data>
<data name="ICSharpCode.CodeCoverage.DisplayOptions" xml:space="preserve">
<value>Opciones de Vista</value>
</data>
@ -4298,6 +4347,9 @@ Utilice solamente letras, dígitos, espacio, '.' ó '_'.</value> @@ -4298,6 +4347,9 @@ Utilice solamente letras, dígitos, espacio, '.' ó '_'.</value>
<data name="ICSharpCode.SharpDevelop.Project.SolutionAlteredExternallyMessage" xml:space="preserve">
<value>La solución ha sido cambiada externamente.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Project.SolutionFormattingOptions.Title" xml:space="preserve">
<value>Opciones de Formato de Soluciones</value>
</data>
<data name="ICSharpCode.SharpDevelop.Project.UpgradeView.ChangeCompilerVersionLabel" xml:space="preserve">
<value>Convertir &amp;proyectos seleccionados a:</value>
</data>
@ -5689,6 +5741,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension< @@ -5689,6 +5741,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
<data name="ProjectComponent.ContextMenu.AddReference" xml:space="preserve">
<value>Agregar referencia</value>
</data>
<data name="ProjectComponent.ContextMenu.AddServiceReference" xml:space="preserve">
<value>Agregar Referencia a Servicio</value>
</data>
<data name="ProjectComponent.ContextMenu.AddWebReference" xml:space="preserve">
<value>Agregar Referencia Web</value>
</data>
@ -6097,6 +6152,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension< @@ -6097,6 +6152,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>
@ -6560,6 +6621,9 @@ Los archivos de recursos han sido renombrados/movidos convenientemente.</value> @@ -6560,6 +6621,9 @@ Los archivos de recursos han sido renombrados/movidos convenientemente.</value>
<data name="StartPage.StartMenu.OpenCombineButton" xml:space="preserve">
<value>Abrir solución</value>
</data>
<data name="StartPage.StartMenu.RemoveRecentProject" xml:space="preserve">
<value>Quitar de la lista de proyectos recientes</value>
</data>
<data name="StartPage.StartPageContentName" xml:space="preserve">
<value>Página de Inicio</value>
</data>
@ -6572,6 +6636,12 @@ Los archivos de recursos han sido renombrados/movidos convenientemente.</value> @@ -6572,6 +6636,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 +7789,4 @@ Error al iniciar:</value> @@ -7719,8 +7789,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>

74
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>
@ -1537,6 +1541,30 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib @@ -1537,6 +1541,30 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib
<data name="CQA.MainWindow.FormTitle" xml:space="preserve">
<value>Análisis de Calidad de Código</value>
</data>
<data name="CSharpBinding.Formatting.AutoFormat" xml:space="preserve">
<value>Formatear código automáticamente</value>
</data>
<data name="CSharpBinding.Formatting.DefaultOptionReference" xml:space="preserve">
<value>(predeterminado)</value>
</data>
<data name="CSharpBinding.Formatting.GlobalOptionReference" xml:space="preserve">
<value>(global)</value>
</data>
<data name="CSharpBinding.Formatting.NoPresetSelectedMessage" xml:space="preserve">
<value>No se seleccionó un formato preestablecido!</value>
</data>
<data name="CSharpBinding.Formatting.PresetOverwriteQuestion" xml:space="preserve">
<value>¿Esta seguro/a que quiere restablecer todas las opciones de formato previamente definidas?</value>
</data>
<data name="CSharpBinding.Formatting.ProjectOptionReference" xml:space="preserve">
<value>(proyecto)</value>
</data>
<data name="CSharpBinding.Formatting.ResetTo" xml:space="preserve">
<value>Restablecer a:</value>
</data>
<data name="CSharpBinding.Formatting.SolutionOptionReference" xml:space="preserve">
<value>(solución)</value>
</data>
<data name="CSharpBinding.GenerateNewHandlerInstructions" xml:space="preserve">
<value>Inserta una referencia a un método explicito; presione tabulador o enter otra vez para insertar un nuevo trozo de método.</value>
</data>
@ -1977,6 +2005,15 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib @@ -1977,6 +2005,15 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib
<data name="Dialog.Options.IDEOptions.CodeCompletion.SaveItemCountBeforeNumber" xml:space="preserve">
<value>Guardar</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTarget" xml:space="preserve">
<value>Enlaces en tooltips deben ir a</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTargetDefinition" xml:space="preserve">
<value>Definición en código</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTargetDocumentation" xml:space="preserve">
<value>Documentación (si esta disponible)</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.UseDataUsageCache" xml:space="preserve">
<value>Pre-seleccionar miembros utilizados recientemente</value>
</data>
@ -2349,6 +2386,9 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib @@ -2349,6 +2386,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>
@ -2610,6 +2650,9 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib @@ -2610,6 +2650,9 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib
<data name="Dialog.ProjectOptions.BuildOptions.VBOptionsDefaultValues" xml:space="preserve">
<value>Valores por defecto para Opciones de VB:</value>
</data>
<data name="Dialog.ProjectOptions.CodeFormatting" xml:space="preserve">
<value>Formato de Código</value>
</data>
<data name="Dialog.ProjectOptions.Configuration" xml:space="preserve">
<value>&amp;Configuración</value>
</data>
@ -3319,9 +3362,15 @@ También puede escoger almacenar el parámetro de configuración en el archivo . @@ -3319,9 +3362,15 @@ También puede escoger almacenar el parámetro de configuración en el archivo .
<data name="ICSharpCode.CodeCoverage.CodeNotCovered" xml:space="preserve">
<value>Código No Cubierto</value>
</data>
<data name="ICSharpCode.CodeCoverage.CodePartCovered" xml:space="preserve">
<value>Código Parcialmente Cubierto</value>
</data>
<data name="ICSharpCode.CodeCoverage.Column" xml:space="preserve">
<value>Columna</value>
</data>
<data name="ICSharpCode.CodeCoverage.Content" xml:space="preserve">
<value>Contenido</value>
</data>
<data name="ICSharpCode.CodeCoverage.DisplayOptions" xml:space="preserve">
<value>Opciones de Vista</value>
</data>
@ -4303,6 +4352,9 @@ Solamente letras, dígitos, espacio, '.' o '_' son permitidos.</value> @@ -4303,6 +4352,9 @@ Solamente letras, dígitos, espacio, '.' o '_' son permitidos.</value>
<data name="ICSharpCode.SharpDevelop.Project.SolutionAlteredExternallyMessage" xml:space="preserve">
<value>La solución ha sido cambiada externamente.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Project.SolutionFormattingOptions.Title" xml:space="preserve">
<value>Opciones de Formato de Soluciones</value>
</data>
<data name="ICSharpCode.SharpDevelop.Project.UpgradeView.ChangeCompilerVersionLabel" xml:space="preserve">
<value>Convertir &amp;proyectos seleccionados a:</value>
</data>
@ -5695,6 +5747,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension< @@ -5695,6 +5747,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
<data name="ProjectComponent.ContextMenu.AddReference" xml:space="preserve">
<value>Agregar Referencia</value>
</data>
<data name="ProjectComponent.ContextMenu.AddServiceReference" xml:space="preserve">
<value>Agregar Referencia a Servicio</value>
</data>
<data name="ProjectComponent.ContextMenu.AddWebReference" xml:space="preserve">
<value>Agregar Referencia Web</value>
</data>
@ -6103,6 +6158,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension< @@ -6103,6 +6158,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>
@ -6567,6 +6628,9 @@ Los archivos de recursos han sido renombrados o cambiados de ubicación de acuer @@ -6567,6 +6628,9 @@ Los archivos de recursos han sido renombrados o cambiados de ubicación de acuer
<data name="StartPage.StartMenu.OpenCombineButton" xml:space="preserve">
<value>Abrir solución</value>
</data>
<data name="StartPage.StartMenu.RemoveRecentProject" xml:space="preserve">
<value>Quitar de la lista de proyectos recientes</value>
</data>
<data name="StartPage.StartPageContentName" xml:space="preserve">
<value>Página de inicio</value>
</data>
@ -6579,6 +6643,12 @@ Los archivos de recursos han sido renombrados o cambiados de ubicación de acuer @@ -6579,6 +6643,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 +7796,4 @@ Error mientras se iniciaba:</value> @@ -7726,8 +7796,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>

58
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>
@ -1660,7 +1654,8 @@ Pour créer ou manipuler un objet ActiveX/COM, déplcaer une classe depuis TypeL @@ -1660,7 +1654,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>
@ -2645,6 +2640,9 @@ Voulez-vous ajouter le nouveau fichier au projet ${CurrentProjectName}?</value> @@ -2645,6 +2640,9 @@ Voulez-vous ajouter le nouveau fichier au projet ${CurrentProjectName}?</value>
<data name="Dialog.ProjectOptions.BuildOptions.VBOptionsDefaultValues" xml:space="preserve">
<value>Valeurs par défaut des options VB:</value>
</data>
<data name="Dialog.ProjectOptions.CodeFormatting" xml:space="preserve">
<value>Formatage du code</value>
</data>
<data name="Dialog.ProjectOptions.Configuration" xml:space="preserve">
<value>&amp;Configuration</value>
</data>
@ -2794,7 +2792,7 @@ Voulez-vous ajouter le nouveau fichier au projet ${CurrentProjectName}?</value> @@ -2794,7 +2792,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>
@ -3484,7 +3482,6 @@ Vous pouvez aussi choisir de stocker la configuration dans le fichier .user-file @@ -3484,7 +3482,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">
@ -3638,10 +3635,10 @@ Configurez le chemin vers NAnt dans les options de SharpDevelop.</value> @@ -3638,10 +3635,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>
@ -3755,7 +3752,7 @@ Configurez le chemin vers NAnt dans les options de SharpDevelop.</value> @@ -3755,7 +3752,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">
@ -4027,7 +4024,7 @@ Toutes les modifications seront perdues.</value> @@ -4027,7 +4024,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>
@ -4521,7 +4518,7 @@ Allez dans 'Outils/Options-&gt;Style Visuel pour changer l'ambiance actuelle.</v @@ -4521,7 +4518,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>
@ -5729,6 +5726,9 @@ Soit ils n'existent pas, soit le document Wix n'est pas pour WiX 3.0 et l'espace @@ -5729,6 +5726,9 @@ Soit ils n'existent pas, soit le document Wix n'est pas pour WiX 3.0 et l'espace
<data name="ProjectComponent.ContextMenu.AddReference" xml:space="preserve">
<value>Ajouter une référence</value>
</data>
<data name="ProjectComponent.ContextMenu.AddServiceReference" xml:space="preserve">
<value>Ajouter une référence de Service</value>
</data>
<data name="ProjectComponent.ContextMenu.AddWebReference" xml:space="preserve">
<value>Ajouter une référence web</value>
</data>
@ -6606,6 +6606,9 @@ Les fichiers de resources ont été renommés/déplacés en conséquence.</value @@ -6606,6 +6606,9 @@ Les fichiers de resources ont été renommés/déplacés en conséquence.</value
<data name="StartPage.StartMenu.OpenCombineButton" xml:space="preserve">
<value>Ouvre une solution</value>
</data>
<data name="StartPage.StartMenu.RemoveRecentProject" xml:space="preserve">
<value>Supprimer de la liste des projets récents</value>
</data>
<data name="StartPage.StartPageContentName" xml:space="preserve">
<value>Page de démarrage</value>
</data>
@ -7597,7 +7600,7 @@ Les fichiers de resources ont été renommés/déplacés en conséquence.</value @@ -7597,7 +7600,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>
@ -7771,7 +7774,4 @@ Erreur lors du démarrage:</value> @@ -7771,7 +7774,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>

8
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>
@ -7710,8 +7714,4 @@ Errore durante esecuzione:</value> @@ -7710,8 +7714,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>

15
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>
@ -2650,6 +2653,9 @@ Wilt u het nieuwe bestand toevoegen aan project ${CurrentProjectName}?</value> @@ -2650,6 +2653,9 @@ Wilt u het nieuwe bestand toevoegen aan project ${CurrentProjectName}?</value>
<data name="Dialog.ProjectOptions.BuildOptions.VBOptionsDefaultValues" xml:space="preserve">
<value>Standaard waarden voor VB Opties:</value>
</data>
<data name="Dialog.ProjectOptions.CodeFormatting" xml:space="preserve">
<value>Code formatteren</value>
</data>
<data name="Dialog.ProjectOptions.Configuration" xml:space="preserve">
<value>Instellingen</value>
</data>
@ -5730,6 +5736,9 @@ Microsoft.Tools.WindowsInstallerXml.Extenties.NetFxCompiler, WixNetFxExtentie</v @@ -5730,6 +5736,9 @@ Microsoft.Tools.WindowsInstallerXml.Extenties.NetFxCompiler, WixNetFxExtentie</v
<data name="ProjectComponent.ContextMenu.AddReference" xml:space="preserve">
<value>Voeg referentie toe</value>
</data>
<data name="ProjectComponent.ContextMenu.AddServiceReference" xml:space="preserve">
<value>Service referentie toevoegen</value>
</data>
<data name="ProjectComponent.ContextMenu.AddWebReference" xml:space="preserve">
<value>Web referentie toevoegen</value>
</data>
@ -6608,6 +6617,9 @@ De hulpbron bestanden zijn hernoemd/verplaatst op de beschreven wijze.</value> @@ -6608,6 +6617,9 @@ De hulpbron bestanden zijn hernoemd/verplaatst op de beschreven wijze.</value>
<data name="StartPage.StartMenu.OpenCombineButton" xml:space="preserve">
<value>Oplossing openen</value>
</data>
<data name="StartPage.StartMenu.RemoveRecentProject" xml:space="preserve">
<value>Verwijder van de lijst met recente projecten</value>
</data>
<data name="StartPage.StartPageContentName" xml:space="preserve">
<value>Startpagina</value>
</data>
@ -7774,7 +7786,4 @@ Startfout:</value> @@ -7774,7 +7786,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>

361
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>
@ -869,6 +1093,12 @@ Du kan specificera ett startcommando i projektinställningarna.</value> @@ -869,6 +1093,12 @@ Du kan specificera ett startcommando i projektinställningarna.</value>
<data name="ComponentInspector.WaitingForAppDialog.Information" xml:space="preserve">
<value>Väntar på att applikationen skall starta. Ifall applikationen inte startar (eller om du tröttnar på att vänta) så kan du avbryta genom att klicka på Avbryt.</value>
</data>
<data name="CSharpBinding.Formatting.PresetOverwriteQuestion" xml:space="preserve">
<value>Är du säker på att du vill återställa alla tidigare angivna formateringsinställningar?</value>
</data>
<data name="CSharpBinding.Formatting.ResetTo" xml:space="preserve">
<value>Återställ till:</value>
</data>
<data name="CSharpBinding.InsertAnonymousMethod" xml:space="preserve">
<value>Infoga anonyma metoder utan parametrar.</value>
</data>
@ -1227,7 +1457,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1227,7 +1457,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>
@ -1238,6 +1468,9 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1238,6 +1468,9 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value>
<data name="Dialog.Options.IDEOptions.CodeCompletion.SaveItemCountBeforeNumber" xml:space="preserve">
<value>Spara</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTargetDocumentation" xml:space="preserve">
<value>Dokumentation (om tillgänglig)</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.UseDataUsageCache" xml:space="preserve">
<value>Förhandsvälj nyligen använda medlemmar</value>
</data>
@ -1302,7 +1535,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1302,7 +1535,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 +1781,14 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1548,11 +1781,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 +1874,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1638,7 +1874,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 +1973,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1737,7 +1973,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 +2042,7 @@ Vill du lägga till den nya filen till projektet ${CurrentProjectName}?</value> @@ -1806,7 +2042,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 +2233,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -1997,6 +2233,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 +2329,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2090,6 +2329,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 +2449,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2207,6 +2449,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 +2509,21 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2264,9 +2509,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 +2548,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2291,6 +2548,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 +2566,9 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2306,6 +2566,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>
@ -2315,9 +2578,15 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2315,9 +2578,15 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek
<data name="ICSharpCode.CodeCoverage.Column" xml:space="preserve">
<value>Kolumn</value>
</data>
<data name="ICSharpCode.CodeCoverage.Content" xml:space="preserve">
<value>Innehåll</value>
</data>
<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 +2638,21 @@ Du kan även välja att lagra inställningen i .user-filen istället för projek @@ -2369,6 +2638,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 +2950,9 @@ Alla ändringar kommer att förloras.</value> @@ -2666,6 +2950,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 +2972,7 @@ Alla ändringar kommer att förloras.</value> @@ -2685,7 +2972,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 +3008,7 @@ Alla ändringar kommer att förloras.</value> @@ -2721,7 +3008,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 +3050,7 @@ Alla ändringar kommer att förloras.</value> @@ -2763,7 +3050,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 +3058,9 @@ Alla ändringar kommer att förloras.</value> @@ -2771,6 +3058,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 +3134,13 @@ Inga komponenter för WindowsFormer kommer att vara tillgängliga, var god konfi @@ -2844,13 +3134,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 +3262,16 @@ Endast bokstäver, siffror, mellanslag, '.' eller '_' får användas.</value> @@ -2972,13 +3262,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 +3336,9 @@ Endast bokstäver, siffror, mellanslag, '.' eller '_' får användas.</value> @@ -3043,6 +3336,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 +3445,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3149,6 +3445,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 +3517,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3218,6 +3517,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 +3605,10 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3303,10 +3605,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 +3646,12 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3344,6 +3646,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 +3700,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3392,6 +3700,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 +4279,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -3968,6 +4279,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 +4376,7 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -4062,7 +4376,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 +4549,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -4235,6 +4549,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 +4615,9 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -4298,6 +4615,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 +4649,7 @@ Gå till 'Inställningar-&gt;Visuell stil' och ändra den nuvarande språkmiljö @@ -4329,7 +4649,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 +5980,4 @@ Resursfilerna har därför bytt namn/flyttats enligt ovan.</value> @@ -5660,7 +5980,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>

299
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>
@ -1382,6 +1540,30 @@ Bir ActiveX / COM nesnesi oluşturmak / değiştirmek için, nesne ağacı veya @@ -1382,6 +1540,30 @@ Bir ActiveX / COM nesnesi oluşturmak / değiştirmek için, nesne ağacı veya
<data name="CQA.MainWindow.FormTitle" xml:space="preserve">
<value>Kod Kalite Analizi</value>
</data>
<data name="CSharpBinding.Formatting.AutoFormat" xml:space="preserve">
<value>Kodu otomatik biçimlendir</value>
</data>
<data name="CSharpBinding.Formatting.DefaultOptionReference" xml:space="preserve">
<value>(varsayılan)</value>
</data>
<data name="CSharpBinding.Formatting.GlobalOptionReference" xml:space="preserve">
<value>(global)</value>
</data>
<data name="CSharpBinding.Formatting.NoPresetSelectedMessage" xml:space="preserve">
<value>Ön ayarlı seçim biçimlendirilmemiş!</value>
</data>
<data name="CSharpBinding.Formatting.PresetOverwriteQuestion" xml:space="preserve">
<value>Tüm öntanımlı biçimlendirme seçeneklerini sıfırlamak istediğinizden emin misiniz?</value>
</data>
<data name="CSharpBinding.Formatting.ProjectOptionReference" xml:space="preserve">
<value>(proje)</value>
</data>
<data name="CSharpBinding.Formatting.ResetTo" xml:space="preserve">
<value>Sıfırla:</value>
</data>
<data name="CSharpBinding.Formatting.SolutionOptionReference" xml:space="preserve">
<value>(Çözüm)</value>
</data>
<data name="CSharpBinding.GenerateNewHandlerInstructions" xml:space="preserve">
<value>Açık yönteme referans ekleyin; yeni yöntem eklemek için tab veya enter tuşuna tekrar basın.</value>
</data>
@ -1823,6 +2005,15 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value> @@ -1823,6 +2005,15 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value>
<data name="Dialog.Options.IDEOptions.CodeCompletion.SaveItemCountBeforeNumber" xml:space="preserve">
<value>Kaydet</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTarget" xml:space="preserve">
<value>Araçipuçları linkler gitmeli</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTargetDefinition" xml:space="preserve">
<value>Kod tanımı</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.TooltipLinkTargetDocumentation" xml:space="preserve">
<value>Belgeler (varsa)</value>
</data>
<data name="Dialog.Options.IDEOptions.CodeCompletion.UseDataUsageCache" xml:space="preserve">
<value>Son kullanılan üyeleri öncelikli seç</value>
</data>
@ -1871,6 +2062,12 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value> @@ -1871,6 +2062,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 +2116,9 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value> @@ -1919,6 +2116,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 +2386,9 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value> @@ -2186,6 +2386,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>
@ -2447,6 +2650,9 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value> @@ -2447,6 +2650,9 @@ Yeni dosyayı, ${CurrentProjectName} projesine eklemek istiyor musunuz?</value>
<data name="Dialog.ProjectOptions.BuildOptions.VBOptionsDefaultValues" xml:space="preserve">
<value>VB Seçenekleri için varsayılan değerler:</value>
</data>
<data name="Dialog.ProjectOptions.CodeFormatting" xml:space="preserve">
<value>Kod biçimlendirme</value>
</data>
<data name="Dialog.ProjectOptions.Configuration" xml:space="preserve">
<value>Yapılandırma</value>
</data>
@ -3152,9 +3358,15 @@ Ayrıca bir ayarı proje dosyası yerine kullanıcı dosyası(.user-file) içind @@ -3152,9 +3358,15 @@ Ayrıca bir ayarı proje dosyası yerine kullanıcı dosyası(.user-file) içind
<data name="ICSharpCode.CodeCoverage.CodeNotCovered" xml:space="preserve">
<value>Kapsanmamış Kod</value>
</data>
<data name="ICSharpCode.CodeCoverage.CodePartCovered" xml:space="preserve">
<value>Kod Kısmen Kapalı</value>
</data>
<data name="ICSharpCode.CodeCoverage.Column" xml:space="preserve">
<value>Kolon</value>
</data>
<data name="ICSharpCode.CodeCoverage.Content" xml:space="preserve">
<value>İçerik</value>
</data>
<data name="ICSharpCode.CodeCoverage.DisplayOptions" xml:space="preserve">
<value>Gösterim Seçenekleri</value>
</data>
@ -3596,6 +3808,12 @@ Not: Bu işlem özel düzenlemelerinizi etkilemez.</value> @@ -3596,6 +3808,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>
@ -4128,6 +4346,9 @@ Sadece harf,rakam, boşluk, '.' yada '_' kullanabilirsiniz.</value> @@ -4128,6 +4346,9 @@ Sadece harf,rakam, boşluk, '.' yada '_' kullanabilirsiniz.</value>
<data name="ICSharpCode.SharpDevelop.Project.SolutionAlteredExternallyMessage" xml:space="preserve">
<value>Bu çözüm dışarıdan değiştirildi.</value>
</data>
<data name="ICSharpCode.SharpDevelop.Project.SolutionFormattingOptions.Title" xml:space="preserve">
<value>Çözüm Biçimlendirme Seçenekleri</value>
</data>
<data name="ICSharpCode.SharpDevelop.Project.UpgradeView.ChangeCompilerVersionLabel" xml:space="preserve">
<value>Seçilen projeleri dönüştür:</value>
</data>
@ -4472,6 +4693,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4472,6 +4693,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 +4717,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4493,6 +4717,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 +5020,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4793,6 +5020,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 +5062,24 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4832,9 +5062,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 +5092,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4847,6 +5092,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 +5191,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -4943,6 +5191,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 +5551,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5300,6 +5551,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 +5569,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5315,6 +5569,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>
@ -5480,6 +5740,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5480,6 +5740,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension<
<data name="ProjectComponent.ContextMenu.AddReference" xml:space="preserve">
<value>Referans Ekle</value>
</data>
<data name="ProjectComponent.ContextMenu.AddServiceReference" xml:space="preserve">
<value>Servis Referansı Ekle</value>
</data>
<data name="ProjectComponent.ContextMenu.AddWebReference" xml:space="preserve">
<value>Web Referansı Ekle</value>
</data>
@ -5750,6 +6013,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5750,6 +6013,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 +6028,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5762,6 +6028,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 +6151,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5879,6 +6151,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 +6241,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFXCompiler, WixNetFxExtension< @@ -5963,6 +6241,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>
@ -6339,6 +6620,9 @@ Kaynak dosyaları buna göre yeniden adlandırıldı/taşındı.</value> @@ -6339,6 +6620,9 @@ Kaynak dosyaları buna göre yeniden adlandırıldı/taşındı.</value>
<data name="StartPage.StartMenu.OpenCombineButton" xml:space="preserve">
<value>Çözüm Aç</value>
</data>
<data name="StartPage.StartMenu.RemoveRecentProject" xml:space="preserve">
<value>Son projeler listesinden kaldır</value>
</data>
<data name="StartPage.StartPageContentName" xml:space="preserve">
<value>Başlangıç Sayfası</value>
</data>
@ -6351,6 +6635,12 @@ Kaynak dosyaları buna göre yeniden adlandırıldı/taşındı.</value> @@ -6351,6 +6635,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 +7788,4 @@ Başlatma hatası:</value> @@ -7498,7 +7788,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>

120
src/Tools/LocalizationDbToResFile/Main.cs

@ -1,120 +0,0 @@ @@ -1,120 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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();
}
}
}

83
src/Tools/LocalizationXmlToResFile/LocalizationXmlToResFile.cs

@ -1,83 +0,0 @@ @@ -1,83 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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 500 --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>

66
src/Tools/StringResourceTool/BuildResourceFiles.cs

@ -1,66 +0,0 @@ @@ -1,66 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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");
}
}
}
}
}

44
src/Tools/StringResourceTool/CookieAwareWebClient.cs

@ -1,44 +0,0 @@ @@ -1,44 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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;
}
}
}

578
src/Tools/StringResourceTool/MainForm.cs

@ -1,578 +0,0 @@ @@ -1,578 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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>

103
src/Tools/StringResourceTool/ResourceDatabase.cs

@ -1,103 +0,0 @@ @@ -1,103 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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;
}
}

71
src/Tools/StringResourceTool/StringResourceTool.csproj

@ -1,71 +0,0 @@ @@ -1,71 +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.5</TargetFrameworkVersion>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<NoStdLib>False</NoStdLib>
<WarningLevel>4</WarningLevel>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<TargetFrameworkProfile />
</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>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
</Project>

24
src/Tools/StringResourceTool/StringResourceTool.sln

@ -1,24 +0,0 @@ @@ -1,24 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
# SharpDevelop 5.0
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.ActiveCfg = Debug|Any CPU
{197537EA-78F4-4434-904C-C81B19459FE7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{197537EA-78F4-4434-904C-C81B19459FE7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{197537EA-78F4-4434-904C-C81B19459FE7}.Release|Any CPU.Build.0 = Release|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3648E209-B853-4168-BFB5-7A60EAF316F8}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

163
src/Tools/StringResourceTool/TranslationServer.cs

@ -1,163 +0,0 @@ @@ -1,163 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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));
}
}
}

6
src/Tools/StringResourceTool/app.config

@ -1,6 +0,0 @@ @@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>

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

@ -1,37 +0,0 @@ @@ -1,37 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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.*")]

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

@ -1,100 +0,0 @@ @@ -1,100 +0,0 @@
// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this
// software and associated documentation files (the "Software"), to deal in the Software
// without restriction, including without limitation the rights to use, copy, modify, merge,
// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
// to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or
// substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
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:
var textEditor = SD.GetActiveViewContentService<ITextEditor>();
if (textEditor == null) {
// active content is not a text editor control
return;
}
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.", SD.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 = "/SharpDevelop/Workbench/Tools">
<MenuItem id = "StringResourceToolAddInCommand1"
label = "StringResourceToolAddIn"
shortcut = "Control|Shift|R"
class = "StringResourceToolAddIn.ToolCommand1"/>
</Path>
</AddIn>

67
src/Tools/StringResourceToolAddIn/StringResourceToolAddIn.csproj

@ -1,67 +0,0 @@ @@ -1,67 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<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.5</TargetFrameworkVersion>
<TargetFrameworkProfile />
</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="ICSharpCode.NRefactory">
<HintPath>..\..\..\bin\ICSharpCode.NRefactory.dll</HintPath>
<Private>False</Private>
</Reference>
<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