Code Editor

class marimo.ui.code_editor(value: str = '', language: str = 'python', placeholder: str = '', theme: Literal['light', 'dark'] | None = None, disabled: bool = False, min_height: int | None = None, max_height: int | None = None, *, label: str = '', on_change: Callable[[str], None] | None = None)

A code editor.

Example.

code_editor = mo.ui.code_editor()

Attributes.

  • value: a string of the code editor contents

Initialization Args.

  • value: initial value of the code editor

  • language: language of the code editor, defaults to "python"; most major languages are supported, including “sql”, “javascript”, “typescript”, “html”, “css”, “c”, “cpp”, “rust”, and more

  • placeholder: placeholder text to display when the code editor is empty

  • theme: theme of the code editor, defaults to the editor’s default

  • disabled: whether the input is disabled

  • min_height: minimum height of the code editor in pixels

  • max_height: maximum height of the code editor in pixels

  • label: text label for the element

  • on_change: optional callback to run when this element’s value changes

Public methods

Inherited from UIElement

form([label, bordered, loading, ...])

Create a submittable form out of this UIElement.

send_message(message, buffers)

Send a message to the element rendered on the frontend from the backend.

Inherited from Html

batch(**elements)

Convert an HTML object with templated text into a UI element.

center()

Center an item.

right()

Right-justify.

left()

Left-justify.

callout([kind])

Create a callout containing this HTML element.

style([style])

Wrap an object in a styled container.

Public Data Attributes:

Inherited from UIElement

value

The element’s current value.

Inherited from Html

text

A string of HTML representing this element.