键盘

键盘行为

生成远程 Ctrl+Alt+Delete 键组合:

  1. 确定哪组键组合将在远程虚拟桌面上创建 Ctrl+Alt+Delete 组合。
  2. 在相应配置文件的 WFClient 部分中,配置 UseCtrlAltEnd:
    • True 表示 Ctrl+Alt+End 会将 Ctrl+Alt+Delete 组合传递到远程桌面。
    • False(默认设置)表示 Ctrl+Alt+Enter 会将 Ctrl+Alt+Delete 组合传递到远程桌面。

通用重定向

在客户端通过通用 USB 重定向配置 Bloomberg v4 键盘:

首先,必须在 Domain Delivery Controller (DDC) 中启用该策略。

  1. 查找 Bloomberg 键盘的 vid 和 pid。例如,在 Debian 和 Ubuntu 中运行以下命令:

    lsusb

  2. 转至 $ICAROOT 并编辑 usb.conf 文件。

  3. 在 usb.conf 文件中添加以下条目以允许对 Bloomberg 键盘进行 USB 重定向,然后保存该文件。

    ALLOW: vid=1188 pid=9545

  4. 重新启动客户端上的 ctxusbd 守护程序。例如,在 Debian 和 Ubuntu 中运行以下命令:

    systemctl restart ctxusbd

  5. 启动客户端会话。请确保在插入 Bloomberg v4 键盘时会话具有焦点,以便进行重定向。

注意:

您可以添加以下配置来禁用 selectconfiguration 命令:

ALLOW: vid=1100 pid=0101 disableselectconfig=1

selectconfiguration 是 VDA 中用于配置 USB 设备的命令。

选择性重定向

此功能允许跨多个会话使用 Bloomberg 键盘 v4 和 v5 接口。此功能提供了在所有远程会话中灵活使用键盘的能力,但指纹和音频接口除外。指纹和音频接口像以前一样重定向到单个会话。

要启用此功能,请执行以下操作:

  1. $HOME/.ICAClient/wfclient.ini 文件中按如下所示编辑 BloombergRedirection 部分。

    BloombergRedirection=true
    <!--NeedCopy-->
    
  2. 执行通用重定向中提及的所有步骤。

禁用此功能:

  1. $HOME/.ICAClient/wfclient.ini 文件中按如下所示编辑 BloombergRedirection 部分。

    BloombergRedirection=false
    <!--NeedCopy-->
    
  2. 执行通用重定向中提及的所有步骤。

注意:

将该值设置为 false 会将功能还原到早期版本的客户端中出现的行为,即所有接口都重定向到单个会话。

支持用于在全屏模式与窗口模式之间切换的键盘快捷方式

以前,您可以使用 Desktop Viewer 上的窗口全屏按钮在全屏模式与窗口模式之间切换。

自 Citrix Workspace 应用程序 2308 版本起,您可以使用键盘快捷键 Ctrl+F2 在全屏模式与窗口模式之间切换。例如,当桌面会话处于全屏模式时,如果按“Ctrl+F2”,桌面会话将退出全屏模式。

默认情况下,此功能处于禁用状态。

启用该功能:

  1. 安装新版适用于 Linux 的 Citrix Workspace 应用程序时,如果当前用户的主文件夹中已经存在 .ICAClient

    删除 All_Regions.ini 文件。 或者 请保留 All_Regions.ini 文件并在 [Client Engine\Application Launching] 部分的结尾处添加以下行:

        FullScreenShortcutSupport=*
    <!--NeedCopy-->
    
  2. 导航到 /opt/Citrix/ICAClient/config/All_Regions.ini 文件并按如下所示修改 FullScreenShortcutSupport 的值:

     FullScreenShortcutSupport=true
    <!--NeedCopy-->
    

    默认情况下,键盘快捷键为 Ctrl+F2。

您也可以自定义快捷键。快捷键由两个不同的部分组成,例如 All_Regions.ini 文件中的 KeyPassthroughEscapeShiftKeyPassthroughEscapeChar

您使用的两个键必须来自以下列表:

名称 部分
KeyPassthroughEscapeShift All_Regions.ini 中的 [虚拟通道\键盘] [Alt、Ctrl、Shift、Alt+Ctrl、Alt+Shift、Ctrl+Shift、Alt+Ctrl+Shift],默认值:Ctrl
KeyPassthroughEscapeChar All_Regions.ini 中的 [虚拟通道\键盘] [F1、F2、F3、F4、F5、F6、F7、F8、F9、F10、F11、F12、减号、加号、Tab、暂停],默认值:F2,注意:减号和加号是指字键盘上的按键。

例如,如果要使用“Ctrl+Shift+F3”作为键盘快捷键,配置项必须如下所示:

  • KeyPassthroughEscapeShift=Ctrl+Shift
  • KeyPassthroughEscapeChar=F3

限制:

  • 如果您使用的键盘组合与客户端操作系统快捷键冲突或者包含系统快捷键,全屏切换开关可能不起作用,因为客户端操作系统优先使用此快捷键。例如,如果您使用“Ctrl + F3”作为 Linux 操作系统的系统快捷键,则不能使用“Ctrl + F3”或“Shift+ Ctrl + F3”作为 Citrix Workspace 应用程序的全屏切换开关。
  • Ctrl+Alt+F'*'Alt+Ctrl+F'*'F'*' 是指 F1-F12)是用于在 Linux 中的虚拟终端之间进行切换的键盘快捷键。这些快捷键不得用于全屏切换开关。
  • Alt+Ctrl+Plus 或 Alt+Ctrl+Minus(加号和减号是指数字键盘上的按键)映射到 Linux 系统中的符号 XF86Next_VMode/XF86Prev_VMode,不适用于快捷键。因此,这些组合不得用于全屏切换开关。

键盘布局同步

键盘布局同步允许您在客户端设备上的首选键盘布局之间切换。默认情况下,此功能处于禁用状态。启用此功能后,客户端键盘布局会自动同步到虚拟应用程序和桌面。

自版本 2203 起,Citrix Workspace 应用程序支持以下三种不同的键盘布局同步模式:

  • 仅同步一次 - 会话启动时 - 根据 wfclient.ini 文件中的 KeyboardLayout 值,客户端键盘布局会在会话启动时同步到服务器。如果 KeyboardLayout 值设置为 0,系统键盘将同步到 VDA。如果将 KeyboardLayout 值设置为特定语言,则语言特定的键盘将同步到 VDA。在会话期间对客户端键盘布局所做的任何更改都不会立即生效。要应用更改,请注销并登录应用程序。此外,如果您再次登录或重新连接到 VDA 会话,更改也会生效。仅同步一次 - 会话启动时模式是为 Citrix Workspace 应用程序选择的默认键盘布局。
  • 允许动态同步 - 更改客户端键盘布局时,此选项会将客户端键盘布局同步到服务器。
  • 不同步 - 指示客户端使用服务器上存在的键盘布局。

必备条件:

  • 在 Windows VDA 上启用 Unicode 键盘布局映射功能。有关详细信息,请参阅知识中心文章 CTX226335

  • 在 Linux VDA 上启用动态键盘布局同步功能。有关详细信息,请参阅动态键盘布局同步
  • 键盘布局同步取决于 XKB lib。
  • 使用 Windows Server 2016 或 Windows Server 2019 时,请导航到 HKEY_LOCAL_MACHINE\Software\Citrix\ICA\IcaIme 注册表路径。然后,添加一个注册表项名称为 DisableKeyboardSync 的 DWORD 值并将该值设置为 0
  • 如果 .ICAClient 已存在于当前用户的主文件夹中:

    删除 All_Regions.ini 文件

    要保留 All_Regions.ini 文件,请在 [Virtual Channels\Keyboard] 部分的末尾添加以下行:

    KeyboardSyncMode=

    KeyboardEventMode=

配置键盘布局

Citrix Workspace 应用程序提供用户界面和配置设置,用于启用三种不同的键盘布局同步模式。

