Update tl

This commit is contained in:
Yokayo 2024-09-28 20:47:37 +07:00
parent 578fc8e6f1
commit bb76649478
5 changed files with 69 additions and 23 deletions

View File

@ -3275,7 +3275,7 @@
<label> <label>
<small> <small>
<span data-i18n="Activation Regex">Activation Regex</span> <span data-i18n="Activation Regex">Activation Regex</span>
<span class="fa-solid fa-circle-question" title="When connecting to an API or choosing a model, automatically activate this Instruct Template if the model name matches the provided regular expression."></span> <span class="fa-solid fa-circle-question" data-i18n="[title]instruct_template_activation_regex_desc" title="When connecting to an API or choosing a model, automatically activate this Instruct Template if the model name matches the provided regular expression."></span>
</small> </small>
</label> </label>
<div> <div>
@ -3316,7 +3316,7 @@
</h4> </h4>
<!-- We keep one auto-open so the user would know what is going on in the picked template --> <!-- We keep one auto-open so the user would know what is going on in the picked template -->
<details open> <details open>
<summary>User Message Sequences</summary> <summary data-i18n="User Message Sequences">User Message Sequences</summary>
<div class="flex-container"> <div class="flex-container">
<div class="flexAuto" title="Inserted before a User message and as a last prompt line when impersonating." data-i18n="[title]Inserted before a User message and as a last prompt line when impersonating."> <div class="flexAuto" title="Inserted before a User message and as a last prompt line when impersonating." data-i18n="[title]Inserted before a User message and as a last prompt line when impersonating.">
<small data-i18n="User Prefix">User Message Prefix</small> <small data-i18n="User Prefix">User Message Prefix</small>
@ -3329,7 +3329,7 @@
</div> </div>
</details> </details>
<details open> <details open>
<summary>Assistant Message Sequences</summary> <summary data-i18n="Assistant Message Sequences">Assistant Message Sequences</summary>
<div class="flex-container"> <div class="flex-container">
<div class="flexAuto" title="Inserted before an Assistant message and as a last prompt line when generating an AI reply." data-i18n="[title]Inserted before an Assistant message and as a last prompt line when generating an AI reply."> <div class="flexAuto" title="Inserted before an Assistant message and as a last prompt line when generating an AI reply." data-i18n="[title]Inserted before an Assistant message and as a last prompt line when generating an AI reply.">
<small data-i18n="Assistant Prefix">Assistant Message Prefix</small> <small data-i18n="Assistant Prefix">Assistant Message Prefix</small>
@ -3342,7 +3342,7 @@
</div> </div>
</details> </details>
<details> <details>
<summary>System Message Sequences</summary> <summary data-i18n="System Message Sequences">System Message Sequences</summary>
<div class="flex-container"> <div class="flex-container">
<div class="flexAuto" id="instruct_system_sequence_block" title="Inserted before a System (added by slash commands or extensions) message." data-i18n="[title]Inserted before a System (added by slash commands or extensions) message."> <div class="flexAuto" id="instruct_system_sequence_block" title="Inserted before a System (added by slash commands or extensions) message." data-i18n="[title]Inserted before a System (added by slash commands or extensions) message.">
<small data-i18n="System Prefix">System Message Prefix</small> <small data-i18n="System Prefix">System Message Prefix</small>
@ -3361,7 +3361,7 @@
</div> </div>
</details> </details>
<details> <details>
<summary>System Prompt Sequences</summary> <summary data-i18n="System Prompt Sequences">System Prompt Sequences</summary>
<div class="flex-container"> <div class="flex-container">
<div class="flexAuto" title="Inserted before a System prompt." data-i18n="[title]Inserted before a System prompt."> <div class="flexAuto" title="Inserted before a System prompt." data-i18n="[title]Inserted before a System prompt.">
<label for="instruct_system_sequence_prefix"> <label for="instruct_system_sequence_prefix">
@ -4125,7 +4125,7 @@
<input id="enable_auto_select_input" type="checkbox" /> <input id="enable_auto_select_input" type="checkbox" />
<small data-i18n="Auto-select Input Text">Auto-select Input Text</small> <small data-i18n="Auto-select Input Text">Auto-select Input Text</small>
</label> </label>
<label class="checkbox_label alignItemsCenter" for="enable_md_hotkeys" title="Enable hotkeys for inserting markdown format characters in certain text input boxes. See '/help hotkeys'."> <label class="checkbox_label alignItemsCenter" for="enable_md_hotkeys" data-i18n="[title]markdown_hotkeys_desc" title="Enable hotkeys for inserting markdown format characters in certain text input boxes. See '/help hotkeys'.">
<input id="enable_md_hotkeys" type="checkbox" /> <input id="enable_md_hotkeys" type="checkbox" />
<small> <small>
<span data-i18n="Markdown Hotkeys">Markdown Hotkeys</span> <span data-i18n="Markdown Hotkeys">Markdown Hotkeys</span>

