Hugo 部署 Cloudflare

Hugo 部署 Cloudflare 的踩坑记录

最近把 Hugo 博客部署到 Cloudflare Pages,看着简单,结果踩了一堆坑。记录一下,给后面的人省点时间。 坑一:主题文件别手写 一开始图省事,手动推了个简化版 PaperMod 主题到仓库。结果功能不全、CSS 缺失、搜索用不了。 正确做法: 构建时直接拉官方主题,别自己维护一份。 git clone --depth 1 https://github.com/adityatelange/hugo-PaperMod.git themes/PaperMod 坑二:HUGO_VERSION 必须和主题匹配 PaperMod 要求 Hugo >= 0.146.0,但 Cloudflare 默认可能是老版本。 解决: 在 Cloudflare Pages 环境变量里指定版本。 HUGO_VERSION = 0.146.0 坑三:TOML 语法别用 YAML 的写法 minify: 这种冒号写法是 YAML 的,TOML 要用 [minify] 表头。Cloudflare 用的是标准 TOML 解析器,一个字符错就整个构建失败。 [minify] disableXML = true 坑四:代码块要标注语言 Markdown 代码块如果不标注语言,Hugo 可能渲染异常。目录结构这种用 text: project/ |-- file1.py +-- file2.py 坑五:域名要加到 Pages 白名单 光在 DNS 配 CNAME 不够,Pages 项目本身也要把域名加进去,否则不响应请求。 坑六:构建日志看不到 Cloudflare Pages 的构建日志 API 不开放,只能网页上看。构建失败时,把日志贴出来就能定位。 ...

2026-08-07 · 1 min · 86 words · camac
内容与样式分离

一份 Markdown 三套皮肤

痛点 每次写网页报告,样式和内容糊在一起。改个颜色要重新生成全文,换风格等于重写。更烦的是,内容写在一个专有编辑器里,换个工具就迁移不了。 解决方案:拆两层 内容层只管写什么——Markdown 文件,带 YAML 头信息。 样式层只管长什么样——独立的 HTML 模板,用 {{变量}} 占位符接收内容。 中间一个渲染脚本串起来,输入 MD 选模板,输出成品 HTML。 具体实现 目录结构 ~/.hermes/ |-- scripts/ | +-- render_page.py |-- templates/ |-- default.html |-- dark.html +-- magazine.html 模板文件是独立 HTML,用 {{title}}、{{content}}、{{toc}} 等占位符接收内容。想加新模板?写一个 HTML 丢进 templates/ 就行,脚本自动识别。 使用方法 python3 ~/.hermes/scripts/render_page.py 文章.md python3 ~/.hermes/scripts/render_page.py 文章.md -t dark python3 ~/.hermes/scripts/render_page.py 文章.md -t magazine 文章格式 每篇文章开头加 YAML 头信息: --- title: 标题 date: 2026-08-06 description: 一句话描述 --- 正文内容... 配合 Obsidian 使用 设置软链接 ln -s ~/Documents/Obsidian/Blog /path/to/hugo/content/posts 写作流程 在 Obsidian 里写文章,存到 Blog/ 文件夹 用标准 Markdown,不要用 [[双向链接]] 图片用 ![alt](path) 语法 保存后 Hugo 自动就能读到 发布流程 hugo git add . && git commit -m "新文章" && git push Cloudflare Pages 自动构建上线。 ...

2026-08-06 · 1 min · 171 words · camac

Mac mini 远程控制 Sidecar 的三种方案

把 iPad 当 Mac 的第二块屏幕,Sidecar 是苹果官方方案。但如果你用的是 Mac mini(没有自己的屏幕),远程 SSH 进去想控制 Sidecar 就没那么简单了。 折腾了一圈,最后能用的一共三套方案。 三种方案对比 方案 原理 响应速度 可靠性 SidecarLauncher (主力) 调用 Apple 私有 SidecarCore.framework 框架 ~1s ✅ 极高 Hammerspoon AX (备选) 遍历系统设置界面 AX 元素,模拟点击 ~3s ✅ 高 computer_use (备选) 通过 cua-driver 在后台操作 UI ~5s ✅ 中 方案一:SidecarLauncher(推荐) 用 Swift 直接调用 Apple 的私有框架,不需要任何 GUI 交互,秒级响应,有线优先自动走无线。 sidecar status # 查看连接状态 sidecar on # 连接(有线优先) sidecar off # 断开 sidecar devices # 列出可用设备 已封装成 shell 函数加到 ~/.zshrc: ...

