dsh-case

by ZhijiangTang

0 工具与能力github 检测到 manifest package.json#dsh收录于 08-16

DSH 插件:命名/大小写风格转换工具,注册一个 case convert 工具。

DSH plugin: naming case converter (camelCase/snake_case/kebab-case/PascalCase/...)

安装

dsh plugin --profile web add github:ZhijiangTang/dsh-case

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

README

目录

DSH 插件:命名/大小写风格转换工具,注册一个 case_convert 工具。

纯 ESM、零依赖、无构建步骤。

安装

dsh plugin --profile <name> add file:./plugins/dsh-case
# 或发布后
dsh plugin --profile <name> add dsh-case

工具 case_convert

参数:

参数 类型 必填 说明
text string 是 待转换文本
target string(enum) 是 目标风格
source string(enum) 否 源风格,默认 auto 自动检测

返回值(规范 JSON 对象):

{ "input": "...", "target": "camelCase", "source": "snake_case", "output": "...", "words": ["..."] }

各 target 示例

以 hello_world(snake_case)为输入:

target 输出
camelCase helloWorld
PascalCase HelloWorld
snake_case hello_world
kebab-case hello-world
CONSTANT_CASE HELLO_WORLD
UPPER HELLO WORLD
lower hello world
Title Case Hello World

分词规则

  1. 按分隔符 -、_、空白、. 切词。
  2. 在无分隔符片段内按大小写边界切词:
    • 小写 → 大写(helloWorld → hello / World)
    • 连续大写后接小写(HTTPApi → HTTP / Api)
    • 数字后接「大写 + 小写」(my2Factor → my2 / Factor)
  3. 数字粘合到相邻单词,不单独成词:version2 → version2;开头的 2FA 保持为一个整体不拆分。
  4. 空输入或纯符号输入原样返回,words 为空数组。

source 用于 auto 检测时的判定(分隔符 + 连续大写规则);分词算法对全部分隔符与大小写边界一视同仁,因此 source 主要作为结果中的标注,不影响转换正确性。

原始 README: https://github.com/ZhijiangTang/dsh-case/blob/main/README.md ↗