bun i @replit/codemirror-minimap
import{basicSetup,EditorView}from'codemirror';import{showMinimap}from"@replit/codemirror-minimap"letcreate=(v: EditorView)=>{constdom=document.createElement('div');return{ dom }}letview=newEditorView({doc: "",extensions: [basicSetup,showMinimap.compute(['doc'],(state)=>{return{
create,/* optional */displayText: 'blocks',showOverlay: 'always',gutters: [{1: '#00FF00',2: '#00FF00'}],}}),],parent: document.querySelector('#editor'),})The minimap extension exposes a few configuration options:
displayText: customize how the editor text is displayed:
/** * displayText?: "blocks" | "characters"; * Defaults to "characters" */{displayText: 'blocks'}eventHandlers: attach event handlers to the minimap container element
/** * eventHandlers?: {[event in keyof DOMEventMap]?: EventHandler<event>} */{eventHandlers: {'contextmenu': (e)=>onContextMenu(e)}}showOverlay: customize when the overlay showing the current viewport is visible
/** * showOverlay?: "always" | "mouse-over"; * Defaults to "always" */{showOverlay: 'mouse-over'}gutters: display a gutter on the left side of the minimap at specific lines
/** * gutters?: Array<Record<number, string>> * Where `number` is line number, and `string` is a color */{gutters: [{1: '#00FF00',2: 'green',3: 'rgb(0, 100, 50)'}]}To build from source:
bun build
To publish a new version to NPM registry:
npm publish