要使用图形用户界面配置键盘布局同步,请执行以下操作:

  1. 从通知区域中的 Citrix Workspace 应用程序图标中,选择首选项

    或者,

    打开终端,导航到安装路径,然后运行以下命令:

    util/configmgr

    此时将显示 Citrix Workspace - 首选项对话框。

    键盘布局同步设置示意图

  2. 单击键盘选项卡。

    此时将显示键盘布局同步设置页面。

  3. 选择以下选项之一:

    • 仅同步一次 - 会话启动时 - 指示键盘布局仅在会话启动时同步到 VDA 一次。Unicode 键盘输入模式是仅同步一次 - 会话启动时模式的推荐选项。
    • 允许动态同步 - 指示在会话中更改了客户端键盘时将键盘布局动态同步到 VDA。对于允许动态同步模式,建议使用的选项是 Unicode 键盘输入模式。
    • 不同步 - 指示客户端使用服务器上存在的键盘布局,与在客户端中选择的键盘布局无关。Scancode 键盘输入模式是不同步模式的推荐选项。如果为不同步选项选择“Unicode”,则必须确保客户端键盘布局与 VDA 上的键盘布局相同。
  4. 单击保存和关闭

要使用配置文件设置配置键盘布局同步,请执行以下操作:

修改 wfclient.ini 配置文件以启用所需的键盘布局。

仅同步一次 - 会话启动时:

启用此功能后,启动会话时,客户端设备上的活动键盘布局将同步到 VDA。根据 wfclient.ini 文件中的 KeyboardLayout 值,客户端键盘布局会在会话启动时同步到服务器。如果 KeyboardLayout 值设置为 0,系统键盘将同步到 VDA。如果将 KeyboardLayout 值设置为特定语言,则语言特定的键盘将同步到 VDA。

要选择此模式,请执行以下操作:

  1. 导航到 $HOME/.ICAClient/wfclient.ini 配置文件。
  2. 添加以下条目:

    KeyboardSyncMode=Once
    KeyboardEventMode=Unicode (or KeyboardEventMode= Scancode)
    <!--NeedCopy-->
    

Unicode 键盘输入模式是仅同步一次 - 会话启动时模式的推荐选项。

允许动态同步:

启用此功能后,如果会话过程中客户端设备上的键盘布局发生变化,会话的键盘布局也将正确地发生变化。

要选择此模式,请执行以下操作:

  1. 导航到 $HOME/.ICAClient/wfclient.ini 配置文件。
  2. 添加以下条目:

    KeyboardSyncMode=Dynamic
    KeyboardEventMode=Unicode (or KeyboardEventMode= Scancode)
    <!--NeedCopy-->
    

对于允许动态同步模式,建议使用的选项是 Unicode 键盘输入模式。

不同步:

启用此功能后,无论在客户端设备中选择哪种键盘布局,都将使用 VDA 端键盘布局。

要选择此模式,请执行以下操作:

  1. 导航到 $HOME/.ICAClient/wfclient.ini 配置文件。
  2. 添加以下条目:

    KeyboardSyncMode=No
    KeyboardEventMode= Scancode (or KeyboardEventMode= Unicode)
    <!--NeedCopy-->
    

Scancode 键盘输入模式是不同步模式的推荐选项。如果将不同步选项配置为 Unicode,则必须确保客户端键盘布局与 VDA 端键盘布局相同。

注意:

wfclient.ini 文件中设置 KeyboardSyncMode=""(空)时,模式将还原到之前的行为。在之前的行为中,键盘布局是从 $HOME/.ICAClient/wfclient.ini 文件中读取的。并且,在会话启动时,将此值与其他客户端信息一起发送到 VDA。

键盘输入模式

Citrix 建议不同的键盘布局同步选项使用以下键盘输入模式:

  • 不同步选项的 Scancode 模式。
  • 允许动态同步仅同步一次 - 会话启动时选项的 Unicode 模式。

可以在 wfclient.ini 文件中更改 KeyboardEventMode 的配置。但是,为了获得最佳性能,请针对不同的场景、物理键盘和客户端设备使用 Citrix 推荐的模式。

