Sublime Text如何使用DocBlockr生成注释_Sublime DocBlockr生成注释指南

秋宇姑娘_9703

秋宇姑娘_9703

2026-04-02

550人浏览

原创

DocBlockr 不自动识别类型签名,仅靠正则匹配参数名,无法解析 TypeScript/Python/PHP 的类型注解;需光标位于函数定义行开头才能正确插入注释,箭头函数需额外配置;自定义模板可为@param添加{type}占位符,但不支持跨语言统一。

sublime text如何使用docblockr生成注释_sublime docblockr生成注释指南

DocBlockr 本身不自动为函数生成完整注释,它只在光标位于函数定义行时按 Tab 或 Enter 插入基础模板,参数/返回值需手动补全或依赖函数签名解析能力(且仅限部分语言)。

为什么 typed function signature 没被自动识别

DocBlockr 对 JavaScript、PHP、Python 等语言的函数签名解析能力有限:它不运行代码,也不读取类型注解(如 TypeScript 的 : string 或 Python 的 -> dict),仅靠正则粗略匹配形参名。若函数写法稍复杂(如解构参数、默认值带括号、多行声明),/** */ 按下后很可能只生成空 @param 行,或漏掉某些参数。

  • JavaScript 示例中 function foo({ a, b }, [c, d] = []) → DocBlockr 通常只识别出 { a, b } 和 [c, d] 两个参数名,但不会拆解对象/数组结构
  • Python 中 def bar(x: int, y: Optional[str] = None) -> List[dict]: → DocBlockr 基本忽略所有类型提示,只提取 x 和 y
  • PHP 7+ 的 function baz(string $s, array $data = []): ?int → 能识别 $s 和 $data,但返回类型 ?int 不会转成 @return int|null

如何让 @param/@return 出现在正确位置

DocBlockr 默认在函数定义行上方插入块注释,但若光标不在定义行开头(比如缩进后、或在函数名中间),可能插到错误位置,甚至触发错误补全。必须确保光标停在函数关键字(function、def、const 等)所在行的任意位置,且该行确实构成可识别的函数声明。

  • ✅ 正确:光标在 function handleEvent(e) { 这一行任意位置,按 Tab
  • ❌ 错误:光标在 handleEvent 函数体内部,或在 export default function 的 default 上,此时可能生成空块或报错 No function signature found
  • ⚠️ 注意:ES6 箭头函数 const fn = (a, b) => {} 不被 DocBlockr 原生支持,需额外配置 jsdocs_extra_tags 或改用 const fn = function(a, b) {}

自定义模板让 @param 类型提示自动带冒号

DocBlockr 允许通过用户设置覆盖默认模板,比如让 JavaScript 的 @param 自动加 {string} 占位符。需修改 Preferences > Package Settings > DocBlockr > Settings – User,添加:

百度·度咔剪辑
百度·度咔剪辑

百度·度咔剪辑是一款由百度推出的创作 Agent 和 AI 视频剪辑工具。

下载
{
    "jsdocs_indentation_spaces": 4,
    "jsdocs_spacer_between_sections": true,
    "jsdocs_extra_tags": [
        ["param", "{*} ${1:name} - ${0:description}"]
    ]
}

这样每次生成 @param 都会带 {*},你只需把 * 改成实际类型(如 {string}),再 Tab 到下一项。但注意:这个改动对 Python/PHP 模板无效,它们各自用 pydocs_* / phpdocs_* 前缀配置。

真正省事的方式不是依赖自动识别,而是养成「先写签名,再按 Tab,最后补类型」的习惯——因为哪怕最聪明的插件,也猜不出你传进去的是 URLSearchParams 还是 FormData,更没法知道 @returns 是 resolve 一个 Promise 还是直接 throw error。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

2026.02.13

312

17

TypeScript全栈项目架构与接口规范设计
TypeScript全栈项目架构与接口规范设计

本专题面向全栈开发者,系统讲解基于 TypeScript 构建前后端统一技术栈的工程化实践。内容涵盖项目分层设计、接口协议规范、类型共享机制、错误码体系设计、接口自动化生成与文档维护方案。通过完整项目示例,帮助开发者构建结构清晰、类型安全、易维护的现代全栈应用架构。

2026.02.25

520

17

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

2026.03.13

371

19

TypeScript 全栈开发进阶指南
TypeScript 全栈开发进阶指南

面向有 JavaScript 基础的开发者,深入讲解 TypeScript 的类型系统与全栈开发实践。

2026.06.03

286

29

TypeScript Node.js 全栈工程化与Monorepo架构实践
TypeScript Node.js 全栈工程化与Monorepo架构实践

本专题围绕 TypeScript 在 Node.js 全栈开发中的工程化实践展开,系统讲解 Monorepo 架构设计、包管理策略、模块复用机制以及服务端与前端统一类型系统的构建方法。通过真实项目案例,帮助开发者提升大型全栈项目的可维护性与协作效率。

2026.06.16

658

8

es6新特性
es6新特性

es6新特性有:1、块级作用域变量;2、箭头函数;3、模板字符串;4、解构赋值;5、默认参数;6、 扩展运算符;7、 类和继承;8、Promise。本专题为大家提供es6新特性的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.17

285

5

es6新特性有哪些
es6新特性有哪些

es6的新特性有:1、块级作用域;2、箭头函数;3、解构赋值;4、默认参数;5、扩展运算符;6、模板字符串;7、类和模块;8、迭代器和生成器;9、Promise对象;10、模块化导入和导出等等。本专题为大家提供es6新特性的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.04

406

5

JavaScript ES6新特性
JavaScript ES6新特性

ES6是JavaScript的根本性升级,引入let/const实现块级作用域、箭头函数解决this绑定问题、解构赋值与模板字符串简化数据处理、对象简写与模块化提升代码可读性与组织性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2025.12.24

375

12

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.02

6719

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程