Localisation/es: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
No edit summary
 
(95 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{docnav|Branding|Extra python modules}}


{{Docnav/es
<div class="mw-translate-fuzzy">
|[[Branding/es|Marcación]]
"Localización" es en general el proceso de proveer un software con una interfaz de usuario con múltiples lenguajes. En FreeCAD puedes cambiar el lenguaje de la interfaz en "Editar→Preferencias→Aplicación". FreeCAD usa [[wikipedia:Qt (toolkit)|Qt]] para facilitar el soporte de múltiples lenguajes. En Unix/Linux, FreeCAD utiliza la configuración local actual de tu sistema como predeterminado.
|[[Workbench_creation/es|Creación de entornos de trabajo]]
</div>
}}


{{TOCright}}

<span id="Overview"></span>
==Vista general==

"Localización" es en general el proceso de proveer un software con una interfaz de usuario con múltiples lenguajes. En FreeCAD puedes cambiar el lenguaje de la interfaz en {{MenuCommand|Editar→Preferencias→General}}. FreeCAD usa [[wikipedia:Qt (toolkit)|Qt]] para facilitar el soporte de múltiples lenguajes. En Unix/Linux, FreeCAD utiliza la configuración local actual de tu sistema como predeterminado.

<span id="Helping_to_translate_FreeCAD"></span>
== Ayudando a traducir FreeCAD ==
== Ayudando a traducir FreeCAD ==


