I use a Monaco editor in a web application. The text models are provided lazily via HTTP. Now I want to show some of the resolved text models as read-only. It is clear how to open a Monaco "main editor" in read-only mode. Based on the text models URI I can decide whether it should be read-only or not, so I can configure the editor accordingly.
However, how can I set an embedded editor (the inline editor opening up after a "peek definition", "peek references", etc.) to read-only independently of the "main editor"?
A quite ugly workaround is to reset the value on every content change of the respective text model shown in the embedded editor. But clearly this is neither efficient nor nice.
// model is a monaco.editor.ITextModel that should be readonly
model.onDidChangeContent(() => {
if (model.getValue() !== content) {
model.setValue(content);
}
});
Thanks a lot in advance!