PaperUI 常见问题与最佳实践

这是 PaperUI 系列文章的最后一篇。我们汇总了使用过程中的常见问题,并分享一些搭建 Hugo 博客的最佳实践。 常见问题 Q: 文章不显示? 最常见的原因:日期设为未来日期。 Hugo 默认不渲染未来日期的文章。 解决方法:确保文章 Front Matter 中的 date 是今天或过去的日期。开发时可以用 hugo server -F 预览未来日期的文章。 Q: 首页轮播不显示? 检查以下几点: hugo.toml 中是否配置了 [params.homeCarousel] 轮播图片路径是否正确(相对于 static/ 目录) 图片文件是否真实存在 Q: 侧边栏没有内容? 侧边栏的"随机文章"和"近期文章"需要有足够数量的文章才会显示。建议至少有 3 篇以上的文章。 “分类"和"标签"小部件需要文章配置了对应的 categories 和 tags 才会出现。 Q: 搜索功能不工作? PaperUI 的搜索依赖 fuse.js,需要确保: [outputs] 中包含 JSON(生成搜索索引) 文章没有被标记为 searchHidden: true 浏览器控制台没有 JS 错误 Q: 修改配置后不生效? Hugo 开发服务器会自动检测配置变更并重载。但如果修改了主题文件或 CSS,建议重启 hugo server。 如果是修改了 baseURL 或 env 等影响输出的配置,需要重新构建。 Q: 如何添加评论系统? PaperUI 没有内置评论系统(与 PaperMod 一致),但可以通过扩展模板添加。 ...

2026-05-21 · 2 min · 364 words · 新墨韬

Python 开发中值得养成的 8 个编码习惯

Python 以简洁优雅著称,但写出真正的 Pythonic 代码需要刻意练习。以下是日常开发中最值得养成的几个习惯。 1. 善用列表推导,但别滥用 列表推导清晰时非常优雅: # 过滤与转换一步到位 active_users = [u.name for u in users if u.is_active] # 构建字典 name_map = {u.id: u.name for u in users} 但超过一层嵌套时,可读性会急剧下降。此时用普通循环更清晰: # 不推荐 result = [x for row in matrix for x in row if x > 0] # 推荐:拆开写 result = [] for row in matrix: for x in row: if x > 0: result.append(x) 2. 用 | 合并字典(Python 3.9+) defaults = {"timeout": 30, "retries": 3} user_config = {"timeout": 60} final = defaults | user_config # {'timeout': 60, 'retries': 3} 右边覆盖左边,语义直观。老版本用 {**a, **b} 也可以,但 | 更可读。 ...

2026-05-20 · 2 min · 253 words · 新墨韬