# @domandigital/sanity-copy 中文文档

规范地址：https://npmcn.com/package/%40domandigital/sanity-copy/

版本：0\.4\.13
npm 元数据更新时间：2026-11-02T00:37:46.829Z
中文译文更新时间：2026-11-12T15:34:13.141Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40domandigital/sanity-copy
原文对照：https://npmcn.com/package/%40domandigital/sanity-copy/?lang=original
项目主页：https://github.com/Doman-Digital/dd-packages/tree/main/packages/sanity-copy#readme
源码仓库：https://github.com/Doman-Digital/dd-packages

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：72.7 kB，9 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=22\.12
- 运行依赖：1 个
- 首次发布：2026-09-23T22:01:12.792Z
- 最新版本发布：2026-11-02T00:37:46.459Z
- 近 30 天下载量：5074（2026-10-13 至 2026-11-11，npm 官方下载统计）
- 已发布版本数：17（近 12 个月 17 个）

## 中文简介

Doman Digital House拷贝在Sanity Studio的检查:每个文档类型增益工艺的拷贝规则,作为引起它们的领域的验证警告. 也是文件或出口的纯检查器。 没有对健康的依赖.

## 安装

```sh
npm install @domandigital/sanity-copy
```

也可以使用：`pnpm add @domandigital/sanity-copy`、`yarn add @domandigital/sanity-copy`、`bun add @domandigital/sanity-copy`

## README

# @domandigital/saniity-copy (中文(简体) )

道曼数字屋拷贝查询 三一工作室内部. 每个文档类型 复制规则作为验证 **警告**,准确的字段 造成它们,包括在可移植文本中。 出版始终是可行的: 复制所有者类型 被建议,从不压倒.

