为什么在 VSCode(1.59.1) 的最新版本之后使用 VSCode 在 Linux 上悬停不起作用?
why hover doesn't work on Linux using VSCode after the latest release of VSCode(1.59.1)?
我实际上是在尝试制作一个 VSCode 扩展程序来提供悬停功能。我设法使它工作,但自从 VSCode (1.59.1) 的最后一个版本以来,它不再在 Linux 计算机上工作(已在 Ubuntu 和 CentOs 上测试),但是仍然适用于 Windows 和 MacOS。这是我的客户 js
文件 (./client/extension.js
):
const vscode = require('vscode');
function activate(context) {
console.log('Congratulations, your extension of YALES2 is now active!');
console.warn('Congratulations, your extension of YALES2 is now active!')
let disposable = vscode.commands.registerCommand('extension.mamar', () => {
vscode.window.showInformationMessage("Hover");
});
context.subscriptions.push(disposable);
disposable = vscode.languages.registerHoverProvider('yales2test', {
provideHover(document, position, token) {
const range = document.getWordRangeAtPosition(position);
const word = document.getText(range);
if (word=="ABSORBING_BOUNDARIES") {
return new vscode.Hover({ language: "yales2test", value: 'Message to show on Hover'});
}
}
});
context.subscriptions.push(disposable)
}
function deactivate() { }
module.exports = {
activate,
deactivate
}
在我的 package.json
上我有:
"activationEvents": [
"onCommand:extension.mamar",
"onLanguage:yales2test"
],
"main": "./client/extension.js",
"contributes": {
"capabilities": {
"hoverProvider": "true"
}
我还尝试将 VSCode 降级到 1.58.2,并且悬停有效!
有人知道为什么在使用 VSCode 1.59.1 时它在 Linux 上不再起作用吗?
问题是我的 extension.js
的长度,因为它有大量的 if ... else if...
导致内存溢出!因此,请始终考虑优化您的代码!
我实际上是在尝试制作一个 VSCode 扩展程序来提供悬停功能。我设法使它工作,但自从 VSCode (1.59.1) 的最后一个版本以来,它不再在 Linux 计算机上工作(已在 Ubuntu 和 CentOs 上测试),但是仍然适用于 Windows 和 MacOS。这是我的客户 js
文件 (./client/extension.js
):
const vscode = require('vscode');
function activate(context) {
console.log('Congratulations, your extension of YALES2 is now active!');
console.warn('Congratulations, your extension of YALES2 is now active!')
let disposable = vscode.commands.registerCommand('extension.mamar', () => {
vscode.window.showInformationMessage("Hover");
});
context.subscriptions.push(disposable);
disposable = vscode.languages.registerHoverProvider('yales2test', {
provideHover(document, position, token) {
const range = document.getWordRangeAtPosition(position);
const word = document.getText(range);
if (word=="ABSORBING_BOUNDARIES") {
return new vscode.Hover({ language: "yales2test", value: 'Message to show on Hover'});
}
}
});
context.subscriptions.push(disposable)
}
function deactivate() { }
module.exports = {
activate,
deactivate
}
在我的 package.json
上我有:
"activationEvents": [
"onCommand:extension.mamar",
"onLanguage:yales2test"
],
"main": "./client/extension.js",
"contributes": {
"capabilities": {
"hoverProvider": "true"
}
我还尝试将 VSCode 降级到 1.58.2,并且悬停有效! 有人知道为什么在使用 VSCode 1.59.1 时它在 Linux 上不再起作用吗?
问题是我的 extension.js
的长度,因为它有大量的 if ... else if...
导致内存溢出!因此,请始终考虑优化您的代码!