news 2026/9/20 3:57:17

Kimi Code VS Code使用教程:AI编程助手安装配置与实战技巧

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Kimi Code VS Code使用教程:AI编程助手安装配置与实战技巧

我去年有段时间被一个遗留项目折磨得够呛:几千行的老代码,没有注释,函数名还是拼音缩写,靠肉眼读代码定位一个问题能折腾一下午。后来同事把Kimi Code这个插件推给我,说是在VS Code里可以直接跟AI对话、让它改代码,我就抱着试试看的心态装上了。结果那周我基本没再打开过浏览器去搜代码片段——大多数问题直接在编辑器里问AI就解决了。这篇文章我就把Kimi Code在VS Code里的完整用法、我踩过的坑、以及一些配置上的小技巧一次性写清楚,给还没上手的朋友做个参考。

Kimi Code本质上是月之暗面推出的一款代码AI助手,以VS Code插件的形式工作。它不只是一个聊天窗口,还能直接读取你当前打开的文件、选中代码、项目结构,然后帮你解释逻辑、写单元测试、做代码审查、重构代码。和GitHub Copilot那种以"补全"为主的思路不同,Kimi Code更擅长"你问它答、你指令它执行"这种交互式协作。就算你完全没用过AI编程助手,跟着下面的步骤走,十几分钟也能跑通。

1. 为什么我推荐Kimi Code而不是无脑装一堆补全插件

先说个现状。现在VS Code插件市场里AI编程类的插件一只手数不过来:GitHub Copilot、Codex插件、Claude Code、通义灵码、DeepSeek接入方案……每个都有人吹。但如果你真的在写业务代码而不是搞AI噱头,你会发现很多插件的问题不是"不强",而是"太重"。装五六个AI插件,每个占用内存不说,快捷键还会冲突,右侧动不动弹出好几个AI面板。

我选择Kimi Code做主力的原因有三个,都是从实际操作里总结出来的:

第一,它对中文开发者的理解深度明显优于国外同类产品。我在代码里写中文注释、用拼音命名、甚至用中文描述一个很复杂的业务规则,Kimi Code都能准确理解上下文。有一次我让它把一个用递归写的菜单树改成迭代实现,它不光改了代码,还顺手把原来一个边界条件漏判的问题指出来了——这种"主动发现问题"的行为,在纯补全类工具里几乎看不到。

第二,用户界面简单直接,没有太多概念负担。插件装完就是一个对话入口加上几个右键菜单选项,不需要你去学什么Agent、什么Orchestrator的概念。对大部分只想要"帮我写个正则""这行代码什么意思""怎么改这个报错"的人来说,这种简洁反而更好用。

第三,和VS Code的结合非常自然。它支持直接引用当前文件、工作区目录、选中文本。你不用把代码复制粘贴到网页端,它就在编辑器里面工作,看完代码可以直接给出修改建议,甚至直接生成一个完整的新文件。

当然,我也不是让你把别的插件全卸了。我的建议是:如果你需要一个日常陪伴式的AI助手,Kimi Code作为主力;如果你还想要Tab键级别的自动补全,可以再保留一个轻量补全工具。这两者并不冲突,下面我会专门讲怎么避免它们之间打架。

1.1 Kimi Code到底能帮你做什么

我把这段时间实际用到的功能梳理了一下,不涉及官方的书面宣传,就说我自己在写代码过程中真实用到的:

  • 自然语言写代码:选中一块区域,输入"帮我写一个解析这个日志的Python函数",它直接生成代码。
  • 解释陌生代码:接手老项目时,选中一个函数,问"这段逻辑是什么意思",它会给逐行解释,还能提炼出整体流程。
  • 写单元测试:选中一个模块,让它生成对应的单测,补边界情况。
  • 重构和优化:让它把一段重复代码提取成公共函数,或者把回调改成async/await。
  • Bug定位:把报错信息粘贴给它,告诉它出问题的文件是哪一个,它会结合代码内容给出排查方向,很多时候能直接指出错误行。
  • 批量加注释:整个文件一次性加注释,省去手敲的时间。
  • 生成commit message:切换多个项目的时候很有用。

