本文作者:初心记忆

VSCode插件开发全攻略(九)常用API总结

初心记忆 2019-10-01 2636 抢沙发
VSCode插件开发全攻略(九)常用API总结摘要: ...

更多文章请戳VSCode插件开发全攻略系列目录导航

本文提炼一些常见的API使用场景供参考,本文内容有待完善。

编辑器相关

修改当前激活编辑器内容

替换当前编辑器全部内容:

vscode.window.activeTextEditor.edit(editBuilder => {
    // 从开始到结束,全量替换
    const end = new vscode.Position(vscode.window.activeTextEditor.document.lineCount + 1, 0);
    const text = '新替换的内容';
    editBuilder.replace(new vscode.Range(new vscode.Position(0, 0), end), text);
});

打开文件并选中某段文字

const path = '/Users/somefile.txt';
const options = {
    // 选中第3行第9列到第3行第17列
    selection: new vscode.Range(new vscode.Position(2, 8), new vscode.Position(2, 16));
    // 是否预览,默认true,预览的意思是下次再打开文件是否会替换当前文件
    preview: false,
    // 显示在第二个编辑器
    viewColumn: vscode.ViewColumn.Two
};
vscode.window.showTextDocument(vscode.Uri.file(path), options);

preview为true相当于我们在文件管理器单击文件,此时标题是斜体(如下图),为false时则相当于双击。

VSCode插件开发全攻略(九)常用API总结

通知和状态栏

提示

vscode.window.showInformationMessage('我是info信息!');
vscode.window.showErrorMessage('我是错误信息!');

自定义按钮带回调的提示:

vscode.window.showInformationMessage('是否要打开小茗同学的博客?', '是', '否', '不再提示').then(result => {
    if (result === '是') {
        exec(`open 'https://haoji.me'`);
    } else if (result === '不再提示') {
        // 其它操作
    }
});

修改状态栏

vscode.window.setStatusBarMessage('你好,前端艺术家!');

VSCode插件开发全攻略(九)常用API总结

setStatusBarMessage只是vscode.window.createStatusBarItem的一种快捷调用方式,如需更多自定义设置可以使用这个方法。

参考

https://code.visualstudio.com/docs/extensionAPI/vscode-api

文章版权及转载声明

作者:初心记忆本文地址:https://www.lijun520.com/jianzhan/206.html发布于 2019-10-01
文章转载或复制请以超链接形式并注明出处淡忘日记-李骏的博客

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享

发表评论

快捷回复:

验证码

评论列表 (暂无评论,2636人围观)参与讨论

还没有评论,来说两句吧...