mirror of
https://github.com/oobabooga/text-generation-webui.git
synced 2025-01-09 12:09:04 +01:00
UI: reduce the size of CSS sent to the UI during streaming
This commit is contained in:
parent
0e673a7a42
commit
049297fa66
@ -15,6 +15,29 @@ from modules.utils import get_available_chat_styles
|
||||
# This is to store the paths to the thumbnails of the profile pictures
|
||||
image_cache = {}
|
||||
|
||||
|
||||
def minify_css(css: str) -> str:
|
||||
# Step 1: Remove comments
|
||||
css = re.sub(r'/\*.*?\*/', '', css, flags=re.DOTALL)
|
||||
|
||||
# Step 2: Remove leading and trailing whitespace
|
||||
css = re.sub(r'^[ \t]*|[ \t]*$', '', css, flags=re.MULTILINE)
|
||||
|
||||
# Step 3: Remove spaces after specific characters ({ : ; ,})
|
||||
css = re.sub(r'([:{;,])\s+', r'\1', css)
|
||||
|
||||
# Step 4: Remove spaces before `{`
|
||||
css = re.sub(r'\s+{', '{', css)
|
||||
|
||||
# Step 5: Remove empty lines
|
||||
css = re.sub(r'^\s*$', '', css, flags=re.MULTILINE)
|
||||
|
||||
# Step 6: Collapse all lines into one
|
||||
css = re.sub(r'\n', '', css)
|
||||
|
||||
return css
|
||||
|
||||
|
||||
with open(Path(__file__).resolve().parent / '../css/html_readable_style.css', 'r') as f:
|
||||
readable_css = f.read()
|
||||
with open(Path(__file__).resolve().parent / '../css/html_instruct_style.css', 'r') as f:
|
||||
@ -35,6 +58,12 @@ for k in chat_styles:
|
||||
style = match.group(1)
|
||||
chat_styles[k] = chat_styles.get(style, '') + '\n\n' + '\n'.join(lines[1:])
|
||||
|
||||
# Reduce the size of the CSS sources above
|
||||
readable_css = minify_css(readable_css)
|
||||
instruct_css = minify_css(instruct_css)
|
||||
for k in chat_styles:
|
||||
chat_styles[k] = minify_css(chat_styles[k])
|
||||
|
||||
|
||||
def fix_newlines(string):
|
||||
string = string.replace('\n', '\n\n')
|
||||
|
Loading…
Reference in New Issue
Block a user