ClipboardCopy

ClipboardCopy 命令把选中的实体以 JSON 文本写入你的系统剪贴板。由于用的是真正的剪贴板而非内存缓冲区,复制的几何图形能够离开当前图形而继续存在:用 ClipboardPaste 把它粘贴到另一个文件、第二个浏览器标签页,或稍后才打开的窗口中。

这正是它与 Copy 的区别:Copy 一步就在当前图形内部复制实体,而 ClipboardCopy 把它们放到一个可以从完全不同的图形中取回的地方。

两种启动方式

先选择再复制 — 快捷路径:

  1. 在画布上选择一个或多个实体。
  2. Ctrl+C(macOS 上为 Cmd+C),或在终端输入 ClipboardCopy
  3. 实体立即写入剪贴板,命令随即结束。

先激活再选择 — 在没有选中任何对象时启动:

  1. 在选择为空时按 Ctrl+C 或输入 ClipboardCopy
  2. 提示显示 pick objects to copy — Enter or Space to confirm
  3. 选择对象 — 单击可切换单个实体的选中状态,拖动可按区域选择。
  4. EnterSpace 复制所选内容并退出。

在没有选中任何对象时按 EnterSpace,只会结束命令,不会改动剪贴板。

复制的内容

剪贴板载荷携带的不只是几何图形,这样粘贴到陌生图形中仍然显示正确:

组成部分用途
实体每个选中实体的完整序列化形式
参考点所选内容合并边界的左下角 — ClipboardPaste 将其锚定到光标
图层仅按名称携带被复制实体真正引用的图层
线型仅按名称携带被复制实体真正引用的线型

只有被引用的表项会随复制一起传送,而不是源图形完整的图层表和线型表。填充图案完全不打包,也不需要:图形的图案表就是内置的默认集合,而你上传的任何 .pat 文件都存放在按用户保存、且本就在标签页之间共享的存储中,因此粘贴后的填充会自行解析出它的图案。

确认信息

成功时终端会报告写入了多少个实体:

3 entities copied to clipboard

如果浏览器拒绝访问剪贴板,终端会显示 Copy failed: clipboard access denied,且不会写入任何内容。这是浏览器的权限决定,而不是图形错误 — 参见下文的剪贴板权限

命令进行中的选择

方式行为
单击将光标下的实体切入或切出选择集
向右拖动(严格)添加完全位于框内的实体
向左拖动(交叉)添加与框边界相交的实体
Enter / Space确认选择并复制

键盘参考

按键操作
Ctrl+C / Cmd+C激活 ClipboardCopy
Enter / Space复制当前选择;若未选中任何对象则退出
Escape取消且不复制

剪贴板权限

写入系统剪贴板需要浏览器授权。实际上,由按键触发的复制在当前的桌面浏览器中无需询问即可获准,但失去焦点的页面,或剪贴板设置较严格的浏览器,可能会拒绝。若看到访问被拒的提示,请在画布上单击一次让页面获得焦点,然后重试。

由于载荷是普通的 JSON 文本,之后复制的任何内容都会将其替换 — 一行文字、一个网址皆然。如果中途用剪贴板做了别的事,请在粘贴前重新复制一次。

支持的实体

ClipboardCopy 适用于所有实体类型。实体使用与原生 .json 导出相同的机制序列化,因此传送途中不会丢失任何内容。

参见