这些功能全部都发生在VS Code内部,不需要切窗口。这也是我这类"深度编辑器使用者"最舒服的地方。

1.2 适合谁来用

如果你是以下三种情况之一,Kimi Code大概率适合你:

  • 前端/后端业务开发者:日常写业务代码、改Bug、写测试,需要一个知根知底的AI搭子。
  • 学生或刚转行的人:遇到不认识的API、看不懂的报错、不会写的算法,可以直接在编辑器里问,比搜索引擎效率高一截。
  • 平时用VS Code但不一定重度使用:偶尔改个脚本、调个配置,记不住语法不重要,让AI帮你写就行。

如果你是那种追求极致自动补全、敲几个字母就希望它给你补完一整行的人,那Kimi Code给你带来的体验可能没有GitHub Copilot那么"丝滑"——它的强项在于理解和对话,而不是逐键预测。这是我的大实话。

2. 安装前先花五分钟把环境理清楚:VS Code版本、系统与账号

很多人装插件失败,问题往往不在插件本身,而是环境没准备好。Kimi Code虽然是"装完就能用",但有些前置条件提前确认好,能省去后面排查的时间。

先说你电脑上需要准备什么:

  • VS Code版本:建议1.85以上。太老的版本对Webview组件的支持不完整,插件装了可能白屏或者对话面板打不开。
  • 操作系统:Windows 10/11、macOS、Linux都支持。Windows上注意如果你的VS Code装在C盘且开启了管理员限制,插件写配置文件时可能会失败。
  • 账号:需要注册一个Kimi账号,注册方式支持手机号和微信扫码,这一步不需要额外配置什么。
  • 网络:保持网络稳定即可。这个是国内AI服务,正常网络环境就能访问,不存在额外配置问题。

2.1 VS Code版本怎么快速确认

打开VS Code,点左下角的齿轮图标,选"关于",里面会显示版本号。如果你版本确实比较老,我建议直接去官网下载最新稳定版,不要用绿色版、精简版,那些版本可能阉割了某些内置组件。

有一个容易忽略的点:如果你用的是VS Code的Insiders版本(预览版),最好换回Stable稳定版。Insiders版本更新频率高,和插件的兼容性偶尔会出现小问题,我之前在Insiders版上遇到过Kimi Code对话面板打不开的情况,换成稳定版就好了。

2.2 Kimi账号与权限的准备工作

第一次打开插件侧边栏时,它会弹出一个登录二维码或者链接。你用手机微信扫码,或者点链接进入浏览器完成登录。这里我建议用浏览器方式登录,比扫码更稳——因为扫码后需要手机和电脑在同一时间处理授权跳转,偶尔会卡在"扫描成功,等待确认"的界面。

登录完成之后,插件会在你的用户目录下创建一个配置文件,用于保存登录状态和偏好设置。如果你在公司电脑上使用,注意这个登录状态是跟着系统用户走的,所以别在公共电脑上保存登录信息,用完全了记得在插件里退出登录。

这里额外提一句:如果你平时用VS Code会同步设置(Settings Sync),Kimi Code插件的偏好设置也会同步到云端。好处是新电脑装完插件后不用重新配置,坏处是如果你在不同项目里想要不同的模型或行为,同步过来之后还得手动调。我个人是把它当作统一配置看的,倒也没出过什么问题。

3. 从扩展市场到第一句对话:Kimi Code安装与登录全流程

环境确认没问题之后,安装过程本身其实很简单,但我还是把完整路径写一遍,因为里面有两个细节会让新手卡住。

3.1 插件安装的两种路径

路径一:直接在扩展市场搜索安装

打开VS Code,左侧活动栏点击扩展图标(就是四个方块的图标),也可以直接按快捷键Ctrl+Shift+X。在搜索框里输入Kimi Code,找到 publisher 为 Moonshot AI 的那个插件,点击Install。

注意看一下搜索结果列表里的插件名和发布者。有些第三方插件会起很接近的名字,比如"Kimi Code Helper"这种,发布者不是Moonshot AI。我自己就见过有人装错版本,装上之后完全没反应,来来回回查了半天,最后发现装了个来历不明的TT插件。认准发布者身份再点安装

