Remove cases

This commit is contained in:
Yokayo 2024-05-07 13:11:59 +07:00
parent a02f5ead7e
commit dfa8c6c3d4
4 changed files with 26 additions and 58 deletions

View File

@ -891,7 +891,7 @@
"Chat API": "API чата", "Chat API": "API чата",
"and pick a character": "и выберите персонажа", "and pick a character": "и выберите персонажа",
"in the chat bar": " в поле чата", "in the chat bar": " в поле чата",
"Confused or lost?": "Запутались или потерялись?", "Confused or lost?": "Не можете в чём-то разобраться?",
"click these icons!": "нажмите на эти значки!", "click these icons!": "нажмите на эти значки!",
"SillyTavern Documentation Site": "Сайт документации SillyTavern", "SillyTavern Documentation Site": "Сайт документации SillyTavern",
"Extras Installation Guide": "Руководство по установке Extras", "Extras Installation Guide": "Руководство по установке Extras",
@ -1155,27 +1155,24 @@
"Summary Prompt": "Промпт для пересказа", "Summary Prompt": "Промпт для пересказа",
"ext_sum_restore_default_prompt_tip": "Восстановить стандартный промпт", "ext_sum_restore_default_prompt_tip": "Восстановить стандартный промпт",
"ext_sum_prompt_placeholder": "Этот промпт будет отправлен ИИ при запросе на генерацию пересказа. Макрос {{words}} будет заменён на значение параметра \"Количество слов\".", "ext_sum_prompt_placeholder": "Этот промпт будет отправлен ИИ при запросе на генерацию пересказа. Макрос {{words}} будет заменён на значение параметра \"Количество слов\".",
"ext_sum_target_length_1": "Целевая длина пересказа", "ext_sum_target_length_1": "Целевая длина пересказа (слов):",
"ext_sum_words_ru_case1": "слово", "ext_sum_target_length_2": "",
"ext_sum_words_ru_case2": "слова", "ext_sum_target_length_3": "",
"ext_sum_words_ru_case3": "слов", "ext_sum_api_response_length_1": "Длина ответа от API (токенов):",
"ext_sum_api_response_length_1": "Длина ответа от API", "ext_sum_api_response_length_2": "",
"ext_sum_tokens_ru_case1": "токен", "ext_sum_api_response_length_3": " ",
"ext_sum_tokens_ru_case2": "токена", "ext_sum_0_default": "по умолчанию = 0",
"ext_sum_tokens_ru_case3": "токенов", "ext_sum_raw_max_msg": "[Прямое форматирование] Макс. сообщений в запросе",
"ext_sum_0_default": "0 = по умолчанию", "ext_sum_0_unlimited": "неограничено = 0",
"ext_sum_raw_max_msg": "[Прямое форматирование] Макс. кол-во сообщений в запросе",
"ext_sum_0_unlimited": "0 = неограничено",
"Update frequency": "Частота обновления", "Update frequency": "Частота обновления",
"ext_sum_messages_ru_case1": "сообщение", "ext_sum_update_every_messages_1": "Интервал обновления (кол-во сообщений):",
"ext_sum_messages_ru_case2": "сообщения", "ext_sum_update_every_messages_2": "",
"ext_sum_messages_ru_case3": "сообщений",
"ext_sum_update_every_messages_1": "Обновлять раз в",
"ext_sum_pause": "Приостановить", "ext_sum_pause": "Приостановить",
"ext_sum_update_every_words_1": "Обновлять раз в", "ext_sum_update_every_words_1": "Интервал обновления (кол-во слов):",
"ext_sum_0_disable": "0 = отключено", "ext_sum_update_every_words_2": "",
"ext_sum_0_disable": "для отключения поставьте 0",
"ext_sum_auto_adjust_desc": "Попытаться автоматически рассчитать значение интервала, исходя из статистики чата", "ext_sum_auto_adjust_desc": "Попытаться автоматически рассчитать значение интервала, исходя из статистики чата",
"ext_sum_both_sliders": "Если ни один из ползунков не равен нулю, то оба будут триггерить генерацию пересказа с соответствующей периодичностью.", "ext_sum_both_sliders": "Если оба ползунка отличны от нуля, то оба будут триггерить генерацию пересказа с соответствующей периодичностью.",
"ext_sum_injection_template": "Шаблон для инжекта", "ext_sum_injection_template": "Шаблон для инжекта",
"ext_sum_memory_template_placeholder": "Макрос {{summary}} будет заменён на содержимое пересказа", "ext_sum_memory_template_placeholder": "Макрос {{summary}} будет заменён на содержимое пересказа",
"ext_sum_injection_position": "Куда инжектить", "ext_sum_injection_position": "Куда инжектить",

View File

@ -228,18 +228,14 @@ function onMemorySkipWIANInput() {
function onMemoryPromptWordsInput() { function onMemoryPromptWordsInput() {
const value = $(this).val(); const value = $(this).val();
extension_settings.memory.promptWords = Number(value); extension_settings.memory.promptWords = Number(value);
const display = $('#memory_prompt_words_value'); $('#memory_prompt_words_value').text(extension_settings.memory.promptWords);
display.text(extension_settings.memory.promptWords);
updateCase(display.next(), extension_settings.memory.promptWords);
saveSettingsDebounced(); saveSettingsDebounced();
} }
function onMemoryPromptIntervalInput() { function onMemoryPromptIntervalInput() {
const value = $(this).val(); const value = $(this).val();
extension_settings.memory.promptInterval = Number(value); extension_settings.memory.promptInterval = Number(value);
const display = $('#memory_prompt_interval_value'); $('#memory_prompt_interval_value').text(extension_settings.memory.promptInterval);
display.text(extension_settings.memory.promptInterval);
updateCase(display.next(), extension_settings.memory.promptInterval);
saveSettingsDebounced(); saveSettingsDebounced();
} }
@ -284,39 +280,14 @@ function onMemoryPositionChange(e) {
function onMemoryPromptWordsForceInput() { function onMemoryPromptWordsForceInput() {
const value = $(this).val(); const value = $(this).val();
extension_settings.memory.promptForceWords = Number(value); extension_settings.memory.promptForceWords = Number(value);
const display = $('#memory_prompt_words_force_value'); $('#memory_prompt_words_force_value').text(extension_settings.memory.promptForceWords);
display.text(extension_settings.memory.promptForceWords);
updateCase(display.next(), extension_settings.memory.promptForceWords);
saveSettingsDebounced(); saveSettingsDebounced();
} }
function updateCase(span, number) { // other languages can use this function too, adding their own attributes to the elements
const ruCase1 = span.attr('ru-case1');
if (ruCase1) {
const ruCase2 = span.attr('ru-case2');
const ruCase3 = span.attr('ru-case3');
const elevenToFifteen = [11, 12, 13, 14, 15].indexOf(number % 100) != -1;
if (elevenToFifteen) {
span.text(ruCase3);
return;
}
const lastDigit = number % 10;
if (lastDigit == 1) {
span.text(ruCase1);
} else if (lastDigit != 0 && lastDigit < 5) {
span.text(ruCase2);
} else {
span.text(ruCase3);
}
}
}
function onOverrideResponseLengthInput() { function onOverrideResponseLengthInput() {
const value = $(this).val(); const value = $(this).val();
extension_settings.memory.overrideResponseLength = Number(value); extension_settings.memory.overrideResponseLength = Number(value);
const display = $('#memory_override_response_length_value'); $('#memory_override_response_length_value').text(extension_settings.memory.overrideResponseLength);
display.text(extension_settings.memory.overrideResponseLength);
updateCase(display.next(), extension_settings.memory.overrideResponseLength);
saveSettingsDebounced(); saveSettingsDebounced();
} }

View File

@ -66,10 +66,10 @@
</div> </div>
</label> </label>
<textarea id="memory_prompt" class="text_pole textarea_compact" rows="6" data-i18n="[placeholder]ext_sum_prompt_placeholder" placeholder="This prompt will be sent to AI to request the summary generation. &lcub;&lcub;words&rcub;&rcub; will resolve to the 'Number of words' parameter."></textarea> <textarea id="memory_prompt" class="text_pole textarea_compact" rows="6" data-i18n="[placeholder]ext_sum_prompt_placeholder" placeholder="This prompt will be sent to AI to request the summary generation. &lcub;&lcub;words&rcub;&rcub; will resolve to the 'Number of words' parameter."></textarea>
<label for="memory_prompt_words"><span data-i18n="ext_sum_target_length_1">Target summary length</span> (<span id="memory_prompt_words_value"></span> <span data-i18n="ext_sum_target_length_2;[ru-case1]ext_sum_words_ru_case1;[ru-case2]ext_sum_words_ru_case2;[ru-case3]ext_sum_words_ru_case3">words</span>)</label> <label for="memory_prompt_words"><span data-i18n="ext_sum_target_length_1">Target summary length</span> <span data-i18n="ext_sum_target_length_2">(</span><span id="memory_prompt_words_value"></span><span data-i18n="ext_sum_target_length_3"> words)</span></label>
<input id="memory_prompt_words" type="range" value="{{defaultSettings.promptWords}}" min="{{defaultSettings.promptMinWords}}" max="{{defaultSettings.promptMaxWords}}" step="{{defaultSettings.promptWordsStep}}" /> <input id="memory_prompt_words" type="range" value="{{defaultSettings.promptWords}}" min="{{defaultSettings.promptMinWords}}" max="{{defaultSettings.promptMaxWords}}" step="{{defaultSettings.promptWordsStep}}" />
<label for="memory_override_response_length"> <label for="memory_override_response_length">
<span data-i18n="ext_sum_api_response_length_1">API response length</span> (<span id="memory_override_response_length_value"></span> <span data-i18n="ext_sum_api_response_length_2;[ru-case1]ext_sum_tokens_ru_case1;[ru-case2]ext_sum_tokens_ru_case2;[ru-case3]ext_sum_tokens_ru_case3">tokens</span>) <span data-i18n="ext_sum_api_response_length_1">API response length</span> <span data-i18n="ext_sum_api_response_length_2">(</span><span id="memory_override_response_length_value"></span><span data-i18n="ext_sum_api_response_length_3"> tokens)</span>
<small class="memory_disabled_hint" data-i18n="ext_sum_0_default">0 = default</small> <small class="memory_disabled_hint" data-i18n="ext_sum_0_default">0 = default</small>
</label> </label>
<input id="memory_override_response_length" type="range" value="{{defaultSettings.overrideResponseLength}}" min="{{defaultSettings.overrideResponseLengthMin}}" max="{{defaultSettings.overrideResponseLengthMax}}" step="{{defaultSettings.overrideResponseLengthStep}}" /> <input id="memory_override_response_length" type="range" value="{{defaultSettings.overrideResponseLength}}" min="{{defaultSettings.overrideResponseLengthMin}}" max="{{defaultSettings.overrideResponseLengthMax}}" step="{{defaultSettings.overrideResponseLengthStep}}" />
@ -83,7 +83,7 @@
</h4> </h4>
<label for="memory_prompt_interval" class="title_restorable"> <label for="memory_prompt_interval" class="title_restorable">
<span> <span>
<span data-i18n="ext_sum_update_every_messages_1">Update every</span> <span id="memory_prompt_interval_value"></span> <span data-i18n="ext_sum_update_every_messages_2;[ru-case1]ext_sum_messages_ru_case1;[ru-case2]ext_sum_messages_ru_case2;[ru-case3]ext_sum_messages_ru_case3">messages</span> <span data-i18n="ext_sum_update_every_messages_1">Update every</span> <span id="memory_prompt_interval_value"></span><span data-i18n="ext_sum_update_every_messages_2"> messages</span>
<small class="memory_disabled_hint" data-i18n="ext_sum_0_disable">0 = disable</small> <small class="memory_disabled_hint" data-i18n="ext_sum_0_disable">0 = disable</small>
</span> </span>
<div id="memory_prompt_interval_auto" data-i18n="[title]ext_sum_auto_adjust_desc" title="Try to automatically adjust the interval based on the chat metrics." class="right_menu_button"> <div id="memory_prompt_interval_auto" data-i18n="[title]ext_sum_auto_adjust_desc" title="Try to automatically adjust the interval based on the chat metrics." class="right_menu_button">
@ -93,7 +93,7 @@
<input id="memory_prompt_interval" type="range" value="{{defaultSettings.promptInterval}}" min="{{defaultSettings.promptMinInterval}}" max="{{defaultSettings.promptMaxInterval}}" step="{{defaultSettings.promptIntervalStep}}" /> <input id="memory_prompt_interval" type="range" value="{{defaultSettings.promptInterval}}" min="{{defaultSettings.promptMinInterval}}" max="{{defaultSettings.promptMaxInterval}}" step="{{defaultSettings.promptIntervalStep}}" />
<label for="memory_prompt_words_force" class="title_restorable"> <label for="memory_prompt_words_force" class="title_restorable">
<span> <span>
<span data-i18n="ext_sum_update_every_words_1">Update every</span> <span id="memory_prompt_words_force_value"></span> <span data-i18n="ext_sum_update_every_words_2;[ru-case1]ext_sum_words_ru_case1;[ru-case2]ext_sum_words_ru_case2;[ru-case3]ext_sum_words_ru_case3">words</span> <span data-i18n="ext_sum_update_every_words_1">Update every</span> <span id="memory_prompt_words_force_value"></span><span data-i18n="ext_sum_update_every_words_2"> words</span>
<small class="memory_disabled_hint" data-i18n="ext_sum_0_disable">0 = disable</small> <small class="memory_disabled_hint" data-i18n="ext_sum_0_disable">0 = disable</small>
</span> </span>
<div id="memory_prompt_words_auto" data-i18n="[title]ext_sum_auto_adjust_desc" title="Try to automatically adjust the interval based on the chat metrics." class="right_menu_button"> <div id="memory_prompt_words_auto" data-i18n="[title]ext_sum_auto_adjust_desc" title="Try to automatically adjust the interval based on the chat metrics." class="right_menu_button">

View File

@ -107,12 +107,12 @@ export function applyLocale(root = document) {
const attributeMatch = key.match(/\[(\S+)\](.+)/); // [attribute]key const attributeMatch = key.match(/\[(\S+)\](.+)/); // [attribute]key
if (attributeMatch) { // attribute-tagged key if (attributeMatch) { // attribute-tagged key
const localizedValue = localeData?.[attributeMatch[2]]; const localizedValue = localeData?.[attributeMatch[2]];
if (localizedValue) { if (localizedValue || localizedValue == '') {
$(this).attr(attributeMatch[1], localizedValue); $(this).attr(attributeMatch[1], localizedValue);
} }
} else { // No attribute tag, treat as 'text' } else { // No attribute tag, treat as 'text'
const localizedValue = localeData?.[key]; const localizedValue = localeData?.[key];
if (localizedValue) { if (localizedValue || localizedValue == '') {
$(this).text(localizedValue); $(this).text(localizedValue);
} }
} }