本节介绍如何配置字符应用程序对象。另外还讨论了终端仿真器映射。
本节包括以下主题:
如果要向用户提供 VT420、Wyse 60 或 SCO 控制台字符应用程序,可以使用字符应用程序对象。
在管理控制台中,字符应用程序对象的配置设置分散在以下选项卡中:
"General"(常规)选项卡-这些设置控制创建用户链接时使用的名称和图标
"Launch"(启动)选项卡-这些设置控制启动应用程序的方式以及是否可以暂停和恢复应用程序会话
"Presentation"(表示)选项卡-这些设置控制向用户显示应用程序的方式
"Performance"(性能)选项卡-这些设置用于优化应用程序的性能
"Client Device"(客户端设备)选项卡-这些设置控制用户的客户端设备与应用程序的交互方式
下表列出了配置字符应用程序对象最常用的设置及其使用方法。
属性 | 描述 |
---|---|
Name(名称) | 用户看到的名称。 |
Icon(图标) | 用户看到的图标。 |
Application Command(应用程序命令) | 用户单击链接时运行的应用程序的完整路径。 在所有应用服务器上,该应用程序必须安装在相同的位置。 另请参见第 4.8.9 节 “配置 VMS 应用程序”,了解有关如何配置虚拟内存系统 (Virtual Memory System, VMS) 字符应用程序的详细信息。 |
Arguments for Command(命令的参数) | 启动应用程序时要使用的任何命令行参数。 |
Connection Method(连接方法) | SGD 用于连接至应用服务器(例如 ssh 或 telnet)的机制。 |
Number of Sessions(会话数) | 用户可以运行的应用程序的实例数量。默认为三个。 |
Application Resumability(应用程序可恢复性) | 应用程序在多长时间内可以恢复。以下选项可供使用:
|
Window Close Action(窗口关闭操作) | 当用户使用窗口管理器装饰控件来关闭主应用程序窗口时所发生的操作。此属性仅适用于使用独立窗口的应用程序。 |
Window Type(窗口类型) | 向用户显示应用程序的方式。 如果选择 "Independent Window"(独立窗口),则必须为 "Window Size"(窗口大小)指定 "Height"(高度)和 "Width"(宽度),或选中 "Client's Maximum Size"(客户端最大窗口大小)复选框。 指定要在终端窗口中显示的列数和行数。 |
Emulation Type(仿真类型) | 要仿真的字符应用程序类型。SGD 支持 VT420、Wyse 60 或 SCO 控制台字符应用程序。 |
Terminal Type(终端类型) | 应用程序的终端类型。接受默认的终端类型,或在 "Custom"(定制)字段中键入您自己的类型。 |
Application Load Balancing(应用程序负载平衡) | SGD 如何选择最佳的应用服务器来运行应用程序。 有关更多详细信息,请参见第 7.2.3 节 “Application Load Balancing(应用程序负载平衡)”。 |
"Hosting Application Servers"(托管应用服务器)选项卡 | 使用 "Editable Assignments"(可编辑的分配)表选择可以运行应用程序的应用服务器或应用服务器组。 在所有应用服务器上,该应用程序必须安装在相同的位置。 |
"Assigned User Profiles"(分配的用户配置文件)选项卡 | 使用 "Editable Assignments"(可编辑的分配)表选择可以看到应用程序的用户。选择目录或目录(轻量)对象允许您一次将应用程序提供给多个用户。您也可以使用 LDAP 目录分配应用程序。请参见第 3.2.2 节 “LDAP 分配”。 |
要使用和显示欧洲字符,终端会话必须能够显示 8 位字符。为了确保此条件,请输入命令 stty -istrip。另外,客户端设备必须能够输入欧洲字符。
在命令行中,使用 tarantella object new_charapp 命令创建字符应用程序对象。您也可以使用 tarantella object script 命令同时创建多个字符应用程序对象。请参见第 3.1.5 节 “使用批处理脚本填充 SGD 组织层次结构”。
字符应用程序对象仅能在 o=applications
组织分层结构中创建。
SGD 终端仿真器将用户客户端键盘上的键与真实终端上的键进行关联。对于每种类型的终端仿真器:SCO 控制台、Wyse 60 和 VT420,都存在默认的键盘映射。
要针对特定的应用程序更改默认的映射或定义其他映射,您可以使用对象的 "Keyboard Map"(键盘映射)属性指定您自己的键盘映射文件。
仿真器具有内置的键盘映射,这些映射等效于 /opt/tarantella/etc/data/keymaps
目录中的以下示例键映射文件:
ansikey.txt
-适用于 SCO 控制台仿真器
vt420key.txt
-适用于 VT420 仿真器
w60key.txt
-适用于 Wyse 60 仿真器
修改这些键盘映射不会更改 SGD 使用的默认映射。执行此操作的唯一方法是使用字符应用程序对象的 --keymap
属性指定键盘映射。
要创建您自己的键盘映射,请复制一个示例键盘映射文件,然后对其进行修改以适用于您的应用程序。您可以在任何文本编辑器中修改键盘映射。
映射的格式为:
ClientKeys
=Translation
其中 ClientKeys
是用户在客户端设备上所按的一个或多个键,Translation
是发送到应用服务器上的应用程序的一个或多个击键。例如:
PageDown=Next
通过此映射,当用户按 Page Down 键时,仿真器将击键 Next 发送到应用服务器。
如果特定键具有用户定义的映射,则会覆盖默认的设置。如果没有用户定义的映射,则将默认的映射发送到应用服务器。
您可以将字符串括在直引号中,以便通过按一个键发送完整的字符串。例如:
F1="hello world"
要在映射字符串时输入不可打印的字符,请使用下表中显示的代码:
代码 | 含义 |
---|---|
\r | 回车符 |
\n | 换行符 |
\" | 直引号 |
\e | 转义 |
\t | 制表符 |
\ |
具有八进制值 |
\x |
具有十六进制值 |
要在映射中指定修改键,例如 Shift、Ctrl 和 Alt,请使用加号 + 分隔这些键。例如:
Shift+NUMLOCK=INSLINE Shift+F1="\0330a" Alt+Shift+Control+DELETE="\003[33~"
要针对字符应用程序指定您自己的键盘映射,请使用以下命令:
$ tarantella object edit --nameobj
--keymapkeymap
其中 obj
是字符应用程序对象,keymap
是键盘映射文件的路径名。
您可以使用完整路径名或相对路径名。相对路径名相对于 /opt/tarantella/etc/data/keymaps
目录。
例如,以下示例使用存储在 /opt/tarantella/etc/data/keymaps
中的命名键盘映射。
$ tarantella object edit --nameobj
--keymapmykeymap.txt
以下是在 SGD 键盘映射中有效的键名列表。第 4.4.2.4 节 “客户端设备键” 列表显示了代表用户客户端设备上的键的键名。这些键可以映射到 第 4.4.2.5 节 “应用服务器击键” 中给定的仿真器键名,而这些键名是最终发送到应用服务器上的应用程序的击键。
这些键名之间的默认映射与 SGD 随附的键盘映射一致。如果某个键未包含在键盘映射中,则不会将其映射。
SGD 支持用户客户端设备上的以下键:
CURSOR_DOWN
CURSOR_LEFT
CURSOR_RIGHT
CURSOR_UP
DELETE
END
F1 到 F12
HOME
INSERT
KP0 到 KP9
KPADD
KPDELETE
KPDIVIDE
KPENTER
KPMULTIPLY
KPSUBSTRACT
NUMLOCK
PAGEDOWN
PAGEUP
SCO 控制台应用程序支持以下应用服务器击键:
CURSOR_DOWN
CURSOR_LEFT
CURSOR_RIGHT
CURSOR_UP
DELETE
END
F1 到 F12
HOME
INSERT
KP0 到 KP9
KPADD
KPDIVIDE
KPDOT
KPMULTIPLY
KPSUBSTRACT
NUMLOCK
PAGEDOWN
PAGEUP
VT420 应用程序支持以下应用服务器击键:
CURSOR_DOWN
CURSOR_LEFT
CURSOR_RIGHT
CURSOR_UP
F1 到 F20
FIND
INSERT
KP0 到 KP9
KPCOMMA
KPDOT
KPENTER
KPMINUS
NEXT
PF1 到 PF4
PREV
REMOVE
SELECT
Wyse 60 应用程序支持以下应用服务器击键:
CLRLINE
CLRSCR
CURSOR_DOWN
CURSOR_LEFT
CURSOR_RIGHT
CURSOR_UP
DELCHAR
DELETE
DELLINE
F1 到 F16
HOME
INSCHAR
INSERT
INSLINE
KP0 到 KP9
KPCOMMA
KPDELETE
KPENTER
KPMINUS
NEXT
PREV
REPLACE
SEND
SHIFTHOME
终端仿真器属性映射允许您更改字符属性(例如粗体或下划线)在 SGD 终端仿真器中的显示方式。例如,可以指定通常显示为粗体和带下划线的文本在 SGD 终端仿真器中显示为红色,但不是同时显示红色以及粗体和下划线。
SGD 提供了默认属性映射 /opt/tarantella/etc/data/attrmap.txt
。其将字符属性映射到逻辑颜色 Color_15
(白色)。您也可以创建您自己的属性映射。
以超级用户 (root) 身份创建要处理的 /opt/tarantella/etc/data/attrmap.txt
副本。
编辑新的文件,以便字符属性映射到您选择的颜色。
使用应用程序对象的 "Attribute Map"(属性映射)属性的文件名。
SGD 属性映射允许您映射以下属性:
Normal(正常)
Bold(粗体)
Dim(暗淡)
Blinking(闪烁)
Underline(下划线)
Inverse(反显)
要映射属性组合,请使用加号 + 分隔各个属性,例如 Bold+Underline
。
为了在终端仿真器中显示颜色,SGD 将逻辑颜色映射到 RGB 值。例如,逻辑颜色 Color_9
映射到 RGB 值 128 0 0
(红色)。
在属性映射中将属性映射到颜色时,请指定逻辑颜色名称。例如:
将带下划线的粗体文本更改为红色文本:
Bold+Underline=Color_9
将反显闪烁文本更改为浅红色文本:
Inverse+Blinking=Color_1
有关逻辑颜色到 RGB 值映射的完整列表,请参见 attrmap.txt
中的注释。
您可以通过编辑终端仿真器使用的颜色映射来更改默认的颜色映射。请参见第 4.4.4 节 “终端仿真器颜色映射”。
Wyse 60 终端仅显示黑色和白色。但是,您可以使用 SGD Wyse 60 终端仿真器在 Wyse 60 应用程序中显示颜色。您可以通过使用属性映射将 Wyse 60 应用程序中的字符属性映射到颜色来实现该过程。
SCO 控制台 (ANSI) 和 VT420 终端支持 16 种颜色。SGD 终端仿真器使用颜色映射确定如何将这些颜色显示在应用程序会话中。
Wyse 60 终端是单色的。您只能使用颜色映射切换背景色和前景色(黑色和白色)。但是,可以将字符属性(例如粗体或下划线)映射到终端仿真器支持的 16 种逻辑颜色中的任何颜色。请参见第 4.4.3 节 “终端仿真器属性映射”。
颜色映射将逻辑颜色 Color_0
(含)到 Color_15
(含)映射到颜色和 SGD 用于表示这些颜色的 RGB 值。默认映射如下:
逻辑颜色 | 终端颜色 | SGD 使用的 RGB 值 |
---|---|---|
| 黑色 | 0 0 0 |
| 浅红色 | 255 0 0 |
| 浅绿色 | 0 255 0 |
| 黄色 | 255 255 0 |
| 浅蓝色 | 0 0 255 |
| 浅品红色 | 255 0 255 |
| 浅青色 | 0 255 255 |
| 高度白色 | 255 255 255 |
| 灰色 | 128 128 128 |
| 红色 | 128 0 0 |
| 绿色 | 0 128 0 |
| 棕色 | 128 128 0 |
| 蓝色 | 0 0 128 |
| 品红色 | 128 0 128 |
| 青色 | 0 128 128 |
| 白色 | 192 192 192 |
要更改特定应用程序的默认设置,请创建您自己的颜色映射,并在应用程序对象的 "Color Map"(颜色映射)属性中指定此映射。
提供了默认的文本格式颜色映射 /opt/tarantella/etc/data/colormap.txt
。