在屏幕上更清楚地显示我当前正在使用的键盘(Linux / W10)

在屏幕上更清楚地显示我当前正在使用的键盘(Linux / W10)

我目前正在学习希腊语...我已经安装了希腊语多音键盘并设置了一个热键以便在普通键盘和它之间切换。

但问题是我不得不不断地看向我的大显示器(43 英寸)的右下角,以查看当前选择了哪个键盘:ENG 还是 ΕΛ?

我只是想知道(无论是在 W10 还是 Linux 中)是否有某种方法可以制作更突出的指示器:当我“使用希腊语”时,桌面背景是否可以切换为希腊国旗或其他东西?我在 W10 中安装了 Autohotkey(在 Linux 中安装了 Autokey):也许其中一个或两个都可以提供一些解决方案?

NB Linux 操作系统是 Linux Mint 20。

答案1

在 Windows 上,如果您已经设置了热键,您可以让 AutoHotkey 从中触发(被动)并跟踪内部状态(而不是实际检测系统设置的状态)。

必须设置初始状态(因为您要检测切换而不是实际状态),但可以通过多种方式强制脚本与您的设置同步(即,如果它们不同步,则切换脚本状态而不切换键盘状态,然后它就会同步)。

脚本的输出可以是任意数量的内容。如前所述,您可以更改背景。您可以将工具提示保留在屏幕上的其他位置(除了已经有通知的下角)。您可以创建一个看起来像横幅的 GUI 窗口,位于屏幕侧面或顶部。您可以在屏幕周围创建彩色边框、彩色条、框或任何吸引您注意的东西。如果您不想在 AutoHotkey 中编程,您也可以不编写除 shell 命令之外的任何内容,而是通过 shell 命令执行某些操作。例如,要更改背景,您可以间接地执行此操作而不是对其进行编程(不确定在本机执行此操作是否困难)。

答案2

这是使用 AHK 的实现。请注意,这是一台巨型显示器(43 英寸),而且我对 AHK 的方法是“经验性的”:我大量复制他人的脚本,但通常并不完全理解 AHK 的主要细节。

#SingleInstance force

;#HotkeyModifierTimeout -1

$#space:: ; WinKey-Space: the default (I believe) for circling between different installed keyboards
If (toggle := !toggle)
{
    Send, #{space}
    Sleep, 1000
    
    SysGet, Coord, MonitorWorkArea, 1
    Gui, Margin, 25,25
    Gui, Color, Red, EEAA99
    Gui, +LastFound +AlwaysOnTop +ToolWindow -Caption
    WinSet, TransColor, EEAA99
    Gui, Add, ListBox
; ,% "w" CoordRight-600 " h" CoordBottom-500 " Disabled"
    ,% "w" 3000 " h" 1650 " Disabled"
    Gui, Show

; needed because GUI element seems to grab focus
    SetKeyDelay 30,50
    Send, {ALT DOWN}{TAB}{ALT UP}
    SetKeyDelay, 0


}
else {
    Send, #{space}
    Sleep, 1000
    
    Gui, Hide
}
return

在 Linux 中... 有一天会尝试使用 Autokey 做类似的事情!

答案3

如果您的 Linux 桌面不是太杂乱(并且它显示存储在 $HOME/Desktop 中的图标(.desktop 文件),您可以编写一个小的 shell 脚本或其他程序,在希腊键盘处于活动状态时将新图标复制到您的桌面,在非活动状态时将其删除。默认情况下,它将显示在桌面左上角的第一个可用空间中,在那里它会非常明显。

当我解锁财务钱包时,我会使用这个。为了简单起见,我已将桌面上的其他图标排列好,使左上角为空,并且特殊图标始终默认放置在我期望的位置。

如果您更喜欢面板上的某个图标,那么有一个应用程序可以满足您的需求。目前我似乎找不到它,但如果您需要,我会进一步寻找。

相关内容