mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-03-03 03:17:54 +01:00
AF panel 3column reshuffle, autoComplete to UserSettings, collaspify Auto* settings
This commit is contained in:
parent
b48d905c45
commit
a764e2d6bf
@ -344,7 +344,6 @@
|
||||
|
||||
@media screen and (min-width: 1001px) {
|
||||
|
||||
#PygOverrides,
|
||||
#ContextFormatting,
|
||||
#UI-Theme-Block,
|
||||
#UI-Customization,
|
||||
|
@ -360,6 +360,10 @@
|
||||
margin-right: 2px;
|
||||
}
|
||||
|
||||
.flexAuto {
|
||||
flex: auto;
|
||||
}
|
||||
|
||||
.flex0 {
|
||||
flex: 0;
|
||||
}
|
||||
@ -490,7 +494,8 @@
|
||||
}
|
||||
|
||||
input:disabled,
|
||||
textarea:disabled {
|
||||
textarea:disabled,
|
||||
.disabled {
|
||||
cursor: not-allowed;
|
||||
filter: brightness(0.5);
|
||||
}
|
||||
|
@ -3033,8 +3033,8 @@
|
||||
<h3 class="margin0" data-i18n="Advanced Formatting">
|
||||
Advanced Formatting
|
||||
</h3>
|
||||
<div class="flex-container">
|
||||
<div id="PygOverrides">
|
||||
<div class="flex-container spaceEvenly">
|
||||
<div id="ContextSettings" class="flex-container flexNoGap flexFlowColumn flex1">
|
||||
<div>
|
||||
<h4 class="standoutHeader title_restorable">
|
||||
<div>
|
||||
@ -3043,19 +3043,21 @@
|
||||
<span class="fa-solid fa-circle-question note-link-span"></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<i data-newbie-hidden data-preset-manager-import="context" class="margin0 menu_button fa-solid fa-file-import" title="Import preset" data-i18n="[title]Import preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-export="context" class="margin0 menu_button fa-solid fa-file-export" title="Export preset" data-i18n="[title]Export preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-restore="context" class="margin0 menu_button fa-solid fa-recycle" title="Restore current preset" data-i18n="[title]Restore current preset"></i>
|
||||
<i data-newbie-hidden id="context_delete_preset" data-preset-manager-delete="context" class="margin0 menu_button fa-solid fa-trash-can" title="Delete the preset" data-i18n="[title]Delete the preset"></i>
|
||||
</div>
|
||||
|
||||
</h4>
|
||||
<div class="flex-container">
|
||||
<select id="context_presets" data-preset-manager-for="context" class="flex1 text_pole"></select>
|
||||
|
||||
<input type="file" hidden data-preset-manager-file="context" accept=".json, .settings">
|
||||
<i id="context_set_default" class="menu_button fa-solid fa-heart" title="Auto-select this preset for Instruct Mode." data-i18n="[title]Auto-select this preset for Instruct Mode"></i>
|
||||
<i data-newbie-hidden data-preset-manager-update="context" class="menu_button fa-solid fa-save" title="Update current preset" data-i18n="[title]Update current preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-new="context" class="menu_button fa-solid fa-file-circle-plus" title="Save preset as" data-i18n="[title]Save preset as"></i>
|
||||
<i data-newbie-hidden data-preset-manager-import="context" class="menu_button fa-solid fa-file-import" title="Import preset" data-i18n="[title]Import preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-export="context" class="menu_button fa-solid fa-file-export" title="Export preset" data-i18n="[title]Export preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-restore="context" class="menu_button fa-solid fa-recycle" title="Restore current preset" data-i18n="[title]Restore current preset"></i>
|
||||
<i data-newbie-hidden id="context_delete_preset" data-preset-manager-delete="context" class="menu_button fa-solid fa-trash-can" title="Delete the preset" data-i18n="[title]Delete the preset"></i>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<select id="context_presets" data-preset-manager-for="context" class="flex1 text_pole"></select>
|
||||
</div>
|
||||
<div data-newbie-hidden>
|
||||
<label for="context_story_string">
|
||||
@ -3080,6 +3082,48 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4 data-i18n="Context Formatting">
|
||||
Context Formatting
|
||||
<small data-i18n="(Saves to Template)">
|
||||
(Saves to Template)
|
||||
</small>
|
||||
</h4>
|
||||
|
||||
|
||||
<label class="checkbox_label" for="always-force-name2-checkbox">
|
||||
<input id="always-force-name2-checkbox" type="checkbox" />
|
||||
<small data-i18n="Always add character's name to prompt">
|
||||
Always add character's name to prompt
|
||||
</small>
|
||||
</label>
|
||||
<label class="checkbox_label" for="single_line">
|
||||
<input id="single_line" type="checkbox" />
|
||||
<small data-i18n="Generate only one line per request">
|
||||
Generate only one line per request
|
||||
</small>
|
||||
</label>
|
||||
<label class="checkbox_label" for="collapse-newlines-checkbox">
|
||||
<input id="collapse-newlines-checkbox" type="checkbox" />
|
||||
<small data-i18n="Collapse Consecutive Newlines">
|
||||
Collapse Consecutive Newlines
|
||||
</small>
|
||||
</label>
|
||||
<label data-newbie-hidden class="checkbox_label" for="trim_spaces">
|
||||
<input id="trim_spaces" type="checkbox" />
|
||||
<small data-i18n="Trim spaces">Trim spaces</small>
|
||||
</label>
|
||||
<label class="checkbox_label" for="trim_sentences_checkbox">
|
||||
<input id="trim_sentences_checkbox" type="checkbox" />
|
||||
<small data-i18n="Trim Incomplete Sentences">
|
||||
Trim Incomplete Sentences
|
||||
</small>
|
||||
</label>
|
||||
<!-- Add margin since this is a child of above -->
|
||||
<label data-newbie-hidden class="checkbox_label indent20p" for="include_newline_checkbox">
|
||||
<input id="include_newline_checkbox" type="checkbox" />
|
||||
<small data-i18n="Include Newline">Include Newline</small>
|
||||
</label>
|
||||
<label class="checkbox_label" title="Add Chat Start and Example Separator to a list of stopping strings." data-i18n="[title]Add Chat Start and Example Separator to a list of stopping strings.">
|
||||
<input id="context_use_stop_strings" type="checkbox" />
|
||||
<small data-i18n="Separators as Stop Strings">Separators as Stop Strings</small>
|
||||
@ -3088,113 +3132,76 @@
|
||||
<input id="context_names_as_stop_strings" type="checkbox" />
|
||||
<small data-i18n="Names as Stop Strings">Names as Stop Strings</small>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<label class="checkbox_label" title="Includes Post-History Instructions at the end of the prompt, if defined in the character card AND ''Prefer Char. Instructions'' is enabled. THIS IS NOT RECOMMENDED FOR TEXT COMPLETION MODELS, CAN LEAD TO BAD OUTPUT." data-i18n="[title]context_allow_post_history_instructions">
|
||||
<input id="context_allow_jailbreak" type="checkbox" />
|
||||
<small data-i18n="Allow Post-History Instructions">Allow Post-History Instructions</small>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div data-newbie-hidden class="inline-drawer wide100p flexFlowColumn margin-bot-10px" style="display:none;">
|
||||
<div class="inline-drawer-toggle inline-drawer-header">
|
||||
<b><span data-i18n="Context Order">Context Order</span></b>
|
||||
<div class="fa-solid fa-circle-chevron-down inline-drawer-icon down"></div>
|
||||
</div>
|
||||
<div class="inline-drawer-content">
|
||||
<div id="context_order" class="prompt_order">
|
||||
<div data-id="0">
|
||||
<span data-i18n="Story String">Story String</span>
|
||||
<small>0</small>
|
||||
</div>
|
||||
<div data-id="1">
|
||||
<span data-i18n="Summary">Summary</span>
|
||||
<small>1</small>
|
||||
</div>
|
||||
<div data-id="2">
|
||||
<span data-i18n="Author's Note">Author's Note</span>
|
||||
<small>2</small>
|
||||
</div>
|
||||
<div data-id="3">
|
||||
<span data-i18n="Example Dialogues">Example Dialogues</span>
|
||||
<small>3</small>
|
||||
</div>
|
||||
<div data-id="4">
|
||||
<span data-i18n="Chat Start">Chat History</span>
|
||||
<small>4</small>
|
||||
</div>
|
||||
</div>
|
||||
<small>
|
||||
<b data-i18n="Hint">Hint:</b>
|
||||
<span data-i18n="In-Chat Position not affected">
|
||||
Summary and Author's Note orders are only affected when they don't have an In-Chat position set.
|
||||
<hr>
|
||||
<div>
|
||||
<h4 class="range-block-title justifyLeft">
|
||||
<span data-i18n="Custom Stopping Strings">
|
||||
Custom Stopping Strings
|
||||
</span>
|
||||
<a href="https://docs.sillytavern.app/usage/core-concepts/advancedformatting/#custom-stopping-strings" class="notes-link" target="_blank">
|
||||
<span class="fa-solid fa-circle-question note-link-span"></span>
|
||||
</a>
|
||||
</h4>
|
||||
<div>
|
||||
|
||||
<small data-i18n="JSON serialized array of strings">JSON serialized array of strings</small>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<div contenteditable="true" id="custom_stopping_strings" rows="2" class="text_pole textarea_compact monospace" placeholder="["Ford", "BMW", "Fiat"]"></div>
|
||||
</div>
|
||||
<label class="checkbox_label" for="custom_stopping_strings_macro">
|
||||
<input id="custom_stopping_strings_macro" type="checkbox" checked>
|
||||
<small data-i18n="Replace Macro in Custom Stopping Strings">
|
||||
Replace Macro in Custom Stopping Strings
|
||||
</small>
|
||||
</label>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<h4 class="standoutHeader title_restorable">
|
||||
<div>
|
||||
<div id="InstructSettingsColumn" class="flex-container flexNoGap flexFlowColumn flex1">
|
||||
<div name="instructSettingsBlock">
|
||||
<h4 class="standoutHeader title_restorable justifySpaceBetween">
|
||||
<div class="flex-container">
|
||||
<span data-i18n="Instruct Mode">Instruct Mode</span>
|
||||
<a href="https://docs.sillytavern.app/usage/core-concepts/instructmode/" class="notes-link" target="_blank">
|
||||
<span class="fa-solid fa-circle-question note-link-span"></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<i data-newbie-hidden data-preset-manager-import="instruct" class="margin0 menu_button fa-solid fa-file-import" title="Import preset" data-i18n="[title]Import preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-export="instruct" class="margin0 menu_button fa-solid fa-file-export" title="Export preset" data-i18n="[title]Export preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-restore="instruct" class="margin0 menu_button fa-solid fa-recycle" title="Restore current preset" data-i18n="[title]Restore current preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-delete="instruct" class="margin0 menu_button fa-solid fa-trash-can" title="Delete the preset" data-i18n="[title]Delete the preset"></i>
|
||||
</div>
|
||||
</h4>
|
||||
<div class="flex-container">
|
||||
<label for="instruct_enabled" class="checkbox_label flex1">
|
||||
<input id="instruct_enabled" type="checkbox" />
|
||||
<span data-i18n="Enabled">Enabled</span>
|
||||
<small data-i18n="Enabled"><i class="fa-solid fa-power-off"></i></small>
|
||||
</label>
|
||||
<label for="instruct_bind_to_context" class="checkbox_label flex1" title="If enabled, Context templates will be automatically selected based on selected Instruct template name or by preference." data-i18n="[title]instruct_bind_to_context">
|
||||
<input id="instruct_bind_to_context" type="checkbox" />
|
||||
<span data-i18n="Bind to Context">Bind to Context</span>
|
||||
<small data-i18n="Bind to Context"><i class="fa-solid fa-link"></i></small>
|
||||
</label>
|
||||
</div>
|
||||
<label for="instruct_presets">
|
||||
<span data-i18n="Presets">Presets</span>
|
||||
</label>
|
||||
<div class="flex-container">
|
||||
<select id="instruct_presets" data-preset-manager-for="instruct" class="flex1 text_pole"></select>
|
||||
</h4>
|
||||
<div class="flex-container margin0">
|
||||
<input type="file" hidden data-preset-manager-file="instruct" accept=".json, .settings">
|
||||
<i id="instruct_set_default" class="menu_button fa-solid fa-heart" title="Auto-select this preset on API connection." data-i18n="[title]Auto-select this preset on API connection"></i>
|
||||
<i data-newbie-hidden data-preset-manager-update="instruct" class="menu_button fa-solid fa-save" title="Update current preset" data-i18n="[title]Update current preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-new="instruct" class="menu_button fa-solid fa-file-circle-plus" title="Save preset as" data-i18n="[title]Save preset as"></i>
|
||||
<i data-newbie-hidden data-preset-manager-import="instruct" class=" menu_button fa-solid fa-file-import" title="Import preset" data-i18n="[title]Import preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-export="instruct" class=" menu_button fa-solid fa-file-export" title="Export preset" data-i18n="[title]Export preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-restore="instruct" class=" menu_button fa-solid fa-recycle" title="Restore current preset" data-i18n="[title]Restore current preset"></i>
|
||||
<i data-newbie-hidden data-preset-manager-delete="instruct" class=" menu_button fa-solid fa-trash-can" title="Delete the preset" data-i18n="[title]Delete the preset"></i>
|
||||
</div>
|
||||
<label data-newbie-hidden>
|
||||
<small data-i18n="Activation Regex">
|
||||
Activation Regex
|
||||
</small>
|
||||
</label>
|
||||
<div data-newbie-hidden>
|
||||
<div contenteditable="true" id="instruct_activation_regex" class="text_pole textarea_compact autoSetHeight" maxlength="5000" rows="1"></div>
|
||||
</div>
|
||||
<div data-newbie-hidden>
|
||||
<label for="instruct_wrap" class="checkbox_label">
|
||||
<input id="instruct_wrap" type="checkbox" />
|
||||
<span data-i18n="Wrap Sequences with Newline">Wrap Sequences with Newline</span>
|
||||
</label>
|
||||
<label for="instruct_macro" class="checkbox_label">
|
||||
<input id="instruct_macro" type="checkbox" />
|
||||
<span data-i18n="Replace Macro in Sequences">Replace Macro in Sequences</span>
|
||||
</label>
|
||||
<label for="instruct_skip_examples" class="checkbox_label">
|
||||
<input id="instruct_skip_examples" type="checkbox" />
|
||||
<span data-i18n="Skip Example Dialogues Formatting">Skip Example Dialogues Formatting</span>
|
||||
</label>
|
||||
<label for="instruct_names" class="checkbox_label">
|
||||
<input id="instruct_names" type="checkbox" />
|
||||
<span data-i18n="Include Names">Include Names</span>
|
||||
</label>
|
||||
<label for="instruct_names_force_groups" class="checkbox_label indent20p">
|
||||
<input id="instruct_names_force_groups" type="checkbox" />
|
||||
<span data-i18n="Force for Groups and Personas">Force for Groups and Personas</span>
|
||||
</label>
|
||||
|
||||
<div class="flex-container">
|
||||
<select id="instruct_presets" data-preset-manager-for="instruct" class="flex1 text_pole"></select>
|
||||
</div>
|
||||
<div data-newbie-hidden>
|
||||
<label>
|
||||
@ -3202,215 +3209,39 @@
|
||||
</label>
|
||||
<div contenteditable="true" id="instruct_system_prompt" class="text_pole textarea_compact autoSetHeight" rows="1"></div>
|
||||
</div>
|
||||
<div data-newbie-hidden class="inline-drawer wide100p flexFlowColumn">
|
||||
<div class="inline-drawer-toggle inline-drawer-header">
|
||||
<b><span data-i18n="Instruct Mode Sequences">Instruct Mode Sequences</span></b>
|
||||
<div class="fa-solid fa-circle-chevron-down inline-drawer-icon down"></div>
|
||||
</div>
|
||||
<div class="inline-drawer-content">
|
||||
<h5 class="textAlignCenter" data-i18n="System Prompt Wrapping">
|
||||
System Prompt Wrapping
|
||||
</h5>
|
||||
<div class="flex-container">
|
||||
<div class="flex1" title="Inserted before a System prompt." data-i18n="[title]Inserted before a System prompt.">
|
||||
<label for="instruct_system_sequence_prefix">
|
||||
<small data-i18n="System Prompt Prefix">System Prompt Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_system_sequence_prefix" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex1" title="Inserted after a System prompt." data-i18n="[title]Inserted after a System prompt.">
|
||||
<label for="instruct_system_sequence_suffix">
|
||||
<small data-i18n="System Prompt Suffix">System Prompt Suffix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_system_sequence_suffix" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<h5 class="textAlignCenter" data-i18n="Chat Messages Wrapping">
|
||||
Chat Messages Wrapping
|
||||
</h5>
|
||||
<div class="flex-container">
|
||||
<div class="flex1" title="Inserted before a User message and as a last prompt line when impersonating." data-i18n="[title]Inserted before a User message and as a last prompt line when impersonating.">
|
||||
<label for="instruct_input_sequence">
|
||||
<small data-i18n="User Message Prefix">User Message Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_input_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex1" title="Inserted after a User message." data-i18n="[title]Inserted after a User message.">
|
||||
<label for="instruct_input_suffix">
|
||||
<small data-i18n="User Message Suffix">User Message Suffix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_input_suffix" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flex1" title="Inserted before an Assistant message and as a last prompt line when generating an AI reply." data-i18n="[title]Inserted before an Assistant message and as a last prompt line when generating an AI reply.">
|
||||
<label for="instruct_output_sequence">
|
||||
<small data-i18n="Assistant Message Prefix">Assistant Message Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_output_sequence" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex1" title="Inserted after an Assistant message." data-i18n="[title]Inserted after an Assistant message.">
|
||||
<label for="instruct_output_suffix">
|
||||
<small data-i18n="Assistant Message Suffix">Assistant Message Suffix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_output_suffix" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flex1" title="Inserted before a System (added by slash commands or extensions) message." data-i18n="[title]Inserted before a System (added by slash commands or extensions) message.">
|
||||
<label for="instruct_system_sequence">
|
||||
<small data-i18n="System Message Prefix">System Message Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_system_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex1" title="Inserted after a System message." data-i18n="[title]Inserted after a System message.">
|
||||
<label for="instruct_system_suffix">
|
||||
<small data-i18n="System Message Suffix">System Message Suffix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_system_suffix" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flexBasis100p" title="If enabled, System Sequences will be the same as User Sequences." data-i18n="[title]If enabled, System Sequences will be the same as User Sequences.">
|
||||
<label class="checkbox_label" for="instruct_system_same_as_user">
|
||||
<input id="instruct_system_same_as_user" type="checkbox" />
|
||||
<small data-i18n="System same as User">System same as User</small>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<h5 class="textAlignCenter" data-i18n="Misc. Sequences">
|
||||
Misc. Sequences
|
||||
</h5>
|
||||
<div class="flex-container">
|
||||
<div class="flex1" title="Inserted before the first Assistant's message." data-i18n="[title]Inserted before the first Assistant's message.">
|
||||
<label for="instruct_first_output_sequence">
|
||||
<small data-i18n="First Assistant Prefix">First Assistant Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_first_output_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex1" title="Inserted before the last Assistant's message or as a last prompt line when generating an AI reply (except a neutral/system role)." data-i18n="[title]instruct_last_output_sequence">
|
||||
<label for="instruct_last_output_sequence">
|
||||
<small data-i18n="Last Assistant Prefix">Last Assistant Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_last_output_sequence" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flex1" title="Inserted before the first User's message." data-i18n="[title]Inserted before the first User's message.">
|
||||
<label for="instruct_first_input_sequence">
|
||||
<small data-i18n="First User Prefix">First User Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_first_input_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex1" title="Inserted before the last User's message." data-i18n="[title]instruct_last_input_sequence">
|
||||
<label for="instruct_last_input_sequence">
|
||||
<small data-i18n="Last User Prefix">Last User Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_last_input_sequence" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flex1" title="Will be inserted as a last prompt line when using system/neutral generation." data-i18n="[title]Will be inserted as a last prompt line when using system/neutral generation.">
|
||||
<label for="instruct_last_system_sequence">
|
||||
<small data-i18n="System Instruction Prefix">System Instruction Prefix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_last_system_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex1" title="If a stop sequence is generated, everything past it will be removed from the output (inclusive)." data-i18n="[title]If a stop sequence is generated, everything past it will be removed from the output (inclusive).">
|
||||
<label for="instruct_stop_sequence">
|
||||
<small data-i18n="Stop Sequence">Stop Sequence</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_stop_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flex1" title="Will be inserted at the start of the chat history if it doesn't start with a User message." data-i18n="[title]Will be inserted at the start of the chat history if it doesn't start with a User message.">
|
||||
<label for="instruct_user_alignment_message">
|
||||
<small data-i18n="User Filler Message">User Filler Message</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_user_alignment_message" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="ContextFormatting">
|
||||
<div>
|
||||
<div class="flex-container alignItemsBaseline">
|
||||
<h4 data-i18n="Context Formatting">
|
||||
Context Formatting
|
||||
</h4>
|
||||
<small data-i18n="(Saved to Context Template)">
|
||||
(Saved to Context Template)
|
||||
<label data-newbie-hidden>
|
||||
<small data-i18n="Activation Regex">
|
||||
Activation Regex <span class="fa-solid fa-circle-question" title="When connecting to an API or choosing a model, automatically activate this Instruct Mode template if the model name matches the provided regular expression."></span>
|
||||
</small>
|
||||
</div>
|
||||
<label class="checkbox_label" for="always-force-name2-checkbox">
|
||||
<input id="always-force-name2-checkbox" type="checkbox" />
|
||||
<span data-i18n="Always add character's name to prompt">
|
||||
Always add character's name to prompt
|
||||
</span>
|
||||
</label>
|
||||
<label class="checkbox_label" for="single_line">
|
||||
<input id="single_line" type="checkbox" />
|
||||
<span data-i18n="Generate only one line per request">
|
||||
Generate only one line per request
|
||||
</span>
|
||||
</label>
|
||||
<label class="checkbox_label" for="trim_sentences_checkbox">
|
||||
<input id="trim_sentences_checkbox" type="checkbox" />
|
||||
<span data-i18n="Trim Incomplete Sentences">
|
||||
Trim Incomplete Sentences
|
||||
</span>
|
||||
</label>
|
||||
<!-- Add margin since this is a child of above -->
|
||||
<label data-newbie-hidden class="checkbox_label indent20p" for="include_newline_checkbox">
|
||||
<input id="include_newline_checkbox" type="checkbox" />
|
||||
<span data-i18n="Include Newline">Include Newline</span>
|
||||
</label>
|
||||
</div>
|
||||
<h4 data-i18n="Misc. Settings">
|
||||
Misc. Settings
|
||||
</h4>
|
||||
<label class="checkbox_label" for="collapse-newlines-checkbox">
|
||||
<input id="collapse-newlines-checkbox" type="checkbox" />
|
||||
<span data-i18n="Collapse Consecutive Newlines">
|
||||
Collapse Consecutive Newlines
|
||||
</span>
|
||||
</label>
|
||||
<label data-newbie-hidden class="checkbox_label" for="trim_spaces">
|
||||
<input id="trim_spaces" type="checkbox" />
|
||||
<span data-i18n="Trim spaces">Trim spaces</span>
|
||||
</label>
|
||||
<div data-newbie-hidden>
|
||||
<input type="text" contenteditable="true" id="instruct_activation_regex" class="text_pole textarea_compact autoSetHeight" maxlength="5000" rows="1" placeholder="e.g. /llama(-)?[3|3.1]/i"></input>
|
||||
</div>
|
||||
<div data-newbie-hidden>
|
||||
<label for="instruct_wrap" class="checkbox_label">
|
||||
<input id="instruct_wrap" type="checkbox" />
|
||||
<small data-i18n="Wrap Sequences with Newline">Wrap Sequences with Newline</small>
|
||||
</label>
|
||||
<label for="instruct_macro" class="checkbox_label">
|
||||
<input id="instruct_macro" type="checkbox" />
|
||||
<small data-i18n="Replace Macro in Sequences">Replace Macro in Sequences</small>
|
||||
</label>
|
||||
<label for="instruct_skip_examples" class="checkbox_label">
|
||||
<input id="instruct_skip_examples" type="checkbox" />
|
||||
<small data-i18n="Skip Example Dialogues Formatting">Skip Example Dialogues Formatting</small>
|
||||
</label>
|
||||
<label for="instruct_names" class="checkbox_label">
|
||||
<input id="instruct_names" type="checkbox" />
|
||||
<small data-i18n="Include Names">Include Names</small>
|
||||
</label>
|
||||
<label for="instruct_names_force_groups" class="checkbox_label indent20p">
|
||||
<input id="instruct_names_force_groups" type="checkbox" />
|
||||
<small data-i18n="Force for Groups and Personas">Force for Groups and Personas</small>
|
||||
</label>
|
||||
</div>
|
||||
<hr>
|
||||
<div name="tokenizerSettingsBlock">
|
||||
<div data-newbie-hidden name="tokenizerSelectorBlock">
|
||||
<h4><span data-i18n="Tokenizer">Tokenizer</span>
|
||||
<a href="https://docs.sillytavern.app/usage/core-concepts/advancedformatting/#tokenizer" class="notes-link" target="_blank">
|
||||
<span class="fa-solid fa-circle-question note-link-span"></span>
|
||||
@ -3431,16 +3262,30 @@
|
||||
<option value="6">API (WebUI / koboldcpp)</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="range-block" data-newbie-hidden>
|
||||
<div class="range-block flex-container flexnowrap" data-newbie-hidden name="tokenPaddingBlock">
|
||||
<div class="range-block-title justifyLeft">
|
||||
<span data-i18n="Token Padding">Token Padding</span>
|
||||
<small data-i18n="Token Padding" class="flex-container">Token Padding
|
||||
<a href="https://docs.sillytavern.app/usage/core-concepts/advancedformatting/#token-padding" class="notes-link" target="_blank">
|
||||
<span class="fa-solid fa-circle-question note-link-span"></span>
|
||||
</a>
|
||||
</small>
|
||||
</div>
|
||||
<input id="token_padding" class="text_pole textarea_compact" type="number" min="-2048" max="2048" />
|
||||
</div>
|
||||
<div class="flex-container flexFlowColumn" data-newbie-hidden>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h4 class="range-block-title justifyLeft">
|
||||
<span data-i18n="Non-markdown strings">
|
||||
Non-markdown strings
|
||||
</span>
|
||||
</h4>
|
||||
<div>
|
||||
<input id="markdown_escape_strings" class="text_pole textarea_compact" type="text" data-i18n="[placeholder]separate with commas w/o space between" placeholder="separate with commas w/o space between" maxlength="100" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex-container flexFlowColumn" data-newbie-hidden name="startReplyWithBlock">
|
||||
<div>
|
||||
<h4 class="range-block-title justifyLeft">
|
||||
<span data-i18n="Start Reply With">
|
||||
@ -3452,75 +3297,120 @@
|
||||
</div>
|
||||
<label class="checkbox_label" for="chat-show-reply-prefix-checkbox">
|
||||
<input id="chat-show-reply-prefix-checkbox" type="checkbox" />
|
||||
<span data-i18n="Show reply prefix in chat">
|
||||
<small data-i18n="Show reply prefix in chat">
|
||||
Show reply prefix in chat
|
||||
</span>
|
||||
</label>
|
||||
</div>
|
||||
<div>
|
||||
<h4 class="range-block-title justifyLeft">
|
||||
<span data-i18n="Non-markdown strings">
|
||||
Non-markdown strings
|
||||
</span>
|
||||
</h4>
|
||||
<div>
|
||||
<input id="markdown_escape_strings" class="text_pole textarea_compact" type="text" data-i18n="[placeholder]separate with commas w/o space between" placeholder="separate with commas w/o space between" maxlength="100" />
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h4 class="range-block-title justifyLeft">
|
||||
<span data-i18n="Custom Stopping Strings">
|
||||
Custom Stopping Strings
|
||||
</span>
|
||||
<a href="https://docs.sillytavern.app/usage/core-concepts/advancedformatting/#custom-stopping-strings" class="notes-link" target="_blank">
|
||||
<span class="fa-solid fa-circle-question note-link-span"></span>
|
||||
</a>
|
||||
</h4>
|
||||
<div>
|
||||
<small>
|
||||
<span data-i18n="JSON serialized array of strings">JSON serialized array of strings</span>
|
||||
</small>
|
||||
</div>
|
||||
<div>
|
||||
<div contenteditable="true" id="custom_stopping_strings" rows="2" class="text_pole textarea_compact monospace" placeholder="["Ford", "BMW", "Fiat"]"></div>
|
||||
</div>
|
||||
<label class="checkbox_label" for="custom_stopping_strings_macro">
|
||||
<input id="custom_stopping_strings_macro" type="checkbox" checked>
|
||||
<span data-i18n="Replace Macro in Custom Stopping Strings">
|
||||
Replace Macro in Custom Stopping Strings
|
||||
</span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div data-newbie-hidden>
|
||||
<h4>
|
||||
<span data-i18n="Auto-Continue">Auto-Continue</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="InstructSequencesColumn" class="flex-container flexNoGap flexFlowColumn flex1">
|
||||
<div data-newbie-hidden class="inline-drawer wide100p flexFlowColumn">
|
||||
<h4 class="standoutHeader title_restorable">
|
||||
<b><span data-i18n="Instruct Mode Sequences">Instruct Sequences</span></b>
|
||||
</h4>
|
||||
<div class="flex-container">
|
||||
<label class="checkbox_label" for="auto_continue_enabled">
|
||||
<input id="auto_continue_enabled" type="checkbox" />
|
||||
<span data-i18n="Enabled">
|
||||
Enabled
|
||||
</span>
|
||||
<div class="flexAuto" title="Inserted before a System prompt." data-i18n="[title]Inserted before a System prompt.">
|
||||
<label for="instruct_system_sequence_prefix">
|
||||
<small data-i18n="System Prompt Prefix">System Prompt Prefix</small>
|
||||
</label>
|
||||
<label class="checkbox_label" for="auto_continue_allow_chat_completions">
|
||||
<input id="auto_continue_allow_chat_completions" type="checkbox" />
|
||||
<span data-i18n="Allow for Chat Completion APIs">
|
||||
Allow for Chat Completion APIs
|
||||
</span>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_system_sequence_prefix" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flexAuto" title="Inserted after a System prompt." data-i18n="[title]Inserted after a System prompt.">
|
||||
<label for="instruct_system_sequence_suffix">
|
||||
<small data-i18n="System Prompt Suffix">System Prompt Suffix</small>
|
||||
</label>
|
||||
<div>
|
||||
<div contenteditable="true" id="instruct_system_sequence_suffix" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flexAuto" title="Inserted before a User message and as a last prompt line when impersonating." data-i18n="[title]Inserted before a User message and as a last prompt line when impersonating.">
|
||||
<small data-i18n="User Prefix">User Message Prefix</small>
|
||||
<div contenteditable="true" id="instruct_input_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
<div class="flexAuto" title="Inserted after a User message." data-i18n="[title]Inserted after a User message.">
|
||||
<small data-i18n="User Suffix">User Message Suffix</small>
|
||||
<div contenteditable="true" id="instruct_input_suffix" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flexAuto" title="Inserted before an Assistant message and as a last prompt line when generating an AI reply." data-i18n="[title]Inserted before an Assistant message and as a last prompt line when generating an AI reply.">
|
||||
<small data-i18n="Assistant Prefix">Assistant Message Prefix</small>
|
||||
<div contenteditable="true" id="instruct_output_sequence" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
<div class="flexAuto" title="Inserted after an Assistant message." data-i18n="[title]Inserted after an Assistant message.">
|
||||
<small data-i18n="Assistant Suffix">Assistant Message Suffix</small>
|
||||
<div contenteditable="true" id="instruct_output_suffix" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flexAuto" id="instruct_system_sequence_block" title="Inserted before a System (added by slash commands or extensions) message." data-i18n="[title]Inserted before a System (added by slash commands or extensions) message.">
|
||||
<small data-i18n="System Prefix">System Message Prefix</small>
|
||||
<div contenteditable="true" id="instruct_system_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
<div class="flexAuto" id="instruct_system_suffix_block" title="Inserted after a System message." data-i18n="[title]Inserted after a System message.">
|
||||
<small data-i18n="System Suffix">System Message Suffix</small>
|
||||
<div contenteditable="true" id="instruct_system_suffix" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flexBasis100p" title="If enabled, System Sequences will be the same as User Sequences." data-i18n="[title]If enabled, System Sequences will be the same as User Sequences.">
|
||||
<label class="checkbox_label" for="instruct_system_same_as_user">
|
||||
<input id="instruct_system_same_as_user" type="checkbox" />
|
||||
<small data-i18n="System same as User">System same as User</small>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="auto_continue_settings_block">
|
||||
<label for="auto_continue_target_length">
|
||||
<span data-i18n="Target length (tokens)">Target length (tokens)</span>
|
||||
<input id="auto_continue_target_length" type="number" class="text_pole textarea_compact" min="0" max="1024" />
|
||||
</label>
|
||||
</div>
|
||||
<h5 class="textAlignCenter" data-i18n="Misc. Sequences">
|
||||
Misc. Sequences
|
||||
</h5>
|
||||
<div class="flex-container">
|
||||
<div class="flexAuto" title="Inserted before the first Assistant's message." data-i18n="[title]Inserted before the first Assistant's message.">
|
||||
<small data-i18n="First Assistant Prefix">First Assistant Prefix</small>
|
||||
<div contenteditable="true" id="instruct_first_output_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
<div class="flexAuto" title="Inserted before the last Assistant's message or as a last prompt line when generating an AI reply (except a neutral/system role)." data-i18n="[title]instruct_last_output_sequence">
|
||||
<small data-i18n="Last Assistant Prefix">Last Assistant Prefix</small>
|
||||
<div contenteditable="true" id="instruct_last_output_sequence" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flexAuto" title="Inserted before the first User's message." data-i18n="[title]Inserted before the first User's message.">
|
||||
<small data-i18n="First User Prefix">First User Prefix</small>
|
||||
<div contenteditable="true" id="instruct_first_input_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
<div class="flexAuto" title="Inserted before the last User's message." data-i18n="[title]instruct_last_input_sequence">
|
||||
|
||||
<small data-i18n="Last User Prefix">Last User Prefix</small>
|
||||
<div contenteditable="true" id="instruct_last_input_sequence" class="text_pole wide100p textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flexAuto" title="Will be inserted as a last prompt line when using system/neutral generation." data-i18n="[title]Will be inserted as a last prompt line when using system/neutral generation.">
|
||||
<small data-i18n="System Instruction Prefix">System Instruction Prefix</small>
|
||||
<div contenteditable="true" id="instruct_last_system_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
<div class="flexAuto" title="If a stop sequence is generated, everything past it will be removed from the output (inclusive)." data-i18n="[title]If a stop sequence is generated, everything past it will be removed from the output (inclusive).">
|
||||
<small data-i18n="Stop Sequence">Stop Sequence</small>
|
||||
<div contenteditable="true" id="instruct_stop_sequence" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-container">
|
||||
<div class="flexAuto" title="Will be inserted at the start of the chat history if it doesn't start with a User message." data-i18n="[title]Will be inserted at the start of the chat history if it doesn't start with a User message.">
|
||||
<small data-i18n="User Filler Message">User Filler Message</small>
|
||||
<div contenteditable="true" id="instruct_user_alignment_message" class="text_pole textarea_compact autoSetHeight" maxlength="2000" placeholder="—" rows="1"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div id="WI-SP-button" class="drawer">
|
||||
<div class="drawer-toggle drawer-header">
|
||||
@ -4259,9 +4149,43 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-newbie-hidden nane="AutoContiueBlock" class="inline-drawer wide100p flexFlowColumn">
|
||||
<div class="inline-drawer-toggle inline-drawer-header userSettingsInnerExpandable" title="Automatically 'continue' a response if the model stopped before reaching a certain amount of tokens.">
|
||||
<b><span data-i18n="Auto-swipe">Auto-Continue</span></b>
|
||||
<div class="fa-solid fa-circle-chevron-down inline-drawer-icon down"></div>
|
||||
</div>
|
||||
<div name="AutoCompleteToggle">
|
||||
<h4 data-i18n="AutoComplete Settings">AutoComplete Settings</h4>
|
||||
<div class="inline-drawer-content">
|
||||
<div class="flex-container">
|
||||
<label class="checkbox_label" for="auto_continue_enabled">
|
||||
<input id="auto_continue_enabled" type="checkbox" />
|
||||
<small data-i18n="Enabled">
|
||||
Enabled
|
||||
</small>
|
||||
</label>
|
||||
<label class="checkbox_label" for="auto_continue_allow_chat_completions">
|
||||
<input id="auto_continue_allow_chat_completions" type="checkbox" />
|
||||
<small data-i18n="Allow for Chat Completion APIs">
|
||||
Allow for Chat Completion APIs
|
||||
</small>
|
||||
</label>
|
||||
</div>
|
||||
<div class="auto_continue_settings_block">
|
||||
<label for="auto_continue_target_length">
|
||||
<small data-i18n="Target length (tokens)">Target length (tokens)</small>
|
||||
<input id="auto_continue_target_length" type="number" class="text_pole textarea_compact" min="0" max="1024" />
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div name="AutoCompleteToggle" class="inline-drawer wide100p flexFlowColumn">
|
||||
<div class="inline-drawer-toggle inline-drawer-header userSettingsInnerExpandable" title="Options for the various autocompelte input boxes.">
|
||||
<b><span data-i18n="AutoComplete Settings">AutoComplete Settings</span></b>
|
||||
<div class="fa-solid fa-circle-chevron-down inline-drawer-icon down"></div>
|
||||
</div>
|
||||
<div class="inline-drawer-content">
|
||||
<label data-newbie-hidden class="checkbox_label" for="stscript_autocomplete_autoHide">
|
||||
<input id="stscript_autocomplete_autoHide" type="checkbox" />
|
||||
<small data-i18n="Automatically hide details">
|
||||
@ -4326,6 +4250,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div name="STscriptToggles">
|
||||
<h4 data-i18n="STscript Settings">STscript Settings</h4>
|
||||
<div title="Sets default flags for the STscript parser." data-i18n="[title]Sets default flags for the STscript parser.">
|
||||
@ -4949,6 +4874,61 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- various fullscreen popups -->
|
||||
<div name="templatesAndPopupsWrapper"> <!--this div is just for IDE sanity for quick collapsing-->
|
||||
<div id="export_format_popup" class="list-group">
|
||||
<div class="export_format list-group-item" data-format="png">PNG</div>
|
||||
<div class="export_format list-group-item" data-format="json">JSON</div>
|
||||
</div>
|
||||
<div id="zoomed_avatar_template" class="template_element">
|
||||
<div class="zoomed_avatar">
|
||||
<div class="panelControlBar flex-container">
|
||||
<div class="fa-fw fa-solid fa-grip drag-grabber"></div>
|
||||
<div class="fa-fw fa-solid fa-circle-xmark dragClose" id="closeZoom"></div>
|
||||
</div>
|
||||
<div class="zoomed_avatar_container">
|
||||
<img class="zoomed_avatar_img" src="" data-izoomify-url="" data-izoomify-magnify="1.8" data-izoomify-duration="300" alt="">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<template id="generic_draggable_template">
|
||||
<div class="draggable">
|
||||
<div class="dragTitle"></div>
|
||||
<div class="panelControlBar flex-container">
|
||||
<div class="fa-fw fa-solid fa-grip drag-grabber"></div>
|
||||
<div class="fa-fw fa-solid fa-circle-xmark dragClose"></div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<div id="user_avatar_template" class="template_element">
|
||||
<div class="avatar-container">
|
||||
<div imgfile="" class="avatar">
|
||||
<img src="" alt="User Avatar">
|
||||
</div>
|
||||
<div class="flex-container wide100pLess70px character_select_container">
|
||||
<div class="wide100p character_name_block">
|
||||
<span class="ch_name flex1"></span>
|
||||
<div class="avatar-buttons">
|
||||
<button class="menu_button bind_user_name" title="Bind user name to that avatar" data-i18n="[title]Bind user name to that avatar">
|
||||
<i class="fa-fw fa-solid fa-user-edit"></i>
|
||||
</button>
|
||||
<button class="menu_button set_persona_image" title="Change persona image" data-i18n="[title]Change persona image">
|
||||
<i class="fa-fw fa-solid fa-image"></i>
|
||||
</button>
|
||||
<button class="menu_button set_default_persona" title="Select this as default persona for the new chats." data-i18n="[title]Select this as default persona for the new chats.">
|
||||
<i class="fa-fw fa-solid fa-crown"></i>
|
||||
</button>
|
||||
<button class="menu_button duplicate_persona" title="Duplicate persona" data-i18n="[title]Duplicate persona">
|
||||
<i class="fa-fw fa-solid fa-clone"></i>
|
||||
</button>
|
||||
<button class="menu_button delete_avatar" title="Delete persona" data-i18n="[title]Delete persona">
|
||||
<i class="fa-fw fa-solid fa-trash-alt"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ch_description"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<template id="popup_template" data-i18n="[popup-button-save]popup-button-save;[popup-button-yes]popup-button-yes;[popup-button-no]popup-button-no;[popup-button-cancel]popup-button-cancel;[popup-button-import]popup-button-import;[popup-button-crop]popup-button-crop" popup-button-save="Save" popup-button-yes="Yes" popup-button-no="No" popup-button-cancel="Cancel" popup-button-import="Import" popup-button-crop="Crop"> <!-- localization data holder for popups -->
|
||||
<dialog class="popup">
|
||||
<div class="popup-body">
|
||||
@ -5157,6 +5137,7 @@
|
||||
</div>
|
||||
<div id="character_popup_ok" class="menu_button" data-i18n="Save">Save</div>
|
||||
</div>
|
||||
|
||||
<div id="shadow_select_chat_popup">
|
||||
<div id="select_chat_popup">
|
||||
<div name="selectChatPopupHeader" class="flex-container alignitemscenter justifySpaceBetween flexGap10">
|
||||
@ -5999,6 +5980,7 @@
|
||||
<div class="right_menu_button mes_file_delete fa-solid fa-trash-can" title="Remove the file" data-i18n="[title]Remove the file"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="movingDivs">
|
||||
<div id="floatingPrompt" class="drawer-content flexGap5">
|
||||
<div class="panelControlBar flex-container alignItemsBaseline">
|
||||
@ -6454,60 +6436,7 @@
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="export_format_popup" class="list-group">
|
||||
<div class="export_format list-group-item" data-format="png">PNG</div>
|
||||
<div class="export_format list-group-item" data-format="json">JSON</div>
|
||||
</div>
|
||||
<div id="zoomed_avatar_template" class="template_element">
|
||||
<div class="zoomed_avatar">
|
||||
<div class="panelControlBar flex-container">
|
||||
<div class="fa-fw fa-solid fa-grip drag-grabber"></div>
|
||||
<div class="fa-fw fa-solid fa-circle-xmark dragClose" id="closeZoom"></div>
|
||||
</div>
|
||||
<div class="zoomed_avatar_container">
|
||||
<img class="zoomed_avatar_img" src="" data-izoomify-url="" data-izoomify-magnify="1.8" data-izoomify-duration="300" alt="">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<template id="generic_draggable_template">
|
||||
<div class="draggable">
|
||||
<div class="dragTitle"></div>
|
||||
<div class="panelControlBar flex-container">
|
||||
<div class="fa-fw fa-solid fa-grip drag-grabber"></div>
|
||||
<div class="fa-fw fa-solid fa-circle-xmark dragClose"></div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<div id="user_avatar_template" class="template_element">
|
||||
<div class="avatar-container">
|
||||
<div imgfile="" class="avatar">
|
||||
<img src="" alt="User Avatar">
|
||||
</div>
|
||||
<div class="flex-container wide100pLess70px character_select_container">
|
||||
<div class="wide100p character_name_block">
|
||||
<span class="ch_name flex1"></span>
|
||||
<div class="avatar-buttons">
|
||||
<button class="menu_button bind_user_name" title="Bind user name to that avatar" data-i18n="[title]Bind user name to that avatar">
|
||||
<i class="fa-fw fa-solid fa-user-edit"></i>
|
||||
</button>
|
||||
<button class="menu_button set_persona_image" title="Change persona image" data-i18n="[title]Change persona image">
|
||||
<i class="fa-fw fa-solid fa-image"></i>
|
||||
</button>
|
||||
<button class="menu_button set_default_persona" title="Select this as default persona for the new chats." data-i18n="[title]Select this as default persona for the new chats.">
|
||||
<i class="fa-fw fa-solid fa-crown"></i>
|
||||
</button>
|
||||
<button class="menu_button duplicate_persona" title="Duplicate persona" data-i18n="[title]Duplicate persona">
|
||||
<i class="fa-fw fa-solid fa-clone"></i>
|
||||
</button>
|
||||
<button class="menu_button delete_avatar" title="Delete persona" data-i18n="[title]Delete persona">
|
||||
<i class="fa-fw fa-solid fa-trash-alt"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ch_description"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Script includes -->
|
||||
<script src="lib/diff_match_patch.js"></script>
|
||||
<script src="lib/object-hasown.js"></script>
|
||||
|
@ -85,6 +85,12 @@ export function loadInstructMode(data) {
|
||||
|
||||
migrateInstructModeSettings(power_user.instruct);
|
||||
|
||||
if (power_user.instruct.enabled) {
|
||||
$('#instruct_enabled').parent().find('i').addClass('toggleEnabled');
|
||||
} else {
|
||||
$('#instruct_enabled').parent().find('i').removeClass('toggleEnabled');
|
||||
}
|
||||
|
||||
controls.forEach(control => {
|
||||
const $element = $(`#${control.id}`);
|
||||
|
||||
@ -606,11 +612,34 @@ jQuery(() => {
|
||||
|
||||
$('#instruct_system_same_as_user').on('input', function () {
|
||||
const state = !!$(this).prop('checked');
|
||||
$('#instruct_system_sequence').prop('disabled', state);
|
||||
$('#instruct_system_suffix').prop('disabled', state);
|
||||
if (state == true) {
|
||||
let tempHeightForDisabled = $('#instruct_system_sequence').css('height');
|
||||
$('#instruct_system_sequence_block').addClass('disabled');
|
||||
$('#instruct_system_suffix_block').addClass('disabled');
|
||||
$('#instruct_system_sequence').css('height', tempHeightForDisabled);
|
||||
$('#instruct_system_suffix').css('height', tempHeightForDisabled);
|
||||
|
||||
$('#instruct_system_sequence').prop('contenteditable', false);
|
||||
$('#instruct_system_suffix').prop('contenteditable', false);
|
||||
} else {
|
||||
$('#instruct_system_sequence_block').removeClass('disabled');
|
||||
$('#instruct_system_suffix_block').removeClass('disabled');
|
||||
$('#instruct_system_sequence').css('height', '');
|
||||
$('#instruct_system_sequence').css('height', '');
|
||||
$('#instruct_system_sequence').prop('contenteditable', true);
|
||||
$('#instruct_system_suffix').prop('contenteditable', true);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
$('#instruct_enabled').on('change', function () {
|
||||
//color toggle for the main switch
|
||||
if (power_user.instruct.enabled) {
|
||||
$('#instruct_enabled').parent().find('i').addClass('toggleEnabled');
|
||||
} else {
|
||||
$('#instruct_enabled').parent().find('i').removeClass('toggleEnabled');
|
||||
}
|
||||
|
||||
if (!power_user.instruct.bind_to_context) {
|
||||
return;
|
||||
}
|
||||
|
@ -1602,6 +1602,7 @@ body[data-stscript-style] .hljs.language-stscript {
|
||||
.hljs-pipe {
|
||||
color: var(--ac-style-color-punctuation);
|
||||
}
|
||||
|
||||
.hljs-pipebreak {
|
||||
color: var(--ac-style-color-type);
|
||||
}
|
||||
@ -1695,6 +1696,7 @@ body[data-stscript-style] .hljs.language-stscript {
|
||||
background-color: var(--ac-color-selectedBackground);
|
||||
color: var(--ac-color-selectedText);
|
||||
}
|
||||
|
||||
&.selected.not-selectable>* {
|
||||
background-color: var(--ac-color-notSelectableBackground);
|
||||
color: var(--ac-color-notSelectableText);
|
||||
@ -1776,11 +1778,13 @@ body[data-stscript-style] .hljs.language-stscript {
|
||||
padding: 0.25em 0.25em 0.5em 0.25em;
|
||||
border-bottom: 1px solid var(--ac-color-border);
|
||||
|
||||
> .head {
|
||||
>.head {
|
||||
display: flex;
|
||||
gap: 0.5em;
|
||||
}
|
||||
> .head > .name, > .name {
|
||||
|
||||
>.head>.name,
|
||||
>.name {
|
||||
flex: 1 1 auto;
|
||||
font-weight: bold;
|
||||
color: var(--ac-color-text);
|
||||
@ -1790,20 +1794,25 @@ body[data-stscript-style] .hljs.language-stscript {
|
||||
text-decoration: 1px dotted underline;
|
||||
}
|
||||
}
|
||||
> .head > .source {
|
||||
|
||||
>.head>.source {
|
||||
padding: 0 0.5em;
|
||||
cursor: help;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.5em;
|
||||
|
||||
&.isThirdParty.isExtension {
|
||||
color: #F89406;
|
||||
}
|
||||
|
||||
&.isCore {
|
||||
color: transparent;
|
||||
|
||||
&.isExtension {
|
||||
color: #51A351;
|
||||
}
|
||||
|
||||
&:after {
|
||||
content: '';
|
||||
order: -1;
|
||||
@ -2606,7 +2615,8 @@ select option:not(:checked) {
|
||||
color: var(--golden) !important;
|
||||
}
|
||||
|
||||
.world_set {
|
||||
.world_set,
|
||||
.toggleEnabled {
|
||||
color: var(--active) !important;
|
||||
}
|
||||
|
||||
@ -5374,6 +5384,7 @@ body:not(.movingUI) .drawer-content.maximized {
|
||||
.popup:has(.faPicker) {
|
||||
/* Fix height for fa picker popup, otherwise search is making it resize weirdly */
|
||||
height: 70%;
|
||||
|
||||
.popup-content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
@ -5383,7 +5394,8 @@ body:not(.movingUI) .drawer-content.maximized {
|
||||
.faPicker-container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow: hidden;;
|
||||
overflow: hidden;
|
||||
;
|
||||
}
|
||||
|
||||
.faQuery-container {
|
||||
@ -5405,6 +5417,7 @@ body:not(.movingUI) .drawer-content.maximized {
|
||||
padding: 0.25em;
|
||||
width: unset;
|
||||
box-sizing: content-box;
|
||||
|
||||
&.hidden {
|
||||
display: none;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user