Django form widget library for using CodeMirror on Textarea.
pip install django-codemirror-widgetFirst, you need to specified
CODEMIRROR_PATHonsettings.py.CODEMIRROR_PATHis the URI of CodeMirror directory likeCODEMIRROR_PATH = r"javascript/codemirror". If you don't specify it, it defaults to'codemirror'. CodeMirror should be put there.Use
codemirror.CodeMirrorTextareawidget for target Textarea like below:from django import forms from codemirror import CodeMirrorTextarea codemirror_widget = CodeMirrorTextarea( mode="python", theme="cobalt", config={ 'fixedGutter': True }, ) document = forms.TextField(widget=codemirror_widget)
Use the followings in your settings.py.
The URI of CodeMirror directory (your CodeMirror installation should live in {{ STATIC_URL }}/{{ CODEMIRROR_PATH }})
The default mode which may be a string or configuration map (DEFAULT: 'javascript')
The default theme applied (DEFAULT: 'default')
Base mapping for the rest of the CodeMirror options (DEFAULT: { 'lineNumbers': True })
A format string interpolated with the form field name to name a global JS variable that will hold the CodeMirror
editor object. For example with CODEMIRROR_JS_VAR_FORMAT = "%s_editor" and a field named 'code', the JS variable
name would be 'code_editor'. If CODEMIRROR_JS_VAR_FORMAT is None, no global variable is created (DEFAULT: None)