2026-08-02 · 2 min · 307 words · camac
第一篇笔记

第一篇笔记

为什么搭这个站 之前一直用 Bear 和 Obsidian 记笔记,但笔记都是私有的。有些内容想公开分享,需要一个博客。 技术选型 工具 作用 理由 Hugo 静态站点生成器 快,一个二进制搞定,零依赖 PaperMod Hugo 主题 干净、功能全、适合笔记站 Obsidian 写作工具 日常记笔记的地方,直接写 MD Cloudflare Pages 部署 免费,全球 CDN,自动 HTTPS 工作流 在 Obsidian 里写文章,保存到 02-Projects/uuunit.com/posts/ 目录,推送到 GitHub,Cloudflare 自动部署。 避坑 主题文件不要手写简化版,直接拉官方主题 HUGO_VERSION 环境变量必须和主题要求一致 模板里 range 嵌套容易导致菜单重复渲染,注意检查 print("Hello, uuunit.com!")

2026-08-01 · 1 min · 44 words · camac
NTFS BitLocker

NTFS 格式移动磁盘在 Mac 下不能挂载?BitLocker 是罪魁祸首

问题现象 一个 NTFS 格式的 U 盘在 Mac 上一直正常识别,某天突然桌面不显示。打开 磁盘工具 能看到设备,但就是挂载不上。 排查过程 尝试 结果 重启 Mac ❌ 无效 换 USB 口 ❌ 无效 虚拟机 Windows 读取 ✅ 可以读 在 Windows 的 磁盘管理 中发现,U 盘启用了 BitLocker 加密(待激活)。 解决方法 在 Windows 上对 U 盘执行 BitLocker 加密(会提示需要激活) 再执行 BitLocker 解密 期间不要拔出 U 盘 完成后插回 Mac,恢复正常 避坑提示 BitLocker 加密状态在 Mac 上不可见,只有 Windows 磁盘管理器能看出来 如果 U 盘在 Mac 上突然不显示但磁盘工具有,优先怀疑加密问题 加密/解密过程不要中断,否则可能损坏数据

2025-06-13 · 1 min · 64 words · camac
Kodi Skin

Bello Fredo — Kodi 16.x Jarvis Skin

Bello Fredo 是一个基于 Bello 的 Kodi 16.x Jarvis 皮肤 Kodi 17.6 的 Bello 皮肤已经更新,可以在皮肤中直接安装,安装后替换字体即可。 新版本目录变为 “~/Library/Application Support/kodi/addons/skin.bello.6/fonts” 字体链接:https://github.com/henrychan2/handy/blob/master/Microsoft%20YaHei%20Mono.ttf?raw=true 因为 Kodi 17 以上不能直接使用 Kodi 16 的皮肤,所以需要修改,这里修改基于 Bello 2.2.0 版本。 修改方法: 下载 Bello 皮肤 修改 addon.xml,将版本号从 2.2.0 改为 3.0.0,将依赖的 xbmc.gui 版本从 5.12 改为 5.14 打包成 zip,在 Kodi 中安装 安装后到皮肤设置中选择字体为 Arial 本文原发布于 Medium,迁移至 U.U.UNIT。

2019-08-03 · 1 min · 51 words · camac
iCloud Drive

iCloud Drive 无法上传的解决办法

最近几天在 Mac 上 iCloud Drive 始终有几个文件的状态是"正在上传",联系 Apple 客服也没有什么好的解决办法。 最终的解决办法如下: 方法一: 如果知道哪个文件卡住无法上传,将该文件拖到 iCloud Drive 别的文件夹(如 iCloud Drive 根目录),等其上传完毕再拖回原位置。 方法二: 如果知道哪个文件卡住无法上传,将该文件拖到别的文件夹(iCloud Drive 以外的电脑文件夹如桌面目录),等待片刻再拖回 iCloud Drive 原位置。 本文原发布于 Medium,迁移至 U.U.UNIT。

2019-07-30 · 1 min · 27 words · camac