我是否可以指定使用标记在文档工具提示中显示链接的API?
我唯一能找到支持标记的地方就是悬停。
例如:
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: [
'**SOURCE** [Im an inline-style link](https://www.google.com)',
{ language: 'html', value: res.responseText }
]
}
});
}
});
monaco.editor.create(document.getElementById("container"), {
value: '\n\nHover over this text',
language: 'mySpecialLanguage'
});
function xhr(url) {
var req = null;
return new monaco.Promise(function(c,e,p) {
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 () { };
} else {
p(req);
}
};
req.open("GET", url, true );
req.responseType = "";
req.send(null);
}, function () {
req._canceled = true;
req.abort();
});
}
答案 0 :(得分:0)
从suggestWidget的代码看来,您可以将ICompletionItem item.suggestion.documentation
设置为IMarkdownString
(与常规字符串相对),然后使用MarkdownRenderer对其进行渲染。
export interface IMarkdownString {
value: string;
isTrusted?: boolean;
}
注意:我碰巧早些时候在看这段代码,但是没有尝试过上面的建议。