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, +172 -105Showing whitespace changes
public/index.html+1 -1
@@ -6437,7 +6437,7 @@
64376437 </span>
64386438 <div class="flex-container">
64396439 <div class="flex-container flexFlowColumn">
64406440 <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.">
64416441 <input type="checkbox" name="excludeRecursion" />
64426442 <span data-i18n="Non-recursable">
64436443 Non-recursable
public/locales/ru-ru.json+150 -83
@@ -40,7 +40,7 @@
4040 "Smoothing Factor": "Коэффициент сглаживания",
4141 "No Repeat Ngram Size": "Размер no_repeat_ngram",
4242 "Min Length": "Мин. длина",
4343 "Alternative server URL (leave empty to use the default value).": "URL альтернативного серверареверс-прокси (оставьте пустым для стандартного значения)",
4444 "Remove your real OAI API Key from the API panel BEFORE typing anything into this box": "Удалите свой личный OAI API Key из панели API, и ТОЛЬКО ПОСЛЕ ЭТОГО вводите что-то сюда",
4545 "We cannot provide support for problems encountered while using an unofficial OpenAI proxy": "Мы не сможем предоставить помощь с проблемами, с которыми вы столкнетесь при использовании неофициальных прокси для OpenAI",
4646 "Context Size (tokens)": "Размер контекста (в токенах)",
@@ -145,7 +145,7 @@
145145 "View API Usage Metrics": "Посмотреть статистику использования API",
146146 "Show External models (provided by API)": "Показать \"сторонние\" модели (предоставленные API)",
147147 "Allow fallback routes": "Разрешить резервные маршруты",
148148 "Allow fallback routes Description": "Автоматически выбирает альтернативную модель, если выбранная модель не может удовлетворитьобслужить ваш запрос.",
149149 "OpenRouter API Key": "Ключ от OpenRouter API",
150150 "OpenRouter Model": "Модель OpenRouter",
151151 "View Remaining Credits": "Посмотреть оставшиеся кредиты",
@@ -154,7 +154,7 @@
154154 "View hidden API keys": "Посмотреть скрытые API-ключи",
155155 "Advanced Formatting": "Расширенное форматирование",
156156 "Context Template": "Шаблон контекста",
157157 "Replace Macro in Stop Strings": "Заменять макросы в пользовательских стоп-строках",
158158 "Story String": "Общий шаблон",
159159 "Example Separator": "Разделитель примеров сообщений",
160160 "Chat Start": "Начало чата",
@@ -184,7 +184,7 @@
184184 "Scan Depth": "Глубина сканирования",
185185 "Case-Sensitive": "С учетом регистра",
186186 "Match Whole Words": "Только полное совпадение",
187187 "Use global setting": "Использовать глобальнуюГлоб. настройкунастройка",
188188 "Yes": "Да",
189189 "No": "Нет",
190190 "Context %": "Процент контекста",
@@ -201,7 +201,7 @@
201201 "Bubbles": "Пузыри",
202202 "No Blur Effect": "Отключить размытие",
203203 "No Text Shadows": "Отключить тень текста",
204204 "Waifu Mode": "РeжимРежим Вайфувайфу",
205205 "Message Timer": "Таймер сообщений",
206206 "Model Icon": "Значки моделей",
207207 "Advanced Character Search": "Расширенный поиск по персонажам",
@@ -279,7 +279,7 @@
279279 "Impersonate": "Перевоплощение",
280280 "Regenerate": "Повторная генерация",
281281 "Message Sound": "Звук сообщения",
282282 "Author's Note": "ЗаметкиАвторские авторазаметки",
283283 "Replace empty message": "Заменять пустые сообщения",
284284 "Send this text instead of nothing when the text box is empty.": "Этот текст будет отправлен в случае отсутствия текста на отправку.",
285285 "Unrestricted maximum value for the context slider": "Убрать потолок для ползунка контекста. Включайте только если точно понимаете, что делаете",
@@ -322,8 +322,8 @@
322322 "Order ↘": "Порядок ↘",
323323 "UID ↗": "UID ↗",
324324 "UID ↘": "UID ↘",
325325 "Trigger% ↗": "Триггер% срабатываний ↗",
326326 "Trigger% ↘": "Триггер% срабатываний ↘",
327327 "Depth:": "Глубина:",
328328 "Character Lore First": "Сначала лор персонажа",
329329 "Global Lore First": "Сначала глобальный лор",
@@ -334,12 +334,17 @@
334334 "Exclude from recursion": "Исключить из рекурсии",
335335 "Entry Title/Memo": "Название или заметка о записи",
336336 "Position:": "Положение:",
337- "T_Position": "↑Char: Перед определениями Персонажа\n↓Char: После определений Персонажа\n↑AN: Перед Пометок автора\n↓AN: После Пометок автора\n@D: На глубине",
337+ "T_Position": "↑Перс: Перед описанием персонажа\n↓Перс: После описания персонажа\n↑ПС: Перед примерами сообщений\n↓ПС: После примеров сообщений\n↑АЗ: Перед авторскими заметками\n↓АЗ: После авторских заметок\nНа глуб. ⚙️: на глубине (система)\nНа глуб. 👤: на глубине (пользователь)\nНа глуб. 🤖: на глубине (ассистент)",
338338 "Before Char Defs": "↑Перс.",
339339 "After Char Defs": "↓Перс.",
340340 "Before AN": "↑АЗ",
341341 "After AN": "↓АЗ",
342342 "OrderBefore EM": "Очерёдность:↑ПС",
343+ "After EM": "↓ПС",
344+ "at Depth System": "На глуб. ⚙️",
345+ "at Depth User": "На глуб. 👤",
346+ "at Depth AI": "На глуб. 🤖",
347+ "Order": "Приоритет:",
343348 "Update a theme file": "Обновить файл темы",
344349 "Save as a new theme": "Сохранить как новую тему",
345350 "Minimum number of blacklisted words detected to trigger an auto-swipe": "Минимальное количество обнаруженных запрещённых слов, при котором срабатывает авто-свайп.",
@@ -385,7 +390,7 @@
385390 "Remove text shadow effect": "Удаление эффекта тени от текста.",
386391 "Reduce chat height, and put a static sprite behind the chat window": "Уменьшить высоту чата и поместить статичный спрайт за окном чата.",
387392 "Always show the full list of the Message Actions context items for chat messages, instead of hiding them behind '...'": "Всегда показывать полный список действий с сообщением, а не прятать их за '...'.",
388393 "Alternative UI for numeric sampling parameters with fewer steps": "АльтернативныйУменьшить пользовательскийкол-во интерфейсшагов для числовых параметров выборки с меньшим, количествомрегулируемых шаговслайдерами.",
389394 "Entirely unrestrict all numeric sampling parameters": "Снять ограничения со всех числовых сэмплеров.",
390395 "Time the AI's message generation, and show the duration in the chat log": "Время генерации сообщений ИИ и его показ в журнале чата.",
391396 "Show a timestamp for each message in the chat log": "Показывать временную метку для каждого сообщения в журнале чата.",
@@ -409,7 +414,7 @@
409414 "If checked and the character card contains a jailbreak override (Post History Instruction), use that instead": "При включении этой опции, пользовательский джейлбрейк будет заменяться кастомным джейлбрейком из карточки (при его наличии).",
410415 "Show actual file names on the disk, in the characters list display only": "Отображение названий файлов персонажей на диске, только в списке персонажей.",
411416 "Prompt to import embedded card tags on character import. Otherwise embedded tags are ignored": "Запрашивать разрешения на импорт встроенных тегов карт при импорте персонажей. В противном случае встроенные теги игнорируются.",
412417 "Hide character definitions from the editor panel behind a spoiler button": "Спрятать определенияописания персонажей из панели редактора за кнопку спойлера.",
413418 "Show a button in the input area to ask the AI to continue (extend) its last message": "Показывать на форме ответа кнопку, по нажатии на которую ИИ продолжит своё предыдущее сообщение.",
414419 "Show arrow buttons on the last in-chat message to generate alternative AI responses. Both PC and mobile": "Показывать кнопки со стрелками на последнем сообщении в чате, чтобы генерировать альтернативные ответы ИИ. Как для ПК, так и для мобильных устройств.",
415420 "Allow using swiping gestures on the last in-chat message to trigger swipe generation. Mobile only, no effect on PC": "Позволяет использовать жесты смахивания на последнем сообщении в чате, чтобы вызвать альтернативную генерацию. Только для мобильных устройств, на ПК не работает.",
@@ -427,8 +432,8 @@
427432 "Your Persona": "Ваша персона",
428433 "Show notifications on switching personas": "Показывать уведомления при смене персоны",
429434 "In Story String / Prompt Manager": "В общем шаблоне / Менеджере промптов",
430435 "Top of Author's Note": "Сверху от заметокавторских авторазаметок",
431436 "Bottom of Author's Note": "Снизу от заметокавторских авторазаметок",
432437 "How do I use this?": "Как пользоваться?",
433438 "More...": "Ещё...",
434439 "Link to World Info": "Ссылка на информацию о мире",
@@ -436,7 +441,7 @@
436441 "Scenario Override": "Перезапись сценария",
437442 "Rename": "Переименовать",
438443 "Character Description": "Описание персонажа",
439444 "Creator's Notes": "ЗаметкиПримечание от создателя",
440445 "A-Z": "A-Z",
441446 "Z-A": "Z-A",
442447 "Newest": "Сначала новые",
@@ -471,7 +476,7 @@
471476 "Enter your name": "Введите свое имя",
472477 "Name this character": "Назовите этого персонажа",
473478 "Search / Create Tags": "Искать / Создать тэги",
474479 "Describe your character's physical and mental traits here.": "Опишите ментальныехарактер иперсонажа физическиеи чертыего персонажавнешность",
475480 "This will be the first message from the character that starts every chat.": "Это будет первое сообщение от персонажа при начале нового чата",
476481 "Chat Name (Optional)": "Название чата (необязательно)",
477482 "Search...": "Поиск...",
@@ -483,10 +488,10 @@
483488 "(Write a comma-separated list of tags)": "(Список тегов через запятую)",
484489 "(A brief description of the personality)": "(Краткое описание личности)",
485490 "(Circumstances and context of the interaction)": "(Обстоятельства и контекст этого диалога)",
486491 "(Examples of chat dialog. Begin each example with START on a new line.)": "(Примеры диалога. Начинайте каждый пример ссо START илии на новой строкойстроке.)",
487492 "Type here...": "Пишите здесь...",
488493 "Comma separated (required)": "Через запятую (обязательное поле)",
489494 "What this keyword should mean to the AI, sent verbatim": "ЧтоОбъясните этоИИ, ключевоечто словоон должнодолжен означатьзнать дляоб ИИ,этом отправляетсяключевом дословнослове",
490495 "Filter to Character(s)": "Фильтр по персонажу(ам)",
491496 "Character Exclusion": "Исключить персонажей",
492497 "Inclusion Group": "Группа записей",
@@ -569,12 +574,12 @@
569574 "Remove": "Убрать",
570575 "Select a World Info file for": "Выбрать файл с миром для",
571576 "Primary Lorebook": "Основной лорбук",
572577 "A selected World Info will be bound to this character as its own Lorebook.": "Информация оДанный миремир будет привязанапривязан к персонажу как его собственный лорбук.",
573578 "When generating an AI reply, it will be combined with the entries from a global World Info selector.": "Когда ИИПри генерируетгенерации ответответа, онданный будетлорбук совмещёнбудет сработать записямивместе изс глобально выбранноговыбранным миралорбуком.",
574579 "Exporting a character would also export the selected Lorebook file embedded in the JSON data.": "При экспорте персонажа вместе с ним также выгрузится выбранный лорбук в виде JSON.",
575580 "Additional Lorebooks": "Вспомогательные лорбуки",
576581 "Associate one or more auxillary Lorebooks with this character.": "Привязать к этому персонажу один или больше вспомогательных лорбуков.",
577582 "NOTE: These choices are optional and won't be preserved on character export!": "ВНИМАНИЕ: эти выборы необязательныевспомогательные илорбуки не будут сохраненывыгружены при экспорте персонажа!",
578583 "Rename chat file": "Переименовать чат",
579584 "Export JSONL chat file": "Экспортировать чат в формате JSONL",
580585 "Download chat as plain text document": "Скачать чат в формате .txt",
@@ -784,20 +789,20 @@
784789 "Enable magnification for zoomed avatar display.": "Добавляет возможность приближать увеличенную версию аватарки.",
785790 "Unique to this chat": "Только для текущего чата",
786791 "Checkpoints inherit the Note from their parent, and can be changed individually after that.": "Чекпоинты наследуют заметки от родительского чата, но впоследствие их всегда можно изменить.",
787792 "Include in World Info Scanning": "Учитывать при сканировании Информации о мирелорбуком",
788793 "Before Main Prompt / Story String": "Перед основным промптом / строкойобщим историишаблоном",
789794 "After Main Prompt / Story String": "После основного промпта / строкиобщего историишаблона",
790795 "In-chat @ Depth": "Встав. на глуб.",
791796 "as": "роль:",
792797 "Insertion Frequency": "Частота вставки",
793798 "(0 = Disable, 1 = Always)": "(0 = никогда, 1 = всегда)",
794799 "User inputs until next insertion:": "Ваших сообщений до след. вставки:",
795800 "Character Author's Note (Private)": "ЗаметкиАвторские авторазаметки для персонажа (личные)",
796801 "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.": "Автоматически применятся к этому персонажу в качестве заметокавторских авторазаметок. Будут использоваться в группах, но при активном групповом чате к редактированию недоступны.",
797802 "Use character author's note": "Использовать авторские заметки авторадля персонажа",
798803 "Replace Author's Note": "Вместо заметокавторских авторазаметок",
799804 "Default Author's Note": "Стандартные заметкиавторские авторазаметки",
800805 "Will be automatically added as the Author's Note for all new chats.": "Будут автоматически добавляться во все новые чаты в качестве Заметокавторских авторазаметок",
801806 "1 = disabled": "1 = откл.",
802807 "write short replies, write replies using past tense": "пиши короткие ответы, пиши в настоящем времени",
803808 "Positive Prompt": "Положительный промпт",
@@ -906,7 +911,7 @@
906911 "ext_sum_force_text": "Пересказать сейчас",
907912 "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)",
908913 "ext_sum_pause": "Приостановить",
909914 "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 всегда их исключает.",
910915 "ext_sum_no_wi_an": "Без мира и заметок",
911916 "ext_sum_settings_tip": "Изменить промпт пересказа, место для инжекта и т.д.",
912917 "ext_sum_settings": "Настройки пересказа",
@@ -1333,13 +1338,7 @@
13331338 "WI_Entry_Status_Normal": "Обычная",
13341339 "WI_Entry_Status_Vectorized": "Векторизованная",
13351340 "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 🤖",
13411341 "Depth": "Глубина",
1342- "Trigger %:": "Trigger %:",
13431342 "Probability": "Вероятность",
13441343 "Duplicate world info entry": "Дублировать запись",
13451344 "Delete world info entry": "Удалить запись",
@@ -1411,26 +1410,7 @@
14111410 "ext_regex_title": "Regex",
14121411 "ext_regex_import_target": "Импортировать в:",
14131412 "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",
14221413 "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",
14341414 "sd_auto_url": "Example: {{auto_url}}",
14351415 "Authentication (optional)": "Authentication (optional)",
14361416 "Example: username:password": "Example: username:password",
@@ -1441,18 +1421,10 @@
14411421 "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.",
14421422 "sd_vlad_url": "Example: {{vlad_url}}",
14431423 "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.",
14451424 "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.",
14481425 "Avoid spending Anlas": "Avoid spending Anlas",
14491426 "Opus tier": "(Opus tier)",
14501427 "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",
14561428 "sd_comfy_url": "Example: {{comfy_url}}",
14571429 "Open workflow editor": "Open workflow editor",
14581430 "Create new workflow": "Create new workflow",
@@ -1460,9 +1432,6 @@
14601432 "Enhance": "Enhance",
14611433 "Refine": "Refine",
14621434 "Decrisper": "Decrisper",
1463- "Sampling steps": "Sampling steps ()",
1464- "Width": "Width ()",
1465- "Height": "Height ()",
14661435 "Resolution": "Resolution",
14671436 "Model": "Model",
14681437 "Sampling method": "Sampling method",
@@ -1472,8 +1441,6 @@
14721441 "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.",
14731442 "DYN": "DYN",
14741443 "Scheduler": "Scheduler",
1475- "Restore Faces": "Restore Faces",
1476- "Hires. Fix": "Hires. Fix",
14771444 "Upscaler": "Upscaler",
14781445 "Upscale by": "Upscale by",
14791446 "Denoising strength": "Denoising strength",
@@ -1484,7 +1451,6 @@
14841451 "Delete style": "Delete style",
14851452 "Common prompt prefix": "Common prompt prefix",
14861453 "sd_prompt_prefix_placeholder": "Use {prompt} to specify where the generated prompt will be inserted",
1487- "Negative common prompt prefix": "Negative common prompt prefix",
14881454 "Character-specific prompt prefix": "Character-specific prompt prefix",
14891455 "Won't be used in groups.": "Won't be used in groups.",
14901456 "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 @@
18361802 "Also delete the chat files": "Также удалить файлы чатов",
18371803 "Delete the character?": "Удалить персонажа?",
18381804 "Not a valid number": "Некорректное число",
18391805 "Author's Note depth updated": "Глубина заметокавторских авторазаметок обновлена",
18401806 "Author's Note frequency updated": "Частота заметокавторских авторазаметок обновлена",
18411807 "Not a valid position": "Некорректная позиция",
18421808 "Author's Note position updated": "Позиция заметокавторских авторазаметок обновлена",
18431809 "Something went wrong. Could not save character's author's note.": "Что-то пошло не так. Не удалось сохранить заметкиавторские авторазаметки для этого персонажа.",
18441810 "Select a character before trying to use Author's Note": "Сначала необходимо выбрать персонажа",
18451811 "Author's Note text updated": "Текст заметокавторских авторазаметок обновлён",
18461812 "Group Validation": "Валидация группы",
18471813 "Warning: Listed member ${0} does not exist as a character. It will be removed from the group.": "Предупреждение: персонаж ${0} не существует в виде карточки. Он будет удалён из группы.",
18481814 "Group Chat could not be saved": "Не удалось сохранить групповой чат",
@@ -1938,7 +1904,7 @@
19381904 "Do you want to remove these fields before exporting?": "Желаете ли удалить эти поля перед экспортом?",
19391905 "Save": "Сохранить",
19401906 "Chat Lorebook": "Лорбук для чата",
19411907 "chat_world_template_txt": "Выбранный мир будет привязан к этому чату. Будет добавляться в промптработать наряду с глобальным лорбуком и лором персонажа.",
19421908 "world_button_title": "Лор персонажа\n\nНажмите, чтобы загрузить\nShift + ЛКМ, чтобы открыть диалог привязки мира",
19431909 "No auxillary Lorebooks set. Click here to select.": "Вспомогательный лорбук не выбран. Нажмите, чтобы выбрать.",
19441910 "ext_regex_user_input_desc": "Отправленные вами сообщения.",
@@ -2010,7 +1976,7 @@
20101976 "Imported tags:": "Импортируемые теги:",
20111977 "Importing Tags": "Импорт тегов",
20121978 "Couldn't import tags:": "Не удалось импортировать теги:",
20131979 "Allow fallback models": "Разрешить fallback-резервные модели",
20141980 "Allow fallback providers": "Разрешить fallback-провайдеров",
20151981 "To use instruct formatting, switch to OpenRouter under Text Completion API.": "Переключитесь на OpenRouter в Text Completion API, чтобы использовать форматирование Instruct-режима.",
20161982 "Select providers. No selection = all providers.": "Выберите провайдера. Нет выбранного = выбраны все.",
@@ -2044,14 +2010,14 @@
20442010 "Title/Memo": "Название",
20452011 "Strategy": "Статус",
20462012 "Position": "Позиция",
20472013 "Trigger %": "% срабатываниясрабатываний",
20482014 "Use global": "Глоб. настройка",
20492015 "Whole Words": "Целые слова",
20502016 "Non-recursable": "Не рекурсивная",
20512017 "Delay until recursion": "Рекурсивная",
20522018 "Toggle entry's active state.": "Вкл/выкл запись.",
20532019 "Prioritize": "Важная",
20542020 "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.": "Важная запись получает приоритет среди всех выбранных. Если важных записей несколько, выбирается та, у которой выше \"ОчерёдностьПриоритет\".",
20552021 "Group Weight": "Вес в группе",
20562022 "A relative likelihood of entry activation within the group": "Относительная вероятность активации записи в рамках группы",
20572023 "Sticky": "Липучка",
@@ -2067,7 +2033,7 @@
20672033 "Switch to plaintext mode": "Вкл/выкл режим чистого текста",
20682034 "Exclude": "Режим исключения",
20692035 "Switch the Character/Tags filter around to exclude the listed characters and tags from matching for this entry": "Инвертировать логику: для выбранных в фильтре персонажей/тегов данная запись активна НЕ БУДЕТ",
20702036 "Apply current sorting as Order": "Настроить ОчерёдностьПриоритет в соответствии с текущей сортировкой",
20712037 "Create a new World Info": "Создать новый мир",
20722038 "Enter a name for the new file:": "Название нового файла:",
20732039 "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 @@
21652131 "openai_reasoning_effort_high": "Подробные",
21662132 "Persona Lore Alt+Click to open the lorebook": "Лорбук данной персоны\nAlt + ЛКМ чтобы открыть лорбук",
21672133 "Persona Lorebook for": "Лорбук для персоны",
21682134 "persona_world_template_txt": "Выбранная Информация оВыбранный миремир будет привязанапривязан к этой персоне. Информация будет добавляться в каждомБудет промптеработать вместе с глобальным лорбуком и лорбуками персонажа и чата.",
21692135 "Global list": "Глобальный список",
21702136 "Preset-specific list": "Список для данного пресета",
21712137 "Banned tokens/strings are being sent in the request.": "Запрещённые токены и строки отсылаются в запросе.",
@@ -2521,6 +2487,16 @@
25212487 "Automatically generated chat backups.": "Автоматически создаваемые бэкапы чатов.",
25222488 "Settings Backups": "Копии настроек",
25232489 "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.": "Превью для удалённых персон",
25242500 "Delete all items in this category": "Удалить всё в этой категории",
25252501 "View item content": "Посмотреть содержимое",
25262502 "Download item": "Скачать содержимое",
@@ -2583,5 +2559,96 @@
25832559 "Moonshot AI API Key": "Ключ от API Moonshot AI",
25842560 "Moonshot AI Model": "Модель Moonshot AI",
25852561 "AI/ML API Key": "Ключ от API AI/ML",
25862562 "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 (на втором проходе)"
25872654}
public/script.js+1 -1
@@ -10808,7 +10808,7 @@ jQuery(async function () {
1080810808 }
1080910809 } break;
1081010810 case 'replace_update': {
1081110811 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?'`);
1081210812 if (confirm) {
1081310813 async function uploadReplacementCard(e) {
1081410814 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';
5757import { commonEnumProviders } from '../../slash-commands/SlashCommandCommonEnumsProvider.js';
5858import { ToolManager } from '../../tool-calling.js';
5959import { MacrosParser } from '../../macros.js';
6060import { t, translate } from '../../i18n.js';
6161import { oai_settings } from '../../openai.js';
6262
6363export { MODULE_NAME };
@@ -650,7 +650,7 @@ async function onDeleteStyleClick() {
650650 return;
651651 }
652652
653653 const confirmed = await callGenericPopup(t`Are you sure you want to delete the style "${selectedStyle}"?`, POPUP_TYPE.CONFIRM, '', { okButton: 'Delete', cancelButton: 'Cancel' });
654654
655655 if (!confirmed) {
656656 return;
@@ -925,16 +925,16 @@ function onADetailerFaceChange() {
925925}
926926
927927const resolutionOptions = {
928928 sd_res_512x512: { width: 512, height: 512, name: translate('512x512 (1:1, icons, profile pictures)', 'sd_res_512x512') },
929929 sd_res_600x600: { width: 600, height: 600, name: translate('600x600 (1:1, icons, profile pictures)', 'sd_res_600x600') },
930930 sd_res_512x768: { width: 512, height: 768, name: translate('512x768 (2:3, vertical character card)', 'sd_res_512x768') },
931931 sd_res_768x512: { width: 768, height: 512, name: translate('768x512 (3:2, horizontal 35-mm movie film)', 'sd_res_768x512') },
932932 sd_res_960x540: { width: 960, height: 540, name: translate('960x540 (16:9, horizontal wallpaper)', 'sd_res_960x540') },
933933 sd_res_540x960: { width: 540, height: 960, name: translate('540x960 (9:16, vertical wallpaper)', 'sd_res_540x960') },
934934 sd_res_1920x1088: { width: 1920, height: 1088, name: translate('1920x1088 (16:9, 1080p, horizontal wallpaper)', 'sd_res_1920x1088') },
935935 sd_res_1088x1920: { width: 1088, height: 1920, name: translate('1088x1920 (9:16, 1080p, vertical wallpaper)', 'sd_res_1088x1920') },
936936 sd_res_1280x720: { width: 1280, height: 720, name: translate('1280x720 (16:9, 720p, horizontal wallpaper)', 'sd_res_1280x720') },
937937 sd_res_720x1280: { width: 720, height: 1280, name: translate('720x1280 (9:16, 720p, vertical wallpaper)', 'sd_res_720x1280') },
938938 sd_res_1024x1024: { width: 1024, height: 1024, name: '1024x1024 (1:1, SDXL)' },
939939 sd_res_1152x896: { width: 1152, height: 896, name: '1152x896 (9:7, SDXL)' },
940940 sd_res_896x1152: { width: 896, height: 1152, name: '896x1152 (7:9, SDXL)' },
@@ -3847,7 +3847,7 @@ async function onComfyNewWorkflowClick() {
38473847}
38483848
38493849async function onComfyDeleteWorkflowClick() {
38503850 const confirm = await callGenericPopup('t`Delete the workflow? This action is irreversible.'`, POPUP_TYPE.CONFIRM, '', { okButton: 't`Delete'`, cancelButton: 't`Cancel'` });
38513851 if (!confirm) {
38523852 return;
38533853 }
public/scripts/extensions/stable-diffusion/settings.html+1 -1
@@ -260,7 +260,7 @@
260260 <span data-i18n="Click to set">Click to set</span>
261261 </div>
262262 </div>
263263 <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.">
264264 <input id="sd_bfl_upsampling" type="checkbox" />
265265 <span data-i18n="Prompt Upsampling">
266266 Prompt Upsampling
public/scripts/world-info.js+6 -6
@@ -2348,21 +2348,21 @@ async function displayWorldEntries(name, data, navigation = navigation_option.no
23482348 const entryCount = Object.keys(data.entries).length;
23492349 const moreThan100 = entryCount > 100;
23502350
23512351 let content = '<span>' + t`Apply your current sorting to the "Order" field. The Order values will go down from the chosen number.` + '</span>';
23522352 if (moreThan100) {
23532353 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>`';
23542354 }
23552355
23562356 const result = await Popup.show.input('t`Apply Current Sorting'`, content, '100', { okButton: 't`Apply'`, cancelButton: 'Cancel' });
23572357 if (!result) return;
23582358
23592359 const start = Number(result);
23602360 if (isNaN(start) || start < 0) {
23612361 toastr.error('t`Invalid number: ' + ${result}`, 't`Apply Current Sorting'`);
23622362 return;
23632363 }
23642364 if (start < entryCount) {
23652365 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'`);
23662366 }
23672367
23682368 // 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 } = {}) {
37283728 return;
37293729 }
37303730
37313731 const confirmation = silent || await Popup.show.confirm(t`Delete the entry with UID: ${uid}?`, 't`This action is irreversible!'`);
37323732 if (!confirmation) {
37333733 return false;
37343734 }