[{"categories":["draft"],"content":"一个 Hugo 网站的 Giscus 评论系统配置。 配置概览 这是一个 FixIt 主题（v0.2.14+）的 Giscus 评论系统配置。 关键参数分析 # 基础配置 enable = false # 是否启用 Giscus，当前为关闭状态 repo = \"jiang1bo/jiang1bo\" # GitHub 仓库：用户 jiang1bo 下的 jiang1bo 仓库 repoId = \"xxxxxOQgMS0A\" # GitHub 仓库的唯一 ID category = \"General\" # 讨论分类名称 categoryId = \"xxxxxwDOQgMS0M4CzSCX\" # 分类的唯一 ID # 映射设置 mapping = \"pathname\" # 页面映射方式：使用路径名作为标识 origin = \"https://giscus.app\" # Giscus 客户端源（FixIt 0.3.7+ 支持自托管） # 功能开关 strict = \"0\" # 严格模式：0=不严格，1=严格匹配 reactionsEnabled = \"1\" # 是否启用表情反应：1=启用 emitMetadata = \"0\" # 是否发送元数据：0=不发送 inputPosition = \"bottom\" # 评论框位置：bottom（底部），可选 top（顶部） # 主题配置 lightTheme = \"light\" # 亮色主题名称 darkTheme = \"dark\" # 深色主题名称 lazyLoad = true # 是否懒加载评论组件 工作原理 1. Giscus 是什么？ 基于 GitHub Discussions 的评论系统 开源、免费、无需数据库 使用 GitHub 账号登录评论 2. 配置步骤分析 你需要已经完成了以下步骤： 创建了 GitHub 仓库 jiang1bo/jiang1bo 启用了 GitHub Discussions 功能 安装了 Giscus App 到仓库 获取了 repoId 和 categoryId 3. 如何获取这些 ID？ 方法一：通过 Giscus 官网 https://giscus.app/ 输入仓库 URL 后会自动生成配置 方法二：通过 GitHub API # 获取 repoId curl -H \"Authorization: token YOUR_TOKEN\" \\ https://api.github.com/repos/jiang1bo/jiang1bo # 获取 categoryId curl -H \"Authorization: token YOUR_TOKEN\" \\ https://api.github.com/repos/jiang1bo/jiang1bo/discussions/categories 优化建议 1. 启用配置 enable = true # 改为 true 以启用评论系统 2. 添加语言配置 lang = \"zh-CN\" # 设置评论界面语言 3. 优化加载策略 lazyLoad = true # 已启用，减少首屏加载时间 4. 安全配置建议 # 如果你有自部署的 Giscus，可以修改 origin origin = \"https://giscus.yourdomain.com\" # 自托管地址 5. 完整的优化配置示例 [params.page.comment.giscus] enable = true repo = \"jiang1bo/jiang1bo\" repoId = \"xxxxDOQgMS0A\" category = \"Announcements\" # 可以创建专用分类 categoryId = \"DIC_xxxxgMS0M4CzSCX\" mapping = \"pathname\" origin = \"https://giscus.app\" strict = \"0\" term = \"\" # 搜索关键词，留空使用默认 reactionsEnabled = \"1\" emitMetadata = \"0\" inputPosition = \"bottom\" lightTheme = \"light\" # 可选：light、light_high_contrast、light_protanopia darkTheme = \"dark\" # 可选：dark、dark_high_contrast、dark_protanopia darkDimmed = \"dark_dimmed\" # 可添加更多主题 lazyLoad = true lang = \"zh-CN\" # 设置语言 故障排查 如果评论不显示，检查以下内容： 仓库权限：确保仓库是公开的 Discussions 已启用：仓库 Settings → Features → Discussions Giscus App 已安装：仓库 Settings → Integrations → Giscus 分类存在：确保 “General” 分类在 Discussions 中存在 性能影响 优点： ✅ 无数据库依赖 ✅ 使用 GitHub 账号，无需注册 ✅ 支持 Markdown 格式 ✅ 响应式设计 推荐设置 对于个人博客，建议： 保留懒加载：lazyLoad = true 启用表情反应：reactionsEnabled = \"1\" 输入框在底部：inputPosition = \"bottom\" 使用 pathname 映射：mapping = \"pathname\" 只需要将 enable 改为 true 即可使用。 ","date":"2025-12-02","objectID":"/jiang1bo/posts/5e56024/:0:0","tags":["draft"],"title":"通过giscus为博客添加评论系统（Hugo+fixlt+giscus）","uri":"/jiang1bo/posts/5e56024/"},{"categories":["markdown"],"content":"Hugo 支持使用 Markdown 语法来格式化文本、创建列表等。本页将展示一些最常用的 Markdown 语法示例。 Markdown 示例 文本样式 样式 语法 示例 输出 粗体 **粗体文本** **粗体文本** 粗体文本 斜体 *斜体文本* *斜体文本* 斜体文本 删除线 ~~删除线文本~~ ~~删除线文本~~ 删除线文本 下标 \u003csub\u003e\u003c/sub\u003e 这是\u003csub\u003e下标\u003c/sub\u003e文本 这是下标文本 上标 \u003csup\u003e\u003c/sup\u003e 这是\u003csup\u003e上标\u003c/sup\u003e文本 这是上标文本 引用块 带出处的引用 不要通过共享内存来通信，而要通过通信来共享内存。 — Rob Pike1 Markdown \u003e 不要通过共享内存来通信，而要通过通信来共享内存。\u003cbr\u003e \u003e — \u003ccite\u003eRob Pike[^1]\u003c/cite\u003e [^1]: 上述引用摘自 Rob Pike 在 2015 年 11 月 18 日 Gopherfest 上的[演讲](https://www.youtube.com/watch?v=PAAkCSZUG1c)。 提示框 提示框是基于引用块语法的 Markdown 扩展，可用于强调关键信息。 支持 GitHub 风格的提示框。 请确保您使用的是最新版本的 Hextra 和 Hugo v0.146.0 或更高版本。 注意 即使用户只是浏览内容，也应该知道的有用信息。 提示 帮助用户更高效或更轻松完成任务的建议。 重要 用户需要了解的关键信息，以实现他们的目标。 警告 需要用户立即关注的紧急信息，以避免出现问题。 小心 关于某些操作可能带来风险或负面结果的警告。 \u003e [!NOTE] \u003e 即使用户只是浏览内容，也应该知道的有用信息。 \u003e [!TIP] \u003e 帮助用户更高效或更轻松完成任务的建议。 \u003e [!IMPORTANT] \u003e 用户需要了解的关键信息，以实现他们的目标。 \u003e [!WARNING] \u003e 需要用户立即关注的紧急信息，以避免出现问题。 \u003e [!CAUTION] \u003e 关于某些操作可能带来风险或负面结果的警告。 表格 表格不是 Markdown 核心规范的一部分，但 Hugo 原生支持它们。 姓名 年龄 张三 27 李四 23 Markdown | 姓名 | 年龄 | | :--- | :--- | | 张三 | 27 | | 李四 | 23 | 表格内的行内 Markdown 斜体 粗体 代码 斜体 粗体 代码 Markdown | 斜体 | 粗体 | 代码 | | :----- | :------- | :----- | | _斜体_ | **粗体** | `代码` | 代码块 语法高亮 列表 有序列表 第一项 第二项 第三项 Markdown 1. 第一项 2. 第二项 3. 第三项 无序列表 列表项 另一个项 再一个项 Markdown - 列表项 - 另一个项 - 再一个项 嵌套列表 水果 苹果 橙子 香蕉 乳制品 牛奶 奶酪 Markdown - 水果 - 苹果 - 橙子 - 香蕉 - 乳制品 - 牛奶 - 奶酪 任务列表 编写文档 代码审查 部署更改 Markdown - [x] 编写文档 - [ ] 代码审查 - [ ] 部署更改 图片 ![风景](https://picsum.photos/800/600) 带标题： Lorem Picsum Markdown ![风景](https://picsum.photos/800/600 \"Lorem Picsum\") 如需更高级的功能，请使用 Hugo 内置的 Figure 短代码。 配置 Hugo 使用 Goldmark 进行 Markdown 解析。 Markdown 渲染可以在 hugo.yaml 中的 markup.goldmark 下配置。 以下是 Hextra 的默认配置： hugo.yaml markup: goldmark: renderer: unsafe: true highlight: noClasses: false 更多配置选项，请参阅 Hugo 文档中的 配置 Markup。 学习资源 Markdown 指南 Markdown 速查表 Markdown 教程 Markdown 参考 ","date":"2025-11-29","objectID":"/jiang1bo/posts/7090144/:0:0","tags":["markdown"],"title":"Markdown 语法示例","uri":"/jiang1bo/posts/7090144/"},{"categories":["Golang"],"content":"Go 语言全面解析：发展史、特点、学习路线与未来趋势 📜 Go 语言发展史 起源与诞生（2007-2009） 2007年：Google 的 Robert Griesemer、Rob Pike 和 Ken Thompson 开始设计 Go 语言 设计目标：解决 C++ 的编译速度慢、依赖管理复杂、并发编程困难等问题 2009年11月：Go 语言正式开源发布，版本号为 Go 1 关键里程碑 2009 :: 开源发布，初版编译器 2012 :: Go 1.0 发布，承诺向后兼容 2015 :: Go 1.5 实现自举（用 Go 编译 Go） 2018 :: Go 1.11 引入 Go Modules 2020 :: Go 1.14 生产环境就绪的 Goroutine 异步抢占 2022 :: Go 1.18 正式支持泛型 2023 :: Go 1.21 增强泛型和工具链 ⚡ Go 语言核心特点 1. 简洁易学的语法 // 经典的 \"Hello, World!\" package main import \"fmt\" func main() { fmt.Println(\"Hello, World!\") } // 变量声明简洁 name := \"Go\" // 类型推断 var count int = 10 // 显式类型 const Version = \"1.21\" // 常量 2. 强大的并发模型 // Goroutine - 轻量级线程 go func() { fmt.Println(\"Running in goroutine\") }() // Channel - 通信共享内存 ch := make(chan int) go func() { ch \u003c- 42 }() value := \u003c-ch // Select - 多路复用 select { case msg := \u003c-ch1: fmt.Println(msg) case ch2 \u003c- data: fmt.Println(\"sent\") case \u003c-time.After(time.Second): fmt.Println(\"timeout\") } 3. 卓越的性能 编译型语言：直接编译为机器码 垃圾回收：低延迟的并发垃圾收集器 编译速度快：依赖分析精准，增量编译 4. 丰富的标准库 import ( \"net/http\" // HTTP 服务器和客户端 \"encoding/json\" // JSON 处理 \"database/sql\" // 数据库接口 \"crypto\" // 加密算法 \"testing\" // 测试框架 ) 5. 跨平台支持 # 交叉编译示例 GOOS=linux GOARCH=amd64 go build # Linux 64位 GOOS=windows go build # Windows GOOS=darwin go build # macOS 6. 工具链完善 go mod init # 模块初始化 go test # 运行测试 go fmt # 代码格式化 go vet # 静态分析 go doc # 文档生成 🗺️ Go 语言学习路线 阶段 1：基础入门（1-2周） // 学习重点：语法基础、数据类型、控制流 package main import \"fmt\" func main() { // 基本数据类型 var integer int = 42 floating := 3.14 message := \"Hello, Go!\" // 控制结构 if integer \u003e 0 { for i := 0; i \u003c 5; i++ { fmt.Println(i) } } // 函数定义 result := add(10, 20) fmt.Println(result) } func add(a, b int) int { return a + b } 学习资源： A Tour of Go 《Go 语言编程》 阶段 2：核心概念（2-3周） // 学习重点：结构体、接口、错误处理、并发 package main import ( \"errors\" \"fmt\" \"time\" ) // 结构体和接口 type User struct { Name string Age int } type Speaker interface { Speak() string } func (u User) Speak() string { return fmt.Sprintf(\"Hi, I'm %s\", u.Name) } // 错误处理 func divide(a, b float64) (float64, error) { if b == 0 { return 0, errors.New(\"division by zero\") } return a / b, nil } // 并发实践 func worker(id int, jobs \u003c-chan int, results chan\u003c- int) { for job := range jobs { fmt.Printf(\"Worker %d processing job %d\\n\", id, job) time.Sleep(time.Second) results \u003c- job * 2 } } 实践项目： 命令行工具 简单的 Web API 并发文件处理器 阶段 3：进阶技能（3-4周） // 学习重点：标准库、测试、性能优化 package main import ( \"encoding/json\" \"net/http\" \"testing\" ) // HTTP 服务器 func helloHandler(w http.ResponseWriter, r *http.Request) { response := map[string]string{\"message\": \"Hello, World!\"} json.NewEncoder(w).Encode(response) } // 单元测试 func TestAdd(t *testing.T) { result := add(2, 3) if result != 5 { t.Errorf(\"Expected 5, got %d\", result) } } // 性能分析 func BenchmarkProcess(b *testing.B) { for i := 0; i \u003c b.N; i++ { processLargeData() } } 学习重点： net/http 包深度使用 数据库操作（SQL、NoSQL） 测试和性能分析 中间件和认证 阶段 4：实战项目（4-6周） 推荐项目： RESTful API 服务 微服务架构 CLI 工具开发 分布式系统组件 🚀 Go 语言未来趋势 1. 云原生统治地位 // Kubernetes、Docker 等云原生工具大量使用 Go package main import ( \"context\" \"fmt\" metav1 \"k8s.io/apimachinery/pkg/apis/meta/v1\" \"k8s.io/client-go/kubernetes\" ) 趋势：在容器编排、服务网格、云基础设施中持续增长 2. 微服务和 API 开发 // 使用 Go 构建高效的微服务 package main import ( \"github.com/gin-gonic/gin\" \"go.uber.org/zap\" ) func main() { r := gin.Default() r.GET(\"/api/users\", getUsers) r.Run(\":8080\") } 3. 区块链和加密货币 以太坊：Geth 客户端使用 Go Hyperledger Fabric：主要用 Go 开发 加密货币工具：钱包、交易所后端 4. 人工智能和机器学习 // 虽然 Python 主导，但 Go 在基础设施层有优势 import ( \"github.com/sjwhitworth/golearn/base\" \"github.com/sjwhitworth/golearn/trees\" ) 5. 边缘计算和 IoT 小型二进制文件适合资源受限环境 跨平台编译支持多种架构 📊 就业市场分析 热门岗位 后端开发工程师（微服务、API） 云原生工程师（Kubernetes、Docker） 基础设施工程师（DevOps、SRE） 区块链开发工程师 系统编程工程师 薪资水平（2024年数据） 经验水平 平均年薪（美国） 平均年薪（中国） 初级（0-2年） $90,000 - $120,000 ¥200,000 - ¥350,000 中级（3-5年） $120,000 - $160,000 ¥350,000 - ¥600,000 高级（5+年） $160,000 - $220,000+ ¥600,000 - ¥1,000,000+ 🛠️ 推荐学习资源 官方资源 Go 官方文档 A Tour of Go Go by Example 书籍推荐 《The Go Programming Language》（Go 语言圣经） 《Go in Action》 《Concurrency in Go》 实战平台 Exercism Go Track LeetCode Go 专题 Go 官方博客实例 💡 学习建议 最佳实践 边学边练：每个概念都要写代码验证 阅读源码：学习标准库和优秀开源项目 参与社","date":"2025-11-29","objectID":"/jiang1bo/posts/b6a1b1e/:0:0","tags":["Golang"],"title":"Go 语言全面解析：发展史、特点、学习路线与未来趋势","uri":"/jiang1bo/posts/b6a1b1e/"}]