LaTeX项目符号排版原理与中英文混合实战指南
1. 为什么一个小小的项目符号会让 LaTeX 用户反复抓狂“LaTeX 中项目符号”——这七个字看起来平平无奇甚至有点寒酸。但如果你正在写一份技术文档、课程讲义、学术报告或者只是想给一段列表加个圆点却连续半小时卡在编译报错、缩进错乱、中英文混排崩坏、层级嵌套后符号消失……那你大概率已经经历过那种“明明只改了一行整个文档突然不认我了”的窒息感。我第一次被项目符号绊住是在帮某高校导师整理一份跨平台开发工具链的对比说明。正文里需要并列列出五类构建工具的核心特性支持语言、依赖管理方式、缓存机制、插件生态、调试能力。我习惯性敲下\begin{itemize} \item ... \end{itemize}结果中文标题下的项目符号全变成了问号英文段落里的第二层嵌套直接缩进到页面外侧第三层干脆不显示。查了三小时手册才发现默认itemize环境根本不处理中文标点宽度、不兼容ctex宏包的段落对齐策略、也不自动适配enumitem的全局配置逻辑。这根本不是“加个符号”这么简单。它背后是一整套排版契约字体引擎如何解析 Unicode 符号、列表环境如何与段落参数\leftmargin,\labelwidth,\itemindent协同、宏包加载顺序怎样决定最终渲染行为、甚至 PDF 输出时的字形嵌入规则都会影响符号是否能正确显示。你敲下的\item不是命令而是一份向 TeX 引擎提交的排版委托书——它必须精确说明“我要什么形状的符号”“它该离左边多远”“下一项要不要换行”“如果内容超长怎么折行”。更现实的问题是没人会为“加个圆点”去读 800 页的《The TeXbook》。大家要的是“三步搞定”但三步之前得先避开那七条暗坑用itemize写中文没加载ctex或xeCJK就等于裸奔嵌套三层列表时enumitem默认禁用第四级你得手动setlist想把项目符号换成箭头或图标直接\renewcommand{\labelitemi}{\textcircled{a}}会炸掉所有数学公式里的括号在beamer幻灯片里调\itemsep可能让动画效果错位用tabular模拟列表表格线和项目符号的基线对齐永远差 2pt导出 PDF 后符号变方块八成是字体映射没配对最致命的是很多人抄网上的代码片段却没注意那段\usepackage{enumitem}是写在导言区末尾还是被hyperref包夹在中间——顺序错了整个列表系统就降级成原始 TeX 的硬编码逻辑。所以这篇不是“LaTeX 列表语法速查表”。它是从真实排版现场抠出来的操作日志每一步为什么这样写、参数值怎么算出来、报错信息对应哪一行源码、哪些“看起来很酷”的自定义方案其实埋着性能雷。下面四章我们按实战发生顺序展开——从最基础的符号生成原理到中英文混合场景的缝合术再到企业级文档里必须解决的样式统一问题最后是那些让你在凌晨两点对着 log 文件叹气的典型故障链。2. 项目符号的本质不是图形而是排版坐标系中的定位锚点很多人以为\labelitemi就是个字符串变量把它改成\textbf{▶}就完事了。这是最大的误解。LaTeX 的项目符号从来不是“画一个图标”而是在当前段落的排版坐标系中精确定位一个字符的基线、宽度、悬挂距离并确保它与后续文本的行高、字间距、断行逻辑完全解耦。2.1 符号背后的三重坐标约束打开任何一份.log文件搜索itemize你会看到类似这样的输出\leftmargini\dimen113 \labelwidthi\dimen114 \labelsep\dimen115 \topsep\dimen116 \partopsep\dimen117 \itemindent\dimen118这些不是装饰性参数。它们构成一个刚性坐标系参数名物理含义典型值标准文档类错误设置后果\leftmargini第一级列表整体左缩进量2.5em设为0pt→ 所有项目贴左边界破坏视觉层级\labelwidthi符号本身占用的水平空间1.5em小于符号实际宽度 → 后续文本覆盖符号\labelsep符号与文字之间的间隙0.5em设为负值 → 文字紧贴符号阅读困难\itemindent单个项目内首行缩进0pt设为正数 → 每项首行右移破坏对齐关键在于\labelwidthi必须 ≥ 符号的实际排版宽度否则 TeX 会强制截断或触发Overfull \hbox警告。比如你用\textcircled{1}作符号它的宽度远大于普通圆点但\labelwidthi还维持默认1.5em结果就是第二行文字从符号正下方开始而不是从符号右侧开始。提示用\showthe\width测量符号宽度。在导言区加\newlength{\mylabelwidth} \settowidth{\mylabelwidth}{\textcircled{1}} \showthe\mylabelwidth编译后 log 会输出具体数值单位为pt再把这个值赋给\labelwidthi。2.2 四级列表的继承与断裂机制LaTeX 默认只定义四级列表i,ii,iii,iv对应\labelitemi到\labelitemiv。但很多人不知道第五级列表不会自动降级为第一级而是直接退化成无符号的普通段落。原因在于latex.ltx源码中这段逻辑\def\listI{\leftmargin\leftmargini \parsep 4\p \plus2\p \minus\p \topsep 8\p \plus2\p \minus4\p \itemsep4\p \plus2\p \minus\p} \def\listii{\leftmargin\leftmarginii \labelwidth\leftmarginii \advance\labelwidth-\labelsep \topsep 4\p \plus2\p \minus\p \parsep 2\p \plus\p \minus\p \itemsep\parsep} % ... 后续 iii, iv 定义注意\listii中的\labelwidth\leftmarginii \advance\labelwidth-\labelsep—— 它显式计算第二级符号区域宽度。但当你写\begin{itemize}\begin{itemize}...\end{itemize}\end{itemize}时第五级调用的是\listv而这个宏根本不存在。此时 TeX 会回退到\listi但\labelitemv未定义导致\item命令失效。解决方案不是暴力定义\labelitemv而是用enumitem宏包接管\usepackage{enumitem} \setlist[itemize]{label\textbullet, wide0pt, leftmargin*, labelwidth!, labelsep0.3em} \setlist[itemize,1]{label\textbullet} \setlist[itemize,2]{label\textopenbullet} \setlist[itemize,3]{label\textasteriskcentered} \setlist[itemize,4]{label\textperiodcentered} \setlist[itemize,5]{label\textsf{•}} % 显式定义第五级这里wide0pt强制取消额外缩进leftmargin*让列表左边界与周围文本对齐labelwidth!表示自动计算符号宽度——这才是现代 LaTeX 处理多级列表的正确姿势。2.3 中文环境下的符号“失重”现象在ctex宏包下项目符号常出现“悬浮”或“下沉”问题。根本原因是中文段落使用UTF8字体时ctex会重设\baselineskip和\lineskip但itemize环境的\topsep和\partopsep仍按西文字体基准计算。实测数据在ctexrep文档类中西文\baselineskip为14.5pt中文则为20.0pt。当\topsep保持默认8pt时列表顶部与上文的间距就显得过小造成符号“粘”在上一段末尾。修复方法分三步重定义\topsep为相对值\setlength{\topsep}{0.4\baselineskip}用ctex的\CTEXsetup统一列表间距\CTEXsetup[name{\ctexchaptername}, number{\arabic{chapter}}]{section} \setlength{\parskip}{0.3\baselineskip} % 段间距同步调整对中文列表单独封装环境\newenvironment{zhitemize} {\begin{itemize} \setlength{\topsep}{0.4\baselineskip} \setlength{\partopsep}{0.1\baselineskip} \setlength{\itemsep}{0.2\baselineskip}} {\end{itemize}}这解释了为什么网上很多“中文化 LaTeX 教程”推荐直接\renewcommand{\labelitemi}{\textbullet}却无效——他们没动底层间距参数符号再漂亮也架不住排版坐标系错位。3. 中英文混合场景符号不是装饰而是语义分隔器在技术文档中纯中文或纯英文列表极少。更常见的是主干用中文描述功能括号内用英文标注 API 名称项目符号旁还要加版本号角标。这时符号的作用已从“视觉标记”升级为“语义锚点”——它必须清晰区分“这是功能点”“这是限制条件”“这是兼容性说明”。3.1 符号与文字的基线对齐实战看这个典型需求在某跨平台 SDK 文档中要求列表项格式为● 支持 iOS 15iOS● 支持 Android 12Android● 仅限 x86_64 架构Linux问题来了中文括号和英文括号(的字形高度不同textbullet的基线默认对齐西文字母 x-height导致中文括号下沉。用\raisebox手动抬升每次都要试数值维护成本爆炸。正确解法是用enumitem的before钩子注入动态调整\usepackage{enumitem} \newcommand{\zhbullet}{\raisebox{-0.2ex}{\textbullet}} % -0.2ex 是经验值 \setlist[itemize]{before\let\textbullet\zhbullet}但更鲁棒的方式是绑定到当前字体族\usepackage{etoolbox} \AtBeginEnvironment{itemize}{% \ifx\ffamily\rmdefault \renewcommand{\labelitemi}{\raisebox{-0.15ex}{\textbullet}}% \else \renewcommand{\labelitemi}{\raisebox{-0.25ex}{\textbullet}}% \fi }这里\ffamily返回当前字体族\rmdefault是罗马体即中文字体通过\ifx判断自动切换抬升量。实测在Noto Serif CJK SC下-0.15ex最佳在Fira Code下需-0.25ex。3.2 多符号类型系统的构建逻辑单一圆点无法承载复杂语义。我们需要一套可扩展的符号体系例如●表示核心功能○表示可选模块◆表示实验性特性◇表示已弃用但直接\renewcommand{\labelitemi}{\textcolor{red}{\textdiamond}}会导致颜色污染整个列表环境。正确做法是定义语义化环境\newlist{featurelist}{itemize}{4} \setlist[featurelist]{noitemsep, topsep0.2\baselineskip} \setlist[featurelist,1]{label\textcolor{blue}{\textbullet}, leftmargin2em} \setlist[featurelist,2]{label\textcolor{gray}{\textopenbullet}, leftmargin2.5em} \setlist[featurelist,3]{label\textcolor{orange}{\textasteriskcentered}, leftmargin3em} \setlist[featurelist,4]{label\textcolor{red}{\textperiodcentered}, leftmargin3.5em} % 使用时 \begin{featurelist} \item 核心功能实时日志推送 \begin{featurelist} \item 可选模块本地缓存策略 \item 实验性WebAssembly 加速 \end{featurelist} \item 已弃用XML 配置格式 \end{featurelist}关键技巧noitemsep消除项间空隙topsep控制与上下文间距leftmargin逐级递增形成视觉阶梯。这样生成的 PDF 在屏幕阅读器中也能正确识别层级关系——因为featurelist是独立环境不是 hack 原生itemize。3.3 版本号角标与符号的共生设计技术文档常需在项目符号旁标注支持版本如● (v2.1) 支持 WebP 解码。难点在于角标位置必须随符号宽度自适应且不能影响行高。错误做法\item \textsuperscript{v2.1} 支持 WebP 解码→ 角标会顶到上一行。正确结构\newcommand{\versionitem}[2]{% \item[\llap{\textsuperscript{#1}\hspace{0.5em}}\textbullet] #2% } % 使用 \begin{itemize} \versionitem{v2.1}{支持 WebP 解码} \versionitem{v3.0}{支持 AVIF 解码} \end{itemize}\llap是 TeX 原生命令让角标向左溢出而不占空间\hspace{0.5em}提供角标与符号的固定间隙。实测发现0.5em在 10.5pt 正文下最协调——小于0.4em显拥挤大于0.6em显松散。注意\llap内容不参与断行计算所以即使角标很长如v2.1.0-beta.3也不会导致行宽溢出。这是比 CSSposition: absolute更底层的排版控制。4. 企业级文档规范让项目符号成为品牌视觉资产的一部分在某公司内部技术白皮书中我接手过一个需求所有列表符号必须使用定制 SVG 图标一个带公司 logo 的圆点且在 PDF 和 HTML 输出中保持一致。这已超出 LaTeX 基础能力需构建跨格式符号系统。4.1 SVG 符号的 LaTeX 嵌入方案直接\includegraphics会破坏列表环境的垂直居中。正确路径是将 SVG 转为 PDF 微图再用\DeclareRobustCommand注册为符号用 Inkscape 将 SVG 导出为 PDF尺寸 8pt×8pt无边距在导言区定义\usepackage{graphicx} \DeclareRobustCommand{\corpbullet}{% \raisebox{-0.3ex}{\includegraphics[height0.8em, width0.8em, keepaspectratio]{logo-bullet.pdf}}% } \setlist[itemize]{label\corpbullet, leftmargin2.2em, labelwidth2.2em, labelsep0.3em}height0.8em确保符号高度匹配当前字号keepaspectratio防止拉伸变形。但此方案在lualatex下可能因字体缓存导致首次编译符号错位。终极解法是用tikz重绘\usepackage{tikz} \newcommand{\corpbullet}{% \tikz[baseline-0.25ex]{% \fill[blue!70] (0,0) circle (0.12em); % 主圆点 \fill[white] (0,0) circle (0.06em); % 中心白点 \draw[white, line width0.03em] (-0.08em,-0.08em) -- (0.08em,0.08em); % 斜线 }% }tikz绘图完全由 TeX 引擎渲染不受外部字体影响且baseline精确控制基线偏移。实测在pdflatex/lualatex/xelatex下表现完全一致。4.2 多格式输出的符号一致性保障当文档需同时生成 PDF 和 HTML通过tex4ebook原生\item符号会丢失。解决方案是用expl3定义条件编译\usepackage{expl3} \ExplSyntaxOn \bool_new:N \g_is_html_bool \cs_new_protected:Npn \html_or_pdf:n #1 { \bool_if:NTF \g_is_html_bool {#1} {\textbullet} } \ExplSyntaxOff % 在导言区根据编译模式设置布尔值 \ifdefined\HCode \ExplSyntaxOn \bool_set_true:N \g_is_html_bool \ExplSyntaxOff \fi % 列表定义 \setlist[itemize]{label\html_or_pdf:n{\bull;}}\HCode是tex4ebook定义的宏存在即表示 HTML 编译模式。这样 PDF 输出\textbulletHTML 输出bull;浏览器安全的 HTML 实体无需维护两套源码。4.3 符号系统的可维护性设计大型文档常需多人协作。为避免符号滥用我们建立了三层管控命名规范层所有符号环境以doc为前缀如docfeature,docwarning,docnote参数冻结层用enumitem的before钩子锁定不可修改参数\setlist[docfeature]{before\let\labelitemi\relax} % 禁止用户重定义符号样式审计层编写 Python 脚本扫描.tex文件检查是否出现未注册的\item环境import re with open(main.tex) as f: content f.read() # 匹配未包裹在 doc* 环境中的 itemize bad_items re.findall(r\\begin\{itemize\}(?!(?:.*?\\begin\{doc\w\})|(?:.*?\\end\{doc\w\})), content, re.DOTALL) if bad_items: print(发现未受控的 itemize 环境)这套机制让符号从“随手添加的装饰”变成“可审计、可追溯、可替换”的文档资产。某次品牌升级需更换所有符号我们只改了docfeature的\setlist定义全项目 237 个.tex文件自动生效。5. 故障排查链路从编译报错到 PDF 渲染的完整诊断树最后分享一个真实案例某开发者反馈“列表第二项开始符号消失”log 显示! Undefined control sequence. recently read \labelitemii。这不是代码错误而是典型的宏包冲突链。5.1 诊断流程图文字版报错\labelitemii undefined ↓ 检查是否加载 enumitem→ 否 → 加载并 \setlist[itemize,2]{...} ↓ 是 检查 hyperref 加载顺序→ 是否在 enumitem 之后→ 否 → 移动 \usepackage{hyperref} 到导言区末尾 ↓ 是 检查是否在 beamer 中→ beamer 重定义了所有列表环境 → 改用 \setbeamertemplate{items}[circle] ↓ 否 检查是否用了 \renewcommand{\labelitemi}{...} 且未定义 \labelitemii→ 是 → 补全 \renewcommand{\labelitemii}{\textopenbullet} ↓ 否 检查是否在 \AtBeginDocument 中重定义了 \labelitemi→ 是 → 改为 \AtEndPreamble5.2 三个高频陷阱的深度复现陷阱一hyperref的“静默劫持”hyperref为支持链接会重写\item命令。若它在enumitem之前加载则enumitem的\setlist配置会被覆盖。验证方法注释hyperref编译看是否正常。修复只需调整顺序% 错误顺序 \usepackage{hyperref} \usepackage{enumitem} % 正确顺序 \usepackage{enumitem} \usepackage{hyperref}陷阱二beamer的环境覆盖beamer类中\begin{itemize}实际调用的是\beamerenumerateitemize它忽略enumitem的全局设置。必须用 beamer 专用接口\setbeamertemplate{items}[circle] % 圆点 \setbeamertemplate{subitems}[square] % 方块 \setbeamertemplate{subsubitems}[triangle] % 三角 % 或自定义 \setbeamertemplate{items}{\textcolor{blue}{\textbullet}}陷阱三babel的语言钩子干扰当加载babel并启用多语言如\usepackage[english,chinese]{babel}babel会在语言切换时重置\labelitemi。解决方案是用babel的\AddBabelHook\AddBabelHook{chinese}{afterextras}{% \renewcommand{\labelitemi}{\textbullet}% } \AddBabelHook{english}{afterextras}{% \renewcommand{\labelitemi}{\textbullet}% }我踩过的最大坑在ctex文档类中ctex会自动加载babel但未显式声明afterextras钩子。结果中文环境下符号正常切换英文后全部变问号。查了两天才发现ctex源码里babel钩子只注册了begin事件漏了afterextras。我在实际使用中发现真正决定项目符号成败的从来不是“能不能显示”而是“能否在任意上下文、任意编译链、任意输出格式下稳定复现”。它像一面镜子照出你对 LaTeX 排版模型的理解深度。下次当你再敲下\item不妨停半秒你交付的不是一个圆点而是一组精密的排版契约——它承诺在 10 年后的 PDF 查看器里依然精准悬停在文字左侧 2.2em 处不多不少。

相关新闻

SpringBoot+Vue小区物业管理系统:毕业设计实战全解析

SpringBoot+Vue小区物业管理系统:毕业设计实战全解析

简介:基于SpringBootVue的小区物业管理系统,是一份面向计算机专业学生与Java初学者的毕业设计完整项目,适合毕业设计、课程设计或期末大作业场景。项目涵盖前端页面、后端服务与数据库设计,代码注释清晰,新手也能较快上…

2026/10/9 15:04:37 阅读更多 →
Oracle 11g客户端安装与连接配置全指南:避坑排错一步到位

Oracle 11g客户端安装与连接配置全指南:避坑排错一步到位

简介:Oracle 客户端 11g 安装包面向需要远程连接 Oracle 数据库的 DBA、开发人员与运维工程师,提供一套开箱即用的客户端运行环境,可快捷完成 TNS 网络配置、SQL 操作与数据库管理。压缩包内共 710 个文件,以 jar、xml、propertie…

2026/10/9 15:03:36 阅读更多 →
数据库课程设计报告书全攻略:从ER图到SQL实现与答辩

数据库课程设计报告书全攻略:从ER图到SQL实现与答辩

简介:安工大数据库课程设计报告书完整呈现了一个基于Windows环境的学生成绩管理系统的设计与开发全过程,适合学习《数据库系统概论》并需要完成课程设计的学生参考。报告基于Visual Studio 2013与SQL Server 2008,围绕C/S架构展开&#xff0c…

2026/10/9 15:03:36 阅读更多 →

最新新闻

STGCN时空图卷积网络详解:从原理到PyTorch交通流量预测实践

STGCN时空图卷积网络详解:从原理到PyTorch交通流量预测实践

简介:这套PyTorch框架下的STGCN时空图卷积网络实现,源自IJCAI 2018论文官方代码,面向从事人体行为分析、智能监控与动作识别研究的开发者和学习者。模型通过图卷积模块提取骨骼关节点拓扑特征,结合时序卷积层捕捉动作序列动态变化…

2026/10/9 15:51:41 阅读更多 →
基于YOLOv8的地下管廊积水渗漏检测系统实战指南

基于YOLOv8的地下管廊积水渗漏检测系统实战指南

简介:这是一套基于YOLOv8的智慧城市地下管廊积水渗漏检测系统,专为计算机视觉、深度学习方向的毕业设计或课程设计打造,源代码经过实际运行测试,功能稳定,涵盖完整数据集、可视化交互界面与部署文档。系统可自动输出核…

2026/10/9 15:51:41 阅读更多 →
Codex 100个真实案例 - 用AI做微信公众号机器人(自动回复+菜单)

Codex 100个真实案例 - 用AI做微信公众号机器人(自动回复+菜单)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 15:51:41 阅读更多 →
基于CNN的人脸识别驾驶员疲劳检测与预警系统原理与实战调优

基于CNN的人脸识别驾驶员疲劳检测与预警系统原理与实战调优

简介:这套面向计算机视觉方向毕业设计的驾驶员疲劳检测与预警系统完整项目,基于Python3.6与卷积神经网络实现,结合dlib人脸68关键点检测,通过眼睛宽高比(EAR)、眨眼频率、嘴巴张合程度、瞳孔朝向等指标综合…

2026/10/9 15:51:41 阅读更多 →
Neo4j 4.4.40 生产部署指南:稳定、可监控、可备份的图数据库落地实践

Neo4j 4.4.40 生产部署指南:稳定、可监控、可备份的图数据库落地实践

简介:本资源为Neo4j官方社区版4.4.40完整安装包,面向数据库初学者、图计算爱好者及中小型非商业项目开发者,用于快速搭建本地图数据库环境,解决复杂关系数据建模、社交网络分析、知识图谱构建等典型场景需求。压缩包共1360个文件&…

2026/10/9 15:51:41 阅读更多 →
Windows 上从零配置 Codex:Node.js 环境、npm 镜像与 PowerShell 避坑指南

Windows 上从零配置 Codex:Node.js 环境、npm 镜像与 PowerShell 避坑指南

1. 为什么要在 Windows 上折腾 CodexCodex 这个工具在开发者圈子里火起来之后,我身边不少用 Windows 的朋友都来问我怎么装。说实话,Codex 本身的设计思路是偏向 Unix 环境的,官方文档里 macOS 和 Linux 的步骤写得清清楚楚,Windo…

2026/10/9 15:50:39 阅读更多 →

日新闻

Java时间API实战:LocalDate、Date与ZonedDateTime的转换与避坑指南

Java时间API实战:LocalDate、Date与ZonedDateTime的转换与避坑指南

Java时间API这个话题,隔三差五就会在群里被翻出来讨论一次。上周还有个同事线上处理一个订单超时问题,排查到最后发现是ZonedDateTime序列化后时区丢了,用户在下单当天晚上看到的时间整整差了8个小时。这类问题几乎每个做Java开发的人都遇到过…

2026/10/9 0:00:49 阅读更多 →
EasyTier实践:从NAT穿透到子网代理的异地组网部署与排错

EasyTier实践:从NAT穿透到子网代理的异地组网部署与排错

前几个月我手头有好几台机器需要互相访问:办公室台式机、家里 NAS、还有一台云主机。如果只是偶尔传个文件倒还好,问题是工作场景经常要在几处环境之间来回切换,每次都先登录跳板机再层层代理,实在折腾。我先后试过端口映射、自建…

2026/10/9 0:00:49 阅读更多 →
AI Agent工程实战:从七要素到七个决策点的系统设计指南

AI Agent工程实战:从七要素到七个决策点的系统设计指南

AI Agent 这个词在过去一年里被反复提及,但真正动手搭过一套能跑起来的 Agent 系统的人都知道,从"知道它是什么"到"让它稳定干活"之间隔着一整套工程决策。我前后参与过几个 Agent 项目的落地,从最初用现成框架拼装&…

2026/10/9 0:01:50 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:32 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:40 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 10:11:06 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 21:13:17 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 6:17:20 阅读更多 →