此版本仍在开发中,尚未被认为是稳定版。请使用最新稳定版 Spring Shell 4.0.1spring-doc.cadn.net.cn

主题

在主题中进行样式设置是通过使用AttributedStringJLine实现的。 不幸的是,在JLine中的样式设置大部分没有文档说明,但我们尝试在这里介绍一些其特性。spring-doc.cadn.net.cn

JLine中,一种样式规范是一个具有特殊格式的字符串。如果需要多次指定样式规范,可以通过逗号分隔。一个规范将要么定义前景色、背景色或者其模式。特殊格式<spec>:=<spec>允许在一个后续规范中定义默认值,如果前一个规范由于某些原因无效。spring-doc.cadn.net.cn

如果规格包含冒号,则其前部表示前景或背景,并且可能的值为foregroundfgfbackgroundbgbforeground-rgbfg-rgbf-rgbbackground-rgbbg-rgbb-rgb。如果没有 rgb,则颜色值是从允许的颜色名称中选择的blackredgreenyellowbluemagentacyanwhite。颜色具有其简短格式krgybmcw。如果颜色前面带有!bright-,则自动应用明亮模式。使用~前缀将从 JLine 内部的 BSD 颜色表中解析颜色。spring-doc.cadn.net.cn

如果需要使用rgb格式,并且前面被标记为x#,则使用正常的十六进制格式。spring-doc.cadn.net.cn

fg-red
fg-r
fg-rgb:red
fg-rgb:xff3333
fg-rgb:#ff3333

如果规范包含特殊名称defaultboldfaintitalicunderlineblinkinverseinverse-neginversenegconcealcrossed-outcrossedouthidden 则会相应地更改样式并使用现有颜色。spring-doc.cadn.net.cn

bold
bold,fg:red

如果规格是一个数字或用分号分隔的多个数字,则格式是ANSI ASCII代码的一部分。spring-doc.cadn.net.cn

31
31;1
JLine特殊映射格式,用于解决以点开头的spec将不能被使用,因为我们还没有将这些映射到Spring Shell样式名称中。