所以,我正在使用 Monaco Editor 并创建我的自定义语言。我正在使用“monaco.languages.registerCompletionItemProvider”来自动完成我的语言。我似乎不知道自动如何在自动完成列表中列出我的符号。当我想要一个自动完成的单词列表时它工作得很好但是当我想要一个符号列表时它不起作用。所以,我想要 “value”变量被列为“标签”,而不是“k”被列为标签,但它不能因为它们是符号。有什么解决方法吗?
var op = new Map([])
op.set('and', '∧');
op.set('or', '∨');
op.set('implies','→');
op.set('not', '¬');
op.set('forall','∀');
op.set('exists','∃');
op.set('turnstile','⊢');
let operators = ['and', 'or', 'implies', 'not', 'forall', 'exists','turnstile'];
monaco.languages.registerCompletionItemProvider('logium', {
provideCompletionItems: (model, position) => {
const suggestions = [
...operators.map(k => {
let value = getByKey(op, k);
return {
label : k,
kind: monaco.languages.CompletionItemKind.Function,
insertText: value
};
}),
];
return {suggestions: suggestions};
}
})