[{"data":1,"prerenderedAt":661},["ShallowReactive",2],{"post:\u002Fposts\u002Fmarkdown\u002Fcollapse":3,"posts:catalog":389},{"id":4,"title":5,"aiSummary":6,"audio":7,"body":8,"categories":372,"cover":7,"description":374,"extension":24,"meta":375,"navigation":6,"path":376,"pin":377,"publish":378,"seo":379,"series":373,"seriesOrder":70,"stem":380,"summary":7,"summarySource":381,"tags":382,"theme":384,"update":385,"wip":386,"wordCount":387,"__hash__":388},"posts\u002Fposts\u002F1.markdown\u002F05.collapse.md","在正文中使用折叠内容",true,null,{"type":9,"value":10,"toc":361},"minimark",[11,15,19,74,112,115,129,156,169,172,283,286,294,343,357],[12,13,14],"p",{},"折叠块适合放补充说明、较长的代码或可选阅读内容。标题始终可见，点击整行展开；每个折叠块分别记录自己的状态。",[16,17,18],"h2",{"id":18},"默认收起",[20,21,26],"pre",{"className":22,"code":23,"language":24,"meta":25,"style":25},"language-md shiki shiki-themes catppuccin-mocha catppuccin-latte","::collapse{title=\"展开说明\"}\n\n这里可以继续写 **Markdown**、列表和链接。\n\n::\n","md","",[27,28,29,38,44,63,68],"code",{"__ignoreMap":25},[30,31,34],"span",{"class":32,"line":33},"line",1,[30,35,37],{"class":36},"szT_X","::collapse{title=\"展开说明\"}\n",[30,39,41],{"class":32,"line":40},2,[30,42,43],{"emptyLinePlaceholder":6},"\n",[30,45,47,50,54,58,60],{"class":32,"line":46},3,[30,48,49],{"class":36},"这里可以继续写 ",[30,51,53],{"class":52},"sxk1D","**",[30,55,57],{"class":56},"sIG05","Markdown",[30,59,53],{"class":52},[30,61,62],{"class":36},"、列表和链接。\n",[30,64,66],{"class":32,"line":65},4,[30,67,43],{"emptyLinePlaceholder":6},[30,69,71],{"class":32,"line":70},5,[30,72,73],{"class":36},"::\n",[75,76,78,90,100,104],"collapse",{"title":77},"展开说明",[12,79,49,80,83,84,89],{},[81,82,57],"strong",{},"、列表和",[85,86,88],"a",{"href":87},"\u002Fabout","链接","。",[91,92,93,97],"ul",{},[94,95,96],"li",{},"适合放不影响主线阅读的补充信息。",[94,98,99],{},"收起后，内部链接不会进入 Tab 焦点顺序。",[101,102,103],"h3",{"id":103},"折叠里的标题",[12,105,106,107,111],{},"点击目录中的这个标题，或",[85,108,110],{"href":109},"#%E6%8A%98%E5%8F%A0%E9%87%8C%E7%9A%84%E6%A0%87%E9%A2%98","通过锚点访问本节","，都会先展开所属折叠块再定位。直接打开带锚点的文章地址也适用。",[16,113,114],{"id":114},"初始展开",[12,116,117,120,121,124,125,128],{},[27,118,119],{},":open=\"true\""," 表示首次显示时展开，之后仍可以自由收起。省略 ",[27,122,123],{},"open"," 或填写 ",[27,126,127],{},":open=\"false\""," 都会初始收起。",[20,130,132],{"className":22,"code":131,"language":24,"meta":25,"style":25},"::collapse{title=\"使用前请阅读\" :open=\"true\"}\n\n这段内容在首次显示时就是展开的。\n\n::\n",[27,133,134,139,143,148,152],{"__ignoreMap":25},[30,135,136],{"class":32,"line":33},[30,137,138],{"class":36},"::collapse{title=\"使用前请阅读\" :open=\"true\"}\n",[30,140,141],{"class":32,"line":40},[30,142,43],{"emptyLinePlaceholder":6},[30,144,145],{"class":32,"line":46},[30,146,147],{"class":36},"这段内容在首次显示时就是展开的。\n",[30,149,150],{"class":32,"line":65},[30,151,43],{"emptyLinePlaceholder":6},[30,153,154],{"class":32,"line":70},[30,155,73],{"class":36},[75,157,160,163],{"title":158,":open":159},"使用前请阅读","true",[12,161,162],{},"这段内容在首次显示时就是展开的。用 Tab 聚焦标题，按 Enter 或 Space 切换状态。",[164,165,166],"blockquote",{},[12,167,168],{},"折叠不会删除正文，也不会改变标题的目录层级。",[16,170,171],{"id":171},"代码和表格",[75,173,175,231,280],{"title":174},"查看完整的配置示例",[20,176,180],{"className":177,"code":178,"language":179,"meta":25,"style":25},"language-ts shiki shiki-themes catppuccin-mocha catppuccin-latte","const options = {\n  title: '补充说明',\n  open: false,\n}\n","ts",[27,181,182,198,213,226],{"__ignoreMap":25},[30,183,184,188,191,195],{"class":32,"line":33},[30,185,187],{"class":186},"sDkzg","const",[30,189,190],{"class":36}," options ",[30,192,194],{"class":193},"siJSA","=",[30,196,197],{"class":52}," {\n",[30,199,200,203,206,210],{"class":32,"line":40},[30,201,202],{"class":36},"  title",[30,204,205],{"class":193},":",[30,207,209],{"class":208},"ssZzq"," '补充说明'",[30,211,212],{"class":52},",\n",[30,214,215,218,220,224],{"class":32,"line":46},[30,216,217],{"class":36},"  open",[30,219,205],{"class":193},[30,221,223],{"class":222},"s_wmW"," false",[30,225,212],{"class":52},[30,227,228],{"class":32,"line":65},[30,229,230],{"class":52},"}\n",[232,233,234,250],"table",{},[235,236,237],"thead",{},[238,239,240,244,247],"tr",{},[241,242,243],"th",{},"属性",[241,245,246],{},"默认值",[241,248,249],{},"用途",[251,252,253,266],"tbody",{},[238,254,255,261,263],{},[256,257,258],"td",{},[27,259,260],{},"title",[256,262,77],{},[256,264,265],{},"触发按钮显示的文字",[238,267,268,272,277],{},[256,269,270],{},[27,271,123],{},[256,273,274],{},[27,275,276],{},"false",[256,278,279],{},"首次显示时是否展开",[12,281,282],{},"折叠内部沿用文章的代码、表格、图片和排版样式。窄屏下，较长的代码在代码块内横向滚动。",[16,284,285],{"id":285},"嵌套折叠",[12,287,288,289,293],{},"外层使用三个冒号，内层使用两个冒号，并各自关闭。点击",[85,290,292],{"href":291},"#%E5%B5%8C%E5%A5%97%E7%9A%84%E7%9B%AE%E6%A0%87","嵌套的目标","，可以一次展开沿途的两层折叠。",[20,295,297],{"className":22,"code":296,"language":24,"meta":25,"style":25},":::collapse{title=\"外层说明\"}\n\n::collapse{title=\"内层说明\"}\n\n这里是内层内容。\n\n::\n\n:::\n",[27,298,299,304,308,313,317,322,327,332,337],{"__ignoreMap":25},[30,300,301],{"class":32,"line":33},[30,302,303],{"class":36},":::collapse{title=\"外层说明\"}\n",[30,305,306],{"class":32,"line":40},[30,307,43],{"emptyLinePlaceholder":6},[30,309,310],{"class":32,"line":46},[30,311,312],{"class":36},"::collapse{title=\"内层说明\"}\n",[30,314,315],{"class":32,"line":65},[30,316,43],{"emptyLinePlaceholder":6},[30,318,319],{"class":32,"line":70},[30,320,321],{"class":36},"这里是内层内容。\n",[30,323,325],{"class":32,"line":324},6,[30,326,43],{"emptyLinePlaceholder":6},[30,328,330],{"class":32,"line":329},7,[30,331,73],{"class":36},[30,333,335],{"class":32,"line":334},8,[30,336,43],{"emptyLinePlaceholder":6},[30,338,340],{"class":32,"line":339},9,[30,341,342],{"class":36},":::\n",[75,344,346,349],{"title":345},"外层说明",[12,347,348],{},"外层和内层独立控制。收起外层后，再次展开会保留内层的状态。",[75,350,352,354],{"title":351},"内层说明",[101,353,292],{"id":292},[12,355,356],{},"这段内容位于两层折叠之内。通过目录或正文链接访问时，两层都会展开；其他折叠块的状态保持不变。",[358,359,360],"style",{},"html pre.shiki code .szT_X, html code.shiki .szT_X{--shiki-default:#CDD6F4;--shiki-light:#4C4F69}html pre.shiki code .sxk1D, html code.shiki .sxk1D{--shiki-default:#9399B2;--shiki-light:#7C7F93}html pre.shiki code .sIG05, html code.shiki .sIG05{--shiki-default:#F38BA8;--shiki-default-font-weight:bold;--shiki-light:#D20F39;--shiki-light-font-weight:bold}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html pre.shiki code .sDkzg, html code.shiki .sDkzg{--shiki-default:#CBA6F7;--shiki-light:#8839EF}html pre.shiki code .siJSA, html code.shiki .siJSA{--shiki-default:#94E2D5;--shiki-light:#179299}html pre.shiki code .ssZzq, html code.shiki .ssZzq{--shiki-default:#A6E3A1;--shiki-light:#40A02B}html pre.shiki code .s_wmW, html code.shiki .s_wmW{--shiki-default:#FAB387;--shiki-light:#FE640B}",{"title":25,"searchDepth":362,"depth":70,"links":363},12,[364,367,368,369],{"id":18,"depth":40,"text":18,"children":365},[366],{"id":103,"depth":46,"text":103},{"id":114,"depth":40,"text":114},{"id":171,"depth":40,"text":171},{"id":285,"depth":40,"text":285,"children":370},[371],{"id":292,"depth":46,"text":292},[373],"文章示例","本文说明正文中折叠内容的使用方法：折叠块适合放置补充说明、较长代码或可选阅读内容，标题始终可见，点击整行展开，各折叠块独立记录状态。支持默认收起，也可通过 open 属性设置初始展开。折叠内部可包含 Markdown、列表、代码、表格、图片等，目录或锚点访问内部标题会先展开所属折叠块。还支持嵌套折叠，外层使用三个冒号、内层使用两个冒号，内外层独立控制；访问嵌套目标可一次展开沿途两层。",{},"\u002Fposts\u002Fmarkdown\u002Fcollapse",0,"1970-01-01",{"title":5,"description":374},"posts\u002F1.markdown\u002F05.collapse","ai",[57,383],"MDC","#a369ff","2026-09-26",false,428,"iCZsNu-qUlmmRCm38egzBSeBFSqHCEBuM28gDNr0KuA",[390,406,420,428,441,456,469,481,491,504,516,527,539,550,563,574,583,597,609,621,624,633,643,652],{"path":391,"stem":392,"title":393,"description":394,"wordCount":395,"publish":396,"update":396,"cover":397,"tags":398,"categories":404,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2026\u002Fwsl3","posts\u002F2026\u002Fwsl3","WSL 3 正式发布~","微软发布 WSL 3.0.1，正式提供稳定的 WSL 容器功能，无需 Docker 即可原生创建和运行 Linux 容器。该版本改进包括跨操作系统文件访问性能最高提升至原来的两倍（采用 virtiofs），以及网络模式 Consomme 优化端口映射和 VPN 兼容性。文章介绍了 WSL 安装、从 WSL 2 升级的方法，并示例使用 wslc 运行 Ubuntu、Nginx 容器及构建自定义镜像。",1038,"2026-10-01","\u002Fimages\u002F2026\u002Fwsl3\u002Fwsl3.png",[399,400,401,402,403],"WSL","Linux","Windows","Docker","容器",[405],"工具",{"path":407,"stem":408,"title":409,"description":410,"wordCount":411,"publish":412,"update":7,"cover":413,"tags":414,"categories":419,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2026\u002Fcodex-prompt","posts\u002F2026\u002Fcodex-prompt","Codex 的 GPT-6 Sol 提示词泄露了？","文章围绕网传Codex GPT-6 Sol提示词泄露展开，选取部分内容解读。提示词要求像同事一样交流、降低认知负担，用具体描述并说明改动、原因、测试与风险；明确禁止使用AI套话；通过高质量和低质量示例约束输出。摘要表还涵盖沟通、执行、权限、长期任务、工具与界面、质量与证据等核心要求。",1073,"2026-09-25","\u002Fimages\u002F2026\u002Fcodex-prompt\u002Fcodex-prompt.png",[415,416,417,418],"AI","Codex","提示词","Agent",[415],{"path":421,"stem":422,"title":423,"description":424,"wordCount":425,"publish":412,"update":7,"cover":7,"tags":426,"categories":427,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2026\u002Fcodex-prompt-translation","posts\u002F2026\u002Fcodex-prompt-translation","Codex GPT-6 Sol 提示词完整中文译文","第三方仓库收录的 Codex GPT-6 Sol 提示词中文译文，按原顺序保留全部 54 个模板。",34261,[415,416,417,418],[415],{"path":429,"stem":430,"title":431,"description":432,"wordCount":433,"publish":434,"update":435,"cover":436,"tags":437,"categories":440,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2026\u002Fjev","posts\u002F2026\u002Fjev","JEV 是好模型吗？","本文评析JEV模型，认为其并非通用大模型，而是专做预定义判断的System One模型，通过选择、评分、是非题返回结构化结果，不生成文本。其快与便宜源于非自回归并行输出，但“零幻觉”仅指输出结构合规，判断仍可能出错。该思路适用于答案范围明确、需频繁调用的场景，也可用普通大模型近似实现，核心在于把任务收窄为单一判断。",2429,"2026-09-21","2026-09-23","\u002Fimages\u002F2026\u002Fjev\u002Fjev.webp",[415,438,439],"JEV","LLM",[415],{"path":442,"stem":443,"title":444,"description":445,"wordCount":446,"publish":447,"update":448,"cover":7,"tags":449,"categories":454,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002Fblog\u002Foverview","posts\u002F2.blog\u002F01.overview","新版博客已上线！","新版博客“mukuchi”上线，具备文章写作、标签分类、全文搜索、阅读目录、代码复制、图片缩放、深浅主题切换及移动端适配等功能。内容以Markdown和MDC编写，后台支持草稿、上传、预览与发布，并可生成AI摘要、朗读和双人播客。技术栈采用Nuxt、Vue、UnoCSS、Nuxt Content及Cloudflare服务，文章存于GitHub仓库。后续计划增加工具、重做账号系统并改为站内评论。",1059,"2026-09-14","2026-09-22",[450,451,452,453],"博客","Nuxt","Vue","Cloudflare",[455],"建站记录",{"path":457,"stem":458,"title":459,"description":460,"wordCount":461,"publish":462,"update":7,"cover":7,"tags":463,"categories":467,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2026\u002Fgame-dlss5","posts\u002F2026\u002Fgame-dlss5","哦，我的上帝！这是真实的！ —— DLSS 5 渲染实测","文章以《崩坏3rd》和《崩坏：星穹铁道》为例，展示DLSS 5渲染在多个场景下开启与关闭的画面对比。教程说明通过XXMI-Launcher注入ReShade的d3d12.dll，启动游戏后按Home键配置RenoDX DLSS参数，并提示下线前需手动关闭。文末附相关工具与网盘资源下载方式。",390,"2026-09-08",[464,465,466],"DLSS5","mod","xxmi",[468],"游戏",{"path":470,"stem":471,"title":472,"description":473,"wordCount":474,"publish":475,"update":476,"cover":7,"tags":477,"categories":480,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2026\u002Fmilanote-api","posts\u002F2026\u002Fmilanote-api","Milanote API","本文介绍了作者开发的 Milanote API 项目，用于在外部使用 Milanote 分享 Board 的内容。项目已完成根据分享链接获取完整 API 数据、解析卡片内容与布局、构建 Playground 在线可视化示例、部署至 Cloudflare Workers 并提供字段筛选功能；待实现免密钥在线解析。文章还说明了获取 Milanote 只读分享链接的步骤，并展示了 Playground 界面效果。",234,"2026-07-22","2026-07-23",[478,479],"Milanote","API",[405],{"path":482,"stem":483,"title":484,"description":485,"wordCount":486,"publish":487,"update":7,"cover":488,"tags":489,"categories":490,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2026\u002Fduolingo","posts\u002F2026\u002Fduolingo","今天你 Duolingo 了吗？","本文介绍使用 Cloudflare Workers 构建 Duolingo 用户信息接口，解决跨域与缓存问题。接口支持按环境变量查询固定用户，返回昵称、头像、经验及连续学习天数，并提供搜索和其他用户详情接口。通过 KV 缓存和定时任务减少上游请求，支持带鉴权的手动刷新，并包含超时和错误处理。",1581,"2026-07-14","\u002Fimages\u002F2026\u002Fduolingo\u002Fduolingo.png",[479,453],[405],{"path":492,"stem":493,"title":494,"description":495,"wordCount":496,"publish":497,"update":7,"cover":7,"tags":498,"categories":503,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002Fblender","posts\u002Fblender\u002Findex","Blender 专题","本文介绍Blender这一免费开源3D建模软件，涵盖建模、动画、渲染、视频剪辑等功能，适合从入门到高级开发。文档提供官网地址；教程部分包含动画大师课VV purple、角色建模课Zimon3D，并附B站链接；素材推荐BlenderKit官方素材库、Sketchfab及模之屋等免费资源平台。",158,"2026-06-18",[499,500,501,502],"Blender","3D","建模","动画",[499],{"path":505,"stem":506,"title":507,"description":508,"wordCount":509,"publish":497,"update":7,"cover":7,"tags":510,"categories":515,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002Fthreejs","posts\u002Fthreejs\u002Findex","Three.js 专题","本文介绍Three.js作为Web端主流3D图形库，封装WebGL\u002FWebGPU，用于构建3D场景、动画、游戏和数据可视化等。文章汇总官方资源，包括官网、示例、文档、教程、在线编辑器和GitHub仓库。基础使用方面，说明在Vue3中通过TresJS、React中通过React Three Fiber进行组件化开发，并提及GSAP动画库和Blender建模软件。其他资源推荐Three.js Journey系统教程、The Book of Shaders书籍和Kenney免费游戏素材，AI与问题部分尚在完善中。",418,[511,512,513,514],"Three.js","WebGL","WebGPU","Shader",[511],{"path":517,"stem":518,"title":519,"description":520,"wordCount":521,"publish":522,"update":522,"cover":523,"tags":524,"categories":526,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2025\u002Fmagic-js","posts\u002F2025\u002Fmagic-js","你能看懂这些 JavaScript 表达式吗？","本文解析了JavaScript中多个怪异表达式结果的原因，指出其源于IEEE 754浮点数表示、隐式类型转换及同一符号在不同语法环境中的歧义。例如NaN为number、大整数舍入、0.1+0.2不等于0.3、空数组与对象相加、布尔值运算及宽松相等等行为，均可据此解释。建议工程中使用严格相等和明确转换以避免陷阱。",2035,"2025-07-31","\u002Fimages\u002F2025\u002Fmagic-js\u002Fmagic-js.png",[525],"JavaScript",[525],{"path":528,"stem":529,"title":530,"description":531,"wordCount":532,"publish":533,"update":534,"cover":535,"tags":536,"categories":538,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2021\u002Fgit","posts\u002F2021\u002Fgit","Git 笔记","本文介绍Git的安装与基础配置，涵盖用户名邮箱设置及配置作用域优先级；解释工作区、暂存区和本地仓库的工作流；列举git add、commit、branch、switch、log、diff、stash、rm、mv等常用命令；说明查看日志、比较差异、对象关系、搁置改动、忽略文件等操作；并回答删除分支、修改提交信息、合并提交、取消暂存、丢弃改动和删除文件等常见问题。",878,"2021-09-07","2026-05-17","https:\u002F\u002Fgit-scm.com\u002Fimages\u002Flogo@2x.png",[537],"Git",[405],{"path":540,"stem":541,"title":542,"description":543,"wordCount":544,"publish":545,"update":7,"cover":546,"tags":547,"categories":549,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2021\u002Fhexo-editor","posts\u002F2021\u002Fhexo-editor","HexoEditor(适用于Hexo的专用编辑器)","本文介绍了专为Hexo优化的Markdown编辑器HexoEditor。该编辑器预览效果与Hexo生成页面高度相似，支持快速执行Hexo命令。软件开源，可从GitHub获取安装程序及中英文手册。配置包括通用、编辑、Hexo路径设置、渲染主题（支持GitHub和Next）以及图片云存储（如SM.MS、腾讯云等）。还提供右键快捷操作Hexo命令。",587,"2021-03-22","\u002Fimages\u002F2021\u002Fhexo-editor\u002Fhexo-editor.jpg",[405,548],"Hexo",[405],{"path":551,"stem":552,"title":553,"description":554,"wordCount":555,"publish":545,"update":7,"cover":556,"tags":557,"categories":561,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2021\u002Ftomcat-servlet","posts\u002F2021\u002Ftomcat-servlet","Tomcat和Servlet应用配置及部分问题","本文介绍Tomcat与Servlet的配置及常见问题。Tomcat部分涵盖安装、环境变量、启动关闭、乱码与端口占用处理、项目部署及IDEA集成。Servlet部分说明实现方式、生命周期、请求与响应对象、乱码处理、请求转发与重定向，以及Cookie、Session、ServletContext等对象和三大域对象的作用范围。",4196,"\u002Fimages\u002F2021\u002Ftomcat-servlet\u002Ftomcat-servlet.jpg",[558,559,560],"JavaWEb","Tomcat","Servlet",[562],"笔记",{"path":564,"stem":565,"title":566,"description":567,"wordCount":568,"publish":569,"update":7,"cover":570,"tags":571,"categories":573,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2021\u002Fgithub-actions","posts\u002F2021\u002Fgithub-actions","使用Github Action实现全自动部署","本文介绍使用GitHub Action实现Hexo博客全自动部署的流程。需先获取GitHub与Coding的个人访问令牌，创建存放源码的私有仓库，并在站点配置中设置部署仓库地址和令牌。接着在.github\u002Fworkflows目录创建自动部署工作流文件，配置检出、安装Node与Hexo、缓存依赖、生成静态文件和部署步骤。随后更新远程仓库分支，添加.gitignore屏蔽项并推送源码，最后通过Actions查看部署状态。",910,"2021-01-26","\u002Fimages\u002F2021\u002Fgithub-actions\u002Fgithub-actions.jpg",[572],"博客优化",[572],{"path":575,"stem":576,"title":577,"description":578,"wordCount":579,"publish":569,"update":7,"cover":580,"tags":581,"categories":582,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2021\u002Fhexo-auto-open-editor","posts\u002F2021\u002Fhexo-auto-open-editor","Hexo添加文章时自动打开编辑器","本文介绍Hexo新建文章后自动打开编辑器的方法。通过监听Hexo的new事件并在scripts目录下添加脚本，利用child_process.exec执行系统命令，Windows使用start、macOS使用open -a启动指定编辑器并打开新文章路径。用户需替换脚本中的编辑器绝对地址，保存后执行hexo new即可自动打开对应文件。",269,"\u002Fimages\u002F2021\u002Fhexo-auto-open-editor\u002Fhexo-auto-open-editor.webp",[572],[572],{"path":584,"stem":585,"title":586,"description":587,"wordCount":588,"publish":589,"update":7,"cover":590,"tags":591,"categories":596,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2021\u002Fhttp-canary-ca","posts\u002F2021\u002Fhttp-canary-ca","解决部分安卓11HttpCanary无法安装证书及其他诸多问题","本文分享安卓11下HttpCanary证书安装失败等问题的解决方法，需root或虚拟机。MIUI系统点击安装根证书无反应时，将指定缓存路径的HttpCanary.pem复制为HttpCanary.jks并重启应用，再以root权限安装到系统；无效则先导出带.0证书再安装。抓https失败或提示证书不可信，可安装Xposed框架和JustTrustMe插件关闭SSL认证。资源可从酷安或应用商店获取，免费版与付费版主要区别为插件支持。",506,"2021-01-16","\u002Fimages\u002F2021\u002Fhttp-canary-ca\u002Fhttp-canary-ca.png",[592,593,594,595],"Android","HttpCanary","抓包","问题",[594],{"path":598,"stem":599,"title":600,"description":601,"wordCount":602,"publish":603,"update":7,"cover":604,"tags":605,"categories":608,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2020\u002Fmysql-basics","posts\u002F2020\u002Fmysql-basics","MySQL 基础","本文介绍MySQL关系型数据库管理系统基础知识，包括数据库、数据库管理系统、数据库系统和数据库应用系统的概念，及其数据结构化、共享性高、冗余度低、独立性强和统一管理等特点；简述数据库的创建、查看、打开、修改和删除操作，以及数据表的创建、修改、删除和表数据的添加、更新、删除方法，并提及图形化管理工具。",1825,"2020-06-05","\u002Fimages\u002F2020\u002Fmysql-basics\u002Fmysql-basics.png",[606,607],"mysql","数据库",[562],{"path":610,"stem":611,"title":612,"description":613,"wordCount":614,"publish":615,"update":7,"cover":616,"tags":617,"categories":620,"series":7,"seriesOrder":7,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002F2020\u002Fpython-tkinter","posts\u002F2020\u002Fpython-tkinter","Python图形用户界面(Tkinter)","本文简介Python常用GUI库，重点说明Tkinter的标准控件、共同属性及pack、grid、place三种几何布局管理器。使用Tkinter需导入模块、创建控件、添加交互并编写函数、进入主事件循环。文中以简单登录界面为例，演示标签、输入框、按钮的放置，以及为按钮设置回调函数进行输入校验和登录提示。",965,"2020-05-25","\u002Fimages\u002F2020\u002Fpython-tkinter\u002Fpython-tkinter.jpg",[618,619],"Python","GUI",[562],{"path":376,"stem":380,"title":5,"description":374,"wordCount":387,"publish":378,"update":385,"cover":7,"tags":622,"categories":623,"series":373,"seriesOrder":70,"pin":377,"wip":386,"theme":384},[57,383],[373],{"path":625,"stem":626,"title":627,"description":628,"wordCount":629,"publish":378,"update":435,"cover":7,"tags":630,"categories":632,"series":373,"seriesOrder":65,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002Fmarkdown\u002Fvideo","posts\u002F1.markdown\u002F04.video","在文章中嵌入视频","本文介绍在文章与关于页中嵌入Bilibili和YouTube视频的MDC组件用法，无需API密钥或手写iframe。播放器按16:9自适应宽度，接近可视区域时加载，默认不自动播放。Bilibili可通过BV号或视频链接指定分P与开始时间，YouTube可通过11位视频ID或链接指定开始时间，标题由title参数设置。组件会过滤分享追踪参数与自动播放设置，无效参数仅显示提示，不影响正文。",597,[57,383,631],"视频",[373],{"path":634,"stem":635,"title":636,"description":637,"wordCount":638,"publish":378,"update":639,"cover":7,"tags":640,"categories":642,"series":373,"seriesOrder":46,"pin":377,"wip":6,"theme":384},"\u002Fposts\u002Fmarkdown\u002Fmarkdown-extended","posts\u002F1.markdown\u002F03.markdown-extended","Markdown 扩展功能","本文介绍Markdown扩展功能。已实现多风格提醒框，支持GitHub、Obsidian、VitePress、Docusaurus四种主题及折叠嵌套，可通过参数或全站配置设置；同时提供GitHub仓库卡片、Bilibili\u002FYouTube视频卡片与正文图片预览。图片画廊与作品集仍在计划中，当前采用标准图片语法配合图注和链接。GitHub仓库卡片在构建时获取公开仓库数据快照，不可用字段显示短横线。后续将实现图片画廊与作品集。",1822,"2026-09-27",[57,383,641],"功能规划",[373],{"path":644,"stem":645,"title":646,"description":647,"wordCount":648,"publish":378,"update":639,"cover":7,"tags":649,"categories":651,"series":373,"seriesOrder":40,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002Fmarkdown\u002Fmdc-tutorial","posts\u002F1.markdown\u002F02.mdc-tutorial","MDC 教程","本文介绍 MDC（Markdown Components）在 Nuxt Content 中的语法与用法，涵盖块级容器、行内属性、Props 传递、插槽、嵌套、绑定文章数据，以及代码块与代码组、图片预览、GitHub 仓库卡片、视频卡片、提醒框和文章自动提醒等已接入功能。文末说明自定义组件需实现并注册，并解答组件不显示、插槽误识别等常见问题。",2594,[383,650,452],"Nuxt Content",[373],{"path":653,"stem":654,"title":655,"description":656,"wordCount":657,"publish":378,"update":447,"cover":7,"tags":658,"categories":660,"series":373,"seriesOrder":33,"pin":377,"wip":386,"theme":384},"\u002Fposts\u002Fmarkdown\u002Fmarkdown","posts\u002F1.markdown\u002F01.markdown","Markdown 教程","本文为 Markdown 教程，系统介绍常用语法：段落与换行、标题与目录生成、引用、无序\u002F有序\u002F任务列表、强调与行内代码、普通\u002F引用式\u002F自动链接、图片、代码块、表格、分隔线与转义，并说明本站 Nuxt Content 环境下文章文件位置、frontmatter 要求及后续扩展内容。",1449,[57,659],"写作",[373],1791108778911]