View File

@ -105,8 +105,8 @@
"API url": "URL-адрес API", "API url": "URL-адрес API",
"PygmalionAI/aphrodite-engine": "PygmalionAI/aphrodite-engine (Режим обёртки API OpenAI)", "PygmalionAI/aphrodite-engine": "PygmalionAI/aphrodite-engine (Режим обёртки API OpenAI)",
"Register a Horde account for faster queue times": "Заведите учетную запись Horde для ускорения генерации", "Register a Horde account for faster queue times": "Заведите учетную запись Horde для ускорения генерации",
"Adjust context size to worker capabilities": "Уточнить размер контекста в соответствии с возможностями рабочих машин", "Adjust context size to worker capabilities": "Подстраивать размер контекста под возможности рабочих машин",
"Adjust response length to worker capabilities": "Уточнить длинну ответа в соответствии с возможностями рабочих машин", "Adjust response length to worker capabilities": "Подстраивать длину ответа под возможности рабочих машин",
"API key": "API-ключ", "API key": "API-ключ",
"Tabby API key": "Tabby API-ключ", "Tabby API key": "Tabby API-ключ",
"Get it here:": "Получить здесь:", "Get it here:": "Получить здесь:",
@ -132,9 +132,9 @@
"Novel AI Model": "Модель NovelAI", "Novel AI Model": "Модель NovelAI",
"Make sure you run it with": "Обязательно запускайте его с флагом", "Make sure you run it with": "Обязательно запускайте его с флагом",
"flag": "", "flag": "",
"API key (optional)": "Ключ API (опционально)", "API key (optional)": "Ключ API (необязательно)",
"Server url": "URL-адрес сервера", "Server url": "URL-адрес сервера",
"Custom model (optional)": "Пользовательская модель (опционально)", "Custom model (optional)": "Пользовательская модель (необязательно)",
"Bypass API status check": "Обход проверки статуса API", "Bypass API status check": "Обход проверки статуса API",
"Example: 127.0.0.1:5000": "Пример: http://127.0.0.1:5000", "Example: 127.0.0.1:5000": "Пример: http://127.0.0.1:5000",
"Legacy API (pre-OAI, no streaming)": "Устаревший API (до OAI, без стриминга)", "Legacy API (pre-OAI, no streaming)": "Устаревший API (до OAI, без стриминга)",
@ -173,7 +173,7 @@
"Include Names": "Добавлять имена", "Include Names": "Добавлять имена",
"Force for Groups and Personas": "Также для групп и персон", "Force for Groups and Personas": "Также для групп и персон",
"System Prompt": "Системный промпт", "System Prompt": "Системный промпт",
"Instruct Mode Sequences": "Строки для Instruct-режима", "Instruct Sequences": "Строки для Instruct-режима",
"Stop Sequence": "Стоп-строка", "Stop Sequence": "Стоп-строка",
"Context Formatting": "Форматирование контекста", "Context Formatting": "Форматирование контекста",
"(Saved to Context Template)": "(Сохраняется в шаблоне контекста)", "(Saved to Context Template)": "(Сохраняется в шаблоне контекста)",
@ -561,7 +561,7 @@
"Example: [{{user}} is a 28-year-old Romanian cat girl.]": "Пример:\n [{{user}} is a 28-year-old Romanian cat girl.]", "Example: [{{user}} is a 28-year-old Romanian cat girl.]": "Пример:\n [{{user}} is a 28-year-old Romanian cat girl.]",
"Toggle grid view": "Переключить вид сетки", "Toggle grid view": "Переключить вид сетки",
"Add to Favorites": "Добавить в Избранное", "Add to Favorites": "Добавить в Избранное",
"Advanced Definition": "Расширенное определение", "Advanced Definition": "Расширенное описание",
"Character Lore": "Лор персонажа", "Character Lore": "Лор персонажа",
"Export and Download": "Экспортировать и скачать", "Export and Download": "Экспортировать и скачать",
"Duplicate Character": "Дублировать персонажа", "Duplicate Character": "Дублировать персонажа",
@ -737,12 +737,12 @@
"System Prompt Prefix": "Префикс системного промпта", "System Prompt Prefix": "Префикс системного промпта",
"System Prompt Suffix": "Постфикс системного промпта", "System Prompt Suffix": "Постфикс системного промпта",
"Chat Messages Wrapping": "Обрамление для сообщений в чате", "Chat Messages Wrapping": "Обрамление для сообщений в чате",
"User Message Prefix": "Префикс сообщения пользователя", "User Prefix": "Префикс сообщения пользователя",
"User Message Suffix": "Постфикс сообщения пользователя", "User Suffix": "Постфикс сообщения пользователя",
"Assistant Message Prefix": "Префикс сообщения ассистента", "Assistant Prefix": "Префикс сообщения ассистента",
"Assistant Message Suffix": "Постфикс сообщения ассистента", "Assistant Suffix": "Постфикс сообщения ассистента",
"System Message Prefix": "Префикс сообщения системы", "System Prefix": "Префикс сообщения системы",
"System Message Suffix": "Постфикс сообщения системы", "System Suffix": "Постфикс сообщения системы",
"System same as User": "Для системы то же самое, что и для пользователя", "System same as User": "Для системы то же самое, что и для пользователя",
"Misc. Sequences": "Прочие строки", "Misc. Sequences": "Прочие строки",
"First Assistant Prefix": "Первый префикс ассистента", "First Assistant Prefix": "Первый префикс ассистента",
@ -1704,5 +1704,47 @@
"chat_rename_1": "Введите новое имя чата:", "chat_rename_1": "Введите новое имя чата:",
"chat_rename_2": "!!Не используйте имя уже существующего файла, это приведёт к ошибке!!", "chat_rename_2": "!!Не используйте имя уже существующего файла, это приведёт к ошибке!!",
"chat_rename_3": "Будут разрушены связи между чатами-чекпоинтами.", "chat_rename_3": "Будут разрушены связи между чатами-чекпоинтами.",
"chat_rename_4": "Расширение '.jsonl' дописывать не нужно." "chat_rename_4": "Расширение '.jsonl' дописывать не нужно.",
"If you're connected to an API, try asking me something!": "Есть соединение с API? Напишите мне что-нибудь!",
"Connection Profile": "Профиль соединения",
"View connection profile details": "Посмотреть параметры профиля соединения",
"Create a new connection profile": "Создать новый профиль соединения",
"Update a connection profile": "Обновить профиль соединения",
"Rename a connection profile": "Переименовать профиль соединения",
"Reload a connection profile": "Перезагрузить профиль соединения",
"Delete a connection profile": "Удалить профиль соединения",
"No profile selected": "Профиль не выбран",
"Creating a Connection Profile": "Создать профиль соединения",
"Settings Preset": "Пресет настроек",
"Model": "Модель",
"Proxy Preset": "Пресет для прокси",
"Enter a name:": "Введите название:",
"Enter a new name": "Введите новое название",
"Are you sure you want to delete the selected profile?": "Вы точно хотите удалить выбранный профиль?",
"instruct_enabled": "Включить Instruct-режим",
"Instruct Template": "Шаблон Instruct-режима",
"instruct_template_activation_regex_desc": "Автоматически активировать этот шаблон в момент подключения к API или выбора модели, если название модели соответствует этому рег. выражению.",
"instruct_bind_to_context": "При включении этой опции Шаблон контекста будет выбираться, исходя из выбранного в текущий момент Шаблона Instruct-режима, либо по вашему желанию.",
"Master Import": "Глоб. импорт",
"Import Advanced Formatting settings": "Импорт настроек Расширенного форматирования\nТакже принимает файлы старого формата с Шаблонами контекста и Шаблонами Instruct-режима.",
"Master Export": "Глоб. экспорт",
"Export Advanced Formatting settings": "Экспорт настроек Расширенного форматирования",
"Select your current System Prompt": "Выберите текущий системный промпт",
"Prompt Content": "Текст промпта",
"Update current prompt": "Обновить текущий промпт",
"Save prompt as": "Сохранить как...",
"Import template": "Импорт шаблона",
"Export template": "Экспорт шаблона",
"Restore current prompt": "Восстановить текущий промпт",
"comma delimited,no spaces between": "через запятую,без пробелов в промежутках",
"User Message Sequences": "Строки для сообщений пользователя",
"Assistant Message Sequences": "Строки для сообщений ассистента",
"System Message Sequences": "Строки для сообщений системы",
"System Prompt Sequences": "Строки для системного промпта",
"sysprompt_enabled": "Вкл/выкл системный промпт",
"Are you sure you want to delete this alternate greeting?": "Вы точно хотите удалить этот вариант?",
"Any contents here will replace the default Post-History Instructions used for this character. (v2 spec: post_history_instructions)": "Содержимое этого поля заменит стандартные Инструкции после истории, применяемые для этого персонажа. (v2 spec: post_history_instructions)",
"None (disabled)": "Нигде (откл.)",
"Markdown Hotkeys": "Горячие клавиши для разметки",
"markdown_hotkeys_desc": "Включить горячие клавиши для вставки символов разметки в некоторых полях ввода. См. '/help hotkeys'."
} }

