阅读视图

发现新文章,点击刷新页面。

一点点展开我的 macOS

Core

Alfred 是我的应用启动器,感兴趣的朋友可参考配置:2024 Alfred 5 基础设置和 Worklfow 推荐Shortcutie 可以利用私有 API 为 Shortcuts 提供丰富的系统级扩展动作,配合 Alfred 使用更佳,我最常用的是「通知清理」。

我长期订阅 Setapp,这是一个软件打包订阅服务,所有在该服务内软件后会加一个星号*

DEVONthink 是资料管理的核心,大部分内容使用 Typora 编辑(PicGO 为图床),其他资料的格式主要为 PDF、Doc、Markdown 和 Html。浏览器插件 Obsidian Web Clipper(AI 总结) 和 SingleFile(HTML) 可以快速收集信息,然后使用 Hazel 自动转入 DEVONthink 中。Obsidian 自带的 Html 剪藏工具不是很好用。数据库中尽量储存复述和重新理解过的资料,少储存源文件,这样能减少数据库的大小,也让内容更聚焦。Apple mail 中的邮件可以直接拖拽到 DEVONthink Inbox 中归档。数据库通过 Dropbox 同步。

Voicenotes 用于记录语音笔记,自动转文字并总结,并建立数据库,易用且好用。我是早期买断制用户,现在好像只能订阅。东西是好东西,但性价比没以前那么高。喜欢语音笔记的朋友可以试试这种用 shortcuts 实现的方式: 语音iOS 音频转文字并导入 Obsidian

我使用 PDF Expert 阅读 PDF 文件,MarginNote* 阅读需要记笔记的 epub 文件,高亮和笔记可直接导入 DEVONthink。不需要笔记的 epub,则用 Calibre 阅读。

Apple Calender 和 Things 3 用于日程和项目管理,配合 Dato* 在 Menu bar 中快速查看信息。Things 中的项目可以直接拖拽到 Apple calendar 中。

进入工作状态后,我会用 QSpace 替代 Finder 管理项目,用 Bookends 管理文献。以前一直用 Zotero,DEVONthink 4.0 加强了和 Bookends 的联动,我便转而尝试了它。Setapp 里虽然包括了 Commaner One,但界面稍微臃肿了一些,没有 QSpace 美观舒适。

使用 Sublime Text 查看代码,用 RStudio 和 VSCode 进行数据分析。TablePlus* 和 Delimited 可以更方便的查看数据。

根据老板的喜好选择论文撰写软件,以前用 Microsoft word,目前则使用 Texifier

使用 Librewolf 一年多,还是回到了Chromium 内核。目前,Brave 是我的主力浏览器,从浏览器级别构建广告拦截功能,目前不依赖 Manifest V3,使用 1Password 管理密码。作为 Kagi 的忠实用户,我一直对 Orion Browser 有很高期待,每隔半年会试用一次,但至今没优化到能做主力浏览器的程度。近期最喜欢的浏览器插件是 Sider,结合了 POE 的 AI 对话功能,和双语翻译、Youtube 字幕翻译、网页总结、PDF 翻译总结… 另外,Sider 挺适合 1-3 人合租,价格不错。

我习惯使用 RSS 订阅内容,FreshRSS 是我的 RSS 管理器。Reeder 则是我的阅读器,可以直接订阅 FreshRSS 中的内容。

WordPress 被用于搭建博客。每隔三个月,会用 SiteSucker 为博客做二次备份,能够异步下载网站的网页、图片、PDF、样式表等文件并重建站点目录结构。其他自托管服务可见这篇 Blog

Menu Bar

我使用 Bartender 管理 Menu Bar,将其折叠成三个层级,「常驻可见」、「隐藏」和「后台常驻」

常驻可见:

  • DEVONthink Extra:用于快速记录笔记。
  • Dropbox:云盘同步中枢。
  • Trickster*:可以查看近期使用的软件和文件,并支持查看 DEVONthink 内最近查看的文件,和 Alfred 联动。
  • LookAway:非常漂亮的休息提醒 App,有干眼和坐姿提醒,能设置一些场景下不启用,如游戏、视频和会议。各方面都比我之前使用的 Time Out* 要好些。
  • Dato*:快速查看日历信息,有全屏的会议提醒。
  • Squirrel: 输入法。
  • DisplayBuddy*:研究所的电脑是 1080P 的,这个软件能启用 HiDPI 分辨率,略微提升显示效果。
  • AIDente Pro*:电池健康管理工具。Apple 官方的电池管理工具被我隐藏了。
  • Alcove:最接近 macOS 原生的动态岛功能,简单舒适,没有多余的功能。
  • One Switch*(偶尔):仅使用它的「屏幕键盘清洁模式」。
  • 如果想保持屏幕常亮,会使用 Lungo*。Amphetamine 也不错,但我更喜欢咖啡图标。
  • Gestimer 2(偶尔):交互很舒服的番茄钟应用,通过拖拽设定时间。我不是番茄钟的重度用户,仅心情好的时候,会用一段时间。

隐藏(点击 menu bar 可显示):

  • Bettermouse:用于替代罗技的鼠标管理软件,兼容我目前使用的两款鼠标,可设置快捷键。
  • PicGO:图床工具,接入 Typora。
  • Copy ‘Em:非常棒的剪切板软件,交互合理且流畅,工作中需要的小功能它基本都有,细节很多。
  • Supercharge*:系统增强工具,提供数十种可选功能,用户可按需开启,无需额外脚本或插件。
  • MagicQuit:自动关闭长时间未使用过的软件。
  • 1Password:交互体验最好的密码管理软件。
  • PopClip*:选中文本即显工具条,可以快速检索和翻译内容。安装插件后,只要能选中文本的内容,都可以剪藏到 DEVONthink。
  • ScreenMemory:通过定期截屏,保留用户的操作记录。与 Rewind 有一些相似,交互没有 Rewind 舒适,但功能够用,价格实惠。

后台常驻(完全隐藏):

  • Mission Control Plus*:为 Mission Control 设计的增强工具。
  • Hazel:完成各种自动化文件管理,将文字自动化的导入 Devonthink。
  • Codepiper:自动复制短信中的验证码。不要买 App store 版,功能不全。
  • Bob:macOS 上现阶段体验最好的翻译 & OCR 软件。
  • CleanShot X*:截图软件。
  • Magnet:窗口管理器。
  • Shareful:优化系统共享菜单。
  • iPreview:增强 macOS 的 Quick Look 浏览功能。
  • Mounty:将 NTFS 分区重新挂载为读写模式,实现在 macOS 下对 NTFS 卷的写入支持。
  • Key Maestro:大的macOS自动化工具,很多 Supercharge 的功能都可以用它实现。
  • New File Menu:优化 Finder 菜单栏,快速创建新文件。
  • OpenInTerminal:允许用户从 Finder 一键在终端或编辑器中打开当前文件夹或文件,无需手动导航。

其他

线上会议之前,我习惯用 Hand Mirror 检查一下摄像头状态。会议中,Presentify 能帮助我在屏幕上做标注,KeyCastr 则能显示实时使用的按键。

比较简单的思维导图,会用 MindNode* 绘制,复杂的则使用 Kinopio

BetterZip* 是我最喜欢的压缩文件管理器,它可以在不解压缩的情况下查看压缩文件的内容。

Clean My Mac*:垃圾清理、恶意软件扫描、应用管理… 确实比 OnyX 体验更好,但如果不在 Setapp 中我也不会购买。

