You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GDB CLI中调整源代码高亮配色设置

GDB CLI 源代码高亮配色调整方案

第一步:确认当前GDB使用的高亮组件

启动GDB后执行 show source-highlight 命令即可直接查询:

  • 如果输出为 Source highlighting is enabled, using the GNU Source Highlight library.,说明使用的是GNU Source Highlight组件
  • 如果输出为 Source highlighting is enabled, using the Pygments library.,说明使用的是Pygments组件
  • 如果输出显示高亮未开启,先执行 set source-highlight on 开启后再重新查询

针对GNU Source Highlight的配色调整

GNU Source Highlight通过预设风格文件控制输出颜色,你可以直接指定适配终端背景的内置风格:

  • 临时生效(仅当前GDB会话有效):执行 set source-highlight-style <风格名>
  • 永久生效:将上述命令写入 ~/.gdbinit 配置文件
    常用适配风格参考:
  • 暗背景终端推荐:esc256-dark、dark
  • 亮背景终端推荐:esc256-light、light
    执行 help set source-highlight-style 可查看当前环境支持的所有完整风格列表。

针对Pygments的配色调整

如果GDB使用Pygments作为高亮组件,需要通过Python脚本自定义配色,操作步骤:

  1. 打开或创建 ~/.gdbinit 文件,添加以下内容:
python
import pygments
from pygments.lexers import get_lexer_for_filename
from pygments.formatters import TerminalFormatter
from pygments.styles import get_style_by_name

# 替换下方风格名即可切换配色,暗背景推荐monokai、dracula,亮背景推荐default、vs
selected_style = get_style_by_name("monokai")

def custom_highlight(src, filename):
    lexer = get_lexer_for_filename(filename, stripall=True)
    formatter = TerminalFormatter(style=selected_style)
    return pygments.highlight(src, lexer, formatter)

gdb.set_source_highlight_function(custom_highlight)
end
  1. 保存文件后重启GDB即可生效,修改selected_style字段的取值即可切换不同Pygments内置风格。

应急调整方案

如果暂时找不到适配的风格,可先执行 set style sources off 临时关闭代码高亮,需要时执行 set style sources on 恢复功能即可。

内容的提问来源于stack exchange,提问作者vatosarmat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 23:12:01