View File

@ -7853,7 +7853,7 @@ function addAlternateGreeting(template, greeting, index, getArray) {
}).val(greeting); }).val(greeting);
greetingBlock.find('.greeting_index').text(index + 1); greetingBlock.find('.greeting_index').text(index + 1);
greetingBlock.find('.delete_alternate_greeting').on('click', async function () { greetingBlock.find('.delete_alternate_greeting').on('click', async function () {
if (confirm('Are you sure you want to delete this alternate greeting?')) { if (confirm(t`Are you sure you want to delete this alternate greeting?`)) {
const array = getArray(); const array = getArray();
array.splice(index, 1); array.splice(index, 1);
// We need to reopen the popup to update the index numbers // We need to reopen the popup to update the index numbers

View File

@ -10,6 +10,7 @@ import { enumTypes, SlashCommandEnumValue } from '../../slash-commands/SlashComm
import { SlashCommandParser } from '../../slash-commands/SlashCommandParser.js'; import { SlashCommandParser } from '../../slash-commands/SlashCommandParser.js';
import { SlashCommandScope } from '../../slash-commands/SlashCommandScope.js'; import { SlashCommandScope } from '../../slash-commands/SlashCommandScope.js';
import { collapseSpaces, getUniqueName, isFalseBoolean, uuidv4 } from '../../utils.js'; import { collapseSpaces, getUniqueName, isFalseBoolean, uuidv4 } from '../../utils.js';
import { t } from '../../i18n.js';
const MODULE_NAME = 'connection-manager'; const MODULE_NAME = 'connection-manager';
const NONE = '<None>'; const NONE = '<None>';
@ -250,7 +251,7 @@ async function deleteConnectionProfile() {
} }
const name = extension_settings.connectionManager.profiles[index].name; const name = extension_settings.connectionManager.profiles[index].name;
const confirm = await Popup.show.confirm('Are you sure you want to delete the selected profile?', name); const confirm = await Popup.show.confirm(t`Are you sure you want to delete the selected profile?`, name);
if (!confirm) { if (!confirm) {
return; return;
@ -360,7 +361,7 @@ async function renderDetailsContent(detailsContent) {
const template = await renderExtensionTemplateAsync(MODULE_NAME, 'view', { profile: profileForDisplay }); const template = await renderExtensionTemplateAsync(MODULE_NAME, 'view', { profile: profileForDisplay });
detailsContent.innerHTML = template; detailsContent.innerHTML = template;
} else { } else {
detailsContent.textContent = 'No profile selected'; detailsContent.textContent = t`No profile selected`;
} }
} }
@ -481,7 +482,7 @@ async function renderDetailsContent(detailsContent) {
return; return;
} }
const newName = await Popup.show.input('Enter a new name', null, profile.name, { rows: 2 }); const newName = await Popup.show.input(t`Enter a new name`, null, profile.name, { rows: 2 });
if (!newName) { if (!newName) {
return; return;
} }

View File

@ -50,6 +50,9 @@ const observer = new MutationObserver(mutations => {
* @returns {string} Translated and formatted string * @returns {string} Translated and formatted string
*/ */
export function t(strings, ...values) { export function t(strings, ...values) {
if (strings == 'Select Horde models') {
console.log('strings = ' + strings);
}
let str = strings.reduce((result, string, i) => result + string + (values[i] !== undefined ? `\${${i}}` : ''), ''); let str = strings.reduce((result, string, i) => result + string + (values[i] !== undefined ? `\${${i}}` : ''), '');
let translatedStr = translate(str); let translatedStr = translate(str);