将日常开发, 常用的文本操作, 持续打包为快捷工具, 方便操作
🚀 功能特性
📋 数据处理
- SQL字符串IN - 按行生成 SQL IN 使用的字符串列表,空行保留为
'',单引号转义为 '',相同行去重(末尾换行也视为一个空字符串)
- SQL数字ID IN - 按行生成不带引号的 SQL IN 列表,跳过空白行并去重,不校验输入是否为数字
- 文本去重 - 按整行内容去重,保留首次出现的顺序;空格不同的行视为不同内容
- 文本压缩 - 压缩文本,移除所有空白字符
🎨 格式化工具
- 去转义符 - 将
\"、\\ 和 \n 分别还原为双引号、反斜杠和换行
- 去转义符并美化JSON - 还原上述转义后解析 JSON,以4个空格缩进输出;解析失败时提示错误并保留原文
- 替换中文符号 - 将中文标点符号转换为英文标点符号
📝 文本格式转换
- 驼峰转下划线 - 将
camelCase 格式转换为 snake_case 格式
- 下划线转驼峰 - 将
snake_case 格式转换为 camelCase 格式
- 转大写 - 将文本转换为大写
- 转小写 - 将文本转换为小写
- 删除空行 - 删除处理范围内的空行和仅包含空白字符的行
🔧 开发工具
- Unicode转中文 - 将Unicode编码(如
\u4e2d\u6587)转换为中文字符
- 生成UUID - 生成标准的UUID v4格式字符串
- 时间戳格式化 - 将10位或13位时间戳转换为
yyyy-MM-dd HH:mm:ss 格式
📖 使用方法
快速选择菜单
- 按
Ctrl+Shift+P (Windows/Linux) 或 Cmd+Shift+P (macOS) 打开命令面板
- 输入
my:showQuickPick 并执行
- 用方向键选择所需功能,按
Enter 执行,或按 Esc 取消
配置快捷键
可以为 my:showQuickPick 配置快捷键,快速打开选择菜单。例如在 macOS 上使用 Control+M:
- 打开命令面板,执行
Preferences: Open Keyboard Shortcuts (JSON)(首选项:打开键盘快捷方式(JSON))
- 在
keybindings.json 的数组中添加以下配置;如果已有其他配置,在条目之间添加逗号
{
"key": "ctrl+m",
"command": "extension.showQuickPick",
"when": "editorTextFocus"
}
- 将焦点放在文本编辑器中,按
Control+M 打开菜单,用方向键选择功能,按 Enter 执行;按 Esc 取消
macOS 的 Control 对应配置中的 ctrl,与 Command(cmd)不同。插件没有预设此快捷键,需要自行配置;如有冲突,可在键盘快捷方式界面调整。
直接命令
也可以通过命令面板直接搜索特定功能:
text: Unicode转中文
text: 生成UUID
text: 时间戳格式化
选中文本操作
- 有选中文本时:只处理当前主选区的文本,多选区不会批量处理
- 无选中文本时:处理整个文档内容
- 执行命令前需打开文本编辑器;通常会直接替换处理范围内的原文,可通过编辑器撤销恢复
⚡ 输出示例与处理规则
Unicode转中文 & 时间戳格式化
时间戳只匹配完整的10位秒时间戳或13位毫秒时间戳,使用系统本地时区显示;11位、12位及更长数字保持不变。
这两个功能按行处理:
- 只对包含目标内容的行进行处理
- 在原行后追加转换结果,格式为:
原内容 ==> 转换结果
- 不包含目标内容的行保持不变
示例(时间戳结果以 UTC+8 时区为例):
测试
1766473878 ==> 2025-12-23 15:11:18
普通文本
\u4f60\u597d ==> 你好
生成UUID
在处理范围的文本末尾追加一个换行和 UUID,保留原始文本。有选区时追加到选区末尾,无选区时追加到文档末尾。
SQL IN列表
输入以下文本(最后一行没有额外换行):
alpha
O'Brien
alpha
执行“SQL字符串IN”后得到:
'alpha',
'O''Brien'
输出可放入 WHERE column_name IN (...) 的括号内,插件不会生成完整的查询语句。空行会生成 '',仅包含空格的行保留其空格;重复行只输出一次。若输入末尾有换行,也会产生一个空字符串条目。
“SQL数字ID IN”输出如下,不添加引号;会跳过空白行,但不会校验数字格式。
1,
2
🛠️ 系统要求
- VS Code 版本 1.100.0 或更高版本
- 无其他额外依赖
📦 安装
从VSIX文件安装
使用 .vsix 文件安装:
- 打开 VS Code 命令面板:Windows/Linux 按
Ctrl+Shift+P,macOS 按 Cmd+Shift+P
- 执行
Extensions: Install from VSIX(扩展:从 VSIX 安装)
- 选择本地
.vsix 文件,按提示完成安装
本地开发与打包
在项目目录执行 npm ci 安装开发依赖。用 VS Code 打开项目后按 F5,在扩展开发宿主中打开文本文件并运行 my:showQuickPick。
已安装 vsce 命令时,可在项目目录执行 vsce package 生成 VSIX 文件。发布或打包前,确认 package.json 中的版本号与本文档一致。
🔄 版本历史
v0.0.36
- 数据处理:SQL字符串IN、SQL数字ID IN、文本去重、文本压缩
- 格式化工具:去转义符、去转义符并美化JSON、中文标点转英文标点
- 文本格式转换:驼峰转下划线、下划线转驼峰、转大写、转小写、删除空行
- 开发工具:Unicode转中文、UUID生成、10位或13位时间戳格式化
- Unicode和时间戳按行转换,在原内容后追加转换结果
- 支持处理选中文本或整个文档
- 支持快速选择菜单、命令面板直接调用和自定义快捷键
问题反馈
反馈问题时,请提供插件版本、VS Code 版本、操作系统、使用的功能、脱敏后的输入示例,以及预期输出和实际输出,以便复现。
许可证
本项目采用 MIT 许可证,完整条款见项目根目录的 LICENSE 文件。
开发验证
npm test:执行 lint 和命令行为测试,无需启动 VS Code。
npm run test:integration:在 VS Code 扩展宿主中运行测试,首次运行可能需要下载测试用 VS Code。
- 菜单交互和快捷键配置可在扩展开发宿主中手动验证。