规矩是 `COPY.md` 内 [`@domandigital/craft`](https://npmcn.com/package/%40domandigital/craft)此软件包 只决定文档中哪些字符串是副本, 以及每项发现的位置 属于.

## 在一个工作室

工作在任何 Sanity工作室,v3 或以后。 只用这个 `Rule.custom()`, (中文(简体) ), `Rule.warning()` 和简单的文件操作功能,并且不从 Sanity,所以没有工作室的版本被固定. 它的测试是针对站台的 那些形状,不是现场演播室。 里面没有特定的地方 两个 步骤 :

1.  `pnpm add @domandigital/sanity-copy` (或npm,或纱) 在工作室的应用.
2.  环绕类型数组 `sanity.config.ts`,见下文.

```ts
import { defineConfig } from "sanity";
import { withCopyCheck } from "@domandigital/sanity-copy";
import { schemaTypes } from "./schemas";

export default defineConfig({
  // ...
  schema: { types: withCopyCheck(schemaTypes) },
});
```

一个编辑在现场看到:

> 房屋规则(Em switch):"地方企业-已建". 用全站,逗号, 或者结肠.

为什么包装器不是插件:插件的 `schema.types` 函数运行前 工作室自己的类型被添加,所以一个插件永远不会看到它们.

选项, 全部可选 :

| 选项 | 默认 | 它会做什么 |
| --- | --- | --- |
| `excludeTypes` | `testimonial`, (中文(简体) ), `review`, (中文(简体) ), `proofQuote`, (中文(简体) ), `quote`, (中文(简体) ), `assist.instruction.context` | 从来没有检查过。 一个人的自言自语可以免除每条房屋规则,AI Assistance指示文件是提示而不是复制. |
| `skipFields` | `slug`, (中文(简体) ), `url`, (中文(简体) ), `href`, (中文(简体) ), `link`, (中文(简体) ), `email`, (中文(简体) ), `phone`, (中文(简体) ), `language`, (中文(简体) ), `locale`编号、图表 | 从来没有读过任何深度. |
| `review` | `true` | 显示评论和密度等级以及房屋规则. |
| `languages` | 每种语言 | 只检查这些,例如. `["en"]`. 见下文. |
| `hiddenPaths` | 从计划 | 点路径从不读取. `withCopyCheck` 从每个静态填入 `hidden: true`。 。 。 . |

读取什么: 字符串、 可移植文本( 块的跨度相接, 所以模板) 横跨图像的文字和标题. 哪些不是: swits, 链接, 引用, enum值, 语言标记, 资产数据, 和田地,计划隐藏 `hidden: true`A级 `hidden` 函数不是 评估:每个文件和每个编辑决定,检查没有办法 要知道巢地的答案, 所以那些田地仍然被读取.

### 本地化内容

规则为英语. 在本地化的演播室,通过 `languages: ["en"]` 这么说 其他语言则单独使用(`"en"` 还涵盖 `en-GB` 财务报告和审定财务报表 `en_US`) (中文(简体) ). 四个 形状识别:

| 形状 | 示例 | 语言是如何找到的 |
| --- | --- | --- |
| 理智-插图-国际化-阵列v5 | `[{ _key: "k8f2a", language: "fr", value }]` | 设备 `language` 字段 |
| 同一插件, v4 和较早的插件 | `[{ _key: "fr", value }]` | 设备 `_key` |
| 外地一级的翻译 | `{ en: "...", fr: "..." }` | 当每个密钥是双字母语言标记时 |
| @sanity/ document-internationalization (英语) | `{ _type: "page", language: "fr" }` | 文档 `language` 字段 |

### 屏蔽出版(选入)

上面的一切都会发出警告 一间工作室想要执行房屋规则 可以包起来 发布动作,然后在文档有 屏蔽级查找,以查找为工具提示。 审查级别从未 块.

```ts
import { withCopyCheck, withCopyGuard } from "@domandigital/sanity-copy";

export default defineConfig({
  schema: { types: withCopyCheck(schemaTypes) },
  document: {
    actions: (prev) => prev.map((a) => (a.action === "publish" ? withCopyGuard(a) : a)),
  },
});
```

原作的动作总是被称作,所以它的行为除了.. `disabled` 还有工具提示 被排除在外的类型(证词和其余)永远不会 关闭.

## 搜索整个数据集

```bash
npx @domandigital/sanity-copy --project <id>                 # a public dataset
SANITY_API_TOKEN=... npx @domandigital/sanity-copy --project <id> --types homepage,service
npx @domandigital/sanity-copy --file export.json --json
```

调查结果按文件和实地开列。 退出 **0 个** 没有家规, **1个** 至少一个, **2个** 没有被检查。 读自 环境,永远不要一面旗帜。 它汇报和改变什么.

## 索赔清单

```bash
npx @domandigital/sanity-copy --project <id> --claims
```

没有样式规则可以说出一个数字是否真实. `--claims` 列表中 在其字段上持有价格、数字、日期或指定来源的句子, 标记 `sourced` (资料来源在句子或脚注中注明)或 `UNSOURCED`。检查每个源,然后源,纠正 或切开. 它总是退出0:一个核对表,而不是一个判决. `documentClaims(doc)` 代码上也一样.

## 在代码中

```ts
import { checkDocumentCopy, pathToString, describeFinding } from "@domandigital/sanity-copy";

for (const f of checkDocumentCopy(doc)) console.log(pathToString(f.path), describeFinding(f));
```

没有对疗养的依赖 没有任何工作室的进口品能触及节点 所以是一样的 检查在工作室运行,一个脚本和一个测试.

## 许可证

阿帕奇2.0 (英语).

## 常见问题

### @domandigital/sanity-copy 是什么？

Doman Digital House拷贝在Sanity Studio的检查:每个文档类型增益工艺的拷贝规则,作为引起它们的领域的验证警告\. 也是文件或出口的纯检查器。 没有对健康的依赖\.

### 如何安装 @domandigital/sanity-copy？

在项目目录运行 npm install @domandigital/sanity-copy，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 sanity-copy，可以用 npx sanity-copy 直接运行。

### @domandigital/sanity-copy 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @domandigital/sanity-copy 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @domandigital/sanity-copy 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=22\.12。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @domandigital/sanity-copy 可以商用吗？

@domandigital/sanity-copy 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @domandigital/sanity-copy 的下载量有多少？

根据 npm 官方下载统计，@domandigital/sanity-copy 在 2026/10/13 – 2026/11/11 这 30 天内被下载 5,074 次，日均约 169 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @domandigital/sanity-copy 还在维护吗？

最新版本 0\.4\.13 发布于 2026/11/02（11 天前）；至今共发布 17 个版本，其中过去 12 个月发布了 17 个；首次发布于 2026/09/24。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