Una de las cosas más importantes que los usuarios pueden contribuir a FreeCAD (si por ejemplo no tienen conocimientos de programación) es ayudar a traducir sus diferentes aspectos (código fuente, wiki, sitio web, documentación, etc...) a otro idioma. Aquí están las formas de hacerlo
<div class="mw-translate-fuzzy">
Una de las cosas más importantes que puedes hacer por FreeCAD si no eres un programador es ayudar a traducir el programa a tu idioma. Hacerlo es más fácil que antes, con el uso del sistema de traducción colaborativo en línea [http://crowdin.net Crowdin].
</div>


<span id="Translate_the_FreeCAD_source_code"></span>
<div class="mw-translate-fuzzy">
== Traducir el código fuente de FreeCAD ==
=== Cómo traducir ===
</div>


FreeCAD utiliza un sistema de traducción colaborativa en línea de terceros llamado [https://crowdin.net Crowdin].
<div class="mw-translate-fuzzy">
*Ve a [http://crowdin.net/project/freecad la página del proyecto de traducción de FreeCAD en Crowdin];
* Ingresa creando un nuevo perfil, o utilizando una cuenta terciaria como tu dirección de Gmail;
* Da clic en el lenguaje en que deseas trabajar;
* Comienza a traducir al dar clic en el botón de Traducir, al lado de alguno de los archivos. Por ejemplo, ''FreeCAD.ts'' contiene todos los strings para GUI principal de FreeCAD.
* Puedes votar por une traducción existente, o puedes crear la tuya.
</div>


[[File:Logo-crowdin.png|320px]]
<div class="mw-translate-fuzzy">
'''Nota''': Si estás participando activamente en la taducción de FreeCAD y quieres
ser informado antes de que la nueva versión sea liberada, para que tengas tiempo
de revisar tu traducción, por favor suscríbete a este reporte:
http://www.freecadweb.org/tracker/view.php?id=137
</div>


Se trata de un software propietario, pero gratuito para los proyectos [https://en.wikipedia.org/wiki/Free_and_open-source_software FOSS]. A continuación encontrará instrucciones sobre cómo utilizarlo:
<div class="mw-translate-fuzzy">
== Traduciendo la wiki ==
</div>


* Ir a la [http://crowdin.net/project/freecad FreeCAD página del proyecto de traducción en Crowdin]
<div class="mw-translate-fuzzy">
* Iniciar sesión creando un nuevo perfil, o utilizando una cuenta de terceros (GitHub, GitLab, GMail, etc...)
Esta wiki contiene un montón de contenido. El material más importante y actualizado es recopilado en el [[Online_Help_Toc/es|manual]].
* Haga clic en el idioma que desea traducir
</div>
* Comienza a traducir haciendo clic en el botón {{Button|Traducir}} junto a uno de los archivos. Por ejemplo, {{FileName|FreeCAD.ts}} contiene las cadenas de texto para la interfaz gráfica principal de FreeCAD.
* Puedes votar por las traducciones existentes, o puedes crear las tuyas propias.


{{Message|Si estás participando activamente en la traducción de FreeCAD y quieres estar informado antes de que la próxima versión esté lista para ser lanzada, para que haya tiempo de revisar tu traducción, por favor suscríbete a uno de los equipos de traducción de Crowdin FreeCAD.}}
To translate the wiki, you must have wiki edit permissions; see [[FAQ#How can I get edit permission on the wiki?|How can I get edit permission on the wiki?]].


{{Emphasis|Nota:}} Los detalles sobre cómo utilizar crowdin se pueden encontrar en la página [[Crowdin_Administration/es|Administración de Crowdin]].
You should also have enough knowledge of wiki markup and follow the general styling guidelines described on [[WikiPages]].


<span id="Translating_external_workbenches"></span>
=== Mediawiki Translation Extension===
== Traduciendo ambientes de trabajo externos ==


Visite [[Translating_an_external_workbench/es|Traducir un ambiente de trabajo externos]].
When the wiki moved away from SourceForge, [[User:Yorik|Yorik]] installed [http://www.mediawiki.org/wiki/Help:Extension:Translate MediaWiki's Translation extension] which facilitates translating pages. Advantages of the translation extension are that the page title can now be translated, it keeps track of translations, it notifies if the original page has been updated, and it maintains translations in sync with the original English page.


<span id="FreeCAD_Preferences_for_Translators"></span>
The tool is documented in [http://www.mediawiki.org/wiki/Help:Extension:Translate Help:Extension:Translate], and is part of [http://www.mediawiki.org/wiki/MediaWiki_Language_Extension_Bundle MediaWiki Language Extension Bundle].
== Preferencias de FreeCAD para traductores ==


A partir de la versión 0.20 de FreeCAD, las siguientes variables puede sert manualmente agregadas a la sección BaseApp/Preferences/General del archivo user.cfg para ayudar con el desarrollo de nuevas traducciones:
To quickly get started on preparing a page for translation, please read the [http://www.mediawiki.org/wiki/Help:Extension:Translate/Page_translation_example Page translation example]. Essentially, a pair of {{incode|<nowiki><translate> ... </translate></nowiki>}} tags need to surround the entire page to activate the translation system, and the page needs to be marked for translation.


'''AddreDallanguageMainEnentries''' - para agregar idiomas completamente nuevos a FreeCAD que actualmente no son compatibles con el código fuente, puede usar esta preferencia del usuario para agregarlos a la lista de idiomas disponibles. El formato de los idiomas es "nombre del idioma" = "código"; por ejemplo:
To see an example of how the translation tool works, visit the [[Main Page]]. You will see an automatically generated language bar at the top. Click on [[Main Page/de|Hauptseite]] (German), it will get you to [[Main Page/de]]. Right under the title, you can read <small>{{Emphasis|This page is a translated version of the page Main Page and the translation is XX% complete}}</small>, XX being the current percentage of translation. Click on "Translate" at the top of the page to start the translation utility to update, correct and review the existing translation.


<pre>
If you go to [[Main Page/de]], you will notice that you cannot edit the page directly anymore by clicking the [Edit] tags, and the top link "Edit" has been substituted by the "Translate" link that opens the translation utility.
<FCText Name="AdditionalLanguageDomainEntries">"Esperanto"="eo";"French"="fr";</FCText>
</pre>


'''AdditionalTranslationsDirectory''' - agregue un directorio adicional para que FreeCAD busque archivos *.qm. Esta ubicación tendrá precedencia sobre $userAppDataDir/translations y $resourceDir/translations. Por ejemplo:
When adding new content, the English page should be created first, then translated into another language. If someone wants to change or add content in a page, the English page should be modified first.


<pre>
<div class="mw-translate-fuzzy">
<FCText Name="AdditionalTranslationsDirectory">C:/Users/FreeCADUser/TestTranslations</FCText>
Si no estas seguro de como proceder, no dudes en solicitar ayuda en los [http://forum.freecadweb.org/ foros].
</div>
</pre>


<span id="Translate_the_FreeCAD_wiki"></span>
===Important notes===
== Traducir la wiki de FreeCAD ==


Este wiki alberga muchos contenidos, la mayoría de los cuales conforman el manual. Puedes navegar por la documentación a partir de la [[Main Page/es|Página principal]], o echar un vistazo al manual de usuario [[Online Help Toc/es|Ayuda en línea Índice de contenidos]].
Every wiki user that has "Editor" permissions is able to launch the translate utility and write, save, and review translations.


Para traducir el wiki, debes tener permisos de edición del wiki; consulta [[Frequently_asked_questions/es#¿Cómo puedo obtener permiso de edición en el wiki?|¿Cómo puedo obtener permiso de edición en el wiki?]].
However, only users with "Administrator" permissions are able to mark pages for translation. A page that is not marked for translation won't make use of the translation extension and won't be correctly synchronized to the English information.


También deberías tener suficientes conocimientos de marcado wiki y seguir las directrices generales de estilo descritas en [[WikiPages/es|PáginasWiki]].
The left sidebar is also translatable, but only Administrators can modify this element of the site. Please follow the dedicated instructions on [[Localisation Sidebar]].


<span id="Mediawiki_Translation_Extension"></span>
The first time you switch a page to the new translation system, it loses all its old "manual" translations. To recover a translation, you should save an offline copy of the old text before the switch. Then you can use this old translated text to fill in the translation units in the new system. You can also open an earlier version from the history, and get the old text in this way. This has to be done for every language that had a translated page.
=== Extensión de traducción de Mediawiki===


Cuando el wiki se alejó de SourceForge, [[User:Yorik|Yorik]] instaló [http://www.mediawiki.org/wiki/Help:Extension:Translate MediaWiki's Translation extension] que facilita la traducción de las páginas. Las ventajas de la extensión de traducción son que el título de la página puede ser traducido, mantiene un registro de las traducciones, notifica si la página original ha sido actualizada, y mantiene las traducciones sincronizadas con la página original en inglés.
===Old translation instructions===

La herramienta está documentada en [http://www.mediawiki.org/wiki/Help:Extension:Translate Help:Extension:Translate], y forma parte de [http://www.mediawiki.org/wiki/MediaWiki_Language_Extension_Bundle MediaWiki Language Extension Bundle].

Para empezar rápidamente a preparar una página para su traducción, lea el [http://www.mediawiki.org/wiki/Help:Extension:Translate/Page_translation_example Ejemplo de traducción de una página].
Esencialmente, un par de

<pre>
&lt;translate&gt; ... &lt;/translate&gt;
</pre><!--using lt and gt so that tags are not recognized-->

tags rodear toda la página para activar el sistema de traducción, y la página debe estar marcada para ser traducida.

Para ver un ejemplo de cómo funciona la herramienta de traducción, visite la [[Main Page/es|Página principal]]. Verá una barra de idiomas generada automáticamente en la parte superior. Haga clic en [[Main Page/de|Hauptseite]] (alemán), le llevará a [[Main Page/de]]. Justo debajo del título, puedes leer <small>{{Emphasis|Esta página es una versión traducida de la página Principal y la traducción está completada en un XX%}}</small>, siendo XX el porcentaje actual de traducción. Haga clic en "Traducir" en la parte superior de la página para iniciar la utilidad de traducción para actualizar, corregir y revisar la traducción existente.

Si va a [[Main Page]], notará que ya no puede editar la página directamente haciendo clic en las etiquetas [Edit], y el enlace superior "Editar" ha sido sustituido por el enlace "Traducir" que abre la utilidad de traducción.

Cuando se añade un nuevo contenido, la página en inglés debe crearse primero y luego traducirse a otro idioma. Si alguien quiere cambiar o añadir contenido en una página, la página en inglés debe ser modificada primero.

Si no estás seguro de cómo proceder con las traducciones, no dudes en pedir ayuda en el [https://forum.freecadweb.org/viewforum.php?f=21 Desarrollo → subforo Wiki] o en el [https://forum.freecadweb.org/viewforum.php?f=11 subforo de idiomas específicos] en el [http://forum.freecadweb.org foro de FreeCAD].

<span id="Important_notes"></span>
===Notas importantes===

Todos los usuarios de la wiki que tengan permisos de "Editor" pueden lanzar la utilidad de traducción y escribir, guardar y revisar las traducciones.

Sin embargo, sólo los usuarios con permisos de "Administrador" pueden marcar las páginas para su traducción. Una página que no esté marcada para ser traducida no hará uso de la extensión de traducción y no se sincronizará correctamente con la información en inglés.

La barra lateral izquierda también es traducible, pero sólo los administradores pueden modificar este elemento del sitio. Por favor, siga las instrucciones dedicadas en [[Localisation Sidebar/es|Barra lateral de localización]].

La primera vez que se cambia una página al nuevo sistema de traducción, se pierden todas sus antiguas traducciones "manuales". Para recuperar una traducción, debes guardar una copia offline del texto antiguo antes del cambio. Entonces podrás utilizar este texto antiguo traducido para rellenar las unidades de traducción en el nuevo sistema. También puedes abrir una versión anterior desde el historial, y obtener el texto antiguo de esta manera. Esto tiene que hacerse para cada idioma que tenía una página traducida.

<span id="Translate_the_FreeCAD_documentation"></span>
=== Traducir la documentación de FreeCAD ===

Según el consenso general, la página de referencia en la wiki es la página en inglés, que debería crearse primero. Si quieres cambiar o añadir contenido a una página, debes hacerlo primero en la página en inglés, y sólo una vez completada la actualización, portar la modificación a la página traducida.

<span id="Old_translation_instructions"></span>
===Instrucciones de traducción antiguas===


{| class="mw-collapsible mw-collapsed wikitable"
{| class="mw-collapsible mw-collapsed wikitable"
|Estas instrucciones son sólo para el fondo histórico. Las traducciones deben utilizar el nuevo sistema con la [[#Extensión de traducción de Mediawiki]] descrita anteriormente.
|These instructions are for historical background only. Translations should use the new system with the [[#Mediawiki Translation Extension]] described above.
|-
|-
|
|
So the first step is to '''check if the manual translation has already been started for your language''' (look in the left sidebar, under "manual").<br />
Así que el primer paso es '''comprobar si ya se ha iniciado la traducción manual para tu idioma''' (mira en la barra lateral izquierda, en "manual").<br />
If not, head to the [http://forum.freecadweb.org/ forum] and say that you want to start a new translation, we'll create the basic setup for the language you want to work on.<br />
Si no es así, dirígete al [foro http://forum.freecadweb.org/] y di que quieres empezar una nueva traducción, crearemos la configuración básica para el idioma en el que quieres trabajar.<br />
A continuación, debes [[Frequently_asked_questions#Cómo_puedo_obtener_permiso_de_edición_en_la_wiki.3F|obtener permiso de edición en la wiki]].<br />
You must then [[FAQ#How_can_I_get_edit_permission_on_the_wiki.3F|gain wiki edit permission]].<br />

If your language is already listed, see what pages are still missing a translation (they will be listed in red). The technique is simple: '''go into a red page, and copy/paste the contents of the corresponding English page, and start translating'''.<br />
Si tu idioma ya está en la lista, mira qué páginas aún no tienen traducción (aparecerán en rojo). La técnica es sencilla: '''entra en una página roja, y copia/pega el contenido de la página inglesa correspondiente, y empieza a traducir'''.<br />
Do not forget to include all the tags and templates from the original English page. Some of those templates will have an equivalent in your language (for example, there is a French Docnav template called Docnav/fr). You should use '''a slash and your language code''' in almost all the links. Look at other already translated pages to see how they did it.<br />
No olvides incluir todas las etiquetas y plantillas de la página original en inglés. Algunas de esas plantillas tendrán un equivalente en tu idioma (por ejemplo, hay una plantilla Docnav francesa llamada Docnav/fr). En casi todos los enlaces debes usar '''una barra y el código de tu idioma'''. Mira otras páginas ya traducidas para ver cómo lo hicieron.<br />
Add a slash and your language code in the categories, like <nowiki>[[Category:Developer Documentation/fr]]</nowiki> <br />
Añade una barra y el código de tu idioma en las categorías, como <nowiki>[[Category:Developer Documentation/fr]]</nowiki> <br />
And if you are unsure, head to the forums and ask people to check what you did and tell you if it's right or not.<br />
Y si no estás seguro, dirígete a los foros y pide a la gente que compruebe lo que has hecho y te diga si está bien o no.<br />
Four templates are commonly used in manual pages. These 4 templates have localized versions (Template:Docnav/fr, Template:fr, etc...)
Hay cuatro plantillas que se utilizan habitualmente en las páginas de manual. Estas 4 plantillas tienen versiones localizadas (Template:Docnav/fr, Template:fr, etc...)
* [[Template:GuiCommand]] : is the Gui Command information block in upper-right of command documentation.
* [[Template:Docnav]] : it is the navigation bar at the bottom of the pages, showing previous and next pages.
* [[Template:GuiCommand]] : es el bloque de información del comando Gui en la parte superior derecha de la documentación del comando.
* [[Template:Docnav]] : es la barra de navegación en la parte inferior de las páginas, mostrando las páginas anteriores y siguientes.
* [[Template:Userdocnavi]] : gives direct links to the main base pages<br />
* [[Template:Userdocnavi]] : da enlaces directos a las principales páginas base<br />
''' Page Naming Convention '''<br />
''' Convención de nomenclatura de páginas '''<br />
Please take note that, due to limitations in the Sourceforge implementation of the MediaWiki engine, we require that your pages all keep their original English counterpart's name, appending a slash and your language code. For example, the translated page for About FreeCAD should be About Freecad/es for Spanish, About FreeCAD/pl for polish, etc. The reason is simple: so that if translators go away, the wiki's administrators, who do not speak all languages, will know what these pages are for. This will facilitate maintenance and avoid lost pages.<br />
Por favor, ten en cuenta que, debido a las limitaciones en la implementación de Sourceforge del motor MediaWiki, requerimos que todas tus páginas mantengan el nombre de su contraparte original en inglés, añadiendo una barra y el código de tu idioma. Por ejemplo, la página traducida de About FreeCAD debe ser About Freecad/es para el español, About FreeCAD/pl para el polaco, etc. La razón es simple: para que si los traductores se van, los administradores del wiki, que no hablan todos los idiomas, sepan para qué son estas páginas. Esto facilitará el mantenimiento y evitará que se pierdan páginas.<br />
If you want the Docnav template to show linked pages in your language, you can use '''redirect pages'''. They are basically shortcut links to the actual page. Here is an example with the French page for About FreeCAD.<br />
Si quieres que la plantilla Docnav muestre páginas enlazadas en tu idioma, puedes usar '''páginas de redirección'''. Son básicamente enlaces de acceso directo a la página real. Aquí hay un ejemplo con la página francesa de Acerca de FreeCAD.<br />
* The page About FreeCAD/fr is the page with content
* The page À propos de FreeCAD contains this code:
* La página Acerca de FreeCAD/fr es la página con contenido
* La página À propos de FreeCAD contiene este código:
#REDIRECT <nowiki>[[About_FreeCAD/fr]]</nowiki>
#REDIRECT <nowiki>[[About_FreeCAD/fr]]</nowiki>
* In the About FreeCAD/fr page, the Docnav code will look like this:
* En la página À propos de FreeCAD/fr, el código Docnav tendrá el siguiente aspecto:
<nowiki>{{docnav/fr|[[Online_Help_Startpage/fr|Bienvenue dans l'aide en ligne de FreeCAD]]|[[Feature_list/fr|Fonctionnalités]]}}</nowiki>
<nowiki>{{docnav/fr|[[Online_Help_Startpage/fr|Bienvenue dans l'aide en ligne de FreeCAD]]|[[Feature_list/fr|Fonctionnalités]]}}</nowiki>
The page "Bienvenue dans l'aide en ligne de FreeCAD" redirects to Online_Help_Startpage/fr, and the page "Fonctionnalités" redirects to Feature_list/fr.
La página "Bienvenue dans l'aide en ligne de FreeCAD" redirige a Online_Help_Startpage/fr, y la página "Fonctionnalités" redirige a Feature_list/fr.
|}
|}


<span id="Translate_the_FreeCAD_website"></span>
== Translate the FreeCAD website ==
== Traducir el sitio web de FreeCAD ==
Translation of the FreeCAD website is now done through [https://crowdin.com/translate/freecad/561/en-en Crowdin]. The file is named {{FileName|homepage.po}}.


La traducción de la FreeCAD página web se realiza ahora a través de [https://crowdin.com/translate/freecad/561/en-en Crowdin]. El archivo se llama {{FileName|homepage.po}}.
== Translate the FreeCAD documentation ==


<span id="Development_-_How_to_Add_Localisation"></span>
== Development - How to Add Localisation ==
== Desarrollo - Cómo añadir la localización ==
This section is for developers who want to add localisation to their code.


Esta sección es para los desarrolladores que quieren añadir localización a su código.
<div class="mw-translate-fuzzy">
== Preparando tus propios módulos/aplicaciones para la traducción ==
</div>


<span id="Preparing_your_FreeCAD/master_modules_for_translation"></span>
All of the above steps are performed by the "translation scripts" which are run by an administrator periodically.
=== Preparando tus módulos de FreeCAD/master para la traducción ===


Estas son las partes del proceso de traducción de FreeCAD:
Preparing your module for translation is quite easy. First, you need to ensure that you have a "translations" directory in {{FileName|myModule/Gui/Resources}}. Then open a terminal window (or Windows/OSX equivalent) in your "translations" directory and enter the following command:
* extraer las cadenas de texto del código fuente en archivos *.ts
* cargar los archivos *.ts en [http://crowdin.net/project/freecad FreeCAD Crowdin].
* traducción de cadenas dentro de Crowdin
* extraer archivos *.ts modificados/nuevos de Crowdin
* convertir archivos *.ts en archivos *.qm y actualizar el archivo *.qrc de cada módulo
* actualizar el maestro de FreeCAD

Todos los pasos anteriores son realizados por los "scripts de traducción" que son ejecutados por un administrador periódicamente.

Preparar su módulo para la traducción es bastante fácil. En primer lugar, debe asegurarse de que tiene un directorio "translations" en {{FileName|myModule/Gui/Resources}}. A continuación, abra una ventana de terminal (o su equivalente en Windows/OSX) en su directorio "translations" e introduzca el siguiente comando:
{{Code|code=lupdate -ts myModule.ts}}
{{Code|code=lupdate -ts myModule.ts}}


This creates an empty translation file. Once this is done, you need to ensure that the translation scripts are updated as in this [https://github.com/FreeCAD/FreeCAD/pull/810 pull request].
Esto crea un archivo de traducción vacío. Una vez hecho esto, hay que asegurarse de que los scripts de traducción se actualizan como en este [https://github.com/FreeCAD/FreeCAD/pull/810 pull request].

Todo lo que sigue es automático en lo que respecta a un desarrollador. El administrador extraerá las cadenas de texto, los traductores las traducirán, luego el administrador extraerá las traducciones y actualizará FreeCAD/master.

<span id="Preparing_your_3rd_party_module_or_macro_for_translation"></span>
=== Preparar su módulo o macro de terceros para la traducción ===

Los módulos o macros de terceros se traducen prácticamente de la misma manera, con la diferencia de que debes hacer parte del trabajo tú mismo.
Este [https://www.forum.freecadweb.org/viewtopic.php?f=3&t=25180 discusión del foro] describe los detalles.

Actualización: ver [[Translating_an_external_workbench/es|Traducir un banco de trabajo externo]]

<span id="Older_module_translation_techniques"></span>
=== Técnicas de traducción de módulos más antiguas ===

[[Localization_Older_Methods/es|Localización Métodos antiguos]] describe el uso de herramientas de traducción como Qt Linguist, lupdate, lrelease, pylupdate4, etc en detalle. La mayor parte de esto ya no es necesario para los módulos de FreeCAD/master, pero puede ser útil para preparar y actualizar módulos de terceros.

<span id="Automating_Crowdin_Translation_Updates"></span>
== Automatización de las actualizaciones de las traducciones de Crowdin ==

Actualmente los mantenedores de FreeCAD utilizan la API de Crowdin a través de [[Crowdin_Scripts/es|Crowdin Guiones]] para extraer y enviar las traducciones a Crowdin y de vuelta al repositorio de Github. La API de Crowdin ofrece a los mantenedores de FreeCAD la posibilidad de automatizar aspectos del flujo de trabajo de traducción del proyecto, para más información consulta la [https://support.crowdin.com/api/api-integration-setup/ Documentación de la API de Crowdin].

<span id="Related_Pages"></span>
== Páginas relacionadas ==

* [[Crowdin_Administration/es|Administración de Crowdin]]
* [[Crowdin_Scripts/es|Scripts de Crowdin]]

<span id="Scripting"></span>
==Programación==

{{Emphasis|Ver también:}} [[FreeCAD_Scripting_Basics/es|Básicos de Guionización FreeCAD]].

Para obtener un diccionario con los idiomas que admite la interfaz FreeCAD, use el método {{incode|supportedLocales}} del módulo {{incode|FreeCADGui}}.

{{Code|code=
locales = FreeCADGui.supportedLocales()
}}

Después de la ejecución {{incode|locales}} va a contener:

{{Code|code=
{'English': 'en', 'Afrikaans': 'af', 'Arabic': 'ar', 'Basque': 'eu', 'Catalan': 'ca', 'Chinese Simplified': 'zh-CN', 'Chinese Traditional': 'zh-TW', 'Croatian': 'hr', 'Czech': 'cs', 'Dutch': 'nl', 'Filipino': 'fil', 'Finnish': 'fi', 'French': 'fr', 'Galician': 'gl', 'German': 'de', 'Hungarian': 'hu', 'Indonesian': 'id', 'Italian': 'it', 'Japanese': 'ja', 'Kabyle': 'kab', 'Korean': 'ko', 'Lithuanian': 'lt', 'Norwegian': 'no', 'Polish': 'pl', 'Portuguese': 'pt-PT', 'Portuguese, Brazilian': 'pt-BR', 'Romanian': 'ro', 'Russian': 'ru', 'Slovak': 'sk', 'Slovenian': 'sl', 'Spanish': 'es-ES', 'Swedish': 'sv-SE', 'Turkish': 'tr', 'Ukrainian': 'uk', 'Valencian': 'val-ES', 'Vietnamese': 'vi'}
}}

Para obtener el idioma que usa la interfaz actual use el método {{incode|getLocale}} del mismo módulo:

{{Code|code=
locale = FreeCADGui.getLocale()
}}

Si el idioma actual es inglés {{incode|locale}} va a contener:


{{Code|code=
Everything after this is automatic as far as a developer is concerned. The administrator will extract the text strings, the translators will translate them, then the administrator will extract the translations and update FreeCAD/master.
'English'
}}


Para obtener el [https://support.crowdin.com/api/language-codes/ código de idioma] correspondiente puede usar:
<div class="mw-translate-fuzzy">
=== Prerequisitos ===
</div>


{{Code|code=
=== Older module translation techniques ===
locale = FreeCADGui.supportedLocales()[Gui.getLocale()]
[[Localization Older Methods]] describes the use of translation tools such as Qt Linguist, lupdate, lrelease, pylupdate4, etc in detail. Most of this is no longer required for FreeCAD/master modules, but may be helpful preparing and updating 3rd party modules.
}}


Si el idioma actual es inglés el resultado será:
== Automating Crowdin Translation Updates ==
Currently FreeCAD maintainers use the Crowdin API via [[Crowdin Scripts]] to pull and push translations in to Crowdin and back in to the Github repo. The Crowdin API gives FreeCAD maintainers the ability to automate aspects of the project's translation workflow, for more info refer to the [https://support.crowdin.com/api/api-integration-setup/ Crowdin API documentation].


{{Code|code=
== Related Pages ==
'en'
* [[Crowdin Administration]]
}}
* [[Crowdin Scripts]]


Para establecer el lenguaje de interfaz actual, use el método {{incode|setLocale}} del mismo módulo. Puede especificar el idioma o el código de idioma:
{{docnav/es|Branding/es|Extra python modules/es}}


{{Code|code=
{{Userdocnavi}}
FreeCADGui.setLocale('Russian')
FreeCADGui.setLocale('ru')
}}


<div class="mw-translate-fuzzy">
[[Category:Developer Documentation/es]]
</div>


{{Docnav/es
[[Category:Wiki]]
|[[Branding/es|Marcación]]
|[[Workbench_creation/es|Creación de entornos de trabajo]]
}}


{{Userdocnavi{{#translation:}}}}
{{clear}}
[[Category:Developer Documentation{{#translation:}}]]
[[Category:Wiki{{#translation:}}]]

Latest revision as of 21:08, 24 December 2023

Vista general

"Localización" es en general el proceso de proveer un software con una interfaz de usuario con múltiples lenguajes. En FreeCAD puedes cambiar el lenguaje de la interfaz en Editar→Preferencias→General. FreeCAD usa Qt para facilitar el soporte de múltiples lenguajes. En Unix/Linux, FreeCAD utiliza la configuración local actual de tu sistema como predeterminado.

Ayudando a traducir FreeCAD

Una de las cosas más importantes que los usuarios pueden contribuir a FreeCAD (si por ejemplo no tienen conocimientos de programación) es ayudar a traducir sus diferentes aspectos (código fuente, wiki, sitio web, documentación, etc...) a otro idioma. Aquí están las formas de hacerlo

Traducir el código fuente de FreeCAD

FreeCAD utiliza un sistema de traducción colaborativa en línea de terceros llamado Crowdin.

Se trata de un software propietario, pero gratuito para los proyectos FOSS. A continuación encontrará instrucciones sobre cómo utilizarlo:

  • Ir a la FreeCAD página del proyecto de traducción en Crowdin
  • Iniciar sesión creando un nuevo perfil, o utilizando una cuenta de terceros (GitHub, GitLab, GMail, etc...)
  • Haga clic en el idioma que desea traducir
  • Comienza a traducir haciendo clic en el botón Traducir junto a uno de los archivos. Por ejemplo, FreeCAD.ts contiene las cadenas de texto para la interfaz gráfica principal de FreeCAD.
  • Puedes votar por las traducciones existentes, o puedes crear las tuyas propias.
Si estás participando activamente en la traducción de FreeCAD y quieres estar informado antes de que la próxima versión esté lista para ser lanzada, para que haya tiempo de revisar tu traducción, por favor suscríbete a uno de los equipos de traducción de Crowdin FreeCAD.


Nota: Los detalles sobre cómo utilizar crowdin se pueden encontrar en la página Administración de Crowdin.

Traduciendo ambientes de trabajo externos

Visite Traducir un ambiente de trabajo externos.

Preferencias de FreeCAD para traductores

A partir de la versión 0.20 de FreeCAD, las siguientes variables puede sert manualmente agregadas a la sección BaseApp/Preferences/General del archivo user.cfg para ayudar con el desarrollo de nuevas traducciones:

AddreDallanguageMainEnentries - para agregar idiomas completamente nuevos a FreeCAD que actualmente no son compatibles con el código fuente, puede usar esta preferencia del usuario para agregarlos a la lista de idiomas disponibles. El formato de los idiomas es "nombre del idioma" = "código"; por ejemplo:

<FCText Name="AdditionalLanguageDomainEntries">"Esperanto"="eo";"French"="fr";</FCText>

AdditionalTranslationsDirectory - agregue un directorio adicional para que FreeCAD busque archivos *.qm. Esta ubicación tendrá precedencia sobre $userAppDataDir/translations y $resourceDir/translations. Por ejemplo:

<FCText Name="AdditionalTranslationsDirectory">C:/Users/FreeCADUser/TestTranslations</FCText>

Traducir la wiki de FreeCAD

Este wiki alberga muchos contenidos, la mayoría de los cuales conforman el manual. Puedes navegar por la documentación a partir de la Página principal, o echar un vistazo al manual de usuario Ayuda en línea Índice de contenidos.

Para traducir el wiki, debes tener permisos de edición del wiki; consulta ¿Cómo puedo obtener permiso de edición en el wiki?.

También deberías tener suficientes conocimientos de marcado wiki y seguir las directrices generales de estilo descritas en PáginasWiki.

Extensión de traducción de Mediawiki

Cuando el wiki se alejó de SourceForge, Yorik instaló MediaWiki's Translation extension que facilita la traducción de las páginas. Las ventajas de la extensión de traducción son que el título de la página puede ser traducido, mantiene un registro de las traducciones, notifica si la página original ha sido actualizada, y mantiene las traducciones sincronizadas con la página original en inglés.

La herramienta está documentada en Help:Extension:Translate, y forma parte de MediaWiki Language Extension Bundle.

Para empezar rápidamente a preparar una página para su traducción, lea el Ejemplo de traducción de una página. Esencialmente, un par de

<translate> ... </translate>

tags rodear toda la página para activar el sistema de traducción, y la página debe estar marcada para ser traducida.

Para ver un ejemplo de cómo funciona la herramienta de traducción, visite la Página principal. Verá una barra de idiomas generada automáticamente en la parte superior. Haga clic en Hauptseite (alemán), le llevará a Main Page/de. Justo debajo del título, puedes leer Esta página es una versión traducida de la página Principal y la traducción está completada en un XX%, siendo XX el porcentaje actual de traducción. Haga clic en "Traducir" en la parte superior de la página para iniciar la utilidad de traducción para actualizar, corregir y revisar la traducción existente.

Si va a Main Page, notará que ya no puede editar la página directamente haciendo clic en las etiquetas [Edit], y el enlace superior "Editar" ha sido sustituido por el enlace "Traducir" que abre la utilidad de traducción.

Cuando se añade un nuevo contenido, la página en inglés debe crearse primero y luego traducirse a otro idioma. Si alguien quiere cambiar o añadir contenido en una página, la página en inglés debe ser modificada primero.

Si no estás seguro de cómo proceder con las traducciones, no dudes en pedir ayuda en el Desarrollo → subforo Wiki o en el subforo de idiomas específicos en el foro de FreeCAD.

Notas importantes

Todos los usuarios de la wiki que tengan permisos de "Editor" pueden lanzar la utilidad de traducción y escribir, guardar y revisar las traducciones.

Sin embargo, sólo los usuarios con permisos de "Administrador" pueden marcar las páginas para su traducción. Una página que no esté marcada para ser traducida no hará uso de la extensión de traducción y no se sincronizará correctamente con la información en inglés.

La barra lateral izquierda también es traducible, pero sólo los administradores pueden modificar este elemento del sitio. Por favor, siga las instrucciones dedicadas en Barra lateral de localización.

La primera vez que se cambia una página al nuevo sistema de traducción, se pierden todas sus antiguas traducciones "manuales". Para recuperar una traducción, debes guardar una copia offline del texto antiguo antes del cambio. Entonces podrás utilizar este texto antiguo traducido para rellenar las unidades de traducción en el nuevo sistema. También puedes abrir una versión anterior desde el historial, y obtener el texto antiguo de esta manera. Esto tiene que hacerse para cada idioma que tenía una página traducida.

Traducir la documentación de FreeCAD

Según el consenso general, la página de referencia en la wiki es la página en inglés, que debería crearse primero. Si quieres cambiar o añadir contenido a una página, debes hacerlo primero en la página en inglés, y sólo una vez completada la actualización, portar la modificación a la página traducida.

Instrucciones de traducción antiguas

Estas instrucciones son sólo para el fondo histórico. Las traducciones deben utilizar el nuevo sistema con la #Extensión de traducción de Mediawiki descrita anteriormente.

Así que el primer paso es comprobar si ya se ha iniciado la traducción manual para tu idioma (mira en la barra lateral izquierda, en "manual").
Si no es así, dirígete al [foro http://forum.freecadweb.org/] y di que quieres empezar una nueva traducción, crearemos la configuración básica para el idioma en el que quieres trabajar.
A continuación, debes obtener permiso de edición en la wiki.

Si tu idioma ya está en la lista, mira qué páginas aún no tienen traducción (aparecerán en rojo). La técnica es sencilla: entra en una página roja, y copia/pega el contenido de la página inglesa correspondiente, y empieza a traducir.
No olvides incluir todas las etiquetas y plantillas de la página original en inglés. Algunas de esas plantillas tendrán un equivalente en tu idioma (por ejemplo, hay una plantilla Docnav francesa llamada Docnav/fr). En casi todos los enlaces debes usar una barra y el código de tu idioma. Mira otras páginas ya traducidas para ver cómo lo hicieron.
Añade una barra y el código de tu idioma en las categorías, como [[Category:Developer Documentation/fr]]
Y si no estás seguro, dirígete a los foros y pide a la gente que compruebe lo que has hecho y te diga si está bien o no.
Hay cuatro plantillas que se utilizan habitualmente en las páginas de manual. Estas 4 plantillas tienen versiones localizadas (Template:Docnav/fr, Template:fr, etc...)

  • Template:GuiCommand : es el bloque de información del comando Gui en la parte superior derecha de la documentación del comando.
  • Template:Docnav : es la barra de navegación en la parte inferior de las páginas, mostrando las páginas anteriores y siguientes.
  • Template:Userdocnavi : da enlaces directos a las principales páginas base

Convención de nomenclatura de páginas
Por favor, ten en cuenta que, debido a las limitaciones en la implementación de Sourceforge del motor MediaWiki, requerimos que todas tus páginas mantengan el nombre de su contraparte original en inglés, añadiendo una barra y el código de tu idioma. Por ejemplo, la página traducida de About FreeCAD debe ser About Freecad/es para el español, About FreeCAD/pl para el polaco, etc. La razón es simple: para que si los traductores se van, los administradores del wiki, que no hablan todos los idiomas, sepan para qué son estas páginas. Esto facilitará el mantenimiento y evitará que se pierdan páginas.
Si quieres que la plantilla Docnav muestre páginas enlazadas en tu idioma, puedes usar páginas de redirección. Son básicamente enlaces de acceso directo a la página real. Aquí hay un ejemplo con la página francesa de Acerca de FreeCAD.

  • La página Acerca de FreeCAD/fr es la página con contenido
  • La página À propos de FreeCAD contiene este código:
#REDIRECT [[About_FreeCAD/fr]]
  • En la página À propos de FreeCAD/fr, el código Docnav tendrá el siguiente aspecto:
{{docnav/fr|[[Online_Help_Startpage/fr|Bienvenue dans l'aide en ligne de FreeCAD]]|[[Feature_list/fr|Fonctionnalités]]}}

La página "Bienvenue dans l'aide en ligne de FreeCAD" redirige a Online_Help_Startpage/fr, y la página "Fonctionnalités" redirige a Feature_list/fr.

Traducir el sitio web de FreeCAD

La traducción de la FreeCAD página web se realiza ahora a través de Crowdin. El archivo se llama homepage.po.

Desarrollo - Cómo añadir la localización

Esta sección es para los desarrolladores que quieren añadir localización a su código.

Preparando tus módulos de FreeCAD/master para la traducción

Estas son las partes del proceso de traducción de FreeCAD:

  • extraer las cadenas de texto del código fuente en archivos *.ts
  • cargar los archivos *.ts en FreeCAD Crowdin.
  • traducción de cadenas dentro de Crowdin
  • extraer archivos *.ts modificados/nuevos de Crowdin
  • convertir archivos *.ts en archivos *.qm y actualizar el archivo *.qrc de cada módulo
  • actualizar el maestro de FreeCAD

Todos los pasos anteriores son realizados por los "scripts de traducción" que son ejecutados por un administrador periódicamente.

Preparar su módulo para la traducción es bastante fácil. En primer lugar, debe asegurarse de que tiene un directorio "translations" en myModule/Gui/Resources. A continuación, abra una ventana de terminal (o su equivalente en Windows/OSX) en su directorio "translations" e introduzca el siguiente comando:

lupdate -ts myModule.ts

Esto crea un archivo de traducción vacío. Una vez hecho esto, hay que asegurarse de que los scripts de traducción se actualizan como en este pull request.

Todo lo que sigue es automático en lo que respecta a un desarrollador. El administrador extraerá las cadenas de texto, los traductores las traducirán, luego el administrador extraerá las traducciones y actualizará FreeCAD/master.

Preparar su módulo o macro de terceros para la traducción

Los módulos o macros de terceros se traducen prácticamente de la misma manera, con la diferencia de que debes hacer parte del trabajo tú mismo. Este discusión del foro describe los detalles.

Actualización: ver Traducir un banco de trabajo externo

Técnicas de traducción de módulos más antiguas

Localización Métodos antiguos describe el uso de herramientas de traducción como Qt Linguist, lupdate, lrelease, pylupdate4, etc en detalle. La mayor parte de esto ya no es necesario para los módulos de FreeCAD/master, pero puede ser útil para preparar y actualizar módulos de terceros.

Automatización de las actualizaciones de las traducciones de Crowdin

Actualmente los mantenedores de FreeCAD utilizan la API de Crowdin a través de Crowdin Guiones para extraer y enviar las traducciones a Crowdin y de vuelta al repositorio de Github. La API de Crowdin ofrece a los mantenedores de FreeCAD la posibilidad de automatizar aspectos del flujo de trabajo de traducción del proyecto, para más información consulta la Documentación de la API de Crowdin.

Páginas relacionadas

Programación

Ver también: Básicos de Guionización FreeCAD.

Para obtener un diccionario con los idiomas que admite la interfaz FreeCAD, use el método supportedLocales del módulo FreeCADGui.

locales = FreeCADGui.supportedLocales()

Después de la ejecución locales va a contener:

{'English': 'en', 'Afrikaans': 'af', 'Arabic': 'ar', 'Basque': 'eu', 'Catalan': 'ca', 'Chinese Simplified': 'zh-CN', 'Chinese Traditional': 'zh-TW', 'Croatian': 'hr', 'Czech': 'cs', 'Dutch': 'nl', 'Filipino': 'fil', 'Finnish': 'fi', 'French': 'fr', 'Galician': 'gl', 'German': 'de', 'Hungarian': 'hu', 'Indonesian': 'id', 'Italian': 'it', 'Japanese': 'ja', 'Kabyle': 'kab', 'Korean': 'ko', 'Lithuanian': 'lt', 'Norwegian': 'no', 'Polish': 'pl', 'Portuguese': 'pt-PT', 'Portuguese, Brazilian': 'pt-BR', 'Romanian': 'ro', 'Russian': 'ru', 'Slovak': 'sk', 'Slovenian': 'sl', 'Spanish': 'es-ES', 'Swedish': 'sv-SE', 'Turkish': 'tr', 'Ukrainian': 'uk', 'Valencian': 'val-ES', 'Vietnamese': 'vi'}

Para obtener el idioma que usa la interfaz actual use el método getLocale del mismo módulo:

locale = FreeCADGui.getLocale()

Si el idioma actual es inglés locale va a contener:

'English'

Para obtener el código de idioma correspondiente puede usar:

locale = FreeCADGui.supportedLocales()[Gui.getLocale()]

Si el idioma actual es inglés el resultado será:

'en'

Para establecer el lenguaje de interfaz actual, use el método setLocale del mismo módulo. Puede especificar el idioma o el código de idioma:

FreeCADGui.setLocale('Russian')
FreeCADGui.setLocale('ru')