路径二:通过发布页安装

前往VS Code插件市场的网页版,搜索Kimi Code,打开插件详情页,点击Install按钮,它会自动拉起本地VS Code并执行安装。这个方式适合你本来就在浏览器里逛市场、想顺便看看其他插件的情况。

安装完成后,左侧活动栏会出现一个Kimi的图标。点击它,会打开Kimi Code的主面板,这时候它会提示你登录。

3.2 登录授权与第一次对话

登录的过程我刚才提过,这里再补充一个"卡点":如果你在公司内网环境,登录时可能会卡在加载页面很久。这种情况通常不是插件坏了,而是网络策略拦截了部分请求。解决办法就是先放行插件相关的域名,或者切换到个人网络再登录。登录成功后,插件会显示你的账号信息,并在底部显示一个输入框。

现在你可以试着问它第一句话了。我建议的"破冰问题"是打开任意一个代码文件,选中一部分代码,然后在对话输入框里输入"请解释一下这段代码的流程"。如果它给出了逻辑清晰、贴合你代码实际逻辑的答案,那就说明整个链路通了。

顺便说一句,第一句话尽量用"解释代码"而不是"写一个XX系统"—因为前者能直接验证插件有没有正确读取你当前文件的上下文,是判断接入是否成功的最快方式。如果你上来就问一个跟当前工程完全不搭边的问题,它即使能回答,你也没法确定它到底接没接上你的代码环境。

4. 核心能力逐个上手:AI对话、代码补全、解释与重构

装好插件只是开始,真正好用的是那些花里胡哨的交互方式。我按使用频率从高到低介绍一下Kimi Code在VS Code里支持的操作。

4.1 选中代码直接提问:最常用的操作

在编辑器里选中一段代码,点击鼠标右键,菜单里会出现"Kimi Code"选项。点开后,你会发现对话输入框已经自动带上了你选中的代码作为上下文。你只需要在后面追加你的问题,比如"这个函数会对空数组产生什么问题?",它就会基于你选中的代码内容回答。

这个方式比我一开始习惯的"手动把代码复制进对话框"能省太多事。因为选中代码的同时,插件会自动附带文件路径、语言类型、当前项目的部分上下文,回答的准确度高很多。特别是当代码分散在多个文件时,你可以逐个选中然后问它"这个文件里定义的变量在另一个文件的某处被引用,帮我找一下",它会尝试跨文件分析。

还有一个实用场景是代码报错处理:当你运行程序看到一段长长的Traceback时,直接选中终端里的报错信息,右键选择"Kimi Code: 解释报错",它会结合你打开的源码文件给出排查方向。这个操作看起来简单,但真的能让你少熬很多次夜。

4.2 自然语言改代码:直接说"帮我改"

跟Kimi Code说"帮我改代码"时,不需要描述得太工程化,用大白话就行。比如"这段代码性能太差了,帮我优化一下""把这个函数改成支持可选参数的版本""给这段代码加上异常处理"。它理解自然语言的能力比很多AI编程工具都强,这也是它以对话为主打的原因。

改完之后,它通常会给出一段完整的替换代码或者一个diff式的修改说明。这时有两种处理方式:如果它输出的是完整代码块,你可以直接点代码块右上角的"插入"按钮,把代码替换到编辑器光标处;如果它只给了修改方案,你就按它的提示手动改。

这里有个心得:它给出代码后,别急着"全盘接受"。Kimi Code有时候会因为上下文里信息不够而写出不符合你项目现有风格的代码。比如你项目里用的是snake_case命名,它可能按PEP8风格生成代码。这种情况下,你只需要在对话框里追加一句"请按项目现有的命名风格修改",它就会重新调整。这种多轮对话的修正过程,才是它最像"同事"的地方。

4.3 全文件级操作:加注释、写测试、重构

右键点击编辑器的空白区域或者文件导航里的文件,你会看到几个集成好的快捷指令:

  • "给这个文件添加注释":一次性给所有函数、类、关键代码块加上中文或英文注释,适合刚接手老项目的时候快速给代码"上户口"。
  • "为这个文件生成单元测试":它先扫描文件里定义的函数和类,然后生成一个测试文件框架,填入合理的输入输出预期。
  • "审查这个文件":这是我最喜欢的。它会从头到尾读一遍文件,找出潜在的Bug、不安全的写法、性能隐患,按严重程度列出清单。

