diff --git a/docs/user_guide/docs/account.zh.md b/docs/user_guide/docs/account.zh.md index 311f70ec57..ba767ba822 100644 --- a/docs/user_guide/docs/account.zh.md +++ b/docs/user_guide/docs/account.zh.md @@ -8,7 +8,7 @@ 要创建新账户,请点击登录页面上的 [注册](../../sign-up) 按钮。 -!!! 笔记 +!!! note "笔记" 电子邮件地址用于重新设置用户密码,因此,每个电子邮件地址只能有一个账号。 @@ -19,7 +19,7 @@ 如果用户想换密码,点击“忘记密码?”链接即可 按照指示去操作,系统会将一套密码重新设置流程发送到与用户账号有关的电子邮件地 址上。 -!!! 重要警告 +!!! warning "重要警告" 用户名和电子邮件地址不需要区分大小写。 密码必须要区分大小写。 @@ -38,6 +38,6 @@ - • 电子邮件地址; - • 用户界面语言; -!!! 笔记 +!!! note "笔记" 注册时用到的用户名具有永久性,且无法更改。 diff --git a/docs/user_guide/docs/dataEntry.es.md b/docs/user_guide/docs/dataEntry.es.md index c867ff82b0..e14cb00fce 100644 --- a/docs/user_guide/docs/dataEntry.es.md +++ b/docs/user_guide/docs/dataEntry.es.md @@ -37,7 +37,21 @@ Para grabar audio, hay un botón circular rojo. Para cada audio grabado, hay un su audio, o pulse Mayúsculas y haga clic para borrar su grabación. **En una pantalla táctil:** Mantenga pulsado el círculo rojo para grabar. Pulse un triángulo verde para reproducir su -audio, o manténgalo pulsado para abrir un menú (con opciones para reproducir o eliminar). +audio, o manténgalo pulsado para abrir un menú con opciones. + +#### Añadir un locutor a las grabaciones de audio + +Haga clic en el icono del locutor en la barra superior para ver una lista de todos los locutores disponibles y +seleccione el locutor actual. Este locutor se asociará automáticamente a cada grabación de audio hasta que cierre la +sesión o seleccione un locutor diferente. + +El locutor asociado a una grabación puede verse pasando el ratón por encima de su icono de reproducción, el triángulo +verde. Para cambiar el locutor de una grabación, haga clic con el botón derecho del ratón en el triángulo verde (o +mantén pulsado en una pantalla táctil). + +!!! note "Nota" + + El audio importado no se puede borrar ni se le puede añadir un locutor. ## Nueva entrada con forma vernácula duplicada {#new-entry-with-duplicate-vernacular-form} diff --git a/docs/user_guide/docs/dataEntry.zh.md b/docs/user_guide/docs/dataEntry.zh.md index 98e5a0a02f..2611a814e9 100644 --- a/docs/user_guide/docs/dataEntry.zh.md +++ b/docs/user_guide/docs/dataEntry.zh.md @@ -4,7 +4,7 @@ 浏览或查询感兴趣的领域。 -!!! 提示 +!!! tip "提示" 为快速查询某个域名,The Combine 会在用户键入一连串连续数字时自动插入“.”符号。 例如,“1234‘就会自动变为“1.2.3.4”。 如果键入任何非数字的字符,此现象则不会发生。 @@ -30,7 +30,19 @@ **用鼠标** 点击并按住红色圆圈开始录制。 点击绿色三角键播放音频,或按住 移位键并单击以删除其录音。 -**用触屏** 点击并按住红色圆圈开始录制。 轻触绿色三角键播放其音频,或者下压并按住,以拉出菜单栏(带播放或删除选项)。 +**用触屏** 点击并按住红色圆圈开始录制。 轻触绿色三角键播放其音频,或者下压并按住,以拉出菜单栏带选项。 + +#### Add a speaker to audio recordings + +Click the speaker icon in the top bar to see a list of all available speakers and select the current speaker. This +speaker will be automatically associated with every audio recording until you log out or select a different speaker. + +The speaker associated with a recording can be seen by hovering over its play icon, the green triangle. To change a +recording's speaker, right click the green triangle (or press-and-hold on a touch screen). + +!!! note "笔记" + + Imported audio cannot be deleted or have a speaker added. ## 含重复土语形式的新词条 {#new-entry-with-duplicate-vernacular-form} @@ -53,7 +65,7 @@ The Combine 有一个可选功能,便于输入项目中已经存在的词条 如果用户选择创建新词条,弹出的方框就会消失,这时就可以键入新词条的注释。 -!!! 笔记 +!!! note "笔记" 尽管用户选择创建新词条,如果键入的注释与土语中另一条完全相同的词条一样,新词条就不会被创建,而是该词条会被更新。 diff --git a/docs/user_guide/docs/goals.es.md b/docs/user_guide/docs/goals.es.md index 7c327f3ee9..b8b8bf4d15 100644 --- a/docs/user_guide/docs/goals.es.md +++ b/docs/user_guide/docs/goals.es.md @@ -4,29 +4,48 @@ La tabla Revisar entradas muestra todas las entradas del proyecto seleccionado. -### Ordenar y filtrar columnas +### Columnas -Las columnas son: Edición, Vernáculo, Acepciones, Glosas, Dominios, Pronunciaciones, Nota, Bandera y Borrar. +Las columnas son: Editar (sin encabezado), Vernáculo, Número de acepciones (#), Glosas, Dominios, Pronunciaciones +(![Review Entries pronunciations column header](../images/reviewEntriesColumnPronunciations.png){width=28}), Nota, +Bandera (![Review Entries flag column header](../images/reviewEntriesColumnFlag.png){width=16}), y Eliminar (sin +encabezado). ![Revisar los encabezados de columna de las entradas](../images/reviewEntriesColumns.es.png) -En la parte superior de una columna con contenido predominantemente textual (Vernáculo, Glosas, Dominios, Nota o -Bandera), puede ordenar alfabéticamente o filtrar con una búsqueda de texto. - -En la parte superior de la columna Acepciones o la columna Pronunciaciones, puede ordenar o filtrar por el número de -acepciones o pronunciaciones que tienen las entradas. +To show/hide columns or rearrange their order, click on the +![Review Entries columns edit icon](../images/reviewEntriesColumnsEdit.png){width=25} icon in the top corner. Debido a la naturaleza de la recopilación rápida de palabras, la [entrada de datos](dataEntry.md) en The Combine no -permite añadir definiciones o partes de la oración. Sin embargo, si el proyecto tiene datos importados en los que hay -definiciones o partes de discurso, se añadirán automáticamente columnas adicionales a la tabla Entradas de revisión. +permite añadir definiciones o partes de la oración. However, if the project has imported data in which definitions or +parts of speech were already present, additional columns will be available in the Review Entries table. + +#### Ordenar y filtrar + +There are icons at the top of each column to +![Review Entries column filter icon](../images/reviewEntriesColumnFilter.png){width=20} filter and +![Review Entries column sort icon](../images/reviewEntriesColumnSort.png){width=20} sort the data. + +In a column with predominantly text content (Vernacular, Glosses, Note, or Flag), you can sort alphabetically or filter +with a text search. + +In the Number of Senses column or Pronunciations column, you can sort or filter by the number of senses or recordings +that entries have. In the Pronunciations column, you can also filter by speaker name. + +In the Domains column, sorting is numerical by each entry's least domain id. To filter by domain, type a domain id with +or without periods. For example, "8111" and "8.1.1.1" both show all entries with a sense in domain 8.1.1.1. To also +include subdomains, add a final period to your filter. For example, "8111." includes domains "8.1.1.1", "8.1.1.1.1", and +"8.1.1.1.2". Filter with just a period (".") to show all entries with any semantic domain. ### Edición de filas de entrada Puede grabar, reproducir o borrar las grabaciones de audio de una entrada con los iconos de la columna Pronunciaciones. -Puede eliminar una entrada completa con el icono de la columna Suprimir. -Para editar la forma vernácula, los acepciones (incluidas las glosas y los dominios), la nota o la bandera de una -entrada, haga clic en el icono de la columna Editar. +To edit any other part of an entry, click the +![Review Entries row edit icon](../images/reviewEntriesRowEdit.png){width=20} edit icon in the initial column. + +You can delete an entire entry by clicking the +![Review Entries row delete icon](../images/reviewEntriesRowDelete.png){width=20} delete icon in the final column. ## Combinar duplicados {#merge-duplicates} @@ -114,8 +133,8 @@ siguiente conjunto: "Guardar y Continuar" y "Aplazar". ![Fusionar duplicados botón Guardar y Continuar](../images/mergeSaveAndContinue.es.png) El botón azul "Guardar y continuar" hace dos cosas. En primer lugar, guarda todos los cambios realizados (es decir, -todas las acepciones movidas, fusionadas o eliminadas), actualizando las palabras en la base de datos. En segundo lugar, -guarda las palabras no falsificadas como no duplicadas. +todas las acepciones movidas, fusionadas o eliminadas), actualizando las palabras en la base de datos. Second, it saves +the resulting set of words as non-duplicates. !!! tip "Consejo" @@ -125,6 +144,10 @@ guarda las palabras no falsificadas como no duplicadas. Si una de las palabras de un conjunto no fusionado intencionadamente se edita (por ejemplo, en las entradas de revisión), el conjunto puede volver a aparecer como duplicados potenciales. +!!! warning "Importante" + + Avoid having multiple users merge duplicates in the same project at the same time. If different users simultaneously merge the same set of duplicates, it will results in the creation of new duplicates (even if the users are making the same merge decisions). + #### Aplazar ![Fusionar duplicados botón Aplazar](../images/mergeDefer.es.png) diff --git a/docs/user_guide/docs/goals.zh.md b/docs/user_guide/docs/goals.zh.md index e14fbcd630..5ffa54f53d 100644 --- a/docs/user_guide/docs/goals.zh.md +++ b/docs/user_guide/docs/goals.zh.md @@ -4,24 +4,47 @@ 检查词条表显示出一个项目内所有的词条。 -### 排序和筛选列 +### Columns -这些列包括:编辑,土语,词义,注释,领域,发音,笔记,标记,和删除。 +The columns are: Edit (no header), Vernacular, Number of Senses (#), Glosses, Domains, Pronunciations +(![Review Entries pronunciations column header](../images/reviewEntriesColumnPronunciations.png){width=28}), Note, Flag +(![Review Entries flag column header](../images/reviewEntriesColumnFlag.png){width=16}), and Delete (no header). ![审查词条列标题](../images/reviewEntriesColumns.zh.png) -主要是文字内容(土语,注释,领域,笔记,或标记) 的列的顶部,用户可根据字母顺序分类,或者采用文本搜素的方式进行筛选 - -在词义和发音列的顶部,用户可根据词条的词义数量或录音数量进行分类或筛选。 +To show/hide columns or rearrange their order, click on the +![Review Entries columns edit icon](../images/reviewEntriesColumnsEdit.png){width=25} icon in the top corner. 由于快速字词收集(Rapid Word Collection)自身带有的特性,The Combine 中的 [词条输入](dataEntry.md) 不支持添加定义或词性 -的功能。 但是,如果该项目已输入的数据中已有定义或词类,审查词条表中会自动添加额外的列来表达该信息。 +的功能。 However, if the project has imported data in which definitions or parts of speech were already present, +additional columns will be available in the Review Entries table. + +#### Sorting and Filtering + +There are icons at the top of each column to +![Review Entries column filter icon](../images/reviewEntriesColumnFilter.png){width=20} filter and +![Review Entries column sort icon](../images/reviewEntriesColumnSort.png){width=20} sort the data. + +In a column with predominantly text content (Vernacular, Glosses, Note, or Flag), you can sort alphabetically or filter +with a text search. + +In the Number of Senses column or Pronunciations column, you can sort or filter by the number of senses or recordings +that entries have. In the Pronunciations column, you can also filter by speaker name. + +In the Domains column, sorting is numerical by each entry's least domain id. To filter by domain, type a domain id with +or without periods. For example, "8111" and "8.1.1.1" both show all entries with a sense in domain 8.1.1.1. To also +include subdomains, add a final period to your filter. For example, "8111." includes domains "8.1.1.1", "8.1.1.1.1", and +"8.1.1.1.2". Filter with just a period (".") to show all entries with any semantic domain. ### 编辑词条行 -用户可以使用“发音”列中的图标来录制、播放或删除词条的录音。 用户可以使用删除列中的图标删除整个词条。 +用户可以使用“发音”列中的图标来录制、播放或删除词条的录音。 + +To edit any other part of an entry, click the +![Review Entries row edit icon](../images/reviewEntriesRowEdit.png){width=20} edit icon in the initial column. -要编辑词条的语形、词义(含注释和领域)、笔记、标记时,只需点击编辑列的图标。 +You can delete an entire entry by clicking the +![Review Entries row delete icon](../images/reviewEntriesRowDelete.png){width=20} delete icon in the final column. ## 合并重复项 {#merge-duplicates} @@ -53,7 +76,7 @@ ![合并重复的词条和合并其词义](../images/mergeSidebar.zh.png) -!!! 重要警告 +!!! warning "重要警告" 当多种词义被合并时,所有语义域得以保留,但“只有侧边栏顶部的词义”保留其注释(和定义)。 @@ -101,16 +124,20 @@ ![合并重复保存并继续按钮](../images/mergeSaveAndContinue.zh.png) 蓝色的“保存与继续”键有两个功能。 第一,它将所有更改都保存下来(例如,所有已被移除、合并或被删除的词义),并更新数据库中的 -词。 第二,它将任何未合并的词保存为非重复词。 +词。 Second, it saves the resulting set of words as non-duplicates. -!!! 提示 +!!! tip "提示" 可能的重复是真的重复吗? 用户只需点击 保存& 继续, 即可告诉 The Combine 不再显示该组的资料。 -!!! 笔记 +!!! note "笔记" 如果有意不合并词组中有一个被修改(例如,在检阅条目),则该组词会再次显示为可能重复词。 +!!! warning "重要警告" + + Avoid having multiple users merge duplicates in the same project at the same time. If different users simultaneously merge the same set of duplicates, it will results in the creation of new duplicates (even if the users are making the same merge decisions). + #### 推迟 ![合并重复推迟按钮](../images/mergeDefer.zh.png) @@ -154,7 +181,7 @@ _创建字符库存_" 提供了该项目词条土语形式出现的每个符编 点击一个字符图块可打开该字符的面板。 -!!! 提示 +!!! tip "提示" 用户可能需要滚动才能看到面板。 如果用户电脑可视窗户足够宽,窗的右边会有空白边距;而面板将位于其顶部。 如果电脑可视窗户狭窄,图块就会一直填充到窗户右侧;该面板将位于底部,即所有图块的下方。 @@ -168,6 +195,6 @@ _创建字符库存_" 提供了该项目词条土语形式出现的每个符编 面板底部是“查找和替换”工具。 如果该字符在*每次*时都应替换成其他字符,只需在“替换为”框中键入替换字符或字符串,然后点击“应 用”键即可。 -!!! 重要警告 +!!! warning "重要警告" “查找和替换 ”操作更改的是词条,而不是字符库。 **它无法被撤销!** diff --git a/docs/user_guide/docs/index.es.md b/docs/user_guide/docs/index.es.md index f6d8ecc06f..9f4e3d4c4e 100644 --- a/docs/user_guide/docs/index.es.md +++ b/docs/user_guide/docs/index.es.md @@ -1,7 +1,7 @@ # Resumen -The Combine es una herramienta de apoyo a Talleres -de[recopilación rápida de palabras](https://www.sil.org/dictionaries-lexicography/rapid-word-collection-methodology) +The Combine es una herramienta de apoyo a Talleres de +[recopilación rápida de palabras](https://www.sil.org/enterprise-news/rapid-word-collection-updated-approach-dictionary-creation) (RWC) y la limpieza de datos posterior al taller. ## Primeros pasos diff --git a/docs/user_guide/docs/index.md b/docs/user_guide/docs/index.md index bdbe164289..9551659727 100644 --- a/docs/user_guide/docs/index.md +++ b/docs/user_guide/docs/index.md @@ -1,8 +1,8 @@ # Overview The Combine is a tool for supporting -[Rapid Word Collection](https://www.sil.org/dictionaries-lexicography/rapid-word-collection-methodology) (RWC) workshops -and post-workshop data cleanup. +[Rapid Word Collection](https://www.sil.org/enterprise-news/rapid-word-collection-updated-approach-dictionary-creation) +(RWC) workshops and post-workshop data cleanup. ## Getting Started diff --git a/docs/user_guide/docs/index.zh.md b/docs/user_guide/docs/index.zh.md index dd32c30da8..98c50304b5 100644 --- a/docs/user_guide/docs/index.zh.md +++ b/docs/user_guide/docs/index.zh.md @@ -1,8 +1,8 @@ # 概览 The Combine 是一个支持 -[快速字词收集](https://www.sil.org/dictionaries-lexicography/rapid-word-collection-methodology)(RWC) 工作坊和后工作坊数 -据清理的工具。 +[快速字词收集](https://www.sil.org/enterprise-news/rapid-word-collection-updated-approach-dictionary-creation) (RWC) 工 +作坊和后工作坊数据清理的工具。 ## 开始 diff --git a/docs/user_guide/docs/project.es.md b/docs/user_guide/docs/project.es.md index d2bd144b3c..6f10d1ef67 100644 --- a/docs/user_guide/docs/project.es.md +++ b/docs/user_guide/docs/project.es.md @@ -46,7 +46,7 @@ siguientes ajustes están disponibles para los usuarios del proyecto con permiso ![Configuración básico](../images/projectSettings1Basic.es.png){width=750 .center} -#### Nombre del Proyecto +#### Nombre del proyecto Se recomienda un nombre distintivo y descriptivo. El nombre del proyecto forma parte del nombre del archivo cuando usted [exporte](#export) su proyecto. @@ -126,6 +126,24 @@ Buscar usuarios existentes (muestra todos los usuarios con el término de búsqu dirección de correo electrónico), o invitar a nuevos usuarios por dirección de correo electrónico (se añadirán automáticamente al proyecto cuando se hagan una cuenta a través de la invitación). +#### Administrar locutores + +Speakers are distinct from users. A speaker can be associate with audio recording of words. Use the + icon at the bottom +of this section to add a speaker. Beside each added speaker are buttons to delete them, edit their name, and add a +consent for use of their recorded voice. The supported methods for adding consent are to (1) record an audio file or (2) +upload an image file. + +When project users are in Data Entry or Review Entries, a speaker icon will be available in the top bar. Users can click +that button to see a list of all available speakers and select the current speaker, this speaker will be automatically +associated with every audio recording made by the user until they log out or select a different speaker. + +The speaker associated with a recording can be seen by hovering over its play icon. To change a recording's speaker, +right click the play icon (or press and hold on a touch screen to bring up a menu). + +When the project is exported from The Combine, speaker names (and ids) will be added as a pronunciation labels in the +LIFT file. All consent files for project speakers will be added to a "consent" subfolder of the export (with speaker ids +used for the file names). + ### Importar/Exportar ![Importar/Exportar](../images/projectSettings4Port.es.png){width=750 .center} @@ -150,6 +168,16 @@ El nombre de archivo por defecto es el nombre del proyecto con una marca de tiem Un proyecto que haya alcanzado cientos de MB de tamaño puede tardar varios minutos en exportarse. +!!! note "Nota" + + Project settings, project users, and word flags are not exported. + +#### Exportar locutores de las pronunciaciones + +When a project is exported from TheCombine and imported into FieldWorks, if a pronunciation has an associated speaker, +the speaker name and id will be added as a pronunciation label. Consent files will be exported with speaker id used for +the file name. The consent files can be found in the zipped export, but will not be imported into FieldWorks. + ### Calendario de talleres {#workshop-schedule} ![Calendario de talleres](../images/projectSettings5Sched.es.png){width=750 .center} diff --git a/docs/user_guide/docs/project.zh.md b/docs/user_guide/docs/project.zh.md index 570e621e2d..9f563e80d5 100644 --- a/docs/user_guide/docs/project.zh.md +++ b/docs/user_guide/docs/project.zh.md @@ -66,7 +66,7 @@ 与项目有关的*分析语言*可能会有很多种,但只有列表中最上面的一种可以输入新词条。 -!!! 笔记 +!!! note "笔记" 如果项目有多种语言的注释,则那些语言必须被添加至此处,这样所有注释就可以显示在[数据清理](goals.md). 点击放大镜图标,就能看到呈现在项目中的所有语言代码。 @@ -99,7 +99,7 @@ _收集者_ 可以进行 [词条输入](./dataEntry.md) ,但不能进行 [数 _管理员_ 拥有 _编辑_ 的所有权限,还可以修改大多数项目设置和 用户。 -!!! 重要警告 +!!! warning "重要警告" 每个项目只有一个所有者。 如果您将另一个用户成为项目所有者,您将自动从项目所有者变为 管理员,而且您将无法再存档项目或为其他用户设置/删除管理员。 @@ -109,17 +109,35 @@ _管理员_ 拥有 _编辑_ 的所有权限,还可以修改大多数项目设 可搜素已有的用户(用搜素词显示所有用户的姓名、用户名,或电子邮件地址), 也可以电子邮件的方式邀请新用户(他们在通过邀请创建 帐户后将自动添加到项目中). +#### Manage Speakers + +Speakers are distinct from users. A speaker can be associate with audio recording of words. Use the + icon at the bottom +of this section to add a speaker. Beside each added speaker are buttons to delete them, edit their name, and add a +consent for use of their recorded voice. The supported methods for adding consent are to (1) record an audio file or (2) +upload an image file. + +When project users are in Data Entry or Review Entries, a speaker icon will be available in the top bar. Users can click +that button to see a list of all available speakers and select the current speaker, this speaker will be automatically +associated with every audio recording made by the user until they log out or select a different speaker. + +The speaker associated with a recording can be seen by hovering over its play icon. To change a recording's speaker, +right click the play icon (or press and hold on a touch screen to bring up a menu). + +When the project is exported from The Combine, speaker names (and ids) will be added as a pronunciation labels in the +LIFT file. All consent files for project speakers will be added to a "consent" subfolder of the export (with speaker ids +used for the file names). + ### 导入/导出 ![导入/导出](../images/projectSettings4Port.zh.png){width=750 .center} #### 导入 {#import} -!!! 笔记 +!!! note "笔记" 目前,可导入的 LIFT 文件不可超过 100MB。 -!!! 笔记 +!!! note "笔记" 目前,每个项目只能导入一个 LIFT 文件。 @@ -128,10 +146,20 @@ _管理员_ 拥有 _编辑_ 的所有权限,还可以修改大多数项目设 单击 "导出 "按钮后,在数据准备下载时,用户可以到网站的其他部分浏览。 当导出内容可供下载时,应用程序栏中会出现一个下载图 标。 默认文件名是项目名称加上下载时间。 -!!! 重要警告 +!!! warning "重要警告" 导出一个数百 MB 大小的项目文件可能需要好几分钟时间。 +!!! note "笔记" + + Project settings, project users, and word flags are not exported. + +#### Export pronunciation speakers + +When a project is exported from TheCombine and imported into FieldWorks, if a pronunciation has an associated speaker, +the speaker name and id will be added as a pronunciation label. Consent files will be exported with speaker id used for +the file name. The consent files can be found in the zipped export, but will not be imported into FieldWorks. + ### 工作坊日程 {#workshop-schedule} ![工作坊日程](../images/projectSettings5Sched.zh.png){width=750 .center} diff --git a/public/locales/ar/translation.json b/public/locales/ar/translation.json index ff41b5a4d5..3d719c43fa 100644 --- a/public/locales/ar/translation.json +++ b/public/locales/ar/translation.json @@ -1,7 +1,7 @@ { "generic": { "404Title": "404: لم يتم العثور على الصفحة", - "404Text": "انقر على الجرار للعودة إلى المنزل.", + "404Text": "انقر على الناس للعودة إلى المنزل.", "loadingTitle": "جارٍ التحميل...", "loadingText": "الرجاء الانتظار بينما يقوم The Combine بتجهيز بياناتك." }, @@ -29,11 +29,9 @@ "addNote": "إضافة ملاحظة", "domain": "النطاق", "domainTitle": "النطاق: {{ val1 }} ({{ val2 }})", - "gloss": "تعليق", - "glosses": "اللمعان", + "glosses": "تعليقات", "pressEnter": "اضغط على إدخال لحفظ الكلمة", - "vernacular": "العامية", - "wordInDatabase": "هذه الكلمة موجودة بالفعل في قاعدة البيانات" + "vernacular": "العامية" }, "appBar": { "dataEntry": "ادخال بيانات", @@ -56,16 +54,12 @@ "signUpNew": "إنشاء حساب مستخدم جديد", "signUpSuccess": "تم إنشاء المستخدم", "signUpFailed": "فشل تسجيل المستخدم", - "usernameInvalid": "اسم المستخدم هذا قصير جداً أو مأخوذ مسبقاً.", "usernameRequirements": "اسم المستخدم يجب أن يكون 3 أحرف أو أكثر.", "emailTaken": "يوجد بالفعل مستخدم بهذا البريد الإلكتروني.", - "networkError": "خطأ بالشبكه", - "loggingIn": "جاري تسجيل الدخول...", "required": "مطلوبة", "confirmPassword": "تأكيد كلمة المرور", "confirmPasswordError": "لا تتطابق كلمات المرور.", - "email": "البريد الألكتروني", - "emailError": "الرجاء إدخال بريد إلكتروني صالح." + "email": "البريد الألكتروني" }, "passwordReset": { "emailOrUsername": "البريد الإلكتروني أو اسم المستخدم", @@ -76,6 +70,7 @@ "resetFail": "خطأ في إعادة تعيين كلمة المرور", "backToLogin": "العودة إلى تسجيل الدخول" }, + "speakerMenu": {}, "userMenu": { "siteSettings": "إعدادات الموقع", "userSettings": "اعدادات المستخدم", @@ -96,7 +91,6 @@ }, "selectProject": { "title": "حدد المشروع" }, "siteSettings": { - "projectList": "مشاريع", "archiveProjectText": "لن يكون هذا المشروع متاحا لأي مستخدم.", "restoreProjectText": "ربما كان لدى شخص ما سبب جيد لأرشفة هذا المشروع. هل أنت متأكد من أنك تريد استعادته؟", "deleteUser": { @@ -119,21 +113,18 @@ "updateSuccess": "تم تحديث الإعدادات بنجاح." }, "projectExport": { - "cannotExportEmpty": "المشروع فارغ. لا يمكنك تصدير مشروع بدون كلمات.", - "downloadInProgress": "جاري التنزيل", - "exportFailed": "فشل التصدير", - "exportInProgress": "جار التصدير" + "cannotExportEmpty": "المشروع فارغ. لا يمكنك تصدير مشروع بدون كلمات." }, "projectSettings": { + "tab": { "export": "تصدير", "languages": "اللغات" }, "language": { - "header": "اللغة", "vernacular": "العامية", "vernacularLanguage": "اللغة الإغريقية", "analysis": "التحليل", "analysisLanguage": "لغة التحليل", "semanticDomains": "المجالات الدلالية", - "semanticDomainsDefault": "(تفضيل لغة المتصفح الافتراضية)", - "languages": "اللغات", + "semanticDomainsDefault": "(تفضيل لغة واجهة المستخدم الافتراضية)", + "languages": "اللغات المشروع", "bcp47": "BCP 47 Code", "name": "الاسم", "font": "خط", @@ -164,11 +155,11 @@ "manageUser": "إدارة المستخدم", "reverseOrder": "ترتيب عكسي" }, + "speaker": { "consent": {} }, "import": { "header": "استيراد البيانات", "body": "ستضاف البيانات المستوردة إلى هذا المشروع. لن يقوم The Combine بأي محاولة لإلغاء التكرار أو الكتابة فوق أو المزامنة.", "chooseFile": "اختر ملف", - "done": "تم!", "notAllowed": "لقد قمت بالفعل باستيراد ملف LIFT إلى هذا المشروع." }, "archive": { @@ -192,10 +183,6 @@ "on": "على", "hint": "عند إدخال البيانات، اقترح أن تكتب اللهجات العامية الحالية بطريقة مشابهة للغة العامية." }, - "definitions": { - "label": "عرض التعاريف", - "hint": "في مراجعة الإدخالات، بَيَّنَ عمود التعريفات؛ في دمج التكرارات، اعرض التعريف الموجود أسفل اللمعان." - }, "invite": { "inviteByEmailLabel": "دعوة بواسطة البريد الإلكتروني", "userExists": "هذا المستخدم مسجل مسبقاً.", @@ -203,14 +190,12 @@ "searchPlaceholder": "بحث...", "searchTitle": "البحث عن المستخدمين", "emailLabel": "البريد الألكتروني", - "messageLabel": "رسالة", "toastSuccess": "تمت إضافة المستخدم إلى المشروع.", "toastFail": "فشل في إضافة مستخدم إلى المشروع." } }, "goal": { "selector": { - "selectOption": "حدد هذا الهدف", "past": "لقد أتممت:", "present": "توصياتنا:", "other": "خيارات أخرى:", @@ -222,22 +207,17 @@ }, "createStrWordInv": { "title": "إنشاء قائمة جرد الكلمات الهيكلية" }, "handleFlags": { "title": "التعامل مع الأعلام" }, - "spellCheckGloss": { "title": "معجم التدقيق الإملائي" }, + "reviewDeferredDups": {}, + "spellCheckGloss": { "title": "تعليق التدقيق الإملائي" }, "validateChars": { "title": "التحقق من صحة الأحرف" }, "validateStrWords": {}, "reviewEntries": { "title": "مراجعة المدخلات", - "sense": "معنى", - "noVernacular": "لا يوجد مدخلات عامية!", - "noDefinition": "لا يوجد إدخال تعاريف", - "noGloss": "لا إدخال لمعان", "noDomain": "لم يتم تحديد مجال", - "noNote": "لا توجد ملاحظة", "deleteWordWarning": "سيتم حذف هذه الكلمة بشكل دائم!", "deleteDisabled": "تم استيراد هذا مع بيانات لا يتعامل معها The Combine، لذلك قد لا يجوز حذفه.", "error": { - "gloss": "لا يمكن ترك اللمعان فارغة", - "domain": "لا يمكن ترك المجالات فارغة", + "gloss": "لا يمكن ترك التعليق فارغة", "senses": "لا يمكن حفظ إدخال بدون حواس", "vernacular": "لا يمكن ترك اللغة العامية فارغة" }, @@ -246,30 +226,15 @@ "delete": "حذف", "domains": "النطاقات", "flag": "عَلَم", - "glosses": "اللمعان", + "glosses": "تعليقات", "note": "ملاحظة", "partOfSpeech": "جزء من الكلام", "pronunciations": "النطق", "senses": "المعاني", "vernacular": "العامية" }, - "materialTable": { - "body": { - "edit": "تعديل", - "emptyDataSourceMessage": "لا توجد إدخالات لعرضها", - "filter": "فلتر" - }, - "pagination": { - "labelDisplayedRows": "{from}-{to} من أصل {count}", - "labelRows": "صفوف", - "labelRowsPerPage": "صفوف بالصفحة:", - "first": "الصفحة الأولى", - "last": "آخر صفحة", - "next": "الصفحة التالية", - "previous": "الصّفحة السابقة" - }, - "toolbar": { "search": "بحث" } - } + "completed": {}, + "undo": { "undoDisabled": "التراجع غير متوفر" } }, "charInventory": { "title": "إنشاء جرد الشخصية", @@ -281,58 +246,42 @@ "characterSet": { "title": "مجموعة أحرف اللغة العامية:", "help": "حدد الأحرف الصالحة لهذه اللغة", - "addButton": "إضافة حروف", - "addButtonTitle": "إضافة الأحرف في المربع إلى مجموعة الأحرف", - "deleteButton": "احذف المختار", - "deleteButtonTitle": "إزالة الأحرف المحددة من مجموعة الأحرف", "acceptedCharacters": "الأحرف المقبولة", "rejectedCharacters": "الشخصيات المرفوضة", - "noCharacters": "لا توجد أحرف بعد! اكتب الأحرف في المربع أدناه للبدء.", - "required": "إضافة أحرف عن طريق إدخالها في هذا المربع", "advanced": "إعدادات متقدمة", "occurrences": "{{ val }} مرات الحدوث", "find": "البحث", - "replace": "استبدال", "replaceWith": "استبدال بـ", "replaceAll": "استبدال جميع الحوادث: {{ val }}", "replaceAllWith": "استبدل بـ: {{ val }}", "findAndReplace": "بحث و استبدال&", - "findAndReplaceError": "خطأ في المعالجة: العثور على ( {{ val1 }} )، استبدال ( {{ val2 }})", + "findAndReplaceError": "خطأ في المعالجة: العثور على ( {{ val1 }} )، استبدال ( {{ val2 }} )", "apply": "تطبيق" }, - "sampleWords": { - "title": "كلمات بسيطة", - "description": "فيما يلي بعض الكلمات التي لا تتناسب مع مجموعة الأحرف الحالية:", - "ignore": "تجاهل هذه الكلمة الآن", - "add": "إضافة أحرف في هذه الكلمة إلى المجموعة" - }, "dialog": { "title": "التغييرات غير محفوظة", "content": "تجاهل التغييرات الخاصة بك في مجموعة الأحرف؟", "yes": "نعم", "no": "لا" }, - "changes": { - "noChanges": "لم يتم إجراء أي تغييرات هذه المرة.", - "more": "أكثر" - } + "changes": { "more": "أكثر" }, + "undo": { "undoDisabled": "التراجع غير متوفر" } }, "mergeDups": { "title": "دمج التكرارات", "helpText": { "dragCard": "اسحب بطاقة هنا للدمج", - "root": "اسحب الكلمات هنا لبدء دمجها", - "dups": "اسحب الكلمات المكررة هنا", - "sense": "اسحب حس جديد هنا", "saveAndContinue": "حفظ التغييرات وتحميل مجموعة جديدة من الكلمات", - "skip": "تجاهل التغييرات وتحميل مجموعة جديدة من الكلمات", - "list": "اسحب هذه الكلمة إلى اليمين لبدء دمجها مع كلمات أخرى", + "defer": "تجاهل التغييرات وتحميل مجموعة جديدة من الكلمات", "noDups": "لا يوجد شيء للدمج.", "delete": "حذف المعنى", "deleteDialog": "هل تريد حذف هذا المعنى ؟", - "protectedSense": "هذا المعنى تم استيراده مع بيانات لا يتعامل معها The Combine، لذلك لا يمكن حذفها أو إيداع بمعنى آخر. يمكنك نقل هذا المعنى إلى كلمة أخرى أو إيداع معاني أخرى لدمجها.", - "protectedWord": "تم استيراد هذه الكلمة مع بيانات لا يتعامل معها The Combine، لذلك لمنع الحذف، لا يمكن إزالة معناها النهائي." + "protectedSense": "هذا المعنى تم استيراده مع بيانات لا يتعامل معها The Combine.", + "protectedSenseInfo": "هذا المعنى لا يمكن حذفها أو إيداع بمعنى آخر. يمكنك نقل هذا المعنى إلى كلمة أخرى أو إيداع معاني أخرى لدمجها.", + "protectedWord": "تم استيراد هذه الكلمة مع بيانات لا يتعامل معها The Combine.", + "protectedWordInfo": "لمنع الحذف، لا يمكن إزالة معناها النهائي." }, + "protectReason": {}, "completed": { "number": "عدد عمليات الدمج المكتملة: " }, "continueDialog": { "title": "مواصلة الدمج؟", "yes": "نعم", "no": "لا" }, "undo": { @@ -345,8 +294,7 @@ "add": "إضافة علامة", "edit": "تعديل العلامة", "remove": "إزالة العلامة", - "save": "تسجيل العلامة", - "text": "النص: " + "save": "تسجيل العلامة" }, "buttons": { "accept": "يقبل", @@ -370,13 +318,13 @@ "restore": "إستعادة", "save": "حفظ", "saveAndContinue": "احفظ واستمر", - "skip": "تخطي", "undecided": "غير مقرّر", "upload": "رفع" }, "pronunciations": { "recordTooltip": "اضغط مع الاستمرار لتسجيل.", - "playTooltip": "اضغط للعب ، انقر فوق التحول للحذف.", + "playTooltip": "اضغط للعب.", + "deleteTooltip": "انقر فوق التحول للحذف.", "noMicAccess": "خطأ في التسجيل: تعذر الوصول إلى الميكروفون.", "deleteRecording": "حذف التسجيل" }, @@ -422,5 +370,6 @@ "Other": "آخر", "Unspecified": "غير محدد" } - } + }, + "wordCard": {} } diff --git a/public/locales/es/translation.json b/public/locales/es/translation.json index f8ca935052..1358edf0be 100644 --- a/public/locales/es/translation.json +++ b/public/locales/es/translation.json @@ -1,7 +1,7 @@ { "generic": { "404Title": "404: Página no encontrada", - "404Text": "Haga clic en The Combine para volver al inicio.", + "404Text": "Haga clic en la gente para volver al inicio.", "loadingTitle": "Cargando...", "loadingText": "Por favor, espere mientras The Combine procesa sus datos." }, @@ -29,11 +29,9 @@ "addNote": "Agregar una nota", "domain": "Dominio", "domainTitle": "Dominio: {{ val1 }} ({{ val2 }})", - "gloss": "Glosa", "glosses": "Glosas", "pressEnter": "Presione Enter para guardar la palabra", - "vernacular": "Vernáculo", - "wordInDatabase": "Esta palabra ya está en la base de datos" + "vernacular": "Vernáculo" }, "appBar": { "dataEntry": "Entrada de datos", @@ -61,12 +59,10 @@ "usernameRequirements": "El nombre de usuario debe tener 3 caracteres o más.", "usernameTaken": "Nombre de usuario no disponible.", "emailTaken": "Correo electrónico no disponible.", - "loggingIn": "Iniciando sesión...", "required": "Requerido", "confirmPassword": "Confirmar contraseña", "confirmPasswordError": "Las contraseñas no coinciden.", - "email": "Correo electrónico", - "emailError": "Por favor, ingrese un correo electrónico válida." + "email": "Correo electrónico" }, "passwordReset": { "invalidURL": "El enlace para restablecer la contraseña no es válido.", @@ -79,6 +75,10 @@ "resetDone": "Si ha introducido correctamente su dirección de correo electrónico o su nombre de usuario, se le habrá enviado un enlace para restablecer la contraseña.", "backToLogin": "Volver al inicio de sesión" }, + "speakerMenu": { + "none": "No hay locutores en el proyecto. Para adjuntar un locutor a las grabaciones de audio, habla con un administrador del proyecto.", + "other": "[Ninguna de los anteriores]" + }, "userMenu": { "siteSettings": "Configuración del sitio", "userSettings": "Configuración de usuario", @@ -124,13 +124,14 @@ "phone": "Número de teléfono", "uiLanguage": "Idioma de la interfaz de usuario", "uiLanguageDefault": "(Por defecto, el idioma del navegador)", - "updateSuccess": "Configuración actualizada correctamente." + "updateSuccess": "Configuración actualizada correctamente.", + "uploadAvatarTitle": "Establecer avatar de usuario" }, "projectExport": { "cannotExportEmpty": "El proyecto está vacío. No se puede exportar un proyecto sin palabras.", - "downloadInProgress": "Descarga en proceso", - "exportFailed": "Error al exportar", - "exportInProgress": "Exportación en curso" + "downloadInProgress": "Descargando proyecto: {{ val }}", + "exportFailed": "Error al exportar el proyecto {{ val }}. Haga clic para borrar este mensaje.", + "exportInProgress": "Exportando proyecto: {{ val }}" }, "projectSettings": { "project": "Proyecto:", @@ -143,13 +144,12 @@ "users": "Usuarios" }, "language": { - "header": "Idioma", "vernacular": "Vernáculo", "vernacularLanguage": "Idioma vernáculo", "analysis": "Análisis", "analysisLanguage": "Idioma de análisis", "semanticDomains": "Dominios semánticos", - "semanticDomainsDefault": "(Por defecto, el idioma del navegador)", + "semanticDomainsDefault": "(Por defecto, el idioma de la interfaz de usuario)", "languages": "Idiomas del proyecto", "bcp47": "Código BCP 47", "name": "Nombre", @@ -195,11 +195,28 @@ "manageUser": "Administrar usuario", "reverseOrder": "Orden inverso" }, + "speaker": { + "label": "Administrar locutores", + "add": "Añadir un locutor", + "enterName": "Introduzca el nombre de un nuevo locutor", + "nameEmpty": "El nombre del locutor está vacío", + "nameTaken": "El nombre del locutor ya está en uso en este proyecto", + "delete": "Borrar este locutor", + "edit": "Editar el nombre del locutor", + "consent": { + "add": "Añadir consentimiento para este locutor", + "record": "Grabar el consentimiento de audio", + "view": "Ver el consentimiento de imagen de este locutor", + "viewTitle": "Consentimiento para el locutor: {{ val }}", + "upload": "Subir consentimiento de la imagen", + "remove": "Eliminar el consentimiento de este locutor", + "warning": "Advertencia: se borrará el consentimiento actual del locutor; esto no se puede deshacer." + } + }, "import": { "header": "Importar datos", "body": "Los datos importados se añadirán a este proyecto. The Combine no hará ningún intento de deduplicar, sobrescribir o sincronizar.", "chooseFile": "Elegir archivo", - "done": "¡Hecho!", "notAllowed": "Ya ha importado un archivo Lift a este proyecto." }, "archive": { @@ -223,10 +240,6 @@ "on": "Encendido", "hint": "En la entrada de datos, sugiera las lenguas vernáculas existentes similares a la lengua vernácula que se está escribiendo." }, - "definitions": { - "label": "Mostrar definiciones", - "hint": "En Revisar Entradas, mostrar una columna de Definiciones; en Combinar Duplicados, mostrar la Definición debajo de la Glosa." - }, "invite": { "inviteByEmailLabel": "Invitar por correo electrónico", "userExists": "Este usuario ya está registrado.", @@ -234,14 +247,12 @@ "searchPlaceholder": "Buscar...", "searchTitle": "Buscar usuarios", "emailLabel": "Correo electrónico", - "messageLabel": "Mensaje", "toastSuccess": "Usuario agregado al proyecto.", "toastFail": "Error al agregar usuario al proyecto." } }, "goal": { "selector": { - "selectOption": "Selecciona este objectivo", "past": "Se completó:", "present": "Nuestra recomendación:", "other": "Otras opciones:", @@ -259,18 +270,15 @@ "validateStrWords": { "title": "Validar los caracteres estructurales" }, "reviewEntries": { "title": "Revisar entradas", - "sense": "Acepción", - "noVernacular": "¡No hay entrada vernácula!", - "noDefinition": "No hay definiciones", - "noGloss": "No hay entrada de glosas", + "allEntriesPerPageOption": "Todos", + "editSense": "Editar acepción", + "discardChanges": "Descartar los cambios?", "noDomain": "Ningún dominio seleccionado", "duplicateDomain": "Esta acepción ya tiene el dominio {{ val }}.", - "noNote": "Sin nota", "deleteWordWarning": "¡Esta palabra se eliminará permanentemente!", "deleteDisabled": "Se importó con datos que The Combine no maneja, por lo que no se puede eliminar.", "error": { "gloss": "Las glosas no pueden dejarse en blanco", - "domain": "Los dominios no pueden dejarse en blanco", "senses": "No se puede guardar una entrada sin acepciones", "vernacular": "El vernáculo no puede dejarse en blanco" }, @@ -278,30 +286,21 @@ "definitions": "Definiciones", "delete": "Eliminar", "domains": "Dominios", + "edit": "Editar", "flag": "Bandera", "glosses": "Glosas", "note": "Nota", "partOfSpeech": "Parte de la oración", "pronunciations": "Pronunciaciones", "senses": "Acepciones", + "sensesCount": "Número de acepciones", "vernacular": "Vernáculo" }, - "materialTable": { - "body": { - "edit": "Editar", - "emptyDataSourceMessage": "No hay entradas para mostrar", - "filter": "Filtro" - }, - "pagination": { - "labelDisplayedRows": "{from}-{to} de {count}", - "labelRows": "filas", - "labelRowsPerPage": "Filas por página:", - "first": "Primera página", - "last": "Última página", - "next": "Página siguiente", - "previous": "Página anterior" - }, - "toolbar": { "search": "Buscar" } + "completed": { "number": "Número de entradas editadas: " }, + "undo": { + "undo": "Deshacer edición", + "undoDialog": "¿Deshacer esta edición?", + "undoDisabled": "Deshacer no disponible" } }, "charInventory": { @@ -314,18 +313,11 @@ "characterSet": { "title": "Conjunto de caracteres vernáculos:", "help": "Define los caracteres que son válidos para este idioma", - "addButton": "Agregar caracteres", - "addButtonTitle": "Agregar los caracteres del cuadro al conjunto de caracteres", - "deleteButton": "Eliminar seleccionados", - "deleteButtonTitle": "Eliminar los caracteres seleccionados del conjunto de caracteres", "acceptedCharacters": "Caracteres aceptados", "rejectedCharacters": "Caracteres rechazados", - "noCharacters": "¡Todavía no hay caracteres! Escriba caracteres en el cuadro de abajo para empezar.", - "required": "Agrega caracteres ingresándolos en este cuadro", "advanced": "Avanzado", "occurrences": "{{ val }} ocurrencias", "find": "Buscar", - "replace": "Reemplazar", "replaceWith": "Reemplazar con", "replaceAll": "Reemplazar todas las ocurrencias de: {{ val }}", "replaceAllWith": "Reemplazar con: {{ val }}", @@ -333,12 +325,6 @@ "findAndReplaceError": "Error al procesar: encontrar ( {{ val1 }} ), reemplazar ( {{ val2 }})", "apply": "aplicar" }, - "sampleWords": { - "title": "Palabras de muestra", - "description": "Aquí hay algunas palabras que no se ajustan a su conjunto de caracteres actual:", - "ignore": "Ignorar esta palabra por ahora", - "add": "Agregar los caracteres de esta palabra al conjunto" - }, "dialog": { "title": "Cambios no guardados", "content": "¿Descartar sus cambios en el conjunto de caracteres?", @@ -346,25 +332,61 @@ "no": "no" }, "changes": { - "noChanges": "No se han realizado cambios en este objetivo.", - "more": "más" + "noCharChanges": "No se han realizado cambios en el inventario de caracteres.", + "more": "más", + "noWordChangesFindReplace": "No hay palabras cambiadas por buscar y reemblazar.", + "wordChanges": "Palabras cambiadas:", + "wordChangesWithStrings": "Palabras cambiadas ({{ val1 }} → {{ val2 }}):" + }, + "undo": { + "undo": "Deshacer buscar y reemblazar", + "undoDialog": "¿Deshacer cambios de palabras mediante buscar y reemplazar?", + "undoDisabled": "Deshacer no disponible", + "undoWords": "Deshacer disponible para {{ val1 }} de las {{ val2 }} palabras modificadas." } }, "mergeDups": { "title": "Combinar duplicados", "helpText": { "dragCard": "Arrastre una tarjeta aquí para combinarla", - "root": "Arrastra las palabras aquí para comenzar a combinarlas", - "dups": "Arrastra las palabras duplicadas aquí", - "sense": "Arrastra una nueva acepción aquí", "saveAndContinue": "Guardar los cambios y cargar un nuevo conjunto de palabras", "defer": "Descartar los cambios y cargar un nuevo conjunto de palabras", - "list": "Arrastre esta palabra hacia la derecha para comenzar a combinarla con otras palabras", "noDups": "No hay nada que combinar.", "delete": "Borrar la acepción", "deleteDialog": "¿Borrar esta acepción?", - "protectedSense": "Esta acepción fue importado con datos que The Combine no maneja, por lo que no puede ser borrado o añadido a otra acepción. Puede mover esta acepción a otra palabra o añadir otras acepciones a éste para combinarlos.", - "protectedWord": "Esta palabra se importó con datos que The Combine no maneja, por lo que para evitar que se borre, no se puede eliminar su acepción final." + "protectedSense": "Esta acepción fue importado con datos que The Combine no maneja.", + "protectedSenseInfo": "Esta acepción no puede ser borrado o añadido a otra acepción. Puede moverla a otra palabra o añadir otras acepciones a éste para combinarlos.", + "protectedWord": "Esta palabra se importó con datos que The Combine no maneja.", + "protectedWordInfo": "Para evitar que se borre, no se puede eliminar la acepción final de esa palabra.", + "protectedData": "Datos protegidos: {{ val }}" + }, + "protectReason": { + "annotations": "anotaciones", + "etymologies": "etimologías", + "examples": "ejemplos", + "field": "Campo \"{{ val }}\"", + "gramInfoTrait": "información gramatical \"{{ val }}\"", + "illustrations": "ilustraciones", + "noteWithType": "nota con tipo \"{{ val }}\"", + "notesSense": "notas", + "notesWord": "más de 1 nota", + "relations": "relaciones", + "reversal": "Reverso de \"{{ val }}\"", + "subsenses": "subacepciones", + "traitAnthroCode": "código de antro \"{{ val }}\"", + "traitDialectLabels": "etiquetas de dialecto \"{{ val }}\"", + "traitDomainType": "tipo de dominio \"{{ val }}\"", + "traitDoNotPublishIn": "no publicar en \"{{ val }}\"", + "traitDoNotUseForParsing": "no utilizar para el análisis \"{{ val }}\"", + "traitEntryType": "tipo de entrada \"{{ val }}\"", + "traitExcludeAsHeadword": "excluir como palabra clave", + "traitMinorEntryCondition": "condición de entrada menor \"{{ val }}\"", + "traitMorphType": "tipo morph \"{{ val }}\" (en lugar de \"stem\" predeterminado)", + "traitPublishIn": "publicar en \"{{ val }}\"", + "traitSenseType": "tipo de acepción \"{{ val }}\"", + "traitStatus": "estado \"{{ val }}\"", + "traitUsageType": "tipo de uso \"{{ val }}\"", + "variants": "variantes" }, "completed": { "number": "Número de combinaciones realizadas: " }, "continueDialog": { @@ -382,8 +404,7 @@ "add": "Añadir bandera", "edit": "Editar bandera", "remove": "Eliminar bandera", - "save": "Guardar bandera", - "text": "Texto: " + "save": "Guardar bandera" }, "buttons": { "accept": "Aceptar", @@ -413,7 +434,13 @@ }, "pronunciations": { "recordTooltip": "Mantenga presionado para grabar.", - "playTooltip": "Haz clic para reproducir; presiona Shift más clic para eliminar.", + "playTooltip": "Haz clic para reproducir.", + "deleteTooltip": "Presiona Shift más clic para eliminar.", + "protectedTooltip": "El audio importado no se puede borrar ni modificar.", + "speaker": "Locutor: {{ val }}.", + "speakerAdd": "Clic derecho para añadir un locutor.", + "speakerChange": "Clic derecho para cambiar de locutor.", + "speakerSelect": "Seleccionar locutor de esta grabación de audio", "noMicAccess": "Error de grabación: No se pudo acceder a un micrófono.", "deleteRecording": "Eliminar grabación" }, @@ -459,5 +486,12 @@ "Other": "Otra", "Unspecified": "No especificado" } + }, + "wordCard": { + "senseCount": "Acepciones: {{ val }}", + "wordId": "Id: {{ val }}", + "wordModified": "Modificado: {{ val }}", + "domainAdded": "Añadido: {{ val }}", + "user": "Por usuario: {{ val }}" } } diff --git a/public/locales/fr/translation.json b/public/locales/fr/translation.json index 8ab57c99d1..aeaa5394bc 100644 --- a/public/locales/fr/translation.json +++ b/public/locales/fr/translation.json @@ -1,7 +1,7 @@ { "generic": { "404Title": "Erreur 404 - Page non trouvée", - "404Text": "Cliquez sur la moissonneuse-batteuse pour revenir à la maison.", + "404Text": "Cliquez sur les personnes pour revenir à la maison.", "loadingTitle": "Chargement...", "loadingText": "Veuillez patienter pendant que The Combine traite vos données." }, @@ -22,22 +22,21 @@ "selectSense": "Choisissez un sens", "newEntryFor": "Nouvelle entrée pour : ", "newSenseFor": "Nouveau sens pour : ", - "senseInWord": "Le mot a déjà ce sens dans ce champ sémantique: {{ val1 }}, {{ val2 }}", + "senseInWord": "Le mot a déjà ce sens dans ce champ sémantique : {{ val1 }}, {{ val2 }}", "deleteRow": "Effacer cette ligne", "deleteRowWarning": "Cette ligne sera supprimée définitivement !", "addNote": "Ajouter une remarque", "domain": "Domaine", "domainTitle": "Champ : {{ val1 }} ({{ val2 }})", - "gloss": "Glose", "glosses": "Gloses", "pressEnter": "Appuyez sur Entrée pour enregistrer le mot", - "vernacular": "Vernaculaire", - "wordInDatabase": "Ce mot est déjà dans la base de données" + "vernacular": "Vernaculaire" }, "appBar": { "dataEntry": "Saisie", "dataCleanup": "Nettoyage des données", - "statistics": "Données statistiques" + "statistics": "Données statistiques", + "projectSettings": "Paramètres du projet" }, "invite": {}, "login": { @@ -54,16 +53,13 @@ "signUpNew": "Inscrire un nouvel utilisateur", "signUpSuccess": "Utilisateur créé avec succès", "signUpFailed": "Échec de l'inscription", - "usernameInvalid": "Ce nom d'utilisateur est trop court ou est déjà utilisé.", "usernameRequirements": "Le nom d'utilisateur doit contenir 3 caractères ou plus.", - "emailTaken": "Un utilisateur avec cet email existe déjà.", - "networkError": "Erreur réseau", - "loggingIn": "Se connecter...", + "usernameTaken": "Nom d'utilisateur non disponible.", + "emailTaken": "Email non disponible.", "required": "Requis", "confirmPassword": "Confirmer le mot de passe", "confirmPasswordError": "Les mots de passe ne correspondent pas.", - "email": "Email", - "emailError": "Veuillez entrer un email valide." + "email": "Email" }, "passwordReset": { "emailOrUsername": "Email ou nom d'utilisateur", @@ -74,6 +70,7 @@ "resetFail": "Erreur de réinitialisation du mot de passe", "backToLogin": "Retour au login" }, + "speakerMenu": {}, "userMenu": { "siteSettings": "Paramètres du site", "userSettings": "Réglages utilisateur", @@ -93,9 +90,10 @@ "projectList": "Projets", "archiveProjectText": "Ce projet ne sera accessible à aucun utilisateur.", "restoreProjectText": "Quelqu'un avait probablement une bonne raison d'archiver ce projet. Voulez-vous vraiment le restaurer ?", + "userList": "Utilisateurs", "deleteUser": { "confirm": "Confirmer la suppression d'un utilisateur de la base de données The Combine.", - "toastSuccess": "Utilisateur supprimé avec succès.", + "toastSuccess": "Utilisateur supprimé avec succès de The Combine.", "toastFailure": "Échec de la suppression de l'utilisateur de The Combine." }, "populateUsers": { @@ -114,21 +112,22 @@ "updateSuccess": "Les paramètres ont été mis à jour avec succès." }, "projectExport": { - "cannotExportEmpty": "Le projet est vide. On ne peut pas exporter un projet sans mots.", - "downloadInProgress": "Téléchargement en cours", - "exportFailed": "\t\nL'exportation a échoué", - "exportInProgress": "Exportation en cours" + "cannotExportEmpty": "Le projet est vide. On ne peut pas exporter un projet sans mots." }, "projectSettings": { + "project": "Projet :", + "tab": { + "export": "Exporter", + "languages": "Langues", + "users": "Utilisateurs" + }, "language": { - "header": "Langue", "vernacular": "Vernaculaire", "vernacularLanguage": "Langue vernaculaire", "analysis": "Analyse", "analysisLanguage": "Langue d'analyse", "semanticDomains": "Champs sémantiques", - "semanticDomainsDefault": "(Utiliser la langue du navigateur)", - "languages": "Langues", + "languages": "Langues du projet", "bcp47": "Code BCP 47", "name": "Nom", "font": "Police", @@ -158,11 +157,11 @@ "manageUser": "Gérer l'utilisateur", "reverseOrder": "Ordre inverse" }, + "speaker": { "consent": {} }, "import": { "header": "Importer des données", "body": "Les données importées seront ajoutées à ce projet. The Combine ne tentera pas de dédupliquer, d'écraser ou de synchroniser les données.", "chooseFile": "Choisir un fichier", - "done": "Achevé!", "notAllowed": "Vous avez déjà importé un fichier LIFT dans ce projet." }, "archive": { @@ -186,10 +185,6 @@ "on": "Allumé", "hint": "En mode « Saisie », proposer des mots vernaculaires existants qui se ressemblent au mot que l'on est en train de saisir." }, - "definitions": { - "label": "Afficher les définitions", - "hint": "En mode « Examiner les Entrées », afficher une colonne pour Définitions ; en mode « Fusionner les Doublons », afficher la Définition sous la Glose." - }, "invite": { "inviteByEmailLabel": "Inviter par email", "userExists": "Cet utilisateur est déjà enregistré.", @@ -197,14 +192,12 @@ "searchPlaceholder": "Chercher...", "searchTitle": "Rechercher utilisateurs", "emailLabel": "Email", - "messageLabel": "Message", "toastSuccess": "Utilisateur ajouté au projet.", "toastFail": "Échec de l'ajout de l'utilisateur au projet." } }, "goal": { "selector": { - "selectOption": "Sélectionnez cet objectif", "past": "Vous avez terminé :", "present": "Notre recommandation :", "other": "Autres options :", @@ -216,22 +209,17 @@ }, "createStrWordInv": { "title": "Créer un inventaire des mots grammaticaux" }, "handleFlags": { "title": "Gérer les drapeaux" }, - "spellCheckGloss": { "title": "Vérifier l'orthographe du glossaire" }, + "reviewDeferredDups": {}, + "spellCheckGloss": { "title": "Vérifier l'orthographe de glose" }, "validateChars": { "title": "Valider les caractères" }, - "validateStrWords": { "title": "Valider les caractères structurels" }, + "validateStrWords": { "title": "Valider les mots grammaticaux" }, "reviewEntries": { "title": "Examiner les entrées", - "sense": "Sens", - "noVernacular": "Pas d'entrée vernaculaire !", - "noDefinition": "Aucune entrée de définition", - "noGloss": "Pas d'entrée de gloses", "noDomain": "Aucun champ sémantique sélectionné", - "noNote": "Pas de note", "deleteWordWarning": "Ce mot sera définitivement supprimé !", "deleteDisabled": "Ceci a été importé avec des données que The Combine ne traite pas ; il ne peut donc pas être supprimé.", "error": { "gloss": "Les gloses ne peuvent pas être laissés vides", - "domain": "Les domaines ne peuvent pas être laissés vides", "senses": "Ne pas enregistrer entrée sans sens", "vernacular": "Le vernaculaire ne peut pas être laissé vide" }, @@ -246,23 +234,8 @@ "senses": "Sens", "vernacular": "Vernaculaire" }, - "materialTable": { - "body": { - "edit": "Modifier", - "emptyDataSourceMessage": "Aucune entrée à afficher", - "filter": "Filtrer" - }, - "pagination": { - "labelDisplayedRows": "{from}-{to} de {count}", - "labelRows": "rangées", - "labelRowsPerPage": "Rangées par page :", - "first": "Première page", - "last": "Dernière page", - "next": "Page Suivante", - "previous": "Page Précédente" - }, - "toolbar": { "search": "Rechercher" } - } + "completed": {}, + "undo": { "undoDisabled": "Annuler indisponible" } }, "charInventory": { "title": "Créer un inventaire de caractères", @@ -274,56 +247,41 @@ "characterSet": { "title": "Jeu de caractères vernaculaires :", "help": "Définir les caractères valides pour cette langue", - "addButton": "Ajouter des caractères", - "addButtonTitle": "Ajouter les caractères de la boîte au jeu de caractères", - "deleteButton": "Supprimer Sélectionné", - "deleteButtonTitle": "Supprimer les caractères sélectionnés du jeu de caractères", "acceptedCharacters": "Caractères approuvés", "rejectedCharacters": "Caractères rejetés", - "noCharacters": "Aucun caractère existe. Tapez les caractères dans la case ci-dessous pour commencer.", - "required": "Ajouter des caractères en les saisissant dans cette case", "advanced": "Avancé", "occurrences": "{{ val }} occurrences", "find": "Rechercher", - "replace": "Remplacer", "replaceWith": "Remplacé par", - "replaceAll": "Remplacer toute instance de: {{ val }}", + "replaceAll": "Remplacer toute instance de : {{ val }}", + "replaceAllWith": "Remplacer par : {{ val }}", "findAndReplace": "Rechercher et Remplacer", "apply": "appliquer" }, - "sampleWords": { - "title": "Exemples de mots", - "description": "Voici quelques mots qui ne correspondent pas à votre jeu de caractères actuel :", - "ignore": "Ignorer ce mot pour l'instant", - "add": "Ajouter les caractères dans ce mot au jeu" - }, "dialog": { "title": "Modifications non sauvegardées", "content": "Supprimer les modifications apportées au jeu de caractères ?", "yes": "oui", "no": "non" }, - "changes": { - "noChanges": "Aucune modification apportée à cet objectif.", - "more": "plus" - } + "changes": { "more": "plus" }, + "undo": { "undoDisabled": "Annuler indisponible" } }, "mergeDups": { "title": "Fusionner les doublons", "helpText": { "dragCard": "Tirer une carte ici pour la fusionner", - "root": "Faites glisser les mots ici pour commencer à les fusionner", - "dups": "Faites glisser les mots en double ici", - "sense": "Faites glisser un nouveau sens ici", "saveAndContinue": "Sauvegarder les modifications et charger un nouvel ensemble de mots", - "skip": "Rejeter les modifications et charger un nouvel ensemble de mots", - "list": "Faites glisser ce mot vers la droite pour commencer à le fusionner avec d'autres mots", + "defer": "Rejeter les modifications et charger un nouvel ensemble de mots", "noDups": "Rien à fusionner.", "delete": "Supprimer le sens", "deleteDialog": "Supprimer ce sens ?", - "protectedSense": "Ce sens a été importé avec des données que The Combine ne gère pas, il ne peut donc pas être supprimé ou déposé dans un autre sens. Vous pouvez toujours déplacer ce sens vers un autre mot ou déposer d'autres sens dans celui-ci pour les fusionner.", - "protectedWord": "Ce mot a été importé avec des données que The Combine ne traite pas. Pour éviter qu'il ne soit supprimé, son sens final ne peut être supprimé." + "protectedSense": "Ce sens a été importé avec des données que The Combine ne gère pas.", + "protectedSenseInfo": "Ce sens ne peut donc pas être supprimé ou déposé dans un autre sens. Vous pouvez toujours déplacer ce sens vers un autre mot ou déposer d'autres sens dans celui-ci pour les fusionner.", + "protectedWord": "Ce mot a été importé avec des données que The Combine ne traite pas.", + "protectedWordInfo": "Pour éviter qu'il ne soit supprimé, le sens final de ce mot ne peut être supprimé." }, + "protectReason": {}, "completed": { "number": "Nombre de fusions réalisées : " }, "continueDialog": { "title": "Poursuivre la fusion ?", @@ -333,15 +291,14 @@ "undo": { "undo": "Annuler la fusion", "undoDialog": "Annuler cette fusion ?", - "undoDisabled": "Annuler Indisponible" + "undoDisabled": "Annuler indisponible" } }, "flags": { "add": "Ajouter une balise", "edit": "Editer la balise", "remove": "Retirer la balise", - "save": "Enregistrer la balise", - "text": "Texte : " + "save": "Enregistrer la balise" }, "buttons": { "accept": "Accepter", @@ -358,20 +315,20 @@ "exit": "Quitter", "export": "Exporter", "invite": "Inviter", - "proceedWithCaution": "Procédez avec prudence!", + "proceedWithCaution": "Procédez avec prudence !", "reject": "Rejeter", "rejected": "Rejeté", "reset": "Remise à zéro", "restore": "Restaurer", "save": "Enregistrer", "saveAndContinue": "Enregistrer & continuez", - "skip": "Sauter", "undecided": "Incertain", "upload": "Télécharger" }, "pronunciations": { "recordTooltip": "Maintenez le bouton enfoncée pour enregistrer.", - "playTooltip": "Appuyez sur pour lire, Maj + clic pour effacer.", + "playTooltip": "Appuyez sur pour lire.", + "deleteTooltip": "Maj + clic pour effacer.", "noMicAccess": "Erreur d'enregistrement : Impossible d'accéder à un microphone.", "deleteRecording": "Effacer enregistrement" }, @@ -413,5 +370,6 @@ "ProForm": "Proforme", "Verb": "Verbe" } - } + }, + "wordCard": {} } diff --git a/public/locales/pt/translation.json b/public/locales/pt/translation.json index 0838d661c9..107be5ba77 100644 --- a/public/locales/pt/translation.json +++ b/public/locales/pt/translation.json @@ -1,7 +1,7 @@ { "generic": { "404Title": "404: Página não encontrada", - "404Text": "Clique em The Combine para voltar à página inicial.", + "404Text": "Clique na gente para voltar à página inicial.", "loadingTitle": "Carregando...", "loadingText": "Por favor aguarde enquanto The Combine processa seus dados." }, @@ -28,11 +28,9 @@ "addNote": "Adicionar uma nota", "domain": "Domínio", "domainTitle": "Domínio: {{ val1 }} ({{ val2 }})", - "gloss": "Glosa", "glosses": "Glosas", "pressEnter": "Pressione enter para salvar a palavra", - "vernacular": "Vernáculo", - "wordInDatabase": "Esta palavra já está no banco de dados" + "vernacular": "Vernáculo" }, "appBar": { "dataEntry": "Entrada de dados", @@ -55,16 +53,13 @@ "signUpNew": "Cadastrar Novo Usuário", "signUpSuccess": "Usuário Criado", "signUpFailed": "Falha no cadastro", - "usernameInvalid": "O nome de usuário é muito curto ou já está ocupado.", "usernameRequirements": "O nome de usuário deve ter 3 caracteres ou mais.", - "emailTaken": "Já existe um usuário com esse endereço de e-mail.", - "networkError": "Erro de rede", - "loggingIn": "Fazendo login...", + "usernameTaken": "Nome de usuário não disponível.", + "emailTaken": "Endereço de e-mail não disponível.", "required": "Obrigatório", "confirmPassword": "Confirmar Senha", "confirmPasswordError": "As senhas não combinam.", - "email": "E-mail", - "emailError": "Por favor, insira um e-mail válido." + "email": "E-mail" }, "passwordReset": { "emailOrUsername": "E-mail OU Nome de usuário", @@ -75,6 +70,7 @@ "resetFail": "Erro de redefinição de senha", "backToLogin": "Voltar para Login" }, + "speakerMenu": {}, "userMenu": { "siteSettings": "Configurações do site", "userSettings": "Configurações de Usuário", @@ -95,6 +91,7 @@ "projectList": "Projetos", "archiveProjectText": "Este projeto não será acessível a nenhum utilizador.", "restoreProjectText": "Alguém provavelmente tinha uma boa razão para arquivar este projeto. Tens a certeza que o queres restaurar?", + "userList": "Usuários", "deleteUser": { "confirm": "Confirmar exclusão de usuário do banco de dados de The Combine.", "toastSuccess": "Usuário excluído com sucesso de The Combine.", @@ -110,25 +107,28 @@ } }, "userSettings": { + "uiLanguage": "Idioma da interface", "uiLanguageDefault": "(Definir o idioma do navegador como padrão)", "updateSuccess": "Configurações atualizadas com sucesso." }, "projectExport": { - "cannotExportEmpty": "O projeto está vazio. Não é possível exportar um projeto sem palavras.", - "downloadInProgress": "Download em progresso", - "exportFailed": "A exportação falhou", - "exportInProgress": "Exportação em curso" + "cannotExportEmpty": "O projeto está vazio. Não é possível exportar um projeto sem palavras." }, "projectSettings": { + "project": "Projeto:", + "tab": { + "export": "Exportar", + "languages": "Idiomas", + "users": "Usuários" + }, "language": { - "header": "Idioma", "vernacular": "Vernáculo", "vernacularLanguage": "Língua Vernacular", "analysis": "Análise", "analysisLanguage": "Linguagem de Análise", "semanticDomains": "Domínios Semânticos", - "semanticDomainsDefault": "(Definir o idioma do navegador como padrão)", - "languages": "Idiomas", + "semanticDomainsDefault": "(Definir o idioma da interface)", + "languages": "Idiomas do projeto", "bcp47": "Código BCP 47", "name": "Nome", "font": "Fonte", @@ -146,7 +146,7 @@ "currentUsers": "Usuários atuais", "addUser": "Adicionar usuário" }, - "roles": {}, + "roles": { "editor": "Editor", "administrator": "Administrador" }, "userManagement": { "removeUserWarning": "Remover esse usuário do projeto?", "makeAdminWarning": "Definir este usuário como administrador de projeto?", @@ -158,11 +158,11 @@ "manageUser": "Gerenciar Usuário", "reverseOrder": "Ordem Reversa" }, + "speaker": { "consent": {} }, "import": { "header": "Importar Dados", "body": "Os dados importados serão adicionados a este projeto. The Combine não tentará deduplicar, sobrescrever ou sincronizar.", "chooseFile": "Escolha Arquivo", - "done": "Concluído!", "notAllowed": "Você já importou um arquivo Lift para este projeto." }, "archive": { @@ -177,10 +177,6 @@ "on": "Ativado", "hint": "Na Entrada de Dados, o programa irá sugerir verbetes existentes que são similares ao verbete no vernáculo que está sendo digitado." }, - "definitions": { - "label": "Exibir Definições", - "hint": "Em Revisar Verbetes, exibir uma coluna de Definições; em Mesclar Duplicações, exibir a Definição abaixo da Glosa." - }, "invite": { "inviteByEmailLabel": "Convidar por e-mail", "userExists": "Esse usuário já está registrado.", @@ -188,14 +184,12 @@ "searchPlaceholder": "Procurar...", "searchTitle": "Encontrar usuários", "emailLabel": "E-mail", - "messageLabel": "Mensagem", "toastSuccess": "Adicionado usuário do projeto.", "toastFail": "Falha ao adicionar usuário ao projeto." } }, "goal": { "selector": { - "selectOption": "Selecionar esta meta", "past": "Você concluiu:", "present": "Nossa recomendação:", "other": "Outras opções:", @@ -206,21 +200,16 @@ }, "createStrWordInv": { "title": "Criar Inventário de Palavra Estrutural" }, "handleFlags": { "title": "Bandeiras de identificadores" }, + "reviewDeferredDups": {}, "spellCheckGloss": { "title": "Verificar Ortografia do Glossário" }, "validateChars": { "title": "Validar Caracteres" }, "validateStrWords": { "title": "Validar os Caracteres Estruturais" }, "reviewEntries": { "title": "Revisar Verbetes", - "sense": "Sentido", - "noVernacular": "Nenhuma entrada do vernáculo!", - "noDefinition": "Esta definição está vazia", - "noGloss": "Nenhuma entrada de glosas", "noDomain": "Nenhum domínio selecionado", - "noNote": "Nenhuma nota", "deleteWordWarning": "Esta palavra será apagada permanentemente!", "error": { "gloss": "As glosas não podem ser deixadas em branco", - "domain": "Os domínios não podem ser deixados em branco", "senses": "Não é possível salvar uma entrada sem sentidos", "vernacular": "O vernáculo não pode ser deixado em branco" }, @@ -235,18 +224,8 @@ "senses": "Sentidos", "vernacular": "Vernáculo" }, - "materialTable": { - "body": {}, - "pagination": { - "labelDisplayedRows": "{from}-{to} de {count}", - "labelRows": "linhas", - "labelRowsPerPage": "Linhas por página:", - "first": "Primeira página", - "last": "Última página", - "previous": "Página anterior" - }, - "toolbar": {} - } + "completed": {}, + "undo": { "undoDisabled": "Desfazer indisponível" } }, "charInventory": { "title": "Criar Inventário de Caracteres", @@ -258,55 +237,36 @@ "characterSet": { "title": "Conjunto de Caracteres do Vernáculo:", "help": "Definir os caracteres que são válidos para este idioma", - "addButton": "Adicionar Caracteres", - "addButtonTitle": "Adicionar os caracteres da caixa ao conjunto de caracteres", - "deleteButton": "Excluir Selecionados", - "deleteButtonTitle": "Remover os caracteres selecionados do conjunto de caracteres", "acceptedCharacters": "Caracteres Aceitos", "rejectedCharacters": "Caracteres Rejeitados", - "noCharacters": "Nenhum caractere ainda! Digite os caracteres na caixa abaixo para começar.", - "required": "Adicionar caracteres, digitando nesta caixa", "advanced": "Avançado", "occurrences": "{{ val }} ocorrências", "find": "Localizar", - "replace": "Substituir", "replaceWith": "Substituir por", "replaceAll": "Substituir todas as ocorrências de: {{ val }}", "replaceAllWith": "Substituir por: {{ val }}", "findAndReplace": "Localizar & Substituir", "apply": "aplicar" }, - "sampleWords": { - "title": "Palavras de Exemplo", - "description": "Aqui estão algumas palavras que não se encaixam no seu conjunto atual de caracteres:", - "ignore": "Ignorar esta palavra por enquanto", - "add": "Adicionar os caracteres desta palavra ao conjunto" - }, "dialog": { "title": "Alterações não salvas", "content": "Descartar alterações feitas no conjunto de caracteres?", "yes": "sim", "no": "não" }, - "changes": { - "noChanges": "Não foram feitas alterações neste objetivo.", - "more": "mais" - } + "changes": { "more": "mais" }, + "undo": { "undoDisabled": "Desfazer indisponível" } }, "mergeDups": { "title": "Mesclar Duplicações", "helpText": { "dragCard": "Arraste um cartão aqui para mesclar", - "root": "Arrastar as palavras aqui para começar a mesclar", - "dups": "Arrastar palavras duplicadas aqui", - "sense": "Arrastar novo sentido aqui", "saveAndContinue": "Salvar alterações e carregar um novo conjunto de palavras", - "skip": "Descartar alterações e carregar um novo conjunto de palavras", - "list": "Arrastar esta palavra para a direita para começar a mesclar com outras palavras", "noDups": "Nada para mesclar.", "delete": "Excluir o significado", "deleteDialog": "Excluir este o significado?" }, + "protectReason": {}, "completed": { "number": "Número de fusões concluídas: " }, "continueDialog": { "title": "Continuar a mesclagem?", @@ -316,15 +276,14 @@ "undo": { "undo": "Desfazer Mesclar", "undoDialog": "Desfazer esta mesclagem?", - "undoDisabled": "Desfazer Indisponível" + "undoDisabled": "Desfazer indisponível" } }, "flags": { "add": "Adicionar sinalização", "edit": "Editar sinalização", "remove": "Remover sinalização", - "save": "Salvar sinalização", - "text": "Texto: " + "save": "Salvar sinalização" }, "buttons": { "accept": "Aceitam", @@ -348,20 +307,24 @@ "restore": "Restaurar", "save": "Salvar", "saveAndContinue": "Salvar & Continuar", - "skip": "Pular", "undecided": "Indeterminado", "upload": "Carregar" }, "pronunciations": { "recordTooltip": "Pressione e segure para gravar.", - "playTooltip": "Pressione para reproduzir, clique em shift para excluir.", + "playTooltip": "Pressione para reproduzir.", + "deleteTooltip": "Clique em shift para excluir.", "noMicAccess": "Erro de gravação: Não foi possível acessar um microfone.", "deleteRecording": "Eliminar Gravação" }, "statistics": { "title": "Estatísticas de dados: {{ val }}", "percent": "{{ val }}%", - "view": {}, + "view": { + "user": "Palavras por usuário", + "domain": "Palavras por domínio", + "day": "Palavras por dia" + }, "column": { "domainNumber": "Número de domínio:", "domainName": "Nome de domínio:", @@ -390,5 +353,6 @@ "ProForm": "Proforma", "Verb": "Verbo" } - } + }, + "wordCard": { "senseCount": "Sentidos: {{ val }}", "wordId": "Id: {{ val }}" } } diff --git a/public/locales/zh/translation.json b/public/locales/zh/translation.json index 10d11c157a..7fbd2013f6 100644 --- a/public/locales/zh/translation.json +++ b/public/locales/zh/translation.json @@ -1,7 +1,7 @@ { "generic": { "404Title": "404 您访问的页面不存在", - "404Text": "点击 The Combine 返回主页面。", + "404Text": "点击人员返回主页面。", "loadingTitle": "正在加载...", "loadingText": "The Combine 正在处理您的数据,请稍后。" }, @@ -29,11 +29,9 @@ "addNote": "添加备注", "domain": "语义域", "domainTitle": "语义域: {{ val1 }} ({{ val2 }})", - "gloss": "注释", "glosses": "词注释", "pressEnter": "按回车键保存单词", - "vernacular": "土语", - "wordInDatabase": "这个词已经在数据库中" + "vernacular": "土语" }, "appBar": { "dataEntry": "输入数据", @@ -59,12 +57,10 @@ "usernameRequirements": "用户名必须是3个字符或以上。", "usernameTaken": "用户名不可用。", "emailTaken": "电子邮件地址不可用。", - "loggingIn": "正在登录...", "required": "必填", "confirmPassword": "确认密码", "confirmPasswordError": "密码不匹配!", - "email": "电子邮件", - "emailError": "请输入有效的电子邮件" + "email": "电子邮件" }, "passwordReset": { "invalidURL": "密码重置链接无效。", @@ -77,6 +73,7 @@ "resetDone": "如果您正确输入了电子邮件或用户名,您的电子邮件地址将收到密码重置链接。", "backToLogin": "返回登录" }, + "speakerMenu": {}, "userMenu": { "siteSettings": "网站设置", "userSettings": "用户设置", @@ -123,10 +120,7 @@ "updateSuccess": "设置已更新。" }, "projectExport": { - "cannotExportEmpty": "项目为空。您不能导出没有单词的项目。", - "downloadInProgress": "正在下载......", - "exportFailed": "导出失败", - "exportInProgress": "正在导出" + "cannotExportEmpty": "项目为空。您不能导出没有单词的项目。" }, "projectSettings": { "project": "项目:", @@ -139,13 +133,12 @@ "users": "用户" }, "language": { - "header": "语言", "vernacular": "土语", "vernacularLanguage": "土语语言", "analysis": "分析", "analysisLanguage": "分析语言", "semanticDomains": "语义域", - "semanticDomainsDefault": "(把浏览器语言设置为默认)", + "semanticDomainsDefault": "(把用户界面语言设置为默认)", "languages": "项目语言", "bcp47": "BCP 47 代码", "name": "名称", @@ -186,11 +179,11 @@ "manageUser": "管理用户帐户", "reverseOrder": "倒序" }, + "speaker": { "consent": {} }, "import": { "header": "导入数据", "body": "导入的数据将被添加到此项目。The Combine 不会尝试删除重复、覆盖或同步。", "chooseFile": "选择文件", - "done": "完成!", "notAllowed": "您已经把 Lift 文件导入到这个项目中。" }, "archive": { "archive": "存档项目", "archiveToastSuccess": "项目已存档!" }, @@ -211,10 +204,6 @@ "on": "开启", "hint": "在数据输入中,程序将建议与正在输入的土语词条相似的现有词条。" }, - "definitions": { - "label": "显示定义", - "hint": "在检查词条中,显示定义列;在合并重复项中,在注释下面显示定义。" - }, "invite": { "inviteByEmailLabel": "通过电子邮件邀请", "userExists": "此用户已注册!", @@ -222,14 +211,12 @@ "searchPlaceholder": "搜索...", "searchTitle": "查找用户", "emailLabel": "电子邮件", - "messageLabel": "留言内容", "toastSuccess": "用户添加到项目中", "toastFail": "无法将用户添加到项目" } }, "goal": { "selector": { - "selectOption": "选择此目标", "past": "您已经完成了:", "present": "我们的建议是:", "other": "其他选项:", @@ -247,17 +234,11 @@ "validateStrWords": { "title": "验证结构词" }, "reviewEntries": { "title": "检查词条", - "sense": "词义", - "noVernacular": "没有土语输入!", - "noDefinition": "此定义为空", - "noGloss": "没有词注释输入", "noDomain": "未选择语义域", - "noNote": "没有备注", "deleteWordWarning": "该词会被永久删除!", "deleteDisabled": "这词项是跟 The Combine 不处理的数据导入的,所以它不能被删除。", "error": { "gloss": "词注释的字段不能留空", - "domain": "语义域不能留空", "senses": "无法保存无词义的词条", "vernacular": "土语字段不能留空" }, @@ -273,23 +254,8 @@ "senses": "词义", "vernacular": "土语" }, - "materialTable": { - "body": { - "edit": "编辑", - "emptyDataSourceMessage": "没有可显示的条目", - "filter": "筛选器" - }, - "pagination": { - "labelDisplayedRows": "{{count}} 项的第{{from}}-{{to}} 项", - "labelRows": "行", - "labelRowsPerPage": "每页行数:", - "first": "第一页", - "last": "最后一页", - "next": "下一页", - "previous": "上一页" - }, - "toolbar": { "search": "搜寻" } - } + "completed": {}, + "undo": { "undoDisabled": "撤销不可用" } }, "charInventory": { "title": "创建字符库存", @@ -301,18 +267,11 @@ "characterSet": { "title": "土语字符集", "help": "定义该语言的有效字符", - "addButton": "添加字符", - "addButtonTitle": "把框中的字符添加到字符集中", - "deleteButton": "删除所选的", - "deleteButtonTitle": "从字符集中删除所选的字符", "acceptedCharacters": "已审核的字符", "rejectedCharacters": "已拒绝的字符", - "noCharacters": "还没有字符!请在下面的框中输入字符以开始。", - "required": "为了添加字符,在这框中输入字符", "advanced": "高级", "occurrences": "出现{{ val }}次数", "find": "查找", - "replace": "替换", "replaceWith": "替换为", "replaceAll": "替换所有出现的: {{ val }}", "replaceAllWith": "替换为 {{ val }}", @@ -320,36 +279,30 @@ "findAndReplaceError": "处理错误:查找 ( {{ val1 }} ),替换 ( {{ val2 }})", "apply": "实施" }, - "sampleWords": { - "title": "例词", - "description": "以下是一些不适合您当前字符库存的单词:", - "ignore": "先别管这个词", - "add": "把出现在这词中的字符添加到库存中" - }, "dialog": { "title": "未保存的更改", "content": "放弃对字符集的更改?", "yes": "是", "no": "否" }, - "changes": { "noChanges": "在此目标中未进行更改。", "more": "更多" } + "changes": { "more": "更多" }, + "undo": { "undoDisabled": "撤销不可用" } }, "mergeDups": { "title": "合并重复项", "helpText": { "dragCard": "将卡片拖到此处进行合并。", - "root": "把词拖到这里与这词合并", - "dups": "把重复项拖动到这里", - "sense": "把新词义拖动到这里", "saveAndContinue": "保存更改并加载一组新单词", "defer": "放弃更改并加载一组新单词", - "list": "把这个词拖往右边与其他词合并", "noDups": "没有什么可合并的。", "delete": "删除词义", "deleteDialog": "是否删除该词义?", - "protectedSense": "这个词义是跟 The Combine 不处理的数据一起导入的,所以它不能被删除或者拖放入另一个词义中。您仍然可以移动这个词义,或者把其他词义拖放入这个词义中来合并它们。", - "protectedWord": "这个词是跟 The Combine 不处理的数据一起导入的,所以为了防止删除,它的最终词义不能被删除。" + "protectedSense": "这个词义是跟 The Combine 不处理的数据一起导入的。", + "protectedSenseInfo": "这个词义它不能被删除或者拖放入另一个词义中。您仍然可以移动这个词义,或者把其他词义拖放入这个词义中来合并它们。", + "protectedWord": "这个词是跟 The Combine 不处理的数据一起导入的。", + "protectedWordInfo": "为了防止删除,它的最终词义不能被删除。" }, + "protectReason": {}, "completed": { "number": "已完成的合并次数: " }, "continueDialog": { "title": "是否继续合并?", "yes": "是", "no": "否" }, "undo": { @@ -362,8 +315,7 @@ "add": "添加标志", "edit": "编辑标志", "remove": "移除标志", - "save": "保存标志", - "text": "文本: " + "save": "保存标志" }, "buttons": { "accept": "审核", @@ -393,7 +345,8 @@ }, "pronunciations": { "recordTooltip": "长按红色按钮,进行录制", - "playTooltip": "单击来播放,按 上档 (Shift) 并单击来删除。", + "playTooltip": "单击来播放。", + "deleteTooltip": "按 上档 (Shift) 并单击来删除。", "noMicAccess": "录制错误:无法使用话筒。", "deleteRecording": "删除录音" }, @@ -439,5 +392,6 @@ "Other": "其它", "Unspecified": "没有指定" } - } + }, + "wordCard": {} }