Skip to content

外观

themesettings 传给 SweetEditor,或在就绪后调用 applyTheme / setSettings

颜色是打包的 ARGB Int0xAARRGGBB)。大于 0x7FFFFFFF 的字面量要 .toInt()

EditorSettings

字段默认说明
wrapModeNONECHAR_BREAKWORD_BREAK
tabSize4
insertSpacestrue
lineSpacingAdd0f额外像素
lineSpacingMult1.2f
scale1f视觉缩放初值
fontSizeSp14f
readOnlyfalse
gutterVisibletrue
gutterSticky平台默认粘性行号
currentLineRenderModeBACKGROUNDBORDERNONE
foldArrowModeALWAYSAUTOHIDDEN
renderWhitespaceNONEBOUNDARYSELECTIONTRAILINGALL
renderLineBreaksfalse
autoIndentModeKEEP_INDENTNONE
backspaceUnindenttrue
decorationOverscanViewportMultiplier1fProvider 额外视口
decorationScrollRefreshMinIntervalMs50节流

EditorTheme

EditorTheme.dark() 即默认构造。EditorTheme.light() 是浅色预设。

常见分组:

  • 表面:backgroundColortextColorcursorColorcurrentLineColor
  • 行号区:lineNumberColorcurrentLineNumberColorsplitLineColorgutterIconColor
  • 滚动条:scrollbarTrackColorscrollbarThumbColorscrollbarThumbActiveColor
  • 选区 / 链接 / CodeLens / 搜索 / 诊断 / 高亮 / 联动编辑 / 括号
  • Diff:diffAdded* / diffRemoved*
  • 菜单与内联建议条
  • fontFamily(默认 FontFamily.Monospace
  • rangeEffects: EditorRangeEffects? — 按区间覆盖

EditorRangeEffectStyleforegroundColorbackgroundColorborderColorunderlineColorunderlineStyleNONESOLIDDASHEDWAVY)。

rangeEffects 为 null 时,主题颜色字段会自动映射(选区背景、波浪诊断、实线 IME 下划线等)。