一个强大的剪贴板历史管理工具,现已支持自定义脚本功能,让你的剪贴板操作自动化起来!
📰 入选阮一峰周刊
⭐ GitHub 200+ Stars
剪存是一个跨平台的剪贴板历史管理工具,基于 Wails + Vue 3 构建,支持 macOS 和 Windows 。关于基础功能(自动保存、搜索过滤、图片处理等)可以参考之前的推广文。今天重点介绍的是自定义脚本功能——这个让剪存变成的强大。
fetch、crypto、Date 等所有浏览器 APIimport 导入 csRequest( HTTP 请求)和 csCopyText(剪贴板复制)等函数复制一个 JSON Schema 或 API 响应模板,自动生成符合格式的 Mock 数据。支持智能识别字段类型(邮箱、手机号、日期、图片 URL 等),生成真实感的数据。
适用场景:
复制用户信息或配置,自动生成 JWT Token ,方便 API 测试和调试。
适用场景:
复制时间戳或日期字符串,自动转换为可读格式,支持双向转换。
适用场景:
快速对文本进行 Base64 编码或解码,支持 Unicode 字符。
适用场景:
从文本中自动提取邮箱、URL 、手机号、身份证号、银行卡号、IP 地址等结构化信息。
适用场景:
复制重要信息后,自动推送到钉钉群或企业微信群,实现跨设备通知。
适用场景:
将剪贴板内容推送到手机,支持优先级设置。
适用场景:
复制长链接,自动生成短链接,方便分享。
适用场景:
复制文本内容,调用 AI API (如阿里云百炼)进行情感分析、内容总结、错别字检测等。
适用场景:
复制不同格式的数据,自动转换为目标格式( CSV ↔ JSON 、Markdown ↔ HTML 等)。
适用场景:
复制内容后自动验证格式(邮箱格式、URL 有效性、JSON 合法性等)。
适用场景:
场景:前端开发时需要大量测试数据,但手动编写太繁琐。
解决方案:
效果:从 10 分钟手动编写数据 → 3 秒自动生成
场景:开发过程中复制了重要的错误信息或配置,需要及时通知团队成员。
解决方案:
效果:重要信息自动同步,无需手动发送消息
场景:查看日志时遇到大量时间戳,需要快速转换为可读格式。
解决方案:
效果:无需打开在线工具,一键转换
项目提供了多个开箱即用的脚本示例:
你可以在 GitHub 仓库 中找到这些脚本,直接复制使用或作为参考。
if (item.ContentType !== "Text") {
return { error: "只支持文本类型" };
}
return item.Content.toUpperCase();
import { csRequest } from '@clipsave/api';
// 使用内置的 csRequest 函数调用 API (绕过 CORS 限制)
const responseJson = await csRequest(
'POST',
'https://api.example.com/process',
JSON.stringify({ 'Content-Type': 'application/json' }),
JSON.stringify({ text: item.Content })
);
const response = JSON.parse(responseJson);
return response.body.result;
import { csCopyText } from '@clipsave/api';
// 生成结果后自动复制到剪贴板
const result = processData(item.Content);
await csCopyText(result);
return result;
我们欢迎社区贡献更多实用的脚本!如果你有好的脚本想法或已经编写了有用的脚本,欢迎提交 Pull Request 。
让剪贴板成为你的自动化工作流中心,从今天开始! 🚀
如果这个工具对你有帮助,欢迎给项目点个 ⭐ Star ,这是对我们最大的支持!
1
rayg0 27 天前
挺有意思的,可扩展空间很大。
|
3
hafuhafu 27 天前
剪切板内容可以通过 js 脚本拓展这个想法还是挺好也挺实用的。
就是作为剪切板历史记录工具本身的功能还是得完善一下。 |
4
zarvin 27 天前
使用了一下,挺好的,已 star
|
5
510908220 27 天前
体验了下,不错。
|
6
ikw 27 天前
体验了一下,效果确实还可以,有几个地方感觉可以优化一下
1. 建议用 https://gitlab.com/cznic/sqlite 去掉 cgo 开发体验好很多 2. CleanShot X 的截图识别成文件了,Paste 是能识别到是图片的,或许可以针对 File 类似多识别一下文件类型? |
8
BlackkCCCat 27 天前
终于看到了一个和 Mac 端 pastebot 有类似功能的剪切板 app 了,pastebot 是支持 awk 等命令来扩展剪切板内容,强👍
|
9
BlackkCCCat 27 天前
@BlackkCCCat star 了,但是我看目前好像不支持像常规剪切板 app 一样的极简模式或快捷面板( issue 有人提),希望能尽快支持
|
11
Wcowin 26 天前
好强,向你学习 我最近是开发的一款转为 Mac 的粘贴板工具 https://github.com/Wcowin/OneClip
|
12
liuliuliuliu PRO 20M 对于一个剪切板工具来说还是大了点……
|
13
litianyunq 25 天前
参考下 iCopy 这种快捷展示模式可以不(虽然也是参考别人的),大部分情况不需要专门唤起窗口,快捷展示更人性化。
|
14
snso OP @litianyunq 已经安排上了 过几天就可以上了
|
15
stinkytofux 25 天前
算了, 实在是不想连剪贴板工具都跑在浏览器上.
|
16
YsHaNg 25 天前 via iPhone
阮一峰是啥
|
17
maemolee 25 天前
有点意思,装了看看
|
18
canteon 2 天前
go 那个 sqlite 驱动换下 cgo 有点恶心
|
19
canteon 2 天前
|
21
eluotao 2 天前
感谢你的软件,挺好的。
1 、脚本管理的按钮,直接放到设置 主界面旁边,可以直接点击进入脚本管理界面,更快。适合频繁操作的情况。 2 、可以设置组合按钮,左边是点击进入脚本管理,右边点击新增脚本。 3 、可以自定义脚本的摆放顺序和位置。目前设置顺序好像只要新增脚本,还是会在最前面。按道理设置好 1 2 3 的位置,之后添加都是在脚本的后面才对。 关于脚本搜索 一键添加,后期慢慢优化吧。 |
24
eluotao 2 天前
建议直接改成拖动顺序的方式,不要设置手动设置数字,如果脚本多,数字就不靠谱,每次都要重新设置所有脚本顺序的数字,拖动简单省事。每次添加就默认在最后,需要调整顺序,直接手动拖动即可。
|
27
eluotao 2 天前
1 、小建议,针对手动运行的脚本,在软件界面的时候直接可以针对当前的复制的内容,使用快捷键触发运行脚本的窗口选择,然后在通过数字键快速选择某个脚本运行。这样可以减少两次鼠标移动和点击。
操作流程:进入软件界面->选择任意的剪切板历史内容->快捷键触发打开脚本选择窗口->数字键选择相应脚本,无需使用鼠标即可完成,符合大多数 apple 的用户习惯。 至于处理完的数据,是否支持自动复制结果 还是不复制结果,这个不重要,取决于脚本的处理方式。可以设置一个固定的返回变量 copy_text ,只要返回到这个变量 就表示需要复制的处理文本,那可以根据设置触发自动复制,如果只是显示处理结果,那软件默认不执行复制操作。 |