CLI中的语法高亮目前仅在macOS和Linux上可用。
在shell中编写的SQL查询会自动使用语法高亮显示。

查询中有几个组件以不同的颜色高亮显示。颜色可以通过使用点命令进行配置。
也可以通过使用.highlight off命令完全禁用语法高亮。
以下是可配置的组件列表。
| 类型 | 命令 | 默认颜色 |
|---|---|---|
| 关键词 | .keyword |
green |
| 常量和字面量 | .constant |
yellow |
| 评论 | .comment |
brightblack |
| 错误 | .error |
red |
| 延续 | .cont |
brightblack |
| 延续(已选择) | .cont_sel |
green |
组件可以使用支持的颜色名称(例如,.keyword red)进行配置,或者通过直接提供用于渲染的终端代码(例如,.keywordcode \033[31m)进行配置。以下是支持的颜色名称及其对应的终端代码列表。
| 颜色 | 终端代码 |
|---|---|
| 红色 | \033[31m |
| 绿色 | \033[32m |
| 黄色 | \033[33m |
| 蓝色 | \033[34m |
| 洋红色 | \033[35m |
| 青色 | \033[36m |
| 白色 | \033[37m |
| 亮黑色 | \033[90m |
| 亮红色 | \033[91m |
| 亮绿色 | \033[92m |
| 亮黄色 | \033[93m |
| 亮蓝色 | \033[94m |
| 亮洋红色 | \033[95m |
| 亮青色 | \033[96m |
| 亮白色 | \033[97m |
例如,这里是一组替代的语法高亮颜色:
.keyword brightred
.constant brightwhite
.comment cyan
.error yellow
.cont blue
.cont_sel brightblue
如果您希望每次启动CLI时使用不同的颜色集,您可以将这些命令放在启动CLI时加载的~/.duckdbrc文件中。
错误高亮
shell支持高亮显示某些错误。特别是,不匹配的括号和未闭合的引号会以红色(或指定的其他颜色)高亮显示。对于大型查询,此高亮显示会自动禁用。此外,可以使用.render_errors off命令手动禁用它。