为什么推荐全文件级操作?因为大多数人面对一个几百行的文件,自己是很难静下心一一看完的。让AI先通读一遍并输出"问题清单",你再针对性地去确认,效率要比逐行读代码高得多。我自己用"审查这个文件"功能,经常能在自己以为很完美的代码里发现遗漏的边界条件。

4.4 行内补全:轻量级的自动提示

Kimi Code也有行内补全能力,当你正在输入代码、停顿片刻,它会以灰色文本的形式显示出下一段可能的内容,按Tab键接受。不过我要说实话:它的行内补全能力比专业补全插件还是稍有差距,尤其在一些冷门语言上,补全的命中率不如预期。

所以我的用法是:主流程靠对话,零星代码靠补全。遇上一个忘记的API参数,它补全一下很舒服;但如果是写一整个新功能,我更喜欢用对话的方式让它一次生成后我再改。这样分工清晰,互不干扰。

5. 实测配置调优:模型选择、快捷键与上下文控制

Kimi Code默认安装完就能用,但如果你想用得更顺手,有几个配置值得花点时间调整。这部分不是官方文档里会特意强调的,但实操中非常影响体验。

5.1 模型切换与"负责任务类型"的搭配

Kimi Code背后不止一个模型。在我的实际使用中,插件设置面板里会有模型选项,比如不同的版本侧重不同:有的更擅长代码生成,有的更擅长逻辑推理,有的响应速度更快。具体模型名可能会随官方更新变化,但使用逻辑是通用的。

我的选择逻辑是:

场景推荐模型倾向原因
日常生成代码、补全函数响应快的标准模型交互顺畅,不耽误事
复杂Bug分析、架构梳理推理增强型模型多步推理能力更强,能发现深层问题
大量重构、跨文件审查上下文窗口大的模型能同时读更多文件,减少信息遗漏

如果你不确定怎么选,先用默认模型跑一到两周,再按实际体验调整。不要一上来就追求最强模型,因为更强的模型通常响应更慢,在频繁对话的场景下反而让人觉得"卡卡的"。

5.2 快捷键调整:避免和习惯冲突

Kimi Code默认会绑定一些快捷键。比如对话面板的呼出键、接受补全的Tab键、触发行内补全的键等等。如果你之前用过Copilot或Codex,快捷键大概率会冲突。

解决办法很直接:打开VS Code的设置,搜索Kimi,找到快捷键相关条目,把它们改成你惯用的组合。我本人把"呼出Kimi对话"改成了Ctrl+Alt+K,因为这是很多AI插件兼容的习惯键位,同时把行内补全的触发键关掉了,防止和编辑器自带的建议冲突。

还有一个建议:如果你同时装了多个AI插件,尽量只保留一个插件的行内补全功能。否则你在写代码时,会有多个灰色文本争夺同一个Tab键,结果就是谁都不触发,或者触发了错的,反而影响心流。我自己的方案是:Kimi Code管对话,让另一个轻量补全插件管自动补全,两者各司其职。

5.3 上下文的精细控制:懂这个才是高级用法

Kimi Code的能力上限很大程度上取决于你喂给它的上下文。默认情况下,它会把当前打开的文件作为参考,但如果你需要的结论涉及多个文件,建议手动把相关文件"加入上下文"。

在对话面板里,通常会有一个附加上下文或引用文件的功能入口。你可以从当前工作区里选择、搜索文件名加入上下文,也可以直接打开某个文件再对话,它默认会带上。这里我给三个实操建议:

  1. 跨文件问题一定要带上相关文件。比如你问"为什么这个配置文件里的参数没生效",如果你只选中config.py而不带上被config.py引用的settings.yaml,它给出的答案往往隔靴搔痒。
  2. 清理不相关的打开文件。插件有时会自动把当前打开的所有标签页作为上下文的一部分,如果一堆无关文件都开着,反而会稀释注意力。说话之前,把无关标签页关掉能让回答更聚焦。
  3. 明确指定代码范围。在问题里直接说"只关注这个类的process方法,忽略其他方法",可以有效避免它把业务逻辑搞混。