FoxTrot Search:很好用的本地全文检索工具。

Chatwise 是我觉得目前最好用的第三方 AI 聊天软件,功能添加的很克制,没有变的很臃肿。另外,我最近尝试使用指纹浏览器(AdsPower),拼车订阅 ChatGPT Pro,效果还不错,能畅用 Deep Research 和 o3。

Renamer* 是批量重命名软件,稳定,清晰。

最近开始用 Mela 记录菜谱,用 Tripsy* 规划旅行计划。

Darkroom:不知不觉用了 10 年的修图软件,Snapseed 之后最喜欢的一个。

Picture View:一款轻巧快速的 macOS 图片浏览应用。 体积小巧,方便快速的查看图片,不产生缓存,适合作为默认看图应用。

我使用 Squash* 和 PDF Squeezer* 压缩图片和 PDF 文件。

Permute* 转换音频图片格式,用 Downie* 下载视频,使用 Elmedia Player* 观看视频。

Affinity 系列软件:制图三件套,便宜管饱。

Steam:最近喜欢玩电脑上的桌游,比如展翅翱翔、猫与花毯等。还因为买二手桌游在英国认识了新朋友。

Spotify:听音乐,最近很喜欢这四张专辑。

PIVOT Vol.15 DEVONthink 更新啦

本刊物不定期发布,推荐通过 RSS 订阅:https://anotherdayu.com/feed/

IMG_1488.jpg

「DEVONthink 4.0 Public Beta」

Devonthink 最近更新了 4.0 Public Beta,在原有基础上支持更多 AI 功能,和文档版本控制功能。目前为免费试用阶段,感兴趣的可以试试。

「Open Source Mac Apps – Indie Goodies」

一个开源 macOS 软件列表。

「Find Any File」

一款macOS文件搜索工具,可补充Spotlight的不足,对网络、外部卷、系统目录甚至其他用户文件夹进行深度搜索;支持基于文件名、扩展名、大小、日期和类型等多属性的精准检索,并能在多种格式(纯文本、压缩包、Office文档、二进制文件)中进行全文本搜索;此外,FAF提供分层视图、图像预览、根搜索模式、结果保存与导出,以及与Alfred、Keyboard Maestro、PopClip等工具的集成,满足高级用户的多样化需求。

「JabRef」

开源文献管理工具,采用纯文本 BibLaTeX 格式存储数据,很适合 LaTeX 和 Markdown 格式。

「RunRepeat」

RunRepeat通过深入的跑鞋技术与功能指南,为跑者提供权威参考;其评测流程包括将跑鞋切半以检视内部结构并在实验室中测量20多项参数,实现精准数据采集;结合标准化测试、真实环境穿着试验和全自费购鞋的无偏见原则,确保评测结果客观、可比且可信。

「ChatGPT 合租方案」

OpenAI 检测到异常流量或可疑代理、地区限制、频繁更换 IP 地址的情况下,ChatGPT 的输出质量可能会被可以降低,回答内容变得简单、重复或不够准确,对某些问题避免作答或回答含糊其辞。

这个方案通过指纹浏览器结合美国静态住宅IP,实现稳定的 ChatGPT 合租方案,避免降智。

「Researching with Hazel, DevonThink, Bookends, and Tinderbox Applications」

一套科研写作的工作流。

Hazel 和 DEVONthink 是我常用的软件,最近开始尝试使用 Bookends 进行文献管理。

「A new tool for Zotero users」

本篇文章介绍了开源工具 Zowie,解决了在 Zotero 之外(如 DEVONthink)查看或编辑 PDF 文件时,无法快速定位对应 Zotero 条目的问题。Zowie 能扫描本地 Zotero 存储文件夹中的文件,并将对应的 Zotero select 链接写入 PDF 元数据或 Finder 注释中。

「kOS」

kOS 是 Helper Systems 推出的一款本地化研究辅助平台,它通过新型kBase仓库和可视化工具(如目录、缩略图、词云和索引)帮助用户高效管理与探索PDF文档;内置AI功能可生成摘要。

「wojciech-kulik/FlashSpace」

FlashSpace 是一款为 macOS 设计的 workspace 管理器。

如何使用 GDB 或 LLDB 调试器重复运行程序直到错误


gdb-debugger 如何使用 GDB 或 LLDB 调试器重复运行程序直到错误 gdb / lldb 小技巧 程序员 编程 计算机 计算机 调试

GDB Debugger 调试器

如何使用 GDB 或 LLDB 调试器重复运行程序直到发生错误

在调试程序时,有时候我们希望一直运行程序直到遇到错误。GDB(GNU 调试器)和 LLDB(LLVM 调试器)都提供了自动化此过程的方法。

这在调试一些不稳定的程序非常有用,例如有时候写的一些单元测试可能随机崩溃SegFault。最近我在调试一个测试每跑1000次就有一次崩溃的时候就发现gdb/lldb调试器非常有用。

简介:GDB vs LLDB

GDB(GNU 调试器)和 LLDB(LLVM 调试器)是用于低级别应用程序调试的强大工具。GDB 传统上用于由 GCC 编译的程序,而 LLDB 是 LLVM 项目的一部分,与 Clang 无缝配合。两者都提供强大的功能,但 GDB 在 Linux 环境中更常见,而 LLDB 在 macOS 上以及处理 Swift 时更受青睐。

自动化执行直到发生错误

调试重复性任务可能很乏味。通过自动化这些任务,直到发生错误,可以节省大量时间和精力。以下是如何在 GDB 和 LLDB 中设置重复执行直到遇到错误的步骤。

GDB 脚本

下面是一个 GDB 脚本,它会重复执行,直到发生错误:

repeat_until_error.gdb

while 1
  run
  if $_exitcode != 0
    echo "发生错误,退出码:$_exitcode\n"
    break
  end
end

要运行此脚本,将其保存为 repeat_until_error.gdb,然后使用以下命令执行 GDB:

gdb -q -x repeat_until_error.gdb ./your_program

或者,当你处于 gdb 提示符时,运行:

source repeat_until_error.gdb

“run” 命令用于启动程序,你可以为它添加参数,例如:

run param1 param2 ...

你也可以使用 “r” 作为 “run” 的简写。

LLDB 脚本

类似地,在 LLDB 中,你可以使用以下脚本实现相同的效果:

repeat_until_error.lldb

while (1)
  run
  process launch
  if (process status != 0)
    script print("发生错误,退出码:", lldb.process.GetExitStatus())
    break
  end
end

要运行此脚本,将其保存为 repeat_until_error.lldb,然后运行:

lldb --source repeat_until_error.lldb ./your_program

或者,在 lldb 提示符处运行:

source repeat_until_error.lldb

在 “run” 命令之后,你还可以通过附加参数来启动程序,例如:

run param1 param2

总结

GDB 和 LLDB 都提供了方便的方法来自动化调试任务,选择使用哪种工具通常取决于你所使用的平台和工具链。GDB 与 GCC 的集成使其成为 Linux 开发者的首选,而 LLDB 在与 Clang 和 macOS 的无缝配合方面同样强大。

自动化重复的调试命令可以为你节省大量时间和精力 —— 无论你使用 GDB 还是 LLDB,这些脚本都能帮助你简化工作流程。

gdb / lldb 调试

英文:How to Repeat Until Errors using GDB or LLDB Debugger?