键盘输入模式增强功能

以前,您只能通过更新配置文件中 KeyboardEventMode 的值来启用不同的键盘输入模式。没有用于选择键盘输入模式的 UI 选项。

自 Citrix Workspace 应用程序 2309 起,您可以从新推出的键盘输入模式设置部分中配置不同的键盘输入模式。您可以选择 ScancodeUnicode 作为键盘输入模式。

要使用 GUI 配置键盘输入模式,请执行以下操作:

  1. 从通知区域中的 Citrix Workspace 应用程序图标中,选择首选项。 此时将显示 Citrix Workspace - 首选项对话框。
  2. 单击“键盘”。 您可以看到键盘输入模式设置部分。

    键盘输入模式设置

  3. 选择以下选项之一:

    • Scancode - 将按键位置从客户端键盘发送到 VDA,VDA 将生成相应的字符。应用服务器端键盘布局。
    • Unicode - 将密钥从客户端键盘发送到 VDA,VDA 在 VDA 中生成相同的字符。应用客户端键盘布局。

    默认情况下,选择键盘输入模式设置为 Unicode。有关键盘输入模式的详细信息,请参阅键盘布局同步文档中的配置键盘布局部分。

  4. 单击保存和关闭

注意:

键盘配置更改将在您重新连接到应用程序后生效。如果您在 UI 中更改键盘输入模式,wfclient.ini 文件中 KeyboardEventMode 的参数值也会自动更新。

例如,假设您使用的是美国国际键盘布局,而 VDA 使用俄语键盘布局。

当您选择 Scancode 并键入 Caps Lock 旁边的键时,Scancode 1E 将发送到 VDA。VDA 随后使用 1E 来显示字符 ф

如果您选择 Unicode 并键入 Caps Lock 旁边的键,字符 a 将发送到 VDA。因此,即使 VDA 使用俄语键盘布局,字符 a 也会出现在屏幕上。

支持扩展键盘布局

自适用于 Linux 的 Citrix Workspace 应用程序版本 2309 起,Scancode 键盘输入模式支持以下扩展键盘布局:

  • 日语 106 键盘
  • 葡萄牙语 ABNT/ABNT2 键盘
  • 多媒体键盘

Scancode 键盘输入模式支持扩展键盘布局以及所有键盘布局同步模式。

默认情况下启用此支持。但是,请执行下面额外的步骤来配置“日语 106 键盘”:

  1. 导航到 $HOME/.ICAClient/wfclient.ini 配置文件。
  2. 添加以下条目:

    KeyboardType=106 Keyboard (Japanese)
    <!--NeedCopy-->
    

适用于东亚语言的客户端 IME

客户端输入法编辑器 (IME) 功能增强了在适用于 Linux 的 Citrix Workspace 应用程序中使用中文、日语和韩语 (CJK) 语言字符的输入和显示体验。如果您在 Linux 客户端中有最喜欢的 IME,或者远程服务器上没有 IME,则可以选择使用客户端 IME。

要启用此功能,请执行以下操作:

  1. 导航到 $HOME/.ICAClient/wfclient.ini 配置文件。
  2. 添加以下条目:

    KeyboardEventMode=Unicode
    UseLocalIM=True
    <!--NeedCopy-->
    

如果您的客户端 Linux 发行版没有正常运行的 iBus,则必须设置 KeyboardLayout 值。必须在 wfclient.ini 配置文件中根据您的 IME 语言明确设置此值,如下所示:

  • 对于中文 IME - KeyboardLayout=Chinese (PRC)
  • 对于日语 IME - KeyboardLayout=Japanese (JIS)
  • 对于韩语 IME - KeyboardLayout=Korean

增强了支持 GNOME 42 的键盘布局同步的功能

自 2305 版本起,适用于 Linux 的 Citrix Workspace 应用程序支持使用 GNOME 42 桌面环境及更高版本的 Ubuntu 22.04 等桌面的键盘布局同步。

针对 Windows VDA 和 Linux VDA 的键盘布局支持

Linux 客户端键盘说明 Linux 客户端键盘布局 Linux 客户端键盘变体 同步到 Windows 区域设置 ID Windows VDA 键盘布局 (ID) Linux VDA 键盘布局 Linux VDA 键盘变体
阿拉伯语 ara - ar-SA 00000401 ara -
阿拉伯语 (AZERTY) ara azerty ar-DZ 00020401 ara azerty
德语(奥地利) at - de-AT 00000407 at -
比利时语(alt. ISO) be iso-alternate fr-BE 0000080c be iso-alternate
比利时语 be - nl-BE 00000813 be -
保加利亚语 bg - bg-BG 00030402 bg -
保加利亚语(传统语音) bg phonetic bg-BG 00040402 bg phonetic
保加利亚语(新语音) bg bas_phonetic bg-BG 00020402 bg bas_phonetic
葡萄牙语(巴西) br - pt-BR 00000416 br -
白俄罗斯语 by - be-BY 00000423 by -
英语(加拿大) ca eng en-CA 00000409 ca eng
加拿大多语言 ca multix fr-CA 00011009 ca multix
法语(加拿大,传统) ca fr-legacy fr-CA 00000c0c ca fr-legacy
法语(加拿大) ca - fr-CA 00001009 ca -
法语(瑞士) ch fr fr-CH 0000100c ch fr
德语(瑞士) ch - de-CH 00000807 ch -
简体中文 cn - en-US 00000409 us -
捷克语 cz - cs-CZ 00000405 cz -
捷克语(QWERTY) cz qwerty cs-CZ 00010405 cz qwerty
德语 de - de-DE 00000407 de -
德语(Macintosh) de mac de-DE 00000407 de mac
丹麦语 dk - da-DK 00000406 dk -
爱沙尼亚语 ee - et-EE 00000425 ee -
西班牙语(拉丁美洲) es - es-ES 0000040a es -
西班牙语(Macintosh) es mac es-ES 0000040a es mac
芬兰语 fi - fi-FI 0000040b fi -
法语 fr - fr-FR 0000040c fr -
法语(Macintosh) fr mac fr-FR 0000040c fr mac
英语(英国) gb - en-GB 00000809 gb -
英语(Macintosh) gb mac en-GB 00000809 gb mac
英语(英国,扩展,带 Win 键) gb extd en-GB 00000452 gb extd
希腊语 gr - el-GR 00000408 gr -
克罗地亚语 hr - hr-HR 0000041a hr -
匈牙利语 hu - hu-HU 0000040e hu -
爱尔兰语 ie - en-IE 00001809 ie -
希伯来语 il - he-IL 0002040d il -
英语(印度,含卢比) in eng en-IN 00004009 in eng
伊拉克语 iq - ar-IQ 00000401 iq -
冰岛语 is - is-IS 0000040f is -
意大利语 it - it-IT 00000410 it -
日语 jp - en-US 00000409 us -
日语(Macintosh) jp mac en-US 00000409 us mac
韩语 kr - en-US 00000409 us -
西班牙语(拉丁美洲) latam - es-MX 0000080a latam -
立陶宛语 lt - lt-LT 00010427 lt -
立陶宛语(IBM LST 1205-92) lt ibm lt-LT 00000427 lt ibm
立陶宛语(标准) lt std lt-LT 00020427 lt std
拉脱维亚语 lv - lv-LV 00020426 lv -
挪威语 no - nb-NO 00000414 no -
波兰语 pl - pl-PL 00000415 pl -
波兰语(QWERTZ) pl qwertz pl-PL 00010415 pl qwertz
葡萄牙语 pt - pt-PT 00000816 pt -
葡萄牙语(Macintosh) pt mac pt-PT 00000816 pt mac
罗马尼亚语(标准) ro std ro-RO 00010418 ro std
塞尔维亚语 rs - sr-Cyrl-RS 00000c1a rs -
塞尔维亚语(拉丁语) rs latin sr-Latn-RS 0000081a rs latin
俄语 ru - ru-RU 00000419 ru -
俄语(打字机) ru typewriter ru-RU 00010419 ru typewriter
俄语(Macintosh) ru mac ru-RU 00000419 ru mac
瑞典语 se - sv-SE 0000041d se -
瑞典语(Macintosh) se mac sv-SE 0000041d se mac
斯洛文尼亚语 si - sl-SI 00000424 si -
斯洛伐克语 sk - sk-SK 0000041b sk -
斯洛伐克语(QWERTY) sk qwerty sk-SK 0001041b sk qwerty
泰语 th - th-TH 0000041e th -
泰语 (Pattachote) th pat th-TH 0001041e th pat
塔吉克语 tj - tg-Cyrl-TJ 00000428 tj -
土耳其语 tr - tr-TR 0000041f tr -
土耳其语(F) tr f tr-TR 0001041f tr f
繁体中文 tw - en-US 00000409 us -
乌克兰语 ua - uk-UA 00000422 ua -
英语(美国) us - en-US 00000409 us -
英语(Macintosh) us mac en-US 00000409 us mac
英语(Dvorak) us dvorak en-US 00010409 us dvorak
英语(Dvorak,左手专用) us dvorak-l en-US 00030409 us dvorak-l
英语(Dvorak,右手专用) us dvorak-r en-US 00040409 us dvorak-r
英语(美国,国际,带死键) us intl nl-NL 00020409 us intl
越南语 vn - vi-VN 0000042a vn -

VDA 键盘布局

VDA 键盘布局功能可帮助您使用“VDA”键盘布局,而无论客户端的键盘布局设置如何。它支持以下类型的键盘:PC/XT 101、102、104、105、106。

要使用服务器端键盘布局,请执行以下操作:

  1. 启动 wfclient.ini 文件。

  2. 按如下所示更改 KeyboardLayout 属性的值:

    KeyboardLayout=(Server Default)

    KeyboardLayout 属性的默认值为 (用户配置文件)。

  3. 重新启动会话以使更改生效。

会话启动时同步多个键盘

以前,会话在全屏模式下启动后,只有客户端上的活动键盘与 VDA 同步。在这种情况下,如果您在 Citrix Workspace 应用程序上配置了仅同步一次 - 在会话启动时,并且必须切换到其他键盘,则必须手动将键盘安装在远程桌面上。此功能主要在客户端键盘输入模式为 scancode 输入模式时使用。用户可以在远程会话中选择键盘布局作为活动键盘布局,该布局从客户端键盘布局列表中同步。

自 2402 起,会话在全屏模式下启动后,Linux 客户端上所有可用的键盘都将与 VDA 同步。会话在全屏模式下启动后,您可以从 VDA 上已安装的键盘列表中选择所需的键盘。

必备条件:

在适用于 Linux 的 Citrix Workspace 应用程序上:

在键盘首选项设置中启用仅同步一次 - 在会话启动时。有关详细信息,请参阅键盘布局同步

在 VDA 上:

启用以下 VDA 策略:

适用于 Linux 的 Citrix Workspace 应用程序上的配置:

此功能仅适用于虚拟桌面。默认情况下,此功能处于禁用状态。要启用此功能,请执行以下操作:

  1. 导航到 /config 文件夹并打开 All_Regions.ini 文件。
  2. 转至 [Virtual Channels\Keyboard] 部分并添加以下条目:

    SyncKbdLayoutList=TRUE
    <!--NeedCopy-->
    

要禁用此功能,请将 SyncKbdLayoutList 的值设置为 False

VDA 上的配置:

会话启动时同步多个键盘功能在 VDA 上默认处于启用状态。请更新 VDA 注册表设置以在需要时将其禁用:

  1. 打开注册表编辑器并导航到 HKEY_LOCAL_MACHINE\Software\Citrix\IcaIme
  2. 创建 DWORD 项 DisableKbdLayoutList 并将其值设置为 0。将该值设置为 1 会禁用会话启动时同步多个键盘功能。
  3. 重新启动会话以使更改生效。
键盘