这些细节听起来很小,但当你问的问题越具体,AI的回答质量差距越大。学会控制上下文,等于学会跟AI高效沟通。

6. 避坑与排查:安装失败、登录超时、补全异常

这一节全是干货。我把这几个月遇到和收集到的问题列出来,每个都写了排查思路,你遇到同类问题可以直接照着查。

6.1 插件安装没反应或一直转圈

这个问题的常见原因有两类。

第一类是VS Code版本太低,内置的Webview组件不支持插件渲染。解决办法我之前提过:把VS Code升级到最新稳定版,重启之后再安装。第二类是公司内网环境限制了扩展市场的下载请求,导致插件文件没有真正下载下来。你可以先卸载插件,再通过网页版市场手动下载vsix安装包,在VS Code里"从VSIX安装"。

如果是Windows系统,还有一个相对少见的原因:杀毒软件把插件目录当成了可疑文件,直接把部分文件隔离了。排查方法是看VS Code底部的"输出"面板,切换到Kimi Code相关日志,看看有没有报错说文件读取失败。有的话就把插件目录加入杀毒软件白名单。

6.2 登录一直转圈或扫码后无法跳转

登录转圈,大多数时候不是账号问题,而是网络出口对登录域名的访问受限。我的建议是先等30秒左右,如果界面仍然转圈,就关掉插件面板重新打开,再登录一次。在个人网络环境下我基本没遇到过这个卡点。

另外一个隐蔽的坑是系统时间不对。之前有个同事电脑时间快了十分钟,登录时证书校验一直失败,界面表现就是"扫描成功但网页跳不回来"。把系统时间换成自动同步,问题立刻消失。

6.3 对话能进行,但"解释代码"时答非所问

如果你选中代码问问题,但它给出的答案和你代码毫无关系,多半是它没有真正读取到当前文件的内容。有几个排查点:

  • 确认你选中的代码所在文件已保存。没保存的修改内容它不一定能读取到。
  • 检查对话面板里有没有正确显示"引用文件"。有些版本需要手动点击引用文件的图标,如果显示为"未引用",你需要点一下添加当前文件。
  • 如果问题依然存在,重启VS Code再试。

最近的版本里,插件会在对话输入框上方显示当前引用的文件标签,这是一个很好的可视化提示。如果你一眼看到引用文件不是自己想要的,直接改一下引用比来回问"你看到了吗"要高效得多。

6.4 和其他AI插件共存时的冲突

我见过最多的冲突场景是同时装了Kimi Code和Codex插件、Claude Code插件,然后发现右键菜单里出现了一堆重叠选项,或者Tab键补全打架。

我的建议是分权管理。你可以保留Kimi Code作为日常主力对话,其他插件设置为"不启用行内补全"或者"不自动启动"。做法是在其他插件的设置里关掉Inline Suggestion,或者在VS Code的命令面板里禁用它们的自动补全。这样Kimi Code负责主要的代理解释和生成,其他插件作为特定场景下的备选,谁都不会干扰谁。

如果你觉得右键菜单太乱,VS Code也允许你在"设置"里配置菜单的可见性,可以按需隐藏某些插件项,保持界面干净。

6.5 回答质量变差时的"上下文污染"排查

用久了你会发现,同一个问题在某个项目里回答很靠谱,在另一个项目里却很离谱。这通常是上下文污染导致的——插件在工作时会自动加载一些项目配置文件或者第三方库代码,如果这些代码太多、太杂,它反而抓不到重点。

遇到这种情况,我一般先做清理动作:

  • 关闭所有不相关的标签页。
  • 在对话里明确指定"只考虑src目录下的代码,不要分析node_modules里的内容"。
  • 如果还不行,新建一个会话窗口重新开始问,避免之前对话的上下文造成干扰。

另外,Kimi Code在超大项目中可能会因为扫描文件过多而响应变慢。如果你的项目特别庞大,建议用VS Code的多根工作区功能,把核心源码单独作为工作区打开,其他外围代码放到另一个工作区里。这样Kimi Code读取的范围就集中在核心源码上,响应速度和答案质量都会好很多。

7. 我的真实使用心得:效率提升在哪里,局限又是什么

文章最后,说点个人感受,也算是给想长期使用的人打个预防针。

我现在的日常开发流已经离不开Kimi Code了,但准确说,是离不开"AI对话式协作"这个模式。Kimi Code让AI真正融进了编辑器,而不是像以前那样在IDE和浏览器之间来回切换。遇到问题先问编辑器里的AI,等于随身带了一个熟悉项目的同事,这对一个人的开发效率提升是很明显的。

它帮我最多的地方,其实不是写新代码,而是理解旧代码。接手一个中大型项目时,面对几千行没有文档的代码,以前我要靠断点、靠打日志、靠猜,现在直接问AI:这个模块的入口是哪儿?这条调用链路里哪些地方可能出问题?它能从整个项目结构出发,给你画出调用关系的文字描述,帮助你快速定位重点。

但我也有几句大实话要说。它不擅长处理"项目里非常定制化且没有规律可循"的逻辑。比如有些老系统为了兼容历史数据,写了一堆魔幻的if-else,这类代码让它解释,它能解释出逻辑,但很难判断"为什么当初要这么设计"——这种历史包袱只有人才能理解。另外,AI生成的代码质量高度依赖于你的描述质量。你糊里糊涂地问,它也只能糊里糊涂地答。把需求说清楚,永远是使用AI工具的第一生产力。

还有个实际经验:如果你同时使用多个AI编程工具,尽量固定其中一个作为主力,不要今天用这个明天用那个。每个工具对项目的理解都建立在历史对话上下文中,换来换去等于每次都重新开始,效率反而低。

最后分享一个小技巧:我在每天开始写代码前,会把当前分支的改动文件汇总起来,让Kimi Code帮我生成一个开发日志或者待办清单。它会把我的工作内容整理成条目,而我只需要对着清单逐一勾选就行。这个用法虽然听起来很简单,但坚持下来,会让你的开发过程很有条理,也方便后面写周报或者Code Review时直接引用。希望这篇经验对你有用。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/20 3:57:12

2026年VR眼镜品牌选购指南:一体机、PC VR与MR混合现实全解析

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

作者头像 李华
网站建设 2026/9/20 3:56:38

上万套源码合集实战:从FreeRTOS到Vue响应式精读指南

做技术这行,谁手里还没几个G的源码压缩包。但"上万套源码-11【未完待续】"这个标题一出来,老读者应该能立刻感受到背后的分量——这不是随手丢几个demo的网盘链接,而是一个持续归档、按系列推进的源码资源库。我看了一下这次清单里…

作者头像 李华
网站建设 2026/9/20 3:56:01

LibreChat实战指南:自托管多模型AI网关的部署与深度配置

1. 为什么我会盯上LibreChat:AI工具多到管不过来的那段时间先说个背景。从去年开始,我手上日常要用的AI工具越来越多,OpenAI的ChatGPT、Anthropic的Claude、Google的Gemini,再加上偶尔用一下的开源模型本地部署,每个工…

作者头像 李华
网站建设 2026/9/20 3:55:45

手搓BP神经网络预测雾霾:学习率、初始化与正则化实战复盘

写这个项目的时候,我手边正好有一批去年冬天的空气质量数据。每天看着“轻度污染”“中度污染”的预报,我一直在想,能不能自己动手做一个能提前一天预测雾霾的小模型。不需要多复杂,只要能把明天的PM2.5浓度估个八九不离十就行。思…

作者头像 李华
网站建设 2026/9/20 3:51:09

BoxMOT:从零到可用的多目标跟踪方案,一篇就够

BoxMOT:从零到可用的多目标跟踪方案,一篇就够 【免费下载链接】boxmot BoxMOT: Pluggable Python and C SOTA multi-object tracking modules with support for axis-aligned and oriented bounding boxes 项目地址: https://gitcode.com/GitHub_Trend…

作者头像 李华
网站建设 2026/9/20 3:49:56

ESP32蓝牙开发实战:BLE连接、GATT通信与WiFi共存避坑指南

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

作者头像 李华