是否为VSCode扩展API的每个单词创建分散的悬停?

时间:2019-05-10 09:37:14

标签: typescript visual-studio-code vscode-extensions

我在VSCode中有这样的文本;

"The quick brown fox jumps over the lazy dog"

我正在开发扩展程序,并希望能够使用正则表达式(或其他任何东西)将鼠标悬停在每个单词上,并查看有关该单词中单词的更多详细信息。

如何添加启用此功能的参数?

该片段(粘贴在下面)offed by VS code可以使用,但是它为句子中的每个单词都提供了相同的悬停信息“单词的悬停信息”

vscode.languages.registerHoverProvider('plaintext', {
  provideHover(document, position, token) {
    return {
      contents: ['Hover information for word']
    };
  }
});

我想要的是使情感中的每个单词都具有唯一的悬停信息。

例如,将鼠标悬停在“狐狸”上可能显示“野生动物”,而将鼠标悬停在“狗”上则显示“家养动物”

1 个答案:

答案 0 :(得分:0)

const wordRange = document.getWordRangeAtPosition(position);
const word = document.getText(wordRange);
const map = {
    fox: 'wild',
    dog: 'domestic',
};
return new vscode.Hover(map[word]);