Sha256: 4c08df29eb40030def2d6da22ccaf90ccf0424627cc9625df7dba7f08397ab07
Contents?: true
Size: 1.23 KB
Versions: 4
Compression:
Stored size: 1.23 KB
Contents
import { elt, removeChildren } from "../util/dom.js" import { indexOf } from "../util/misc.js" import { updateGutterSpace } from "./update_display.js" // Rebuild the gutter elements, ensure the margin to the left of the // code matches their width. export function updateGutters(cm) { let gutters = cm.display.gutters, specs = cm.options.gutters removeChildren(gutters) let i = 0 for (; i < specs.length; ++i) { let gutterClass = specs[i] let gElt = gutters.appendChild(elt("div", null, "CodeMirror-gutter " + gutterClass)) if (gutterClass == "CodeMirror-linenumbers") { cm.display.lineGutter = gElt gElt.style.width = (cm.display.lineNumWidth || 1) + "px" } } gutters.style.display = i ? "" : "none" updateGutterSpace(cm) } // Make sure the gutters options contains the element // "CodeMirror-linenumbers" when the lineNumbers option is true. export function setGuttersForLineNumbers(options) { let found = indexOf(options.gutters, "CodeMirror-linenumbers") if (found == -1 && options.lineNumbers) { options.gutters = options.gutters.concat(["CodeMirror-linenumbers"]) } else if (found > -1 && !options.lineNumbers) { options.gutters = options.gutters.slice(0) options.gutters.splice(found, 1) } }
Version data entries
4 entries across 4 versions & 2 rubygems