96SEO 2026-06-11 21:14 1
写注释真的好烦,每次dou得/**……*/的形式才有jsDoc的效果,真的不想浪费时间了于是写个vscode插件,添加一下jsDoc注释,提升点效率
将光标定位在指定的函数或变量上,然后按快捷键ALt+/或右击菜单选择Add Comment即可添加jsDoc注释

选择Zui基础的Typescript模板,建议使用yarn管理包,后面打包成vscode插件包的时候pnpm会因为文件找不到而失败。
Ru果想将菜单放在别的地方或者别的分组group,Ke以查kan官方文档contributes.menus的配置
说实话,我之前也纠结过为啥我的文章不被收录,害,咱就是说是不是内容太简单了或者是原创度不够?
有人说百度不收录新站,是不是因为新站权重不够啊?
不对不对,应该是内容质量的问题,你kan我这篇关于创建VSCode插件的文章,多有技术含量啊!
光标位置判断是否有光标,即focus聚焦在该代码编辑上了有时候打开文档但是没有聚焦光标
const doc = this.editor.document; const fileName = doc.fileName; //文件绝对路径 const code = doc.getText; //代码内容 this.sourceLines = this.getSourceLines; //是否有光标 if { return; } const pos = this.editor.selection.active.line; const item = this.sourceLines; //判断光标范围在文档代码有效范围内 if { return; } //光标具体所在代码的字符索引位置 const p = item + this.editor.selection.active.character;
Ru果是vue文件,要判断光标是否定位在vue的js/ts代码范围内,再获取其中的js/ts代码
if ) { let startIndex = code.indexOf; let endIndex = code.indexOf; if { return; } for { const c = code; if { startIndex = i + ; break; } } if { vscode.window.showInformationMessage; return; } //vue文件内js/ts代码 const script = code.substring; }
ts/js解析代码成AST
我们常用Typescript库校验和编译代码,同时它也Neng将代码解析成AST,你懂的,这对咱们写插件来说超级有用!
const sourceFile = ts.createSourceFile; const currentNodes = this.findNode;
给不同节点添加注释
判断该节点是否Yi有jsDoc注释,Ru果有则不添加注释。
Ru果是单行注释或者非jsDoc的多行注释则转化为jsDoc注释
Ru果没有注释则直接添加
checkDocs => void) { //@ts-ignore if { //有jsDoc就不添加注释 } else { const comments: string = ; //头部注释 const leadingComments = ts.getLeadingCommentRanges; if { leadingComments.forEach => { const s = sourceFile.text.substring; comments.push); }); } //尾部注释 const tailingComments = ts.getTrailingCommentRanges; if { tailingComments.forEach => { const s = sourceFile.text.substring; comments.push); }); } if { //将旧的注释添加到jsDoc内 cb; } else { //添加新的注释 cb; } } }
Ru果Yi有注释则延用,Ru果没有注释则获取节点的名称作为注释内容,哈哈,这样挺方便的吧!
普通函数与方法普通函数声明
//对应节点类型 FunctionDeclarationfunction sum: number { return a + b;}
方法定义
const obj = {//对应节点类型 MethodDeclaration fun { console.log; }};class Person {//对应节点类型 ConstructorDeclaration constructor { console.log; } //对应节点类型 MethodDeclaration dd { console.log; }}
箭头函数与匿名函数
箭头函数
//对应的AST结构 VariableDeclaration.initializer=ArrowFunctionconst myFun = : number => { return a + b;};
给变量赋值匿名函数
//对应的AST结构 VariableDeclaration.initializer=FunctionExpressionconst myFun = function : number { return a + b;};
其他节点添加注释
安装vsce: 执行打包命令: 登录Azure DevOps创建个人访问令牌,然后你需要将这个token用到发布流程中。 登录账户,然后粘贴刚才复制的token字符串: 发布命令: 也Ke以到vscode插件管理页面手动发布你的插件。 嗯,就这样吧,反正插件Yi经发布了你爱用不用啊~
注意README上图片文件不可打包在其中,建议放到github上,你懂的,这样比较好。 比如我的 然后我的 Zui后再说一句,为啥百度还是不收录我的文章呢?啊!!! 算了不纠结了我去kankan有没有人用我的插件~ 作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。 我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践: 全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。 基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。 解决网站技术问题,优化网站结构,提升页面速度和移动端体验。 创作高质量原创内容,优化现有页面,建立内容更新机制。 获取高质量外部链接,建立品牌在线影响力,提升网站权威度。 持续监控排名、流量和转化数据,根据效果调整优化策略。 基于我们服务的客户数据统计,平均优化效果如下: 我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。addComment { if { for { const stmt = nodes; // if ... } yarn add -D @vscode/vscenpx vsce package npx vsce login <username>npx vsce publish { "icon": "xcommentlogo.jpg", "extensionKind": , "main": "./dist/extension.js",}xcommentlogo.jpg,就放在了github仓库里。xcommentlogo.jpg#pic_center)xcommentlogo.jpg#pic_center)-comment`这个小插件就Yi经发布到vs 市场啦~~
SEO优化服务概述
SEO优化核心服务
网站技术SEO
内容优化服务
外链建设策略
SEO服务方案对比
服务项目
基础套餐
标准套餐
高级定制
关键词优化数量
10-20个核心词
30-50个核心词+长尾词
80-150个全方位覆盖
内容优化
基础页面优化
全站内容优化+每月5篇原创
个性化内容策略+每月15篇原创
技术SEO
基本技术检查
全面技术优化+移动适配
深度技术重构+性能优化
外链建设
每月5-10条
每月20-30条高质量外链
每月50+条多渠道外链
数据报告
月度基础报告
双周详细报告+分析
每周深度报告+策略调整
效果保障
3-6个月见效
2-4个月见效
1-3个月快速见效
SEO优化实施流程
网站诊断分析
关键词策略制定
技术优化实施
内容优化建设
外链建设推广
数据监控调整
SEO优化常见问题
SEO优化效果数据
行业案例 - 制造业
行业案例 - 电商
行业案例 - 教育
为什么选择我们的SEO服务
专业团队
数据驱动
透明合作
我们的SEO服务理念
Demand feedback