SecureCRT 配色方案 VBScript 脚本
SecureCRT 配色方案 VBScript 脚本
以下是一个完整的 VBScript 脚本,用于配置 SecureCRT 的配色方案。这个脚本可以设置多种终端颜色,包括背景色、前景色以及 ANSI 颜色调色板。
基础配色方案脚本
Sub Main' 获取当前会话配置对象Set config = crt.Session.Config' 设置基本颜色方案config.SetOption("ANSI Color RGB", True) ' 启用RGB颜色' 设置背景和前景色config.SetOption("Background Color", RGB(0, 0, 0)) ' 黑色背景config.SetOption("Text Color", RGB(220, 220, 220)) ' 浅灰色文本' 设置ANSI 16色调色板' 标准颜色 (0-7)config.SetOption("Color 0", RGB(0, 0, 0)) ' 黑色config.SetOption("Color 1", RGB(170, 0, 0)) ' 红色config.SetOption("Color 2", RGB(0, 170, 0)) ' 绿色config.SetOption("Color 3", RGB(170, 85, 0)) ' 黄色config.SetOption("Color 4", RGB(0, 0, 170)) ' 蓝色config.SetOption("Color 5", RGB(170, 0, 170)) ' 洋红config.SetOption("Color 6", RGB(0, 170, 170)) ' 青色config.SetOption("Color 7", RGB(170, 170, 170)) ' 白色' 亮色 (8-15)config.SetOption("Color 8", RGB(85, 85, 85)) ' 亮黑(灰)config.SetOption("Color 9", RGB(255, 85, 85)) ' 亮红config.SetOption("Color 10", RGB(85, 255, 85)) ' 亮绿config.SetOption("Color 11", RGB(255, 255, 85)) ' 亮黄config.SetOption("Color 12", RGB(85, 85, 255)) ' 亮蓝config.SetOption("Color 13", RGB(255, 85, 255)) ' 亮洋红config.SetOption("Color 14", RGB(85, 255, 255)) ' 亮青config.SetOption("Color 15", RGB(255, 255, 255)) ' 亮白' 光标颜色config.SetOption("Cursor Color", RGB(255, 255, 0)) ' 黄色光标' 保存设置config.Save' 应用新配色方案crt.Screen.Reset
End Sub
流行的配色方案
1. Solarized Dark 主题
Sub SolarizedDarkSet config = crt.Session.Configconfig.SetOption("ANSI Color RGB", True)' 基础颜色config.SetOption("Background Color", RGB(0, 43, 54)) ' 深蓝绿背景config.SetOption("Text Color", RGB(131, 148, 150)) ' 浅灰文本' Solarized调色板config.SetOption("Color 0", RGB(7, 54, 66)) ' 基础03config.SetOption("Color 1", RGB(220, 50, 47)) ' 红色config.SetOption("Color 2", RGB(133, 153, 0)) ' 绿色config.SetOption("Color 3", RGB(181, 137, 0)) ' 黄色config.SetOption("Color 4", RGB(38, 139, 210)) ' 蓝色config.SetOption("Color 5", RGB(211, 54, 130)) ' 洋红config.SetOption("Color 6", RGB(42, 161, 152)) ' 青色config.SetOption("Color 7", RGB(238, 232, 213)) ' 基础2' 亮色config.SetOption("Color 8", RGB(0, 43, 54)) ' 基础03config.SetOption("Color 9", RGB(203, 75, 22)) ' 橙色config.SetOption("Color 10", RGB(88, 110, 117)) ' 基础01config.SetOption("Color 11", RGB(101, 123, 131)) ' 基础00config.SetOption("Color 12", RGB(131, 148, 150)) ' 基础0config.SetOption("Color 13", RGB(108, 113, 196)) ' 紫罗兰config.SetOption("Color 14", RGB(147, 161, 161)) ' 基础1config.SetOption("Color 15", RGB(253, 246, 227)) ' 基础3config.SetOption("Cursor Color", RGB(147, 161, 161))config.Savecrt.Screen.Reset
End Sub
2. Dracula 主题
Sub DraculaThemeSet config = crt.Session.Configconfig.SetOption("ANSI Color RGB", True)' 基础颜色config.SetOption("Background Color", RGB(40, 42, 54))config.SetOption("Text Color", RGB(248, 248, 242))' Dracula调色板config.SetOption("Color 0", RGB(40, 42, 54)) ' 背景config.SetOption("Color 1", RGB(255, 85, 85)) ' 红色config.SetOption("Color 2", RGB(80, 250, 123)) ' 绿色config.SetOption("Color 3", RGB(241, 250, 140)) ' 黄色config.SetOption("Color 4", RGB(189, 147, 249)) ' 紫色config.SetOption("Color 5", RGB(255, 121, 198)) ' 粉红config.SetOption("Color 6", RGB(139, 233, 253)) ' 青色config.SetOption("Color 7", RGB(248, 248, 242)) ' 前景' 亮色config.SetOption("Color 8", RGB(98, 114, 164)) ' 注释config.SetOption("Color 9", RGB(255, 85, 85)) config.SetOption("Color 10", RGB(80, 250, 123)) config.SetOption("Color 11", RGB(241, 250, 140)) config.SetOption("Color 12", RGB(189, 147, 249)) config.SetOption("Color 13", RGB(255, 121, 198))config.SetOption("Color 14", RGB(139, 233, 253)) config.SetOption("Color 15", RGB(255, 255, 255)) config.SetOption("Cursor Color", RGB(248, 248, 242))config.Savecrt.Screen.Reset
End Sub
使用说明
- 将上述脚本保存为
.vbs
文件 - 在 SecureCRT 中通过菜单 “Script” > “Run” 执行脚本
- 或者将脚本添加到 SecureCRT 的自动加载脚本中
高级技巧
动态切换配色方案
Sub ToggleColorSchemecurrentBg = crt.Session.Config.GetOption("Background Color")If currentBg = RGB(0, 0, 0) ThenSolarizedDarkElseIf currentBg = RGB(0, 43, 54) ThenDraculaThemeElse' 默认回到黑色背景MainEnd If
End Sub
将配色方案应用到所有会话
Sub ApplyToAllSessionsFor Each sess In crt.Sessionssess.Config.SetOption("Background Color", RGB(0, 43, 54))sess.Config.SetOption("Text Color", RGB(131, 148, 150))' 设置其他颜色...sess.Config.SaveNext
End Sub
这些脚本可以帮助您快速配置和切换 SecureCRT 的配色方案,提高终端使用的舒适度和工作效率。
VBScript 脚本
脚本切换配色方案
三种方式切换:
- 菜单栏: Script -> run 选择创建的 changeColorScheme.vbs
- 通过快捷键:在 Session Options -> Terminal -> Emulation -> Mapped Keys 中配置快捷键调用 vbs 脚本
- 通过自定义按钮:参考官方配置自定义按钮运行脚本 (https://www.vandyke.com/support/tips/scripting/scripting_essentials.pdf 第二章节)
#$language = "VBScript"
#$interface = "1.0"
' change current color scheme...
' Traditional 切换为 Monochrome, Monochrome 切换为 Traditional, 其它配色方案切换为 MonochromeSub MainDim currentColorScheme, newColorScheme'经典绿字黑底(Traditional),GetOption 和 getOption 不区分大小写currentColorScheme = crt.Session.Config.GetOption("Color Scheme")newColorScheme = "Traditional"If currentColorScheme = "Traditional" ThennewColorScheme = "Monochrome"ElseIf currentColorScheme = "Monochrome" ThennewColorScheme = "Traditional"ElsenewColorScheme = "Monochrome"End Ifcrt.Session.Config.SetOption "Color Scheme", newColorScheme'call crt.Session.Config.SetOption("Color Scheme", "Monochrome")
End Sub
Screen执行命令
#$language = "VBScript"
#$interface = "1.0"
crt.Screen.Synchronous = TrueSub Maincrt.Screen.Send "echo 123" & chr(13)
End Sub