You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
# תיקון סגנונות ערכות משותפות (Shared Themes) #2585
מטרה: לאפשר לשרת לשמור את המשתנים האלה ב-DB ולא לסנן אותם.
2. מיפוי VS Code → משתני Markdown
קובץ:services/theme_parser_service.py
VSCODE_TO_CSS_MAP= {
# רקע העורך ממלא גם את --md-surface"editor.background": ["--bg-primary", "--md-surface"],
# צבע טקסט ממלא גם את --md-text"editor.foreground": ["--text-primary", "--md-text"],
}
מטרה: כש-VS Code theme מיובא, משתני ה-Markdown מקבלים ערכים אוטומטית מצבעי העורך.
3. שימור משתנים מקוריים בפרסום
קובץ:webapp/templates/settings/theme_builder.html
// State - שמירת כל המשתנים המקורייםletcurrentThemeOriginalVariables={};// בטעינת ערכה - שמירת כל המשתנים (כולל MD)functionloadThemeIntoForm(theme){constvariables=theme.variables||{};currentThemeOriginalVariables={ ...variables};// ← שמירה!// ...}// בפרסום - מיזוג משתנים מקוריים + ערכי טופסpublishForm.addEventListener('submit',async(e)=>{constformValues=collectThemeValues();// רק מה שבטופסconstcolors={
...(currentThemeOriginalVariables||{}),// כל המשתנים המקוריים
...formValues,// ערכי הטופס דורסים};// שליחה לשרת עם colors});
מטרה:
הטופס מציג רק 10 color pickers
אבל ערכות מיובאות מכילות 30+ משתנים
בלי המיזוג, משתנים שאין להם picker (כמו --md-inline-code-bg) היו נמחקים
הוספת [data-theme^="shared:"] לכל סגנונות:
#md-content (רקע וצבע טקסט)
Mermaid diagrams (nodes, labels, edges, actors, notes)
Inline code ו-code blocks
שורש הבעיה: כל קבצי ה-CSS כללו סגנונות לערכות custom אבל לא לערכות shared:*. לכן ערכות ציבוריות לא קיבלו את הסגנונות המתאימים.
--md-toc-surface - רקע כהה מהערכה
--md-toc-border - גבול
--md-toc-text - צבע טקסט
--md-toc-hover, --md-toc-active - צבעי hover/active
--md-toc-mini-* - כפתור מינימלי
דריסת צבע קישורים - הוספת סגנון ספציפי ל-.md-toc-item בערכות custom/shared כדי לדרוס את הסגנון הכללי של קישורים (a { color: var(--primary); }):
Activity
amirbiron commentedon Jan 5, 2026
@cursoragent
תוכל לממש?
cursor commentedon Jan 5, 2026
View PR
עיינתי ב-
.cursorrulesובאתר התיעוד. סיכום מה שלמדתי ומה שיישמתי:מה למדתי מהתיעוד:
היררכיית משתנים - 3 שכבות:
--primary,--glass*)--bg-*,--text-*,--btn-primary-*,--md-*)ייבוא VS Code - יוצר גם
variablesוגםsyntax_cssWhitelist - רק משתנים מאושרים נשמרים
השינויים שביצעתי:
1.
theme_builder.html- שמירת משתנים מקוריים:2.
theme_parser_service.py- הוספת משתנים חסרים ל-Whitelist:המשתנים האלה נמצאים ב-
md_preview.htmlאבל לא היו ב-whitelist, ולכן נמחקו בפרסום.האם לרוץ את הטסטים לוודא שאין שבירות?
Learn more about Cursor Agents
amirbiron commentedon Jan 5, 2026
@cursoragent
Bug: כפתורי קישור מאבדים צבע טקסט בעת פרסום ערכה
תיאור הבעיה
כאשר מפרסמים ערכה מיובאת כציבורית, כפתורי הקישור (ראשיים ומשניים) מאבדים את צבע הטקסט שלהם.
התנהגות נכונה
התנהגות שגויה
ניסיונות תיקון קודמים
ניסיון #1: שימור משתנים מקוריים
מיקום:
theme_builder.htmlשינוי שבוצע:
תוצאה: ❌ לא פתר את הבעיה
ניסיון #2: הוספת סגנונות לערכות ציבוריות
מיקום:
base.htmlבעיה שזוהתה:
סגנונות הכפתורים היו מוגדרים רק עבור
[data-theme-type="custom"], אך ערכות ציבוריות משתמשות ב-data-theme="shared:xxx"ללאdata-theme-type.שינוי שבוצע:
תוצאה: ❌ לא פתר את הבעיה
מידע נוסף
amirbiron commentedon Jan 5, 2026
@cursoragent
שכחתי לציין שכשהכפתורים לא מקבלים את הצבע של הLink בערכות הציבוריות - הם כן מקבלים את הצבע טקסט שמוגדר להם בבונה ערכות
cursor commentedon Jan 5, 2026
Create PR
We encountered an internal error - please try again in a moment.
Learn more about Cursor Agents
amirbiron commentedon Jan 5, 2026
@cursoragent
שכחתי לציין מומלץ לעיין באתר התיעוד בעמוד
ערכות נושא מותאמות אישית – מדריך מקיףamirbiron commentedon Jan 5, 2026
סיכום התיקון
הבעיה
var(--primary)בגלל[data-theme="custom"] a { color: var(--primary); }ב-dark-mode.css✅var(--btn-primary-color)עם!importantשדרס את הצבע ❌התיקון
שיניתי את הסגנונות של ערכות shared להשתמש ב-
var(--primary)במקוםvar(--btn-primary-color), כך שההתנהגות תהיה אחידה:עכשיו בשני סוגי הערכות (custom ו-shared), כפתורים יציגו את צבע ה-
--primary(שבדרך כלל = צבע ה-link).amirbiron commentedon Jan 5, 2026
נשאר עוד דבר
בעיות נותרות
התיקון
הוספת
[data-theme^="shared:"]לכל הסגנונות של CodeMirror.cm-editor.cm-gutters.cm-activeLinewebapp/static/css/dark-mode.css- הוספת סגנונות לערכות sharedהוספת
[data-theme^="shared:"]לסגנונות:.source(רקע קוד).highlighttable td.linenos(מספרי שורות).navbar .nav-linkh1-h6,pa(קישורים).logo.quick-access-item.recent-files-modal,.community-modalinput/textarea::placeholderTransitions(*,*::before,::after)הבעיה הייתה: ערכות shared לא היו מוגדרות ב-CSS - היו סגנונות רק לערכות
custom,dark,dim,nebulaאבל לא ל-shared:.amirbiron commentedon Jan 6, 2026
סיכום תיקוני תצוגת Markdown בפרסום ערכות (בוצע לפני מספר סשנים, ועכשיו לפתע הבעיה חזרה)
הבעיה המקורית
כשמפרסמים ערכה אישית (Custom) לציבורית (Shared), עיצוב Markdown נדרס:
שורש הבעיה
collectThemeValues()אסף רק משתנים שיש להם color picker בטופסהתיקונים
1. הוספת משתני Markdown ל-Whitelist
קובץ:
services/theme_parser_service.pyמטרה: לאפשר לשרת לשמור את המשתנים האלה ב-DB ולא לסנן אותם.
2. מיפוי VS Code → משתני Markdown
קובץ:
services/theme_parser_service.pyמטרה: כש-VS Code theme מיובא, משתני ה-Markdown מקבלים ערכים אוטומטית מצבעי העורך.
3. שימור משתנים מקוריים בפרסום
קובץ:
webapp/templates/settings/theme_builder.htmlמטרה:
--md-inline-code-bg) היו נמחקיםזרימת הנתונים המתוקנת
amirbiron commentedon Jan 6, 2026
התיקון:
webapp/templates/md_preview.html - Markdown לערכות shared
הוספת [data-theme^="shared:"] לכל סגנונות:
#md-content (רקע וצבע טקסט)
Mermaid diagrams (nodes, labels, edges, actors, notes)
Inline code ו-code blocks
שורש הבעיה: כל קבצי ה-CSS כללו סגנונות לערכות custom אבל לא לערכות shared:*. לכן ערכות ציבוריות לא קיבלו את הסגנונות המתאימים.
amirbiron commentedon Jan 6, 2026
סיכום תיקון TOC
הוספתי סגנונות TOC לערכות custom ו-shared:
משתני TOC - הוספת הגדרות ל-:root[data-theme="custom"] ו-:root[data-theme^="shared:"]:
--md-toc-surface - רקע כהה מהערכה
--md-toc-border - גבול
--md-toc-text - צבע טקסט
--md-toc-hover, --md-toc-active - צבעי hover/active
--md-toc-mini-* - כפתור מינימלי
דריסת צבע קישורים - הוספת סגנון ספציפי ל-.md-toc-item בערכות custom/shared כדי לדרוס את הסגנון הכללי של קישורים (a { color: var(--primary); }):
[data-theme="custom"] .md-toc-item,
[data-theme^="shared:"] .md-toc-item {
color: var(--md-toc-text);
}
עכשיו ה-TOC יקבל:
רקע כהה מהערכה (--card-bg)
צבע טקסט מהערכה (--text-primary)
צבע הדגשה (active item) מהערכה (--primary)