vscode 插件开发示例

发布于 2022-11-04 12:16:03 字数 1318 浏览 144 评论 0

使用案例

将选中的文本替换

选中文本转化为大写:

import * as vscode from 'vscode'

import { Range, commands } from 'vscode'

export function activate(context: vscode.ExtensionContext) {
  console.log('active')
  const disposable = commands.registerTextEditorCommand('uppercase.toUpperCase', toUpperCase)
  context.subscriptions.push(disposable)
}

function toUpperCase(editor: vscode.TextEditor) {
  editor.edit(builder => {
    editor.selections.forEach(selection => {
      const range = new Range(selection.start, selection.end)
      const text = editor.document.getText(range) || ''
      builder.replace(selection, text.toLocaleUpperCase())
    })
  })
}

export function deactivate() {
  return
}

参考:https://github.com/ruiquelhas/vscode-uppercase

选中 hover 效果

export function activate(context: vscode.ExtensionContext) {
  const hover = languages.registerHoverProvider({
    scheme: '*',
    language: '*',
  }, {
    provideHover(document, position, token) {
      return new Hover('hello world')
    }
  })

  context.subscriptions.push(hover)
}

参考:https://github.com/thegtproject/vscode-hoverhex

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

丶视觉

暂无简介

文章
评论
25 人气
更多

推荐作者

微信用户

文章 0 评论 0

小情绪

文章 0 评论 0

ゞ记忆︶ㄣ

文章 0 评论 0

笨死的猪

文章 0 评论 0

彭明超

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文