折腾许久, 自己用 Go 写的 macOS App 上架了,对标 Ditto 的全能剪贴板,海量存储+搜索+上锁+分组+编辑+局域网同步(OnlyPaste)

8 小时 31 分钟前
 bronyakaka

作为一个 macOS 和 Windows 双持的野生程序员,一直有个痛点:在 Windows 上有 Ditto 这种神器,而在 macOS 上,虽然剪贴板工具不少,但总感觉差点意思。要么是功能太简单,存不了几条记录(我想存几十万条那种,当归档记事本用了);要么是没法搜索/功能太少;要么就是缺少“局域网同步”这种功能(不喜欢 icloud 同步)。

既然找不到完美的,那就自己动手造一个吧。

这是我第一次尝试用 Go 开发 macOS 应用。不得不说,Go 还是很省内存,我的 app 常驻后台也就使用 40MB 左右的内存。打出来的包整体在 10MB 左右,个人觉得也没比原生应用差太多。

使用倒排索引,即使存了几万条剪贴板记录,搜索起来也是秒开(不过至少要搜 3 个字符)。

取名叫 OnlyPaste,最初只是想做一个纯粹的粘贴工具,但写着写着就收不住了,把我想用的功能全加上了:

等等

开发过程中也踩了不少坑,特别是 macOS 的沙盒机制和 CGO 的交互,头发都掉了一把( macos 上架对权限要求的太严格了,主要是辅助权限那块)。不过看到成品运行在自己的菜单栏里,还是比较有成就感的。

为啥不用 swift 写?实在是不想再学一个语言,我觉得 go 配合 ai 肯定能胜任,实在不行就写 cgo 调 mac api 嘛。。(事实也的确如此,核心功能、内购基本都是通过 cgo 调用来实现的,还比较复杂)

目前 App 已经基本稳定了,基础功能免费,为了回血搞了个 Pro 版(主要是局域网和显示数量,其他功能都共有),定价也比较便宜。免费版对于日常使用也够了。

大家感兴趣的话可以去下载试试,也欢迎各位大佬提提意见,轻喷哈!

app 下载地址:

https://apps.apple.com/us/app/onlypaste/id6758364019

也可以直接搜 OnlyPaste 。下面放免费码,希望各位大佬体验下,给出意见,感激不尽。

关于技术栈补充一下: 后端用了 Wails v3 (Go),前端是 Vue3 + Naive UI 。为了搞定 macOS 的原生剪贴板监听,还专门写了不少 CGO 代码去调 Cocoa 的 API ,还有内购代码也全部是纯 cgo 写的,有点折磨人了……

送内购免费优惠码,人多再接着发,祝大家新年快乐,事事顺心~

7T6L6KPMY6EP
PPT77L7F4H6H
9A6RXFXPEKLF
WKRKKKLFRAFN
KK3RWA7WLLJL
WANLN9JYT4W9
73X9NJJXP7XA
XRFHYNFKRJKP
NPMTJ44AWKWJ
MLWXX36HR4TM
4YTPY9PNKH3P
9PP4MM4PMEYX
6TP9FK9MJRAL
MFPXYAX3476Y
MEL7JNFP7W7A
3JYTRMWFNWWM
JFFHWAYR36AK
WJ4AKXP44RFK
MRRF497HMXXR
6HNF6FKTHY7M
1876 次点击
所在节点    分享创造
88 条回复
buried
8 小时 26 分钟前
6TP9FK9MJRAL 已用,谢谢楼主,新年快乐
bronyakaka
8 小时 12 分钟前
补充下:mac 设置——隐私与安全——辅助功能给 app 开启后,支持点击后触发自动粘贴;未开启时,会写入系统剪贴板,需要自己粘贴
w1zard
8 小时 12 分钟前
6HNF6FKTHY7M 已用,谢谢楼主,新年快乐
w1zard
8 小时 12 分钟前
6HNF6FKTHY7M 已用 1 ,谢谢楼主,新年快乐
bronyakaka
8 小时 12 分钟前
@buried 好的,用的愉快,有 bug 可以 store 里反馈
HuaiHan
8 小时 5 分钟前
WJ4AKXP44RFK
HuaiHan
8 小时 5 分钟前
WJ4AKXP44RFK 已用,谢谢楼主,新年快乐
Rollup
8 小时 0 分钟前
JFFHWAYR36AK 已用
sun522198558
7 小时 55 分钟前
MEL7JNFP7W7A 已用
FakerLeung
7 小时 42 分钟前
4YTPY9PNKH3P 已用,谢谢楼主
bbm
7 小时 28 分钟前
MRRF497HMXXR 已用 谢谢楼主,新年快乐
CoderChan
7 小时 18 分钟前
a3lzb25nZWVrQGdtYWlsLmNvbQ==
很实用求个码
bronyakaka
7 小时 12 分钟前
@CoderChan 我发的还剩很多吧
czhh
7 小时 8 分钟前
求一码 都被用了 MTgwMjQ2NDJAcXEuY29t
Zeaxion
7 小时 8 分钟前
没有找到 优惠码在哪使用啊,没地方填呢,购买就直接付款 5 刀了
a1791661482
7 小时 1 分钟前
楼主厉害了。虽然码都用光了
a1791661482
7 小时 0 分钟前
再来几个吧
rbq
6 小时 58 分钟前
没了,我也求一个 YTY0MDg1ODc1NDBAZ21haWwuY29t
shanghaojia
6 小时 56 分钟前
没了,再来点吧
jiames1969
6 小时 55 分钟前
弱弱的问下 为什么用 Wails v3 (Go) 而不是 tauri ?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1192450

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX