神器啊,从未想过 VSCode 还能这样直接打开仓库URL,原理揭秘~

1. 前言

大家好,我是若川。我倾力持续组织了一年多源码共读,感兴趣的可以加我微信 lxchuan12 参与。另外,想学源码,极力推荐关注我写的专栏《学习源码整体架构系列》,目前是掘金关注人数(4.7k+人)第一的专栏,写有20余篇源码文章。

最近 `antfu`[1]Twitter 上发推开发了一个 `VSCode`[2] 插件。

dec99999605c1e81f379c2b6bc144ff9.png
vscode-open-in-github.png

你应该有碰到这样的场景。自己公司项目 gitlab 或者 github 项目。想快速打开网页去做一些操作,但耗时很久。那么有了这个插件后就方便快速很多,直接在状态栏点击一下图标即可打开。

安装插件 open in github button[3],github repo[4] 后,会安装上依赖的另外一个插件 Open in GitHub[5],github repo[6]

Open in GitHub 插件也提供了一些用户自定义配置。支持配置为自己的域名,比如 gitlab,配置好后就能打开相应的项目地址。

可以全局设置 @ext:fabiospampinato.vscode-open-in-github。如下图所示:

945ad707229171bf24b37185b646cebb.png
扩展设置

也可以在项目中新增 .vscode/setting.json 配置。

// setting.json
{
  "openInGitHub.github.domain": "github.com", // Custom GitHub domain
  "openInGitHub.remote.name": "origin", // Name of the remote repository
  "openInGitHub.remote.branch": "master", // Name of the remote branch
  "openInGitHub.useLocalBranch": true, // Use the local branch instead of the fixed remote branch
  "openInGitHub.useLocalRange": true, // Highlight the local selection range, if there's one
  "openInGitHub.useLocalLine": false // Highlight the local line if there's no selection range
}

除了包含打开项目的命令,还包含了其他很多命令,比如打开 issue、action、pull request、release 等,可以按快捷键:ctrl + shift + p 输入 >open in github 查看。

本文主要来讲述它们的实现原理。

学完本文,你将学到:

1. 如何开发一个 VSCode 插件
2. 学会开发开源项目的工作流是怎样的
3. 学会调试 VSCode 插件
4. 学会 open in github button vscode 插件的原理是什么
5. 学会 open in github vscode 插件原理

2. 环境准备

# 克隆我的项目
git clone https://github.com/lxchuan12/vscode-open-in-github-button-analysis.git
# npm i -g pnpm
cd vscode-open-in-github-button-analysis/vscode-open-in-github-button
pnpm install
# vscode-open-in-github 项目
cd vscode-open-in-github-button-analysis/vscode-open-in-github
pnpm install

也可以 star 我的项目[7]

3. vscode-open-in-github-button 项目

3.1 package.json scripts 命令解析

主要依赖依赖如下:

  • eslint 配置 @antfu/eslint-config[8]

  • 使用正确的包 @antfu/ni[9]

  • 提升版本发布相关 bumpp[10]

  • 执行node ts 相关 esno[11]

  • pnpm[12]

  • vite[13]

  • vitest[14]

  • vscode 插件发布相关 vsce[15]

  • tsup ts 打包构建相关[16]

scripts 分析

{
    "scripts": {
        // 用 tsup 打包 vscode 插件扩展
        "build": "tsup src/index.ts --external vscode",
        // 开发
        "dev": "nr build 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VSCode中,Markdown有很多实用的功能。首先,你可以直接在编辑的文本中插入代码,并且还支持代码高亮显示。这使得你可以在编辑Markdown文档时直观地看到代码的渲染效果。\[1\]此外,VSCode还提供了分栏输入和预览的功能,你可以同时在一个窗口中编辑Markdown文本并实时预览渲染后的效果。这种分栏模式可以帮助你更方便地编辑和查看Markdown文档。\[2\]另外,如果你是印象笔记或有道云笔记的用户,这两个笔记工具现在也支持Markdown格式。然而,使用这些工具的Markdown功能可能会限制你的自由性,因为它们可能不支持所有Markdown的特性。因此,如果你更注重Markdown的自由性和灵活性,那么在VSCode中使用Markdown可能是一个更好的选择。\[3\] #### 引用[.reference_title] - *1* [Typora的学习,Markdown的语法简介,VsCode+Markdown的愉快写作](https://blog.csdn.net/ljy025/article/details/113619998)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [vscode markdown_使用vscode开始Markdown写作之旅](https://blog.csdn.net/weixin_39579127/article/details/110127773)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值