本文一共 603 个汉字, 你数一下对不对.
如何使用 GDB 或 LLDB 调试器重复运行程序直到错误. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 如何使用 GDB 或 LLDB 调试器重复运行程序直到错误 gdb / lldb 小技巧 程序员 编程 计算机 计算机 调试
The post 如何使用 GDB 或 LLDB 调试器重复运行程序直到错误 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  2. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  3. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  4. 比特币最近波动有点大: 一天牛市一天熊 比特币10万美金以内都是最后上车的机会! 比特币近期的价格波动可以归因于多个关键因素,包括地缘政治动态、监管变化以及加密行业内的重大安全事件。其中一个主要影响因素是美国前总统唐纳德·特朗普对乌克兰和加密货币监管的立场变化。据报道,特朗普再次当选,他可能会推动减少美国对乌克兰的支持,这可能会影响全球金融市场和风险偏好。同时,特朗普正在将自己塑造为亲加密货币的候选人,表示有意让美国成为一个更加友好的加密货币环境。这一立场引发了市场对监管政策可能发生变化的猜测,导致市场情绪在乐观和不确定性之间波动。 特朗普对俄乌战争的态度 美国第43届总统唐纳德·特朗普已经在2025年1月当选并正式上任(第二次),那么他的政策可能会对比特币价格的波动产生更加直接和显著的影响。他政府对乌克兰和加密货币监管的立场已经不再是猜测,而是正在实际塑造市场的关键力量。 特朗普(Donald Trump)减少美国对乌克兰的支持,全球投资者可能会预期地缘政治稳定性发生变化,从而增加对比特币作为避险资产的需求。同时,他的亲加密货币立场可能正在推动市场的乐观情绪。如果他的政府推出有利于加密行业的监管政策,例如明确的合规指南或减少监管审查,可能会吸引更多机构投资者进入市场,并促进更广泛的加密货币采用。然而,政策的快速变化也可能导致短期市场剧烈波动,因为市场需要时间来消化新的政策动向。 朝鲜黑客盗取Bybit交易所15亿美元的ETH 另一个显著影响比特币价格的事件是近期涉及朝鲜黑客组织“Lazarus”的15亿美元以太坊被盗案件。据报道,Bybit交易所(全球第二)这些被盗的ETH已经被清洗,此次大规模黑客攻击引发了人们对加密行业安全性的担忧。此类安全事件不仅会削弱投资者信心,还可能引发更严格的监管审查,导致短期市场动荡。此外,被盗资金的大规模流动和出售可能对市场流动性造成冲击,进一步加大价格波动。随着这些事件的持续发酵,比特币价格正受到政治决策、监管预期以及安全挑战等多重因素的影响。 与此同时,与朝鲜黑客组织 Lazarus 相关的 15 亿美元以太坊被盗事件仍在影响加密市场。由于这些被盗 ETH 已被清洗,人们对加密行业安全漏洞的担忧持续存在,同时也可能引发更严格的监管审查。政治、监管和安全等多重因素交织在一起,共同导致了比特币近期的剧烈价格波动。...
  5. 公司给配了台高配DELL笔记本 早上例会结束的时候我顺便说了一句 我的笔记本有点慢, 当时我并不知道我的经理远程用电话也参加会议了(他全程在听), senior staff SE 对着电话说, “peter, you hear that? btw, my disks are...
  6. 5美元的 Raspberry PI – Zero 树莓PI Raspberry PI 来自于英国, 从第一代模型 A, 到后来的 B, B+ 甚至 是2代, 休积都很小 价钱也一直在 30美元左右. 当然在英国会贵一点 大概在...
  7. 英国硬盘数据恢复失败的经验和教训 上一周, 不小心触碰了机箱后面的电源线, 接触不良, 结果机器再也开不起来了. 显示 Invalid Disk, Replace. 大概就是主硬盘MBR区坏了. 我以为是接触不良, 于是反复插把硬盘卡槽好几次, 机器认不出, 硬盘也没声音, 于是便网上搜索了一个剑桥评价最高的 硬盘数据恢复公司...
  8. 优化设计 个人主页 并且 PageSpeed Insights 双项 100分 坛子的个人主页 www.tanzhijun.com 不错 很适合个人主页的模板. 而且是手机友好. 于是我照着把 我的主页改了改. https://steakovercooked.com 并且做了几点修改: 0. 使用 google mod_pagespeed 把 JS,...

PIVOT Vol.13

本刊物不定期发布,推荐通过 RSS 订阅:https://anotherdayu.com/feed/

IMG_1488.jpg

「Dokploy」

Vercel 和 Netlify 的替代品,更简单的部署 Docker 应用。

|

「Edouard Klein / falsisign」

很多机构,特别是政府机构,不接受数字签名,而签名扫描的打印件可以。这个开源工具可以让 PDF 文件看起来像打印、签名然后重新扫描过一样。

|

「Shift-Z:键盘上的超级启动按键」

Shift-Z 这个启动键确实挺不错的,用了几天很舒服。

|

JoeanAmier/XHS-Downloader

可以从小红书上下载无水印的作品文件。

|

「Watch to 5K」

这是一个跑步教练软件,帮助用户培养运动习惯,直到能一次性不中断跑5km。

一般会计划每周跑3-4次,散步+跑步交替,一点点加量。2-3个月之后帮助训练者恢复成能单次跑5km的程度。之后还有10km的扩充计划,循序渐进,挺好的。。

| 「Does spatial distribution heterogeneity exist in video games: Evidence from Genshin Impact’s map」

这篇研究论文通过对《原神》游戏地图的空间分布异质性进行定量分析,探讨了虚拟世界中的空间特征。结果表明,虚拟游戏世界确实存在空间分布异质性,但其模式比现实世界更加简单和规整。

关联:PIVOT Vol.9 组会分享什么?一些有趣的科研论文

|

「The Pivot」

发现了一个公共卫生领域的播客也叫 PIVOT,缘分啊。

|

「Gender differences in the relationship between mental health and academic performance among undergraduate students at a medical school in Shanghai: a cross-sectional study」

医学教育学相关研究,探讨性别差异在心理健康与学业表现之间的关系。女大学生心理健康状况不良与学业成绩较差显著相关,SCL-90量表六个维度与学业成绩之间存在剂量依赖关系。相比之下,男性学生中未观察到类似结果。这表明性别在心理健康与学业表现的关系中起着重要作用,需进一步挖掘多维度心理健康对学生学业的影响。

|

「okooo5km/HiPixel」

macOS 原生应用程序,利用AI技术进行图像超分辨率处理。

|

「morriswmz/phd-game」

基于随机事件的文本类游戏引擎,模拟PhD学生的生活经历。

|

「Wittgenstein and Word2vec: Capturing Relational Meaning in Language and Thought」

这篇文章探讨了语言意义的本质,通过比较维特根斯坦的语言游戏理论、Word2vec 自然语言处理模型和细胞生物学中的概念映射,展示了概念间关系性意义的重要性。作者认为,通过在多维空间中测量概念之间的”距离”,我们可以更好地理解和表达意义,这种方法不仅适用于语言,还可能反映了人类思考的基本方式。

2025年12款免费AI客户端,支持本地部署和API集成

GPT 客户端系统兼容性

软件名称 开源🆓 Web 在线 Windows macOS Linux iOS Android
open-webui
lobe-chat
LibreChat
Cherry Studio
BotGem(原 AMA)
ChatGPT(非官方)
lencx/NoiNoi
ChatHarvest(不支持自定义模型名称)
ChatGPT-Next-Web
page-assist
AI0x0
Chatbox AI

GPT 客户端支持AI服务商

