mirror of
https://github.com/microsoft/monaco-editor.git
synced 2025-12-22 15:05:39 +01:00
101 lines
No EOL
2.3 KiB
HTML
101 lines
No EOL
2.3 KiB
HTML
<!DOCTYPE html>
|
|
<!-- THIS IS A GENERATED FILE VIA `npm run simpleserver` -->
|
|
<html>
|
|
<head>
|
|
<base href="..">
|
|
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
|
</head>
|
|
<body>
|
|
<style>
|
|
/*----------------------------------------SAMPLE CSS START*/
|
|
|
|
|
|
|
|
/*----------------------------------------SAMPLE CSS END*/
|
|
</style>
|
|
<a class="loading-opts" href="playground.generated/index.html">[<< BACK]</a> <br/>
|
|
THIS IS A GENERATED FILE VIA `npm run simpleserver`
|
|
|
|
<div id="bar" style="margin-bottom: 6px;"></div>
|
|
|
|
<div style="clear:both"></div>
|
|
<div id="outer-container" style="width:800px;height:450px;border: 1px solid grey">
|
|
<!-- ----------------------------------------SAMPLE HTML START-->
|
|
|
|
<div id="container" style="height: 100%"></div>
|
|
|
|
|
|
<!-- ----------------------------------------SAMPLE HTML END-->
|
|
</div>
|
|
<div style="clear:both"></div>
|
|
|
|
<script src="../../metadata.js"></script>
|
|
<script src="dev-setup.js"></script>
|
|
<script>
|
|
loadEditor(function() {
|
|
/*----------------------------------------SAMPLE JS START*/
|
|
|
|
monaco.languages.register({ id: 'mySpecialLanguage' });
|
|
|
|
monaco.languages.registerHoverProvider('mySpecialLanguage', {
|
|
provideHover: function (model, position) {
|
|
return xhr('../playground.html').then(function (res) {
|
|
return {
|
|
range: new monaco.Range(
|
|
1,
|
|
1,
|
|
model.getLineCount(),
|
|
model.getLineMaxColumn(model.getLineCount())
|
|
),
|
|
contents: [
|
|
{ value: '**SOURCE**' },
|
|
{ value: '```html\n' + res.responseText.substring(0, 200) + '\n```' }
|
|
]
|
|
};
|
|
});
|
|
}
|
|
});
|
|
|
|
monaco.editor.create(document.getElementById('container'), {
|
|
value: '\n\nHover over this text',
|
|
language: 'mySpecialLanguage'
|
|
});
|
|
|
|
function xhr(url) {
|
|
var req = null;
|
|
return new Promise(
|
|
function (c, e) {
|
|
req = new XMLHttpRequest();
|
|
req.onreadystatechange = function () {
|
|
if (req._canceled) {
|
|
return;
|
|
}
|
|
|
|
if (req.readyState === 4) {
|
|
if ((req.status >= 200 && req.status < 300) || req.status === 1223) {
|
|
c(req);
|
|
} else {
|
|
e(req);
|
|
}
|
|
req.onreadystatechange = function () {};
|
|
}
|
|
};
|
|
|
|
req.open('GET', url, true);
|
|
req.responseType = '';
|
|
|
|
req.send(null);
|
|
},
|
|
function () {
|
|
req._canceled = true;
|
|
req.abort();
|
|
}
|
|
);
|
|
}
|
|
|
|
|
|
/*----------------------------------------SAMPLE JS END*/
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |