Update ru-ru locale (#4449) * Work on tl * Small fix * Fix formatting --------- Co-authored-by: Yokayo <nonameutubecomm@gmail.com> Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>

e9e14001e30b9e3d170a6bbe4f22fa165e88eedb

Yokayo <52032299+Yokayo@users.noreply.github.com>

Signed
6 files changed, +173 -106Ignore whitespace
public/index.html+1 -1
@@ -6437,7 +6437,7 @@
6437 </span>6437 </span>
6438 <div class="flex-container">6438 <div class="flex-container">
6439 <div class="flex-container flexFlowColumn">6439 <div class="flex-container flexFlowColumn">
6440 <label class="checkbox flex-container alignitemscenter flexNoGap" title="This entry will not be recursively activated by other entries.">6440 <label class="checkbox flex-container alignitemscenter flexNoGap" data-i18n="[title]This entry will not be recursively activated by other entries." title="This entry will not be recursively activated by other entries.">
6441 <input type="checkbox" name="excludeRecursion" />6441 <input type="checkbox" name="excludeRecursion" />
6442 <span data-i18n="Non-recursable">6442 <span data-i18n="Non-recursable">
6443 Non-recursable6443 Non-recursable
public/locales/ru-ru.json+151 -84
@@ -40,7 +40,7 @@
40 "Smoothing Factor": "Коэффициент сглаживания",40 "Smoothing Factor": "Коэффициент сглаживания",
41 "No Repeat Ngram Size": "Размер no_repeat_ngram",41 "No Repeat Ngram Size": "Размер no_repeat_ngram",
42 "Min Length": "Мин. длина",42 "Min Length": "Мин. длина",
43 "Alternative server URL (leave empty to use the default value).": "URL альтернативного сервера (оставьте пустым для стандартного значения)",43 "Alternative server URL (leave empty to use the default value).": "URL реверс-прокси (оставьте пустым для стандартного значения)",
44 "Remove your real OAI API Key from the API panel BEFORE typing anything into this box": "Удалите свой личный OAI API Key из панели API, и ТОЛЬКО ПОСЛЕ ЭТОГО вводите что-то сюда",44 "Remove your real OAI API Key from the API panel BEFORE typing anything into this box": "Удалите свой личный OAI API Key из панели API, и ТОЛЬКО ПОСЛЕ ЭТОГО вводите что-то сюда",
45 "We cannot provide support for problems encountered while using an unofficial OpenAI proxy": "Мы не сможем предоставить помощь с проблемами, с которыми вы столкнетесь при использовании неофициальных прокси для OpenAI",45 "We cannot provide support for problems encountered while using an unofficial OpenAI proxy": "Мы не сможем предоставить помощь с проблемами, с которыми вы столкнетесь при использовании неофициальных прокси для OpenAI",
46 "Context Size (tokens)": "Размер контекста (в токенах)",46 "Context Size (tokens)": "Размер контекста (в токенах)",
@@ -145,7 +145,7 @@
145 "View API Usage Metrics": "Посмотреть статистику использования API",145 "View API Usage Metrics": "Посмотреть статистику использования API",
146 "Show External models (provided by API)": "Показать \"сторонние\" модели (предоставленные API)",146 "Show External models (provided by API)": "Показать \"сторонние\" модели (предоставленные API)",
147 "Allow fallback routes": "Разрешить резервные маршруты",147 "Allow fallback routes": "Разрешить резервные маршруты",
148 "Allow fallback routes Description": "Автоматически выбирает альтернативную модель, если выбранная модель не может удовлетворить ваш запрос.",148 "Allow fallback routes Description": "Автоматически выбирает альтернативную модель, если выбранная модель не может обслужить ваш запрос.",
149 "OpenRouter API Key": "Ключ от OpenRouter API",149 "OpenRouter API Key": "Ключ от OpenRouter API",
150 "OpenRouter Model": "Модель OpenRouter",150 "OpenRouter Model": "Модель OpenRouter",
151 "View Remaining Credits": "Посмотреть оставшиеся кредиты",151 "View Remaining Credits": "Посмотреть оставшиеся кредиты",
@@ -154,7 +154,7 @@
154 "View hidden API keys": "Посмотреть скрытые API-ключи",154 "View hidden API keys": "Посмотреть скрытые API-ключи",
155 "Advanced Formatting": "Расширенное форматирование",155 "Advanced Formatting": "Расширенное форматирование",
156 "Context Template": "Шаблон контекста",156 "Context Template": "Шаблон контекста",
157 "Replace Macro in Stop Strings": "Заменять макросы в пользовательских стоп-строках",157 "Replace Macro in Stop Strings": "Заменять макросы в стоп-строках",
158 "Story String": "Общий шаблон",158 "Story String": "Общий шаблон",
159 "Example Separator": "Разделитель примеров сообщений",159 "Example Separator": "Разделитель примеров сообщений",
160 "Chat Start": "Начало чата",160 "Chat Start": "Начало чата",
@@ -184,7 +184,7 @@
184 "Scan Depth": "Глубина сканирования",184 "Scan Depth": "Глубина сканирования",
185 "Case-Sensitive": "С учетом регистра",185 "Case-Sensitive": "С учетом регистра",
186 "Match Whole Words": "Только полное совпадение",186 "Match Whole Words": "Только полное совпадение",
187 "Use global setting": "Использовать глобальную настройку",187 "Use global setting": "Глоб. настройка",
188 "Yes": "Да",188 "Yes": "Да",
189 "No": "Нет",189 "No": "Нет",
190 "Context %": "Процент контекста",190 "Context %": "Процент контекста",
@@ -201,7 +201,7 @@
201 "Bubbles": "Пузыри",201 "Bubbles": "Пузыри",
202 "No Blur Effect": "Отключить размытие",202 "No Blur Effect": "Отключить размытие",
203 "No Text Shadows": "Отключить тень текста",203 "No Text Shadows": "Отключить тень текста",
204 "Waifu Mode": "Рeжим Вайфу",204 "Waifu Mode": "Режим вайфу",
205 "Message Timer": "Таймер сообщений",205 "Message Timer": "Таймер сообщений",
206 "Model Icon": "Значки моделей",206 "Model Icon": "Значки моделей",
207 "Advanced Character Search": "Расширенный поиск по персонажам",207 "Advanced Character Search": "Расширенный поиск по персонажам",
@@ -279,7 +279,7 @@
279 "Impersonate": "Перевоплощение",279 "Impersonate": "Перевоплощение",
280 "Regenerate": "Повторная генерация",280 "Regenerate": "Повторная генерация",
281 "Message Sound": "Звук сообщения",281 "Message Sound": "Звук сообщения",
282 "Author's Note": "Заметки автора",282 "Author's Note": "Авторские заметки",
283 "Replace empty message": "Заменять пустые сообщения",283 "Replace empty message": "Заменять пустые сообщения",
284 "Send this text instead of nothing when the text box is empty.": "Этот текст будет отправлен в случае отсутствия текста на отправку.",284 "Send this text instead of nothing when the text box is empty.": "Этот текст будет отправлен в случае отсутствия текста на отправку.",
285 "Unrestricted maximum value for the context slider": "Убрать потолок для ползунка контекста. Включайте только если точно понимаете, что делаете",285 "Unrestricted maximum value for the context slider": "Убрать потолок для ползунка контекста. Включайте только если точно понимаете, что делаете",
@@ -322,8 +322,8 @@
322 "Order ↘": "Порядок ↘",322 "Order ↘": "Порядок ↘",
323 "UID ↗": "UID ↗",323 "UID ↗": "UID ↗",
324 "UID ↘": "UID ↘",324 "UID ↘": "UID ↘",
325 "Trigger% ↗": "Триггер% ↗",325 "Trigger% ↗": "% срабатываний ↗",
326 "Trigger% ↘": "Триггер% ↘",326 "Trigger% ↘": "% срабатываний ↘",
327 "Depth:": "Глубина:",327 "Depth:": "Глубина:",
328 "Character Lore First": "Сначала лор персонажа",328 "Character Lore First": "Сначала лор персонажа",
329 "Global Lore First": "Сначала глобальный лор",329 "Global Lore First": "Сначала глобальный лор",
@@ -334,12 +334,17 @@
334 "Exclude from recursion": "Исключить из рекурсии",334 "Exclude from recursion": "Исключить из рекурсии",
335 "Entry Title/Memo": "Название или заметка о записи",335 "Entry Title/Memo": "Название или заметка о записи",
336 "Position:": "Положение:",336 "Position:": "Положение:",
337 "T_Position": "↑Char: Перед определениями Персонажа\n↓Char: После определений Персонажа\n↑AN: Перед Пометок автора\n↓AN: После Пометок автора\n@D: На глубине",337 "T_Position": "↑Перс: Перед описанием персонажа\n↓Перс: После описания персонажа\n↑ПС: Перед примерами сообщений\n↓ПС: После примеров сообщений\n↑АЗ: Перед авторскими заметками\n↓АЗ: После авторских заметок\nНа глуб. ⚙️: на глубине (система)\nНа глуб. 👤: на глубине (пользователь)\nНа глуб. 🤖: на глубине (ассистент)",
338 "Before Char Defs": "↑Перс.",338 "Before Char Defs": "↑Перс.",
339 "After Char Defs": "↓Перс.",339 "After Char Defs": "↓Перс.",
340 "Before AN": "↑АЗ",340 "Before AN": "↑АЗ",
341 "After AN": "↓АЗ",341 "After AN": "↓АЗ",
342 "Order": "Очерёдность:",342 "Before EM": "↑ПС",
343 "After EM": "↓ПС",
344 "at Depth System": "На глуб. ⚙️",
345 "at Depth User": "На глуб. 👤",
346 "at Depth AI": "На глуб. 🤖",
347 "Order": "Приоритет:",
343 "Update a theme file": "Обновить файл темы",348 "Update a theme file": "Обновить файл темы",
344 "Save as a new theme": "Сохранить как новую тему",349 "Save as a new theme": "Сохранить как новую тему",
345 "Minimum number of blacklisted words detected to trigger an auto-swipe": "Минимальное количество обнаруженных запрещённых слов, при котором срабатывает авто-свайп.",350 "Minimum number of blacklisted words detected to trigger an auto-swipe": "Минимальное количество обнаруженных запрещённых слов, при котором срабатывает авто-свайп.",
@@ -385,7 +390,7 @@
385 "Remove text shadow effect": "Удаление эффекта тени от текста.",390 "Remove text shadow effect": "Удаление эффекта тени от текста.",
386 "Reduce chat height, and put a static sprite behind the chat window": "Уменьшить высоту чата и поместить статичный спрайт за окном чата.",391 "Reduce chat height, and put a static sprite behind the chat window": "Уменьшить высоту чата и поместить статичный спрайт за окном чата.",
387 "Always show the full list of the Message Actions context items for chat messages, instead of hiding them behind '...'": "Всегда показывать полный список действий с сообщением, а не прятать их за '...'.",392 "Always show the full list of the Message Actions context items for chat messages, instead of hiding them behind '...'": "Всегда показывать полный список действий с сообщением, а не прятать их за '...'.",
388 "Alternative UI for numeric sampling parameters with fewer steps": "Альтернативный пользовательский интерфейс для числовых параметров выборки с меньшим количеством шагов.",393 "Alternative UI for numeric sampling parameters with fewer steps": "Уменьшить кол-во шагов для параметров, регулируемых слайдерами.",
389 "Entirely unrestrict all numeric sampling parameters": "Снять ограничения со всех числовых сэмплеров.",394 "Entirely unrestrict all numeric sampling parameters": "Снять ограничения со всех числовых сэмплеров.",
390 "Time the AI's message generation, and show the duration in the chat log": "Время генерации сообщений ИИ и его показ в журнале чата.",395 "Time the AI's message generation, and show the duration in the chat log": "Время генерации сообщений ИИ и его показ в журнале чата.",
391 "Show a timestamp for each message in the chat log": "Показывать временную метку для каждого сообщения в журнале чата.",396 "Show a timestamp for each message in the chat log": "Показывать временную метку для каждого сообщения в журнале чата.",
@@ -409,7 +414,7 @@
409 "If checked and the character card contains a jailbreak override (Post History Instruction), use that instead": "При включении этой опции, пользовательский джейлбрейк будет заменяться кастомным джейлбрейком из карточки (при его наличии).",414 "If checked and the character card contains a jailbreak override (Post History Instruction), use that instead": "При включении этой опции, пользовательский джейлбрейк будет заменяться кастомным джейлбрейком из карточки (при его наличии).",
410 "Show actual file names on the disk, in the characters list display only": "Отображение названий файлов персонажей на диске, только в списке персонажей.",415 "Show actual file names on the disk, in the characters list display only": "Отображение названий файлов персонажей на диске, только в списке персонажей.",
411 "Prompt to import embedded card tags on character import. Otherwise embedded tags are ignored": "Запрашивать разрешения на импорт встроенных тегов карт при импорте персонажей. В противном случае встроенные теги игнорируются.",416 "Prompt to import embedded card tags on character import. Otherwise embedded tags are ignored": "Запрашивать разрешения на импорт встроенных тегов карт при импорте персонажей. В противном случае встроенные теги игнорируются.",
412 "Hide character definitions from the editor panel behind a spoiler button": "Спрятать определения персонажей из панели редактора за кнопку спойлера.",417 "Hide character definitions from the editor panel behind a spoiler button": "Спрятать описания персонажей из панели редактора за кнопку спойлера.",
413 "Show a button in the input area to ask the AI to continue (extend) its last message": "Показывать на форме ответа кнопку, по нажатии на которую ИИ продолжит своё предыдущее сообщение.",418 "Show a button in the input area to ask the AI to continue (extend) its last message": "Показывать на форме ответа кнопку, по нажатии на которую ИИ продолжит своё предыдущее сообщение.",
414 "Show arrow buttons on the last in-chat message to generate alternative AI responses. Both PC and mobile": "Показывать кнопки со стрелками на последнем сообщении в чате, чтобы генерировать альтернативные ответы ИИ. Как для ПК, так и для мобильных устройств.",419 "Show arrow buttons on the last in-chat message to generate alternative AI responses. Both PC and mobile": "Показывать кнопки со стрелками на последнем сообщении в чате, чтобы генерировать альтернативные ответы ИИ. Как для ПК, так и для мобильных устройств.",
415 "Allow using swiping gestures on the last in-chat message to trigger swipe generation. Mobile only, no effect on PC": "Позволяет использовать жесты смахивания на последнем сообщении в чате, чтобы вызвать альтернативную генерацию. Только для мобильных устройств, на ПК не работает.",420 "Allow using swiping gestures on the last in-chat message to trigger swipe generation. Mobile only, no effect on PC": "Позволяет использовать жесты смахивания на последнем сообщении в чате, чтобы вызвать альтернативную генерацию. Только для мобильных устройств, на ПК не работает.",
@@ -427,8 +432,8 @@
427 "Your Persona": "Ваша персона",432 "Your Persona": "Ваша персона",
428 "Show notifications on switching personas": "Показывать уведомления при смене персоны",433 "Show notifications on switching personas": "Показывать уведомления при смене персоны",
429 "In Story String / Prompt Manager": "В общем шаблоне / Менеджере промптов",434 "In Story String / Prompt Manager": "В общем шаблоне / Менеджере промптов",
430 "Top of Author's Note": "Сверху от заметок автора",435 "Top of Author's Note": "Сверху от авторских заметок",
431 "Bottom of Author's Note": "Снизу от заметок автора",436 "Bottom of Author's Note": "Снизу от авторских заметок",
432 "How do I use this?": "Как пользоваться?",437 "How do I use this?": "Как пользоваться?",
433 "More...": "Ещё...",438 "More...": "Ещё...",
434 "Link to World Info": "Ссылка на информацию о мире",439 "Link to World Info": "Ссылка на информацию о мире",
@@ -436,7 +441,7 @@
436 "Scenario Override": "Перезапись сценария",441 "Scenario Override": "Перезапись сценария",
437 "Rename": "Переименовать",442 "Rename": "Переименовать",
438 "Character Description": "Описание персонажа",443 "Character Description": "Описание персонажа",
439 "Creator's Notes": "Заметки создателя",444 "Creator's Notes": "Примечание от создателя",
440 "A-Z": "A-Z",445 "A-Z": "A-Z",
441 "Z-A": "Z-A",446 "Z-A": "Z-A",
442 "Newest": "Сначала новые",447 "Newest": "Сначала новые",
@@ -471,7 +476,7 @@
471 "Enter your name": "Введите свое имя",476 "Enter your name": "Введите свое имя",
472 "Name this character": "Назовите этого персонажа",477 "Name this character": "Назовите этого персонажа",
473 "Search / Create Tags": "Искать / Создать тэги",478 "Search / Create Tags": "Искать / Создать тэги",
474 "Describe your character's physical and mental traits here.": "Опишите ментальные и физические черты персонажа",479 "Describe your character's physical and mental traits here.": "Опишите характер персонажа и его внешность",
475 "This will be the first message from the character that starts every chat.": "Это будет первое сообщение от персонажа при начале нового чата",480 "This will be the first message from the character that starts every chat.": "Это будет первое сообщение от персонажа при начале нового чата",
476 "Chat Name (Optional)": "Название чата (необязательно)",481 "Chat Name (Optional)": "Название чата (необязательно)",
477 "Search...": "Поиск...",482 "Search...": "Поиск...",
@@ -483,10 +488,10 @@
483 "(Write a comma-separated list of tags)": "(Список тегов через запятую)",488 "(Write a comma-separated list of tags)": "(Список тегов через запятую)",
484 "(A brief description of the personality)": "(Краткое описание личности)",489 "(A brief description of the personality)": "(Краткое описание личности)",
485 "(Circumstances and context of the interaction)": "(Обстоятельства и контекст этого диалога)",490 "(Circumstances and context of the interaction)": "(Обстоятельства и контекст этого диалога)",
486 "(Examples of chat dialog. Begin each example with START on a new line.)": "(Примеры диалога. Начинайте каждый пример с START или новой строкой.)",491 "(Examples of chat dialog. Begin each example with START on a new line.)": "(Примеры диалога. Начинайте каждый пример со START и на новой строке.)",
487 "Type here...": "Пишите здесь...",492 "Type here...": "Пишите здесь...",
488 "Comma separated (required)": "Через запятую (обязательное поле)",493 "Comma separated (required)": "Через запятую (обязательное поле)",
489 "What this keyword should mean to the AI, sent verbatim": "Что это ключевое слово должно означать для ИИ, отправляется дословно",494 "What this keyword should mean to the AI, sent verbatim": "Объясните ИИ, что он должен знать об этом ключевом слове",
490 "Filter to Character(s)": "Фильтр по персонажу(ам)",495 "Filter to Character(s)": "Фильтр по персонажу(ам)",
491 "Character Exclusion": "Исключить персонажей",496 "Character Exclusion": "Исключить персонажей",
492 "Inclusion Group": "Группа записей",497 "Inclusion Group": "Группа записей",
@@ -569,12 +574,12 @@
569 "Remove": "Убрать",574 "Remove": "Убрать",
570 "Select a World Info file for": "Выбрать файл с миром для",575 "Select a World Info file for": "Выбрать файл с миром для",
571 "Primary Lorebook": "Основной лорбук",576 "Primary Lorebook": "Основной лорбук",
572 "A selected World Info will be bound to this character as its own Lorebook.": "Информация о мире будет привязана к персонажу как его собственный лорбук.",577 "A selected World Info will be bound to this character as its own Lorebook.": "Данный мир будет привязан к персонажу как его собственный лорбук.",
573 "When generating an AI reply, it will be combined with the entries from a global World Info selector.": "Когда ИИ генерирует ответ, он будет совмещён с записями из глобально выбранного мира.",578 "When generating an AI reply, it will be combined with the entries from a global World Info selector.": "При генерации ответа, данный лорбук будет работать вместе с глобально выбранным лорбуком.",
574 "Exporting a character would also export the selected Lorebook file embedded in the JSON data.": "При экспорте персонажа вместе с ним также выгрузится выбранный лорбук в виде JSON.",579 "Exporting a character would also export the selected Lorebook file embedded in the JSON data.": "При экспорте персонажа вместе с ним также выгрузится выбранный лорбук в виде JSON.",
575 "Additional Lorebooks": "Вспомогательные лорбуки",580 "Additional Lorebooks": "Вспомогательные лорбуки",
576 "Associate one or more auxillary Lorebooks with this character.": "Привязать к этому персонажу один или больше вспомогательных лорбуков",581 "Associate one or more auxillary Lorebooks with this character.": "Привязать к этому персонажу один или больше вспомогательных лорбуков.",
577 "NOTE: These choices are optional and won't be preserved on character export!": "ВНИМАНИЕ: эти выборы необязательные и не будут сохранены при экспорте персонажа!",582 "NOTE: These choices are optional and won't be preserved on character export!": "ВНИМАНИЕ: вспомогательные лорбуки не будут выгружены при экспорте персонажа!",
578 "Rename chat file": "Переименовать чат",583 "Rename chat file": "Переименовать чат",
579 "Export JSONL chat file": "Экспортировать чат в формате JSONL",584 "Export JSONL chat file": "Экспортировать чат в формате JSONL",
580 "Download chat as plain text document": "Скачать чат в формате .txt",585 "Download chat as plain text document": "Скачать чат в формате .txt",
@@ -784,20 +789,20 @@
784 "Enable magnification for zoomed avatar display.": "Добавляет возможность приближать увеличенную версию аватарки.",789 "Enable magnification for zoomed avatar display.": "Добавляет возможность приближать увеличенную версию аватарки.",
785 "Unique to this chat": "Только для текущего чата",790 "Unique to this chat": "Только для текущего чата",
786 "Checkpoints inherit the Note from their parent, and can be changed individually after that.": "Чекпоинты наследуют заметки от родительского чата, но впоследствие их всегда можно изменить.",791 "Checkpoints inherit the Note from their parent, and can be changed individually after that.": "Чекпоинты наследуют заметки от родительского чата, но впоследствие их всегда можно изменить.",
787 "Include in World Info Scanning": "Учитывать при сканировании Информации о мире",792 "Include in World Info Scanning": "Учитывать при сканировании лорбуком",
788 "Before Main Prompt / Story String": "Перед основным промптом / строкой истории",793 "Before Main Prompt / Story String": "Перед основным промптом / общим шаблоном",
789 "After Main Prompt / Story String": "После основного промпта / строки истории",794 "After Main Prompt / Story String": "После основного промпта / общего шаблона",
790 "In-chat @ Depth": "Встав. на глуб.",795 "In-chat @ Depth": "Встав. на глуб.",
791 "as": "роль:",796 "as": "роль:",
792 "Insertion Frequency": "Частота вставки",797 "Insertion Frequency": "Частота вставки",
793 "(0 = Disable, 1 = Always)": "(0 = никогда, 1 = всегда)",798 "(0 = Disable, 1 = Always)": "(0 = никогда, 1 = всегда)",
794 "User inputs until next insertion:": "Ваших сообщений до след. вставки:",799 "User inputs until next insertion:": "Ваших сообщений до след. вставки:",
795 "Character Author's Note (Private)": "Заметки автора персонажа (личные)",800 "Character Author's Note (Private)": "Авторские заметки для персонажа (личные)",
796 "Will be automatically added as the author's note for this character. Will be used in groups, but can't be modified when a group chat is open.": "Автоматически применятся к этому персонажу в качестве заметок автора. Будут использоваться в группах, но при активном групповом чате к редактированию недоступны.",801 "Will be automatically added as the author's note for this character. Will be used in groups, but can't be modified when a group chat is open.": "Автоматически применятся к этому персонажу в качестве авторских заметок. Будут использоваться в группах, но при активном групповом чате к редактированию недоступны.",
797 "Use character author's note": "Использовать заметки автора персонажа",802 "Use character author's note": "Использовать авторские заметки для персонажа",
798 "Replace Author's Note": "Вместо заметок автора",803 "Replace Author's Note": "Вместо авторских заметок",
799 "Default Author's Note": "Стандартные заметки автора",804 "Default Author's Note": "Стандартные авторские заметки",
800 "Will be automatically added as the Author's Note for all new chats.": "Будут автоматически добавляться во все новые чаты в качестве Заметок автора",805 "Will be automatically added as the Author's Note for all new chats.": "Будут автоматически добавляться во все новые чаты в качестве авторских заметок",
801 "1 = disabled": "1 = откл.",806 "1 = disabled": "1 = откл.",
802 "write short replies, write replies using past tense": "пиши короткие ответы, пиши в настоящем времени",807 "write short replies, write replies using past tense": "пиши короткие ответы, пиши в настоящем времени",
803 "Positive Prompt": "Положительный промпт",808 "Positive Prompt": "Положительный промпт",
@@ -906,7 +911,7 @@
906 "ext_sum_force_text": "Пересказать сейчас",911 "ext_sum_force_text": "Пересказать сейчас",
907 "Disable automatic summary updates. While paused, the summary remains as-is. You can still force an update by pressing the Summarize now button (which is only available with the Main API).": "Отключить авто-обновление пересказа. Пересказ всё время будет фиксированным. Однако останется возможность принудительно обновить пересказ через кнопку \"Пересказать сейчас\" (доступно только через Основное API)",912 "Disable automatic summary updates. While paused, the summary remains as-is. You can still force an update by pressing the Summarize now button (which is only available with the Main API).": "Отключить авто-обновление пересказа. Пересказ всё время будет фиксированным. Однако останется возможность принудительно обновить пересказ через кнопку \"Пересказать сейчас\" (доступно только через Основное API)",
908 "ext_sum_pause": "Приостановить",913 "ext_sum_pause": "Приостановить",
909 "Omit World Info and Author's Note from text to be summarized. Only has an effect when using the Main API. The Extras API always omits WI/AN.": "Исключать из пересказа Информацию о мире и Заметки автора. Работает только для Основного API. Extras API всегда их исключает.",914 "Omit World Info and Author's Note from text to be summarized. Only has an effect when using the Main API. The Extras API always omits WI/AN.": "Исключать из пересказа Информацию о мире и Авторские заметки. Работает только для Основного API. Extras API всегда их исключает.",
910 "ext_sum_no_wi_an": "Без мира и заметок",915 "ext_sum_no_wi_an": "Без мира и заметок",
911 "ext_sum_settings_tip": "Изменить промпт пересказа, место для инжекта и т.д.",916 "ext_sum_settings_tip": "Изменить промпт пересказа, место для инжекта и т.д.",
912 "ext_sum_settings": "Настройки пересказа",917 "ext_sum_settings": "Настройки пересказа",
@@ -1333,13 +1338,7 @@
1333 "WI_Entry_Status_Normal": "Обычная",1338 "WI_Entry_Status_Normal": "Обычная",
1334 "WI_Entry_Status_Vectorized": "Векторизованная",1339 "WI_Entry_Status_Vectorized": "Векторизованная",
1335 "WI_Entry_Status_Disabled": "Отключена",1340 "WI_Entry_Status_Disabled": "Отключена",
1336 "Before EM": "↑EM",
1337 "After EM": "↓EM",
1338 "at Depth System": "@D ⚙️",
1339 "at Depth User": "@D 👤",
1340 "at Depth AI": "@D 🤖",
1341 "Depth": "Глубина",1341 "Depth": "Глубина",
1342 "Trigger %:": "Trigger %:",
1343 "Probability": "Вероятность",1342 "Probability": "Вероятность",
1344 "Duplicate world info entry": "Дублировать запись",1343 "Duplicate world info entry": "Дублировать запись",
1345 "Delete world info entry": "Удалить запись",1344 "Delete world info entry": "Удалить запись",
@@ -1411,26 +1410,7 @@
1411 "ext_regex_title": "Regex",1410 "ext_regex_title": "Regex",
1412 "ext_regex_import_target": "Импортировать в:",1411 "ext_regex_import_target": "Импортировать в:",
1413 "ext_regex_move_to_scoped": "Сделать локальным",1412 "ext_regex_move_to_scoped": "Сделать локальным",
1414 "Trigger Stable Diffusion": "Trigger Stable Diffusion",
1415 "sd_Yourself": "Yourself",
1416 "sd_Your_Face": "Your Face",
1417 "sd_Me": "Me",
1418 "sd_The_Whole_Story": "The Whole Story",
1419 "sd_The_Last_Message": "The Last Message",
1420 "sd_Raw_Last_Message": "Raw Last Message",
1421 "sd_Background": "Background",
1422 "Image Generation": "Image Generation",1413 "Image Generation": "Image Generation",
1423 "sd_refine_mode": "Allow to edit prompts manually before sending them to generation API",
1424 "sd_refine_mode_txt": "Edit prompts before generation",
1425 "sd_interactive_mode": "Automatically generate images when sending messages like 'send me a picture of cat'.",
1426 "sd_interactive_mode_txt": "Interactive mode",
1427 "sd_multimodal_captioning": "Use multimodal captioning to generate prompts for user and character portraits based on their avatars.",
1428 "sd_multimodal_captioning_txt": "Use multimodal captioning for portraits",
1429 "sd_expand": "Automatically extend prompts using text generation model",
1430 "sd_expand_txt": "Auto-enhance prompts",
1431 "sd_snap": "Snap generation requests with a forced aspect ratio (portraits, backgrounds) to the nearest known resolution, while trying to preserve the absolute pixel counts (recommended for SDXL).",
1432 "sd_snap_txt": "Snap auto-adjusted resolutions",
1433 "Source": "Source",
1434 "sd_auto_url": "Example: {{auto_url}}",1414 "sd_auto_url": "Example: {{auto_url}}",
1435 "Authentication (optional)": "Authentication (optional)",1415 "Authentication (optional)": "Authentication (optional)",
1436 "Example: username:password": "Example: username:password",1416 "Example: username:password": "Example: username:password",
@@ -1441,18 +1421,10 @@
1441 "sd_drawthings_auth_txt": "run DrawThings app with HTTP API switch enabled in the UI! The server must be accessible from the SillyTavern host machine.",1421 "sd_drawthings_auth_txt": "run DrawThings app with HTTP API switch enabled in the UI! The server must be accessible from the SillyTavern host machine.",
1442 "sd_vlad_url": "Example: {{vlad_url}}",1422 "sd_vlad_url": "Example: {{vlad_url}}",
1443 "The server must be accessible from the SillyTavern host machine.": "The server must be accessible from the SillyTavern host machine.",1423 "The server must be accessible from the SillyTavern host machine.": "The server must be accessible from the SillyTavern host machine.",
1444 "Hint: Save an API key in AI Horde API settings to use it here.": "Hint: Save an API key in AI Horde API settings to use it here.",
1445 "Allow NSFW images from Horde": "Разрешить NSFW-картинки в Horde",1424 "Allow NSFW images from Horde": "Разрешить NSFW-картинки в Horde",
1446 "Sanitize prompts (recommended)": "Sanitize prompts (recommended)",
1447 "Automatically adjust generation parameters to ensure free image generations.": "Automatically adjust generation parameters to ensure free image generations.",
1448 "Avoid spending Anlas": "Avoid spending Anlas",1425 "Avoid spending Anlas": "Avoid spending Anlas",
1449 "Opus tier": "(Opus tier)",1426 "Opus tier": "(Opus tier)",
1450 "View my Anlas": "View my Anlas",1427 "View my Anlas": "View my Anlas",
1451 "These settings only apply to DALL-E 3": "These settings only apply to DALL-E 3",
1452 "Image Style": "Image Style",
1453 "Image Quality": "Image Quality",
1454 "Standard": "Standard",
1455 "HD": "HD",
1456 "sd_comfy_url": "Example: {{comfy_url}}",1428 "sd_comfy_url": "Example: {{comfy_url}}",
1457 "Open workflow editor": "Open workflow editor",1429 "Open workflow editor": "Open workflow editor",
1458 "Create new workflow": "Create new workflow",1430 "Create new workflow": "Create new workflow",
@@ -1460,9 +1432,6 @@
1460 "Enhance": "Enhance",1432 "Enhance": "Enhance",
1461 "Refine": "Refine",1433 "Refine": "Refine",
1462 "Decrisper": "Decrisper",1434 "Decrisper": "Decrisper",
1463 "Sampling steps": "Sampling steps ()",
1464 "Width": "Width ()",
1465 "Height": "Height ()",
1466 "Resolution": "Resolution",1435 "Resolution": "Resolution",
1467 "Model": "Model",1436 "Model": "Model",
1468 "Sampling method": "Sampling method",1437 "Sampling method": "Sampling method",
@@ -1472,8 +1441,6 @@
1472 "DYN variants of SMEA samplers often lead to more varied output, but may fail at very high resolutions.": "DYN variants of SMEA samplers often lead to more varied output, but may fail at very high resolutions.",1441 "DYN variants of SMEA samplers often lead to more varied output, but may fail at very high resolutions.": "DYN variants of SMEA samplers often lead to more varied output, but may fail at very high resolutions.",
1473 "DYN": "DYN",1442 "DYN": "DYN",
1474 "Scheduler": "Scheduler",1443 "Scheduler": "Scheduler",
1475 "Restore Faces": "Restore Faces",
1476 "Hires. Fix": "Hires. Fix",
1477 "Upscaler": "Upscaler",1444 "Upscaler": "Upscaler",
1478 "Upscale by": "Upscale by",1445 "Upscale by": "Upscale by",
1479 "Denoising strength": "Denoising strength",1446 "Denoising strength": "Denoising strength",
@@ -1484,7 +1451,6 @@
1484 "Delete style": "Delete style",1451 "Delete style": "Delete style",
1485 "Common prompt prefix": "Common prompt prefix",1452 "Common prompt prefix": "Common prompt prefix",
1486 "sd_prompt_prefix_placeholder": "Use {prompt} to specify where the generated prompt will be inserted",1453 "sd_prompt_prefix_placeholder": "Use {prompt} to specify where the generated prompt will be inserted",
1487 "Negative common prompt prefix": "Negative common prompt prefix",
1488 "Character-specific prompt prefix": "Character-specific prompt prefix",1454 "Character-specific prompt prefix": "Character-specific prompt prefix",
1489 "Won't be used in groups.": "Won't be used in groups.",1455 "Won't be used in groups.": "Won't be used in groups.",
1490 "sd_character_prompt_placeholder": "Any characteristics that describe the currently selected character. Will be added after a common prompt prefix.\nExample: female, green eyes, brown hair, pink shirt",1456 "sd_character_prompt_placeholder": "Any characteristics that describe the currently selected character. Will be added after a common prompt prefix.\nExample: female, green eyes, brown hair, pink shirt",
@@ -1836,13 +1802,13 @@
1836 "Also delete the chat files": "Также удалить файлы чатов",1802 "Also delete the chat files": "Также удалить файлы чатов",
1837 "Delete the character?": "Удалить персонажа?",1803 "Delete the character?": "Удалить персонажа?",
1838 "Not a valid number": "Некорректное число",1804 "Not a valid number": "Некорректное число",
1839 "Author's Note depth updated": "Глубина заметок автора обновлена",1805 "Author's Note depth updated": "Глубина авторских заметок обновлена",
1840 "Author's Note frequency updated": "Частота заметок автора обновлена",1806 "Author's Note frequency updated": "Частота авторских заметок обновлена",
1841 "Not a valid position": "Некорректная позиция",1807 "Not a valid position": "Некорректная позиция",
1842 "Author's Note position updated": "Позиция заметок автора обновлена",1808 "Author's Note position updated": "Позиция авторских заметок обновлена",
1843 "Something went wrong. Could not save character's author's note.": "Что-то пошло не так. Не удалось сохранить заметки автора для этого персонажа.",1809 "Something went wrong. Could not save character's author's note.": "Что-то пошло не так. Не удалось сохранить авторские заметки для этого персонажа.",
1844 "Select a character before trying to use Author's Note": "Сначала необходимо выбрать персонажа",1810 "Select a character before trying to use Author's Note": "Сначала необходимо выбрать персонажа",
1845 "Author's Note text updated": "Текст заметок автора обновлён",1811 "Author's Note text updated": "Текст авторских заметок обновлён",
1846 "Group Validation": "Валидация группы",1812 "Group Validation": "Валидация группы",
1847 "Warning: Listed member ${0} does not exist as a character. It will be removed from the group.": "Предупреждение: персонаж ${0} не существует в виде карточки. Он будет удалён из группы.",1813 "Warning: Listed member ${0} does not exist as a character. It will be removed from the group.": "Предупреждение: персонаж ${0} не существует в виде карточки. Он будет удалён из группы.",
1848 "Group Chat could not be saved": "Не удалось сохранить групповой чат",1814 "Group Chat could not be saved": "Не удалось сохранить групповой чат",
@@ -1938,7 +1904,7 @@
1938 "Do you want to remove these fields before exporting?": "Желаете ли удалить эти поля перед экспортом?",1904 "Do you want to remove these fields before exporting?": "Желаете ли удалить эти поля перед экспортом?",
1939 "Save": "Сохранить",1905 "Save": "Сохранить",
1940 "Chat Lorebook": "Лорбук для чата",1906 "Chat Lorebook": "Лорбук для чата",
1941 "chat_world_template_txt": "Выбранный мир будет привязан к этому чату. Будет добавляться в промпт наряду с глобальным лорбуком и лором персонажа.",1907 "chat_world_template_txt": "Выбранный мир будет привязан к этому чату. Будет работать наряду с глобальным лорбуком и лором персонажа.",
1942 "world_button_title": "Лор персонажа\n\nНажмите, чтобы загрузить\nShift + ЛКМ, чтобы открыть диалог привязки мира",1908 "world_button_title": "Лор персонажа\n\nНажмите, чтобы загрузить\nShift + ЛКМ, чтобы открыть диалог привязки мира",
1943 "No auxillary Lorebooks set. Click here to select.": "Вспомогательный лорбук не выбран. Нажмите, чтобы выбрать.",1909 "No auxillary Lorebooks set. Click here to select.": "Вспомогательный лорбук не выбран. Нажмите, чтобы выбрать.",
1944 "ext_regex_user_input_desc": "Отправленные вами сообщения.",1910 "ext_regex_user_input_desc": "Отправленные вами сообщения.",
@@ -2010,7 +1976,7 @@
2010 "Imported tags:": "Импортируемые теги:",1976 "Imported tags:": "Импортируемые теги:",
2011 "Importing Tags": "Импорт тегов",1977 "Importing Tags": "Импорт тегов",
2012 "Couldn't import tags:": "Не удалось импортировать теги:",1978 "Couldn't import tags:": "Не удалось импортировать теги:",
2013 "Allow fallback models": "Разрешить fallback-модели",1979 "Allow fallback models": "Разрешить резервные модели",
2014 "Allow fallback providers": "Разрешить fallback-провайдеров",1980 "Allow fallback providers": "Разрешить fallback-провайдеров",
2015 "To use instruct formatting, switch to OpenRouter under Text Completion API.": "Переключитесь на OpenRouter в Text Completion API, чтобы использовать форматирование Instruct-режима.",1981 "To use instruct formatting, switch to OpenRouter under Text Completion API.": "Переключитесь на OpenRouter в Text Completion API, чтобы использовать форматирование Instruct-режима.",
2016 "Select providers. No selection = all providers.": "Выберите провайдера. Нет выбранного = выбраны все.",1982 "Select providers. No selection = all providers.": "Выберите провайдера. Нет выбранного = выбраны все.",
@@ -2044,14 +2010,14 @@
2044 "Title/Memo": "Название",2010 "Title/Memo": "Название",
2045 "Strategy": "Статус",2011 "Strategy": "Статус",
2046 "Position": "Позиция",2012 "Position": "Позиция",
2047 "Trigger %": "% срабатывания",2013 "Trigger %": "% срабатываний",
2048 "Use global": "Глоб. настройка",2014 "Use global": "Глоб. настройка",
2049 "Whole Words": "Целые слова",2015 "Whole Words": "Целые слова",
2050 "Non-recursable": "Не рекурсивная",2016 "Non-recursable": "Не рекурсивная",
2051 "Delay until recursion": "Рекурсивная",2017 "Delay until recursion": "Рекурсивная",
2052 "Toggle entry's active state.": "Вкл/выкл запись.",2018 "Toggle entry's active state.": "Вкл/выкл запись.",
2053 "Prioritize": "Важная",2019 "Prioritize": "Важная",
2054 "Prioritize this entry: When checked, this entry is prioritized out of all selections.If multiple are prioritized, the one with the highest 'Order' is chosen.": "Важная запись получает приоритет среди всех выбранных. Если важных записей несколько, выбирается та, у которой выше \"Очерёдность\".",2020 "Prioritize this entry: When checked, this entry is prioritized out of all selections.If multiple are prioritized, the one with the highest 'Order' is chosen.": "Важная запись получает приоритет среди всех выбранных. Если важных записей несколько, выбирается та, у которой выше \"Приоритет\".",
2055 "Group Weight": "Вес в группе",2021 "Group Weight": "Вес в группе",
2056 "A relative likelihood of entry activation within the group": "Относительная вероятность активации записи в рамках группы",2022 "A relative likelihood of entry activation within the group": "Относительная вероятность активации записи в рамках группы",
2057 "Sticky": "Липучка",2023 "Sticky": "Липучка",
@@ -2067,7 +2033,7 @@
2067 "Switch to plaintext mode": "Вкл/выкл режим чистого текста",2033 "Switch to plaintext mode": "Вкл/выкл режим чистого текста",
2068 "Exclude": "Режим исключения",2034 "Exclude": "Режим исключения",
2069 "Switch the Character/Tags filter around to exclude the listed characters and tags from matching for this entry": "Инвертировать логику: для выбранных в фильтре персонажей/тегов данная запись активна НЕ БУДЕТ",2035 "Switch the Character/Tags filter around to exclude the listed characters and tags from matching for this entry": "Инвертировать логику: для выбранных в фильтре персонажей/тегов данная запись активна НЕ БУДЕТ",
2070 "Apply current sorting as Order": "Настроить Очерёдность в соответствии с текущей сортировкой",2036 "Apply current sorting as Order": "Настроить Приоритет в соответствии с текущей сортировкой",
2071 "Create a new World Info": "Создать новый мир",2037 "Create a new World Info": "Создать новый мир",
2072 "Enter a name for the new file:": "Название нового файла:",2038 "Enter a name for the new file:": "Название нового файла:",
2073 "Inclusion Groups ensure only one entry from a group is activated at a time, if multiple are triggered.Documentation: World Info - Inclusion Group": "Если сразу несколько записей из одной группы окажутся активированными, по факту сработает только одна. Одна запись может входить в несколько групп, отделяются запятыми. Раздел в документации: World Info - Inclusion Group",2039 "Inclusion Groups ensure only one entry from a group is activated at a time, if multiple are triggered.Documentation: World Info - Inclusion Group": "Если сразу несколько записей из одной группы окажутся активированными, по факту сработает только одна. Одна запись может входить в несколько групп, отделяются запятыми. Раздел в документации: World Info - Inclusion Group",
@@ -2165,7 +2131,7 @@
2165 "openai_reasoning_effort_high": "Подробные",2131 "openai_reasoning_effort_high": "Подробные",
2166 "Persona Lore Alt+Click to open the lorebook": "Лорбук данной персоны\nAlt + ЛКМ чтобы открыть лорбук",2132 "Persona Lore Alt+Click to open the lorebook": "Лорбук данной персоны\nAlt + ЛКМ чтобы открыть лорбук",
2167 "Persona Lorebook for": "Лорбук для персоны",2133 "Persona Lorebook for": "Лорбук для персоны",
2168 "persona_world_template_txt": "Выбранная Информация о мире будет привязана к этой персоне. Информация будет добавляться в каждом промпте вместе с глобальным лорбуком и лорбуками персонажа и чата.",2134 "persona_world_template_txt": "Выбранный мир будет привязан к этой персоне. Будет работать вместе с глобальным лорбуком и лорбуками персонажа и чата.",
2169 "Global list": "Глобальный список",2135 "Global list": "Глобальный список",
2170 "Preset-specific list": "Список для данного пресета",2136 "Preset-specific list": "Список для данного пресета",
2171 "Banned tokens/strings are being sent in the request.": "Запрещённые токены и строки отсылаются в запросе.",2137 "Banned tokens/strings are being sent in the request.": "Запрещённые токены и строки отсылаются в запросе.",
@@ -2280,7 +2246,7 @@
2280 "Character Words": "Слов отправлено персонажем",2246 "Character Words": "Слов отправлено персонажем",
2281 "stats_header_User": "пользователю",2247 "stats_header_User": "пользователю",
2282 "stats_header_Character": "персонажу",2248 "stats_header_Character": "персонажу",
2283 "${0} Stats": "Статистика по ${0}", 2249 "${0} Stats": "Статистика по ${0}",
2284 "Context": "Контекст",2250 "Context": "Контекст",
2285 "Response": "Ответ",2251 "Response": "Ответ",
2286 "Connected": "Подключено",2252 "Connected": "Подключено",
@@ -2521,6 +2487,16 @@
2521 "Automatically generated chat backups.": "Автоматически создаваемые бэкапы чатов.",2487 "Automatically generated chat backups.": "Автоматически создаваемые бэкапы чатов.",
2522 "Settings Backups": "Копии настроек",2488 "Settings Backups": "Копии настроек",
2523 "Automatically generated settings backups.": "Автоматически создаваемые бэкапы настроек.",2489 "Automatically generated settings backups.": "Автоматически создаваемые бэкапы настроек.",
2490 "Files": "Файлы",
2491 "Files that are not associated with chat messages or Data Bank. WILL DELETE MANUAL UPLOADS!": "Файлы, не связанные ни с одним сообщением или банком данных. ЗАГРУЖЕННЫЕ ВРУЧНУЮ ФАЙЛЫ ТАКЖЕ БУДУТ УДАЛЕНЫ!",
2492 "Images": "Изображения",
2493 "Images that are not associated with chat messages. WILL DELETE MANUAL UPLOADS!": "Картинки, не связанные ни с одним сообщением. ЗАГРУЖЕННЫЕ ВРУЧНУЮ ФАЙЛЫ ТАКЖЕ БУДУТ УДАЛЕНЫ!",
2494 "Avatar Thumbnails": "Превью для аватарок",
2495 "Thumbnails for avatars of missing or deleted characters.": "Превью для аватарок удалённых персонажей",
2496 "Background Thumbnails": "Превью для фонов",
2497 "Thumbnails for missing or deleted backgrounds.": "Превью для удалённых фоновых изображений",
2498 "Persona Thumbnails": "Превью для персон",
2499 "Thumbnails for missing or deleted personas.": "Превью для удалённых персон",
2524 "Delete all items in this category": "Удалить всё в этой категории",2500 "Delete all items in this category": "Удалить всё в этой категории",
2525 "View item content": "Посмотреть содержимое",2501 "View item content": "Посмотреть содержимое",
2526 "Download item": "Скачать содержимое",2502 "Download item": "Скачать содержимое",
@@ -2583,5 +2559,96 @@
2583 "Moonshot AI API Key": "Ключ от API Moonshot AI",2559 "Moonshot AI API Key": "Ключ от API Moonshot AI",
2584 "Moonshot AI Model": "Модель Moonshot AI",2560 "Moonshot AI Model": "Модель Moonshot AI",
2585 "AI/ML API Key": "Ключ от API AI/ML",2561 "AI/ML API Key": "Ключ от API AI/ML",
2586 "AI/ML Model": "Модель AI/ML"2562 "AI/ML Model": "Модель AI/ML",
2563 "Replace Character": "Заменить персонажа",
2564 "Choose a new character card to replace this character with.": "Выберите, каким персонажем хотите заменить текущего.",
2565 "All chats, assets and group memberships will be preserved, but local changes to the character data will be lost.": "Чаты с персонажем, его ассеты и членство в группах сохранятся. Однако сделанные вами изменения в карточке будут утеряны.",
2566 "Proceed?": "Продолжить?",
2567 "No Creator's Notes provided.": "Создатель не оставил примечаний.",
2568 "No auxiliary Lorebooks set. Click here to select.": "Вспомогательных лорбуков нет. ЛКМ, чтобы выбрать.",
2569 "Persona Title (optional, display only)": "Сноска (не влияет на чат, только в интерфейсе)",
2570 "This entry will not be recursively activated by other entries.": "Не будет активироваться другими записями.",
2571 "This entry will not activate other entries recursively.": "Не будет активировать другие записи.",
2572 "This entry can only be activated on recursive checking.": "Активируется только другими записями.",
2573 "This entry will be included ignoring budget constraints, assuming all other checks pass.": "Будет включена в промпт даже при превышении бюджета токенов (при условии, что все остальные условия соблюдены)",
2574 "Ignore budget": "Игнорировать бюджет",
2575 "Filter to Generation Triggers": "Только для опред. типов генераций",
2576 "Apply current sorting as Order": "Выставить приоритеты по текущей сортировке",
2577 "Apply your current sorting to the \"Order\" field. The Order values will go down from the chosen number.": "Заполнить поле \"Приоритет\" в соответствии с текущей сортировкой для всех записей. Поля будут заполнены значениями, начиная с этого числа:",
2578 "More than 100 entries in this world. If you don't choose a number higher than that, the lower entries will default to 0.<br />(Usual default: 100)<br />Minimum: ${0}": "В этом лорбуке больше 100 записей! Если не выставить число больше 100, то последние записи будут иметь приоритет 0.<br/>(Стандартное значение: 100)<br/>(Минимальное число: ${0})",
2579 "Apply": "Применить",
2580 "Apply Current Sorting": "Выставить приоритеты по сортировке",
2581 "Delete the entry with UID: ${0}?": "Удалить запись с UID: ${0}?",
2582 "This action is irreversible!": "Отменить будет невозможно!",
2583 "Recursion Level": "Уровень рекурсии",
2584 "delay_until_recursion_level": "Насколько глубоко должна зайти рекурсия, чтобы иметь возможность активировать эту запись.\n\nИзначально рекурсия делает проход по 1 уровню. Если там не находится подходящих записей, то она идёт на 2 уровень, и там повторяет процесс.\nИ так, пока не дойдёт до самого глубокого уровня.\n\nАктуально только для рекурсивных записей (с отмеченной галочкой \"Рекурсивная\").",
2585 "A number lower than the entry count has been chosen. All entries below that will default to 0.": "Введённое число меньше, чем общее кол-во записей. Всем записям внизу списка присвоен приоритет 0.",
2586 "Invalid number: ${0}": "Некорректное число: ${0}",
2587 "Allow animations for WEBP backgrounds. This is only a change for the selection menu.": "Разрешить анимации в WEBP фонах. Актуально только для меню выбора.",
2588 "sd_refine_mode_txt": "Редактировать промпты перед генерацией",
2589 "sd_refine_mode": "Отправлять промпты на проверку вам, прежде чем пересылать в API",
2590 "sd_function_tool_txt": "Использовать вызов функций",
2591 "sd_function_tool": "Использовать функцию, чтобы понимать, когда пора генерировать изображение",
2592 "sd_interactive_mode_txt": "Интерактивный режим",
2593 "sd_interactive_mode": "Автоматически генерировать изображения, когда появляется сообщение вида \"send me a picture of a cat\"",
2594 "sd_multimodal_captioning_txt": "Мультимодальный промптинг",
2595 "sd_multimodal_captioning": "Использовать мультимодальный промптинг для создания портретов пользователя и персонажа, основываясь на их аватарках",
2596 "sd_free_extend_txt": "Дописывать промпты в свободном режиме",
2597 "sd_free_extend_small": "(для интерактивного режима или команд)",
2598 "sd_free_extend": "Автоматически дописывать промпты в свободном режиме (для всего, что не касается фонов и портретов), используя текущую выбранную LLM",
2599 "sd_snap_txt": "Корректировать автоматически выбранное разрешение",
2600 "sd_snap": "Подгонять картинки с фиксированным соотношением сторон (фоны, портреты) к ближайшему известному разрешению (рекомендуется для SDXL)",
2601 "Source": "API",
2602 "Hint: Save an API key in AI Horde API settings to use it here.": "Подсказка: сохраните ключ от API в настройках API на сайте AI Horde, чтобы использовать его автоматически.",
2603 "Sanitize prompts (recommended)": "Прогонять промпты через санитайзер (рекомендуется)",
2604 "Sampling method": "Метод сэмплинга",
2605 "Resolution": "Целевое разрешение",
2606 "Sampling steps": "Кол-во шагов",
2607 "Width": "Ширина",
2608 "Height": "Высота",
2609 "Not all samplers supported.": "Поддерживает не все виды сэмплинга.",
2610 "(-1 for random)": "(-1 для случайного)",
2611 "Common prompt prefix": "Фиксированный префикс для промптов",
2612 "Preset for prompt prefix and negative prompt": "Пресет для префиксов промпта и для негативных промптов",
2613 "Style": "Стиль",
2614 "Negative common prompt prefix": "Фиксированный префикс для негативных промптов",
2615 "Chat Message Visibility (by source)": "Видимость сообщений в чате (по источникам)",
2616 "Uncheck to hide the extension's messages in chat prompts.": "Снимите галочку, чтобы скрыть из промптов сообщения, приходящие из этого источника.",
2617 "Extensions Menu": "Меню расширений",
2618 "Slash Command": "Слэш-команды",
2619 "Interactive Mode": "Интерактивный режим",
2620 "Function Tool": "Функция",
2621 "Save style": "Сохранить стиль",
2622 "Delete style": "Удалить стиль",
2623 "Are you sure you want to delete the style \"${0}\"?": "Вы точно хотите удалить стиль \"${0}\"?",
2624 "API Key": "Ключ от API",
2625 "These settings only apply to DALL-E 3": "Данные настройки применяются только для DALL-E 3",
2626 "Image Style": "Стиль изображения",
2627 "Image Quality": "Качество изображения",
2628 "Standard": "Стандарт",
2629 "sd_res_512x512": "512x512 (1:1, иконки, аватарки)",
2630 "sd_res_600x600": "600x600(1:1, иконки, аватарки)",
2631 "sd_res_512x768": "512x768 (2:3, вертикальная аватарка для карточки)",
2632 "sd_res_768x512": "768x512 (3:2, 35мм плёнка для кинофильмов, альбомн. ориентация)",
2633 "sd_res_960x540": "960x540 (16:9, обои, альбомн. ориентация)",
2634 "sd_res_540x960": "540x960 (9:16, обои, книжн. ориентация)",
2635 "sd_res_1920x1088": "1920x1088 (16:9, обои, альбомн. ориентация)",
2636 "sd_res_1088x1920": "1088x1920 (9:16, обои, книжн. ориентация)",
2637 "sd_res_1280x720": "1280x720 (16:9, обои, альбомн. ориентация)",
2638 "sd_res_720x1280": "720x1280 (9:16, обои, книжн. ориентация)",
2639 "Click to set": "Нажмите чтобы задать",
2640 "Prompt Upsampling": "Применять Prompt Upsampling",
2641 "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation.": "При активации автоматически модифицирует промпт, чтобы сделать процесс генерации более креативным.",
2642 "Important:": "Важно:",
2643 "The server must be accessible from the SillyTavern host machine.": " Адрес должен быть доступен с сервера SillyTavern.",
2644 "Open workflow editor": "Открыть редактор воркфлоу",
2645 "Create new workflow": "Создать новый воркфлоу",
2646 "Delete workflow": "Удалить воркфлоу",
2647 "Delete the workflow? This action is irreversible.": "Удалить этот воркфлоу? Отменить будет невозможно.",
2648 "Swap width and height": "Поменять местами ширину и высоту",
2649 "Authentication (optional)": "Данные для аутентификации (необязательно)",
2650 "sd_auto_auth_warning_1": " запускайте Stable Diffusion с флагом",
2651 "sd_auto_auth_warning_2": "! Адрес SD должен быть доступен с сервера SillyTavern.",
2652 "Upscale by": "Множитель апскейлинга",
2653 "Hires steps (2nd pass)": "Кол-во шагов Hires (на втором проходе)"
2587}2654}
public/script.js+1 -1
@@ -10808,7 +10808,7 @@ jQuery(async function () {
10808 }10808 }
10809 } break;10809 } break;
10810 case 'replace_update': {10810 case 'replace_update': {
10811 const confirm = await Popup.show.confirm('Replace Character', '<p>Choose a new character card to replace this character with.</p>All chats, assets and group memberships will be preserved, but local changes to the character data will be lost.<br />Proceed?');10811 const confirm = await Popup.show.confirm(t`Replace Character`, '<p>' + t`Choose a new character card to replace this character with.` + '</p>' + t`All chats, assets and group memberships will be preserved, but local changes to the character data will be lost.` + '<br />' + t`Proceed?`);
10812 if (confirm) {10812 if (confirm) {
10813 async function uploadReplacementCard(e) {10813 async function uploadReplacementCard(e) {
10814 const file = e.target.files[0];10814 const file = e.target.files[0];
public/scripts/extensions/stable-diffusion/index.js+13 -13
@@ -57,7 +57,7 @@ import { callGenericPopup, Popup, POPUP_TYPE } from '../../popup.js';
57import { commonEnumProviders } from '../../slash-commands/SlashCommandCommonEnumsProvider.js';57import { commonEnumProviders } from '../../slash-commands/SlashCommandCommonEnumsProvider.js';
58import { ToolManager } from '../../tool-calling.js';58import { ToolManager } from '../../tool-calling.js';
59import { MacrosParser } from '../../macros.js';59import { MacrosParser } from '../../macros.js';
60import { t } from '../../i18n.js';60import { t, translate } from '../../i18n.js';
61import { oai_settings } from '../../openai.js';61import { oai_settings } from '../../openai.js';
6262
63export { MODULE_NAME };63export { MODULE_NAME };
@@ -650,7 +650,7 @@ async function onDeleteStyleClick() {
650 return;650 return;
651 }651 }
652652
653 const confirmed = await callGenericPopup(`Are you sure you want to delete the style "${selectedStyle}"?`, POPUP_TYPE.CONFIRM, '', { okButton: 'Delete', cancelButton: 'Cancel' });653 const confirmed = await callGenericPopup(t`Are you sure you want to delete the style "${selectedStyle}"?`, POPUP_TYPE.CONFIRM, '', { okButton: 'Delete', cancelButton: 'Cancel' });
654654
655 if (!confirmed) {655 if (!confirmed) {
656 return;656 return;
@@ -925,16 +925,16 @@ function onADetailerFaceChange() {
925}925}
926926
927const resolutionOptions = {927const resolutionOptions = {
928 sd_res_512x512: { width: 512, height: 512, name: '512x512 (1:1, icons, profile pictures)' },928 sd_res_512x512: { width: 512, height: 512, name: translate('512x512 (1:1, icons, profile pictures)', 'sd_res_512x512') },
929 sd_res_600x600: { width: 600, height: 600, name: '600x600 (1:1, icons, profile pictures)' },929 sd_res_600x600: { width: 600, height: 600, name: translate('600x600 (1:1, icons, profile pictures)', 'sd_res_600x600') },
930 sd_res_512x768: { width: 512, height: 768, name: '512x768 (2:3, vertical character card)' },930 sd_res_512x768: { width: 512, height: 768, name: translate('512x768 (2:3, vertical character card)', 'sd_res_512x768') },
931 sd_res_768x512: { width: 768, height: 512, name: '768x512 (3:2, horizontal 35-mm movie film)' },931 sd_res_768x512: { width: 768, height: 512, name: translate('768x512 (3:2, horizontal 35-mm movie film)', 'sd_res_768x512') },
932 sd_res_960x540: { width: 960, height: 540, name: '960x540 (16:9, horizontal wallpaper)' },932 sd_res_960x540: { width: 960, height: 540, name: translate('960x540 (16:9, horizontal wallpaper)', 'sd_res_960x540') },
933 sd_res_540x960: { width: 540, height: 960, name: '540x960 (9:16, vertical wallpaper)' },933 sd_res_540x960: { width: 540, height: 960, name: translate('540x960 (9:16, vertical wallpaper)', 'sd_res_540x960') },
934 sd_res_1920x1088: { width: 1920, height: 1088, name: '1920x1088 (16:9, 1080p, horizontal wallpaper)' },934 sd_res_1920x1088: { width: 1920, height: 1088, name: translate('1920x1088 (16:9, 1080p, horizontal wallpaper)', 'sd_res_1920x1088') },
935 sd_res_1088x1920: { width: 1088, height: 1920, name: '1088x1920 (9:16, 1080p, vertical wallpaper)' },935 sd_res_1088x1920: { width: 1088, height: 1920, name: translate('1088x1920 (9:16, 1080p, vertical wallpaper)', 'sd_res_1088x1920') },
936 sd_res_1280x720: { width: 1280, height: 720, name: '1280x720 (16:9, 720p, horizontal wallpaper)' },936 sd_res_1280x720: { width: 1280, height: 720, name: translate('1280x720 (16:9, 720p, horizontal wallpaper)', 'sd_res_1280x720') },
937 sd_res_720x1280: { width: 720, height: 1280, name: '720x1280 (9:16, 720p, vertical wallpaper)' },937 sd_res_720x1280: { width: 720, height: 1280, name: translate('720x1280 (9:16, 720p, vertical wallpaper)', 'sd_res_720x1280') },
938 sd_res_1024x1024: { width: 1024, height: 1024, name: '1024x1024 (1:1, SDXL)' },938 sd_res_1024x1024: { width: 1024, height: 1024, name: '1024x1024 (1:1, SDXL)' },
939 sd_res_1152x896: { width: 1152, height: 896, name: '1152x896 (9:7, SDXL)' },939 sd_res_1152x896: { width: 1152, height: 896, name: '1152x896 (9:7, SDXL)' },
940 sd_res_896x1152: { width: 896, height: 1152, name: '896x1152 (7:9, SDXL)' },940 sd_res_896x1152: { width: 896, height: 1152, name: '896x1152 (7:9, SDXL)' },
@@ -3847,7 +3847,7 @@ async function onComfyNewWorkflowClick() {
3847}3847}
38483848
3849async function onComfyDeleteWorkflowClick() {3849async function onComfyDeleteWorkflowClick() {
3850 const confirm = await callGenericPopup('Delete the workflow? This action is irreversible.', POPUP_TYPE.CONFIRM, '', { okButton: 'Delete', cancelButton: 'Cancel' });3850 const confirm = await callGenericPopup(t`Delete the workflow? This action is irreversible.`, POPUP_TYPE.CONFIRM, '', { okButton: t`Delete`, cancelButton: t`Cancel` });
3851 if (!confirm) {3851 if (!confirm) {
3852 return;3852 return;
3853 }3853 }
public/scripts/extensions/stable-diffusion/settings.html+1 -1
@@ -260,7 +260,7 @@
260 <span data-i18n="Click to set">Click to set</span>260 <span data-i18n="Click to set">Click to set</span>
261 </div>261 </div>
262 </div>262 </div>
263 <label class="checkbox_label marginBot5" for="sd_bfl_upsampling" title="Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation.">263 <label class="checkbox_label marginBot5" for="sd_bfl_upsampling" data-i18n="[title]Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation." title="Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation.">
264 <input id="sd_bfl_upsampling" type="checkbox" />264 <input id="sd_bfl_upsampling" type="checkbox" />
265 <span data-i18n="Prompt Upsampling">265 <span data-i18n="Prompt Upsampling">
266 Prompt Upsampling266 Prompt Upsampling
public/scripts/world-info.js+6 -6
@@ -2348,21 +2348,21 @@ async function displayWorldEntries(name, data, navigation = navigation_option.no
2348 const entryCount = Object.keys(data.entries).length;2348 const entryCount = Object.keys(data.entries).length;
2349 const moreThan100 = entryCount > 100;2349 const moreThan100 = entryCount > 100;
23502350
2351 let content = '<span>Apply your current sorting to the "Order" field. The Order values will go down from the chosen number.</span>';2351 let content = '<span>' + t`Apply your current sorting to the "Order" field. The Order values will go down from the chosen number.` + '</span>';
2352 if (moreThan100) {2352 if (moreThan100) {
2353 content += `<div class="m-t-1"><i class="fa-solid fa-triangle-exclamation" style="color: #FFD43B;"></i> More than 100 entries in this world. If you don't choose a number higher than that, the lower entries will default to 0.<br />(Usual default: 100)<br />Minimum: ${entryCount}</div>`;2353 content += '<div class="m-t-1"><i class="fa-solid fa-triangle-exclamation" style="color: #FFD43B;"></i> ' + t`More than 100 entries in this world. If you don't choose a number higher than that, the lower entries will default to 0.<br />(Usual default: 100)<br />Minimum: ${entryCount}` + '</div>';
2354 }2354 }
23552355
2356 const result = await Popup.show.input('Apply Current Sorting', content, '100', { okButton: 'Apply', cancelButton: 'Cancel' });2356 const result = await Popup.show.input(t`Apply Current Sorting`, content, '100', { okButton: t`Apply`, cancelButton: 'Cancel' });
2357 if (!result) return;2357 if (!result) return;
23582358
2359 const start = Number(result);2359 const start = Number(result);
2360 if (isNaN(start) || start < 0) {2360 if (isNaN(start) || start < 0) {
2361 toastr.error('Invalid number: ' + result, 'Apply Current Sorting');2361 toastr.error(t`Invalid number: ${result}`, t`Apply Current Sorting`);
2362 return;2362 return;
2363 }2363 }
2364 if (start < entryCount) {2364 if (start < entryCount) {
2365 toastr.warning('A number lower than the entry count has been chosen. All entries below that will default to 0.', 'Apply Current Sorting');2365 toastr.warning(t`A number lower than the entry count has been chosen. All entries below that will default to 0.`, t`Apply Current Sorting`);
2366 }2366 }
23672367
2368 // We need to sort the entries here, as the data source isn't sorted2368 // We need to sort the entries here, as the data source isn't sorted
@@ -3728,7 +3728,7 @@ export async function deleteWorldInfoEntry(data, uid, { silent = false } = {}) {
3728 return;3728 return;
3729 }3729 }
37303730
3731 const confirmation = silent || await Popup.show.confirm(`Delete the entry with UID: ${uid}?`, 'This action is irreversible!');3731 const confirmation = silent || await Popup.show.confirm(t`Delete the entry with UID: ${uid}?`, t`This action is irreversible!`);
3732 if (!confirmation) {3732 if (!confirmation) {
3733 return false;3733 return false;
3734 }3734 }