软件名称 open-webui lobe-chat LibreChat Cherry Studio BotGem ChatGPT(非官方) lencx/Noi(Noi) ChatHarvest
API 形式配置
OpenAI ChatGPT
Azure OpenAI
AiHubMix
Anthropic
AWS Amazon Bedrock
DeepSeek
Dashscope
Fireworks
Google Gemini
Github Models
Groq
GraphRAG
OpenRouter
Ollama
ocoolAI
SiliconFlow(硅基流动)
Together
MiniMax
360智脑
阿里云百炼
百川智能
深度求索
通义千问
零一万物
Moonshot(月之暗面)
智谱AI

AI 模型服务文档

AI模型服务 文档 模型
OpenAI ChatGPT Overview - OpenAI API Models - OpenAI API
Azure OpenAI Azure OpenAI Service documentation Azure OpenAI Service models
AiHubMix AiHubMix 文档 模型
Anthropic Claude - Anthropic 文档 Models Anthropic
DeepSeek DeepSeek API Docs DeepSeek模型 & 价格
Dashscope
Fireworks Fireworks 文档 模型
Gemini Gemini API 开发者文档和 API 参考文档 Gemini 模型
Github Models GitHub 模型 Marketplace
Groq Groq 文档 模型
GraphRAG
OpenRouter OpenRouter 文档 模型
Ollama ollama 文档 Ollama 模型
ocoolAI OCOOL文档中心 模型 - OCOOL
SiliconFlow(硅基流动) SiliconFlow 文档 获取用户模型列表
Together Together 文档 模型
MiniMax MiniMax 文档 模型
360智脑 360智脑 文档 模型
阿里云百炼 阿里云百炼 文档 模型
百川智能 百川 文档 模型
豆包(火山引擎) 豆包 文档 模型
阶跃星辰 阶跃星辰 文档 模型
DeepSeek(深度求索) DeepSeek API Docs Models DeepSeek
零一万物 零一万物大模型开放平台 零一万物大模型开放平台
Moonshot(月之暗面) 月之暗面 文档 模型
英伟达 英伟达 文档 模型
智谱AI 智谱AI开放平台 模型

Cherry Studio

Cherry Studio 是一个支持多模型服务的桌面客户端,为专业用户而打造,内置 30 多个行业的智能助手,帮助用户在多种场景下提升工作效率。

Cherry Studio
Cherry Studio

BotGem

BotGem(原 AMA) 是一款智能聊天助手应用程序,它使用先进的自然语言处理技术来理解和回复您的文本信息。您可以使用 BotGem 提问、分享想法、寻求建议,或者只是随便聊聊。

BotGem
BotGem

ChatGPT(非官方)

ChatGPT(非官方)套壳 ChatGPT 官网的桌面程序

ChatGPT(非官方)
ChatGPT(非官方)

Noi

Noi 一款套壳多款 AI 网站的桌面程序

Noi
Noi

ChatGPT-Next-Web

ChatGPT-Next-Web(现名:NextChat) 一键免费部署你的私人 ChatGPT 网页应用,支持 GPT3, GPT4 & Gemini Pro 模型。

Open WebUI

Open WebUI开源地址)是一个可扩展、自托管的人工智能界面,可适应您的工作流程,同时完全脱机运行。

  • 🚀 轻松安装:使用 Docker 或 Kubernetes(kubectl、kustomize 或 helm)进行无缝安装,支持 :ollama:cuda 标记的映像,带来无忧体验。
  • Ollama/OpenAI API 集成:轻松集成与 OpenAI 兼容的 API,以便与 Ollama 模型进行多功能对话。自定义 OpenAI API URL,以便与 LMStudio、GroqCloud、Mistral、OpenRouter 等链接。
  • Pipelines, Open WebUI 插件支持:使用 Pipelines 插件框架,将自定义逻辑和 Python 库无缝集成到 Open WebUI 中。启动您的 Pipelines 实例,将 OpenAI URL 设置为 Pipelines URL,探索无限可能。例子包括函数调用、控制访问的用户速率限制、使用 Langfuse 等工具监控使用情况、使用 LibreTranslate 进行实时翻译以支持多语言、有毒信息过滤等等。
  • 📱 响应式设计:在台式电脑、笔记本电脑和移动设备上享受无缝体验。
  • 📱 适用于移动设备的渐进式网络应用程序(PWA):使用我们的 PWA,在移动设备上享受类似本地应用程序的体验,提供本地主机离线访问和无缝用户界面。
  • ✒️🔢 全面支持 Markdown 和 LaTeX:通过全面的 Markdown 和 LaTeX 功能,提升您的 LLM 体验,丰富互动内容。
  • 🎤📹免提语音/视频通话:通过集成的免提语音和视频通话功能,体验无缝通信,打造更加动态和互动的聊天环境。
  • 🛠️ 模型生成器:通过 Web UI 轻松创建 Ollama 模型。创建和添加自定义角色/代理、自定义聊天元素,并通过开放式 WebUI 社区集成轻松导入模型。
  • 原生 Python 函数调用工具:通过工具工作区中的内置代码编辑器支持来增强 LLMs 的功能。只需添加纯 Python 函数,即可自带函数(BYOF),实现与 LLMs 的无缝集成。
  • 本地 RAG 集成:通过突破性的检索增强一代(RAG)支持,深入了解聊天互动的未来。该功能可将文档交互无缝集成到聊天体验中。您可以将文档直接加载到聊天中,或将文件添加到文档库中,在查询前使用 # 命令即可轻松访问这些文件。
  • 用于 RAG 的网络搜索:使用 SearXNGGoogle PSEBrave SearchserpstackserperSerplyDuckDuckGoTavilySearchSearchApi 等提供商执行网络搜索,并将结果直接注入聊天体验。
  • 网络浏览功能:使用 # 命令将网站无缝集成到您的聊天体验中,并在命令后添加 URL。此功能可让您将网页内容直接整合到对话中,从而增强互动的丰富性和深度。
  • 🎨 图像生成集成:使用 AUTOMATIC1111 API 或 ComfyUI(本地)和 OpenAI 的 DALL-E(外部)等选项无缝集成图像生成功能,通过动态视觉内容丰富您的聊天体验。
  • ⚙️ 多模式对话:轻松地同时与各种模型对话,利用它们的独特优势做出最佳回应。通过并行利用一系列不同的模型来增强您的体验。
  • 基于角色的访问控制(RBAC):通过限制权限来确保安全访问;只有经过授权的人才能访问您的 Ollama,并且为管理员保留专属的模型创建/拉取权限。

LibreChat

LibreChat开源地址) 是一个免费的开源人工智能聊天平台。该 Web UI 提供大量自定义功能,支持众多 AI 提供商、服务和集成。通过熟悉的界面、创新的增强功能,在一个地方为所有人工智能对话提供服务,用户数量不限。

特点:

  • 🖥️ UI 匹配 ChatGPT,包括暗模式、流媒体和最新更新
  • 🤖 AI 模型选择:Anthropic(Claude),AWS Bedrock,OpenAI,Azure OpenAI,BingAI,ChatGPT,Google Vertex AI,插件,助手 API(包括 Azure 助手)
  • ✅ 兼容远程和本地 AI 服务:groq, Ollama, Cohere, Mistral AI, Apple MLX, koboldcpp, OpenRouter, together.ai, Perplexity, ShuttleAI 等等
  • 带有代码工件的生成式 UI:在聊天中创建 React、HTML 代码和 Mermaid 图表
  • 💾 创建、保存和共享自定义预设
  • 🔀 在对话中切换 AI 终端点和预设
  • 🔄 编辑、重新提交并继续消息与会话分支
  • 🌿 复制消息与会话以进行高级上下文控制
  • 💬 多模态聊天:
    • 使用 Claude 3、GPT-4(包括 gpt-4o 和 gpt-4o-mini)以及 Gemini Vision 上传并分析图像 📸
    • 使用自定义终端点、OpenAI、Azure、Anthropic 和 Google 进行文件聊天。 🗃️
    • 具有文件、代码解释器、工具和 API 操作的高级代理 🔦
    • 通过 OpenAI 助手 API 提供 🌤️
    • 非 OpenAI 代理正在积极开发中 🚧
  • 🌎 多语言界面:英语,中文简体 ,德语 ,西班牙语 ,法语 ,意大利语 ,波兰语 ,巴西葡萄牙语,俄罗斯语 ,日本語 ,瑞典语 , 韩国어 , 越南語 , 中文繁體 , 阿拉伯語 , 土耳其語 , 荷兰語 , 希伯来語
  • 🎨 可定制的下拉菜单 & 界面:适应擅长用户和新手用户
  • 📧 验证您的电子邮件以确保安全访问
  • 🗣️ 使用 Speech-to-Text 和 Text-to-Speech 魔术无需操作即可聊天
  • 自动发送并播放音频
  • 支持 OpenAI,Azure OpenAIElevenlabs
  • 导入 LibreChat ChatGPT Chatbot UI 的对话
  • 将对话导出为截图 markdown 文本 json
  • 搜索所有消息/对话
  • 插件 包括网络访问 DALL-E-3 图像生成等等
  • 多用户 安全认证带有管理权力消费工具
  • 配置 Proxy Reverse Proxy Docker 许多部署选项,完全本地或云端部署,完全开源并且公开构建,社区驱动的开发支持反馈

ChatWise

chatwise官网下载地址

  • ChatWise 支持任何 LLM 模型,包括 GPT-4、Claude、Gemini 等。
  • ChatWise 在构建时充分考虑了性能,并针对桌面体验进行了优化。
  • 您的所有数据都存储在本地,永远不会离开您的设备(除了向您的 LLM 提供商发送聊天请求)。
  • ChatWise 设计简单但功能强大,易于使用,且不臃肿。
  • 使用音频、PDF、图像、文本文件等进行聊天。
  • 免费使用 Tavily 搜索网页。

ChatWise
ChatWise

AnythingLLM

AnythingLLMGitHub仓库)是开源免费且支持多模态交互的全栈 AI 客户端。AnythingLLM支持文本、图像和音频等多种输入方式,将任何文档或内容转化为上下文,供各种语言模型(LLM)在对话中使用。AnythingLLM支持本地运行和远程部署,提供多用户管理、工作区隔离、丰富的文档格式支持以及强大的 API 集成。所有数据默认存储在本地,确保隐私安全。AnythingLLM支持多种流行的 LLM 和向量数据库,适合个人用户、开发者和企业使用。

  • 多模态交互:支持文本、图像和音频等多种输入方式,提供更丰富的交互体验。
  • 文档处理与上下文管理:将文档划分为独立的“工作区”,支持多种格式(如PDF、TXT、DOCX等),保持上下文隔离,确保对话的清晰性。
  • 多用户支持与权限管理:Docker版本支持多用户实例,管理员能控制用户权限,适合团队协作。
  • AI代理与工具集成:支持在工作区内运行AI代理,执行网页浏览、代码运行等任务,扩展应用的功能。
  • 本地部署与隐私保护:默认情况下,所有数据(包括模型、文档和聊天记录)存储在本地,确保隐私和数据安全。
  • 强大的API支持:提供完整的开发者API,方便用户进行自定义开发和集成。
  • 云部署就绪:支持多种云平台(如AWS、GCP等),方便用户根据需求进行远程部署。

AI0x0

AI0x0 是一个桌面端的多模态多模型通用型AI生成助手应用,支持在 mac 端和 win 端安装使用。它可以让您在任意桌面软件上使用 AI 能力来查询生成文本、图片、音频和视频等多种模态数据,帮助您更高效地完成工作。

目前 AI 0x0 支持以下几种模型:

名称 联网搜索支持 语言模型 是否免费 多模态 是否需要翻墙
Claude 2 不支持 Claude 100k 免费 支持
Perplexity 支持 未知 免费 不支持
ChatGPT Plus用户支持 GPT-3.5/GPT-4.0 免费/收费 不支持
PoeChat 不支持 GPT-3.5/GPT-4.0/Claude 免费/收费 不支持
NewBing 支持 GPT-4.0 免费 支持
Chat0x0 支持 GPT-3.5 免费/收费 支持
文心一言 不支持 文心一言 免费 支持
讯飞星火 不支持 讯飞星火 免费 不支持
  • 🌀 桌面灵动悬浮球,在任意软件选中文本后随时唤出搜索框 (Mac: ⌥+Q Win: Alt+1)
  • 🎬 AI 实时字幕,可以实时翻译转录系统和麦克风的任意语言的音频
  • 💬 悬浮对话气泡,鼠标放上去查看完整信息,离开查看简要信息
  • ⚙️ 自定义预设,可以自定义你想实现任何功能
  • 📁 收藏对话,将你觉得有价值的对话内容进行收藏,随时翻看
  • 📦 预设包,有官方和社区发布的一整套预设能力,解决各种场景问题
  • ⚡️ 网络加速,开启后直接访问 ChatGPT 等国外 AI 服务
  • 🔍 查询模式,不用离开当前使用的软件就可以使用 AI 查询信息
  • ⌨️ 输入模式,可以在任意软件的任意输入框自动输入 AI 生成内容
  • 🖱️ 鼠标随航,鼠标的一支强大的随航舰队,应对无从下手的任意困难
  • ⏭ 深度定制 ChatGPT Next Web 的 Chat0x0 快捷唤起对话框 (Mac: ⌥+W Win: Alt+2)
  • 📖 支持全格式文库,让 AI 从你的文库读取信息来完成你的需求
  • 🌐 联网搜索,支持联网搜索获取实时内容,并且给出引用连接
  • 🔈 语音播报,可以语音播报查询结果和生成的音频内容
  • 🗣️ 语音识别,在设置里设置了语音语言后可以使用语音识别输入查询文字
  • 🤖️ 语音助手,在设置里设置了语音语言和快捷键后可以通过语音跟 AI 交流
  • 🧩 应用插件,打通不同应用的内容壁垒,比如使用了浏览器插件后可以实现跟浏览器对话
  • 🪆 多模型,支持低成本随时适配市面上任意好用的语言模型
  • 📰 联网图文生成,通过文章主题联网搜索相关信息和图片,自动生成图文并茂的内容
  • 🏞️ 识图能力,发送截图给 Chat0x0 进行对话 (Mac: ⌥+E Win: Alt+3)
  • 🌈 毛玻璃界面,原生应用优雅的体验
  • 👕 多外观,支持多个外观切换,包括显示 live2d 模型的能力(由于版权,暂不支持自定义)
  • 🌓 针对每个语言模型适配亮色和黑色主题
  • 🥳 承诺永久免费开放除 Chat0x0 以外的语言模型 (Chat0x0 填 key 可免费)

Chatbox AI

Chatbox AI 是开源的跨平台AI客户端应用和智能助手,支持 Windows、Mac、Linux、iOS、Android 和网页版,集成多种先进的语言模型(如 ChatGPT、DeepSeek、Claude、Google Gemini Pro 等),支持本地模型(如 Llama2、Mistral 等)。Chatbox AI提供丰富的功能,包括本地数据存储、图像生成(Dall-E-3)、代码高亮、Markdown 和 LaTeX 支持、多语言交互、团队协作等。Chatbox AI基于 GPLv3 开源许可,用户能定制功能、参与社区贡献。

  • 多语言模型支持:兼容多种主流 AI 模型,如 ChatGPT、Claude、Google Gemini Pro、Ollama 等,满足不同场景需求。
  • 本地数据存储:所有聊天记录和数据存储在本地设备上,确保隐私和安全,避免数据泄露风险。
  • 图像生成:集成 Dall-E-3,支持基于文字描述生成图像,将创意转化为视觉作品。
  • 代码辅助:支持代码生成、语法高亮、代码审查、优化等功能,帮助开发者提高编程效率。
  • 文档交互:支持与 PDF、Word、Excel 等文档交互,提取内容并提供智能回复。
  • 联网搜索:实时联网搜索,获取最新信息,支持内容摘要和事实核查。
  • Markdown 和 LaTeX 支持:适合学术写作和技术文档,支持格式化文本和复杂公式。
  • 跨平台使用:支持 Windows、Mac、Linux、iOS、Android 和网页版,随时随地使用。
  • 多语言支持:支持英语、中文、日语、韩语、法语、德语、俄语等多种语言。
  • 团队协作:支持团队共享 API 资源,提升协作效率。

PIVOT Vol.11 推荐几个macOS软件

本刊物不定期发布,推荐通过 RSS 订阅:https://anotherdayu.com/feed/

IMG_1488.jpg

推荐几个最近用着很舒服的 macOS 软件!

Mailmate,朋友推荐的一款 macOS IMAP 电子邮件客户端,日常价格为每 3 个月 10 美元,前几天可以 1 美元购买 3 个月的使用权限(已过期),就试了试,结果非常惊喜。付费期限结束后,会自动转为免费版,似乎也够日常使用(还未测试)。很踏实的设计风格,比 Apple mail 和 Spark 细节好很多。如下图,如果邮件中提到了 attachment,但没有添加附件,还会提醒。

telegram-cloud-photo-size-5-6334830467156657640-x.jpg

Kinopio,一款画板软件,风格比较独特,可以分享页面,并嵌入网页,示例:第一次中距离徒步 Yr Wyddfa。从 Obsidian 转出后,偶有画板需求,但不想再额外使用一个笔记软件,就会用 Excalidraw,但 Excalidraw 稍有些粗糙。Kinopio 则刚刚好,网页版轻量化,还能导出为 Obsidian 的 JSON Canvas file format 格式和 PDF,易于储存和索引。

CleanShot 2025-01-12 at 19.08.38@2x.png

new file menu,为 macOS 右键菜单增加新建文件的功能。类似的软件有很多,但部分在系统更新后失效,这款则比较稳定简单。

Trickster,快速索引近期访问的文件,优点是能索引 Devonthink 等软件内部的文件。

CleanShot 2025-01-12 at 21.17.34@2x.png

codepiper,自动复制 macOS 中的短信验证码,很易用。

Rapidmg,macOS 安装 DMG 文件时的拖拽流程比较累赘,这个软件则省去了该步骤。

FluentRead,Firefox插件,类似于沉浸式翻译,优点是开源,设置界面简洁舒适。缺点是目前没有一键全网页翻译,只有段落翻译快捷键。

Devonthink 出品的免费软件

DEVONtechnologies 是一个 macOS 软件公司,其最知名的产品 Devonthink,用于文件和信息管理。

每次逛 Devonthink 的社区 —— DEVONtechnologies Community,都能给我不小的惊喜。前段时间发现 DEVONtechnologies 原来还发布了很多功能强大的免费软件/插件:

WordService,针对选择文本的小工具,比如转成繁体中文、格式化文本等。

CalcService,是一款公式计算插件,在文本界面都可以使用。

EasyFind,用于替代 Spotlight 的文件检索软件,适合更高级的精确文件搜索需求。相似的软件还有 GoToFileFoxTrot Search

Neo Network Utility,网络工具,用于获取网络适配器信息并诊断常见的网络问题。

PhotoStickies,将喜欢的图片直接展示在桌面上。桌面相册(photoalbum)也有相似地功能,样式稍微好看一些。

ThumbsUp,设置好参数后,将图像拖拽到该软件的图标上,即可调整图片分辨率和大小。

XMenu,在菜单栏添加程序、文件、文档、文本的快速访问窗口。

DEVONagent Lite,网页检索工具,可以提前配置一些搜索习惯。完整付费版为:DEVONagent Express 和 DEVONagent Pro。

成也流量,败也流量。

检索的时候,在关键词后加 “Reddit”,总能搜到一些有趣的讨论帖。

过去知乎、小红书也能起到这个功能,但随着它们商业化价值变高,越来越多功利性比较强的信息进入,如广告和 AI 生成的文字,内容的真实性变的越来越难判断。

论坛和社区的流量相对较小,其中的信息还显得有些人味,也往往更深入。

成也流量,败也流量,不知道小红书还能坚持多久。

Reddit 之外,其实还有很多偏好性强的小论坛,以下是我偶尔会逛逛的:

如想发掘更多论坛,可以试试这两个渠道:ListOfSubredditsDiscourse Discover

主动寻找,才能找到更符合自己兴趣和性格的内容。

莫名解决局域网内 macOS 与 Windows 不能互访的问题

现象描述

局域网中,通过路由器连接的 Windows 和 macOS 在某次 macOS 的系统升级后,就再也不能相互访问了,但奇怪的是,在 macOS 上通过桥接的虚拟机依然可以被 Windows 访问到,今天得空我解决了此问题。

现象一:在 macOS 上启动 Apache 或者 nginx,此时本机通过 http://127.0.0.1 可以打开测试网页,但 Windows 却不能。

现象二:Windows 无法 ping 通 macOS,macOS 却可以 ping 到 Windows。

解决思路

现象二说明两者的网络是联通的,于是从 macOS 端着手,关闭防火墙,结果无法访问,又尝试关闭 Windows 端的防火墙,依然无法访问。

在 macOS 上尝试了使用 telnet 等工具测试,发现可以正常联通,但 Windows 上不行。

说明两者之间可能被什么挡住了,这莫名的暴躁,难道是小米路由器,难道是 ipv6,结果都排除了。

猜测:也许 macOS 端除了防火墙依然有什么进程在默默工作,经过回忆,我早期下载过一个叫做什么 cat 的 App,其中我开启过 macOS 的网络防火墙。

按照这个思路我下载了一堆防火墙:LuLu、Murus、Snail、Little Snitch 等,分别启动观察网络。

最终,一瞬间我发现网络似乎联通了, Windows 上可以访问 macOS 部署的所有服务。

经过又一阵子的排查,我发现退出 Murus 时,选择 Disable 就可以访问网络。

总结

这真是一个诡异的现象,但通过 Murus 解决了,但我确实不知是怎样解决的。

这个阻挡网络的不是 macOS 自带的防火墙,是什么,我就没有时间研究了。

如果后续我知道的原理,我会来更新这篇文章。

4个步骤让 MacOS 13 以下版本支持 AVIF 格式预览

如果你使用的是 macOS Ventura(MacOS 13),系统已默认支持 AVIF 格式打开和预览。对于更旧的系统版本,需要通过安装第三方图片浏览软件或拖到浏览器中查看。

AVIF QuickLook 插件可以通过4个简单的步骤,实现在系统直接预览 AVIF 格式,该插件由国内一个作者 DreamPiggy 开发。

要求:

1、macOS 10.11+ (Big Sur+) 以上版本
2、M1/Intel Mac 都支持

步骤:

1、在 Github Release Page 下载最新的 AVIFQuickLook.qlgenerator
2、打开 访达.app (Finder);
3、通过快捷键 Shift + Command + G 打开“前往文件夹”窗口,输入 ~/Library/QuickLook/ 然后回车。 macOS Catalina 以上版本, 使用 /Library/QuickLook/
4、把下载的 AVIFQuickLook.qlgenerator 复制到该文件夹内,可能需要输入电脑密码确认。

如果你已经安装了 Homebrew,只需要一行命令即可。

brew install avifquicklook

安装完,系统就支持直接预览 AVIF 格式了。

Mac 系统地图收藏位置不准确及无法使用路线规划

故障现象 添加海外网络出口后,macOS 自带的地图软件出现了收藏地点标记位置与实际位置不符,并且无法使用路线规划的问题,软件提示「路线不可用,从此位置出发的路线不可用」。 通过点击菜单栏的「地图」>「关于地图」,可以看到数据提供商为…

使用 Renamer 批量重命名,节约重命名时间

我最近在用 Youtube 看《喜人奇妙夜》(毕竟 Youtube 上有纯享版,体验太好了)。同时,为了方便我可以在地铁/高铁上看,我还会使用 Youtube-DLP 下载到本地。但,Youtube DLP 下载到本地的视频文件往往名字都特别特别的长,比如:

【纯享】《看不见的TA》i人闫佩伦和“鬼怪”张佑维变室友? | 《喜人奇妙夜》Amazing Night EP3 SKETCH #喜人奇妙夜 #闫佩伦 #张祐维 [XUsi1R1Ny80].f614.mp4

这个内容长度中存在了大量的无用信息,虽然对于 Youtube 这样的视频平台来说,有助于流量和搜索,但对于我这样的本地存储用户来说,大大的影响了我的本地观感,因此,我一般都会手动移出其中的无用信息。只保留作品名和基础的介绍信息,比如上面的文件名我会修改成 《看不见的TA》i人闫佩伦和“鬼怪”张佑维变室友?.mp4

当然,我可以写一个脚本来完成,但重命名这件事实在是太过于常见了,所以我也懒得写脚本(且脚本还需要指定路径,麻烦。),刚好,SetApp 套装中有一个 Renamer 的 App,可以解决这个问题,于是便有了这篇文章,介绍我自己是如何处理的。

分析目标和模块

Renamer 提供了多种重命名的能力,其中包括文本替换、正则表达式替换、数字、移出文本等多种能力,这些能力将会成为我稍后使用的工具。

d2b5ca33bd970f64a6301fa75ae2eb22
Renamer 提供的模块

如果看我们的文件名前后,可以很清晰的分辨出,我操作了两个部分:

  1. 去除了最前面的【纯享】
  2. 去除了后面一直到拓展名的中间介绍文字。

因此,我需要用到两个模块,来实现替换 —— 正则表达式(Regular Expression) 和文本替换(Find & Replace)。

配置替换

替换纯享

纯享因为是固定文本,所以替换比较简单,新增一个替换的动作,选择 Find & Replace,并配置只对文件名生效,设置 Find 为【纯享】,Replace 为空,就会在执行替换的时候,将【纯享】替换为空文本,来达到移除特定内容的效果。

d2b5ca33bd970f64a6301fa75ae2eb22 1

当然, 同样的功能你还可以用移除文本来操作 —— 选择 Remove Text, 并把要移出的 【纯享】放在里面即可。

d2b5ca33bd970f64a6301fa75ae2eb22 2

替换其他内容

【纯享】因为是固定文本,相对简单,但后续的内容则就复杂了许多,其中的内容会变化,且包含了大量的 ID、标签等信息,单纯的 Find & Replace 是无法解决的,因此我们这里用到正则表达式替换来完成。

你可以借助于 Regexr 这个网站来调试你的正则表达式,在上方编写你的表达式,并在下方填写你的测试文本,通过高亮,即可判断是否正确匹配。

d2b5ca33bd970f64a6301fa75ae2eb22 5

测试匹配正确后,复制上方的正则规则,在 Rename 中新增一个 Regular Expression 替换动作,配置成文件名 Only,并填入你的正则表达式。

d2b5ca33bd970f64a6301fa75ae2eb22 4

效果

最后,拖入你要修改名称的文件,就可以查看到批量修改文件名的效果了。这时你只需要拖入多个文件,就能一次性给 N 个文件完成更名的动作了。

d2b5ca33bd970f64a6301fa75ae2eb22 6

利用 Mac 快速操作实现图片批量转换为 AVIF 格式

继上一文介绍了我“利用 Mac 快速操作实现图片批量转换为 WebP 格式”捣腾成功后,希望通过同样的方法实现利用 Mac 快速操作实现图片批量转换为 AVIF 格式,捣腾结果分享如下。

为什么使用 AVIF 格式?

AVIF 是一种基于AV1 视频格式的现代图片格式,实现卓越的压缩效率,同时保持高图像质量。AVIF 通常比WebP、JPEG、PNG 和 GIF 具有更好的压缩效果,并且旨在取代它们。AVIF 对宽色域、高动态范围 (HDR) 和渐进式渲染的支持增强了视觉体验,预示着图像细节精美且高效交付的未来。号称 Web 开发人员和摄影师的首选。据统计,AVIF 全球使用情况为 92.95%,除 IE 浏览器、Opera Mini、QQ 浏览器、KaiOS 浏览器外都已支持,WordPress 6.5+ 已支持 AVIF 格式

利用 Mac 快速操作实现图片批量转换为 AVIF 格式-雅余

通过 AVIF 格式其开发组织“开放媒体联盟”(AOMedia),顺藤摸瓜在其 Github 账号上找到了 libavif 这个用于编码和解码 AVIF 格式的库和使用文档。

我的操作步骤如下:

一、安装 Homebrew

这部分就不重复介绍了,见“利用 Mac 快速操作实现图片批量转换为 WebP 格式”一文。

二、使用 Homebrew 命令安装 libavif 包

在终端中运行一下命令:

brew install libavif

回车直至安装完成。注意是否有出错或文件无授权的提示,按需对文件夹进行可操作授权。注意 libavif 包的安装路径,后面需要用到。

三、添加 Mac 快速操作 Workflow

1、在 Mac 上打开“自动操作”,选取“快速操作”; 利用 Mac 快速操作实现图片批量转换为 AVIF 格式-雅余

2、在工作流的顶部,它显示“工作流程收到当前”,选择“图像文件”,然后在“位于”下选择“访达.app”;

利用 Mac 快速操作实现图片批量转换为 AVIF 格式-雅余

3、接下来,在“自动操作”的左侧面板,在“资源库”下选择“实用工具”,然后将“运行 Shell 脚本”,拖放到右侧工作流程面板中;

4、对于“运行 Shell 脚本”,“Shell”选择“/bin/zsh”,“传递输入”选择“作为自变量”。

把以下代码片段粘贴到下面文本框中:

for f in "$@"
do
fname="${f%.*}.avif"
/usr/local/Cellar/libavif/1.1.1/bin/avifenc -s 10 -q 85 "$f" "${f%.*}.avif"
done

然后在“文件”菜单选择“储存”,保存文件名为“转换为 AVIF”,保存到默认地址即可。

注意:
1)libavif 的路径是为通过 Homebrew 安装的 libavif 设置的,如果您手动安装了 libavif,那么它可能在 /usr/bin 中,您需要相应地调整路径(我的最终路径是 /usr/local/Cellar/libavif/1.1.1/bin/avifenc );

2)-q 质量标志当前设置为 85,默认为 60,但您可以将其设置为 1-100 之间的任何值(越高将产生更高质量的图像,但压缩较少);-s 代表速度,默认为6;默认不删除照片 exif 信息,需删除则加上 --ignore-exif 参数。

5、选择你需要转换格式的图片,可多选,右键菜单的“快速操作”中选择“转换为 AVIF”选项,图片将在当前文件夹中自动生成 AVIF 格式文件。

利用 Mac 快速操作实现图片批量转换为 AVIF 格式-雅余

至此,教程结束。

下图为 WebP 和 AVIF 格式压缩率都设置为 85 所得到的压缩结果,结果是 WebP 的文件更小一些,有点困惑。不知道是不是我设置的压缩率太高了,libavif 官方默认值是 60。本文方法大致如上,至于多少压缩率更好,大家自己摸索吧。

利用 Mac 快速操作实现图片批量转换为 AVIF 格式-雅余

另外,我通过 AVIFQuickLook 插件,已经实现了在老苹果中直接预览 AVIF 格式。使用 Brew 进行安装,命令如下:

brew install avifquicklook

如有误,或有更好的方案,欢迎指正和交流。

利用 Mac 快速操作实现图片批量转换为 WebP 格式

周末进行网站整站备份的时候发现,整站压缩后的压缩包大小为 1G 多,有点难接受。原因是网站图片较多,主要是 JPG 格式照片,占用较多空间。网站流量不大,服务器流量压力方面倒是不担心,但是会对未来网站可能出现的整体迁移、备份造成了压力。虽然去年改版已经对 WordPress 缩略图生成做了限制,只生成必须的三个尺寸,但网站体积还是在快速的增长。

为此,我打算整站改用 WebP 格式图片,在本地处理好图片之后再进行上传。因为使用 WordPress 的插件普遍会保留原文件,另外再生成一批 WebP 格式的文件,反而增加了存储空间。至于 WordPress 媒体库中历史的图片如何替换为 WebP 格式,另行研究。

为什么使用 WebP 格式?

WebP 是谷歌在 2010 年提出的一种新型的图片格式,其优势在于 WebP 格式的图片可以比 JPEG 格式的图片小 26%-34%比 PNG 格式的图片小 25%-34 %拥有更快的加载速度,可以保持比 JPEG 格式更好的图像质量,还支持透明度和动画效果。据统计,WebP 全球使用情况为 96.35%,除 IE 浏览器外都已支持。WordPress 5.8+ 增加了对 WebP 格式的全面支持

利用 Mac 快速操作实现图片批量转换为 WebP 格式-雅余

也有更新更先进的 AVIF 格式WordPress 6.5+ 支持 AVIF 格式),压缩率更高,但浏览器支持度目前略差一些,我的老苹果电脑无法直接预览,所以先忽略,以后再考虑。

Windows 下有不少免费的 WebP 格式批量转换工具,Mac 下比较少。转换 WebP 格式的在线应用也是有的,但上传下载太耗时。可喜的是,Mac 可以通过命令行工具,配合自动操作功能也可以实现批量转换。

我的操作步骤如下:

一、安装 Homebrew

前提条件,需要在运行 MacOS 至少为 10.14(Mojave) 或更高版本的 Mac 上安装 Homebrew。如果您尚未安装 Homebrew,请先安装。

什么是 HomeBrew?

HomeBrew 是一个免费且开源的包管理器,它简化了 MacOS 用户安装软件的过程。无论是命令行工具、语言运行时还是应用程序,HomeBrew 都能帮助你轻松管理。它的口号是“The missing package manager for macOS”,意即它弥补了 MacOS 缺失的包管理功能。

安装 HomeBrew 非常简单,执行一行脚本即可。为了提升安装速度,建议更改 Homebrew 的安装源,将其替换成国内镜像

方法1、Homebrew 官方脚本:(速度欠佳,会出现超时)

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

方法2、中科大镜像 Homebrew 镜像服务脚本:

/usr/bin/ruby -e "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install)"

注:最后出现 Installation successful! 或者 Checking out files: 100% (5392/5392), done. 说明安装成功。

必须配置:

更改安装源,替换为国内镜像:

1)替换 brew.git:

git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git

2)替换 homebrew-core.git:

git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git

方法3、 Gitee 国内镜像服务脚本:(推荐!!)

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

安装过程中按 brew 官方脚本执行,提示安装成功后会让选择国内哪个镜像源:
1)中科大国内源
2)清华大学国内源
3)上海交通大学国内源
4)腾讯国内源
5)阿里巴巴国内源(推荐)

提示配置成功,但还需要重启终端 或者 运行命令 source /Users/用户名/.bash_profile,否则国内地址无法生效。

二、使用 Homebrew 命令安装 WebP 包

在终端中运行一下命令:

brew install webp

回车直至安装完成。注意是否有出错或文件无授权的提示,按需对文件夹进行可操作授权。注意 WebP 包的安装路径,后面需要用到。

三、添加 Mac 快速操作 Workflow

1、在 Mac 上打开“自动操作”,选取“快速操作”; 利用 Mac 快速操作实现图片批量转换为 WebP 格式-雅余

2、在工作流的顶部,它显示“工作流程收到当前”,选择“图像文件”,然后在“位于”下选择“访达.app”;

利用 Mac 快速操作实现图片批量转换为 WebP 格式-雅余

3、接下来,在“自动操作”的左侧面板,在“资源库”下选择“实用工具”,然后将“运行 Shell 脚本”,拖放到右侧工作流程面板中;

4、对于“运行 Shell 脚本”,“Shell”选择“/bin/zsh”,“传递输入”选择“作为自变量”。

把以下代码片段粘贴到下面文本框中:

for f in "$@"
do
fname="${f%.*}.avif"
/usr/local/Cellar/webp/1.4.0/bin/cwebp -q 85 -m 6 -metadata all -mt "$f" -o "${f%.*}.avif"
done

然后在“文件”菜单选择“储存”,保存文件名为“转换为 WebP”,保存到默认地址即可。

注意:
1)cwebp 的路径是为通过 Homebrew 安装的 cwebp 设置的,如果您手动安装了 cwebp,那么它可能在 /usr/bin 中,您需要相应地调整路径(我选择方法3的脚本,最终路径是 /opt/homebrew/Cellar/webp/1.4.0/bin );

2)-q 质量标志当前设置为 85,但您可以将其设置为 1-100 之间的任何值(越高将产生更高质量的图像,但压缩较少);-metadata all 为保留所有图片信息,可选值还有 all, none, exif, icc, xmp。

5、选择你需要转换格式的图片,可多选,右键菜单的“快速操作”中选择“转换为 WebP”选项,图片将在当前文件夹中自动生成 WebP 格式文件。

利用 Mac 快速操作实现图片批量转换为 WebP 格式-雅余

至此,教程结束,可以看看我上一篇文章中图片的转换效果,压缩后图片体积减少了 2-3 倍,效果喜人。本文所有图片均使用 WebP 格式。

利用 Mac 快速操作实现图片批量转换为 WebP 格式-雅余

如有误,或有更好的方案,欢迎指正和交流。

❌