題:
如何使用鍵盤快捷鍵顯示或隱藏Keyboard Viewer?
Render
2012-08-07 20:02:22 UTC
view on stackexchange narkive permalink

我想使用快捷方式顯示和隱藏Keyboard Viewer。

  • 是否可以通過鍵盤快捷方式顯示Keyboard Viewer?
  • 有嗎?一種切換到特定語言後自動顯示鍵盤查看器的方法?
理想的解決方案是將鍵盤快捷方式分配給顯示鍵盤的Apple腳本。
十 答案:
robmathers
2012-08-30 22:31:18 UTC
view on stackexchange narkive permalink

使用服務(已改進)

啟動鍵盤查看器。您可以使用Automator和OS X Services功能通過快捷方式啟動鍵盤查看器。

Keyboard Viewer程序位於 / System / Library / Input Methods / KeyboardViewer.app (在Lion之前的版本中,它可能位於 /System/Library/Components/KeyboardViewer.component /Contents/SharedSupport/KeyboardViewerServer.app )。通過使用Automator創建簡單的啟動器服務,可以通過熱鍵打開它。

  1. 打開Automator並選擇 Service 作為新文檔的類型。
  2. 將選項(在工作流區域頂部)設置為“服務在任何應用程序中沒有收到輸入”。
  3. 運行AppleScript 操作添加到您的工作流中,並用以下幾行替換文本:

     如果應用程序“ KeyboardViewer”正在運行,則退出應用程序“ KeyboardViewer”,如果激活應用程序“ KeyboardViewer”-等待窗口關閉,然後將KeyboardViewer進程集numberOfWindows設置為1重複,直到numberOfWindows = 0延遲5告訴應用程序“系統事件”告訴進程“ KeyboardViewer”將numberOfWindows設置為對窗口進行計數結束告訴Tellell重複退出“ KeyboardViewer”  
  4. 保存,其名稱類似於“打開鍵盤Vi” ewer”,然後打開鍵盤快捷鍵標籤的鍵盤偏好設置。在左窗格中選擇服務並滾動到底部,您應該在“常規”部分下看到服務的名稱。
  5. 確保選中此框以啟用它,然後選擇它並單擊添加快捷方式來設置熱鍵。
  6. 設置熱鍵後,在任何應用程序中打開“服務”菜單(即Finder>服務),然後將其關閉。出於某種原因,直到我這樣做,熱鍵才起作用。
  7. ol>

    一些注意事項:

  • 該腳本要求您選中“通用訪問”首選項窗格中的啟用輔助設備訪問
  • 關閉Keyboard Viewer窗口實際上並沒有退出應用程序,正如Lri指出的那樣,這可能有點浪費資源,因此 repeat 循環會檢查每個如果Keyboard Viewer有任何打開的窗口,則等待5秒,如果沒有,則退出該過程。
  • 如果您運行的是Lion之前的操作系統,則 可能需要替換實例 KeyboardViewer KeyboardViewerServer 一起使用。我在Lion之前沒有任何東西可以方便地進行測試(如果其他人可以在評論中進行報告,那會很棒。
  • 因為腳本一直循環直到關閉Keyboard Viewer,Automator才會旋轉齒輪圖標將顯示在菜單欄中,直到關閉。
是!這正是我所尋找的。我熟悉自動程序和shell腳本,只需要一個提示。非常感謝你... :)
我使用Applescript更新了此代碼,該Applescript運行檢查以查看窗口是否已關閉,如果已關閉,則退出該過程,以避免性能下降。任何對基於bash的舊版本感興趣的人都可以在[here](http://apple.stackexchange.com/revisions/62532/2)找到該修訂。
只需進行最少的修改,該腳本即可切換查看器。用“ else”替換“ end if”,然後將“ else if”移到末尾。
很好的解決方案。但是,“顯示鍵盤查看器”菜單項是否不知道鍵盤查看器正在運行?因此,如果您碰巧同時使用這兩個菜單項,則會中斷該菜單項。
在Catalina上不存在“ /系統/庫/輸入法/KeyboardViewer.app”。我在“ / System / Library / Input Methods”中打開了所有應用程序,但都沒有打開鍵盤查看器。有任何想法嗎?
Dergachev
2012-12-15 00:07:22 UTC
view on stackexchange narkive permalink

很高興我找到了這個線程。基於上面的答案,我製作了一個Alfred擴展腳本,該腳本可切換Keyboard Viewer。

https://dl.dropbox.com/u/29440342/linkedFiles/Keyboard%20Viewer.alfredextension

它提供了一個alfred關鍵字“ kv”,可通過運行以下AppleScript來打開和關閉鍵盤查看器:

 -改編自http:// apple .stackexchange.com / a / 62532如果應用程序“ KeyboardViewer”正在運行,然後退出應用程序“ KeyboardViewer”,否則激活應用程序“ KeyboardViewer”,如果(*-改編自http://apple.stackexchange.com/a/59986tell應用程序“系統告訴進程“ SystemUIServer”告訴菜單欄1的“事件”(菜單欄項目1,描述為“文本輸入”),單擊菜單1結束告訴*的菜單項1(標題以“ Keyboard Viewer”結尾的菜單項1)- -從osx中撕下的圖標/ System / Library / PreferencePanes Keyboard.prefPane / Contents / Resources / Keyboard.icns  

我留下了另一種實現的註釋,以防萬一本應避免的體驗性能問題。

鏈接斷開。您是否願意再次發布它。這是我將使用的Alfred工作流程。
在這裡,我重新實現了它(並添加了鍵盤快捷鍵Cmd + Alt + Ctrl + Shift + K):http://www.packal.org/workflow/toggle-keyboard-viewer-0
mach
2012-08-30 22:05:07 UTC
view on stackexchange narkive permalink

Quicksilver Extra Scripts插件提供了此功能,方法是提供 Show Keyboard Viewer.scpt

當您使用操作 Run Show Keyboard Viewer.scpt 創建Quicksilver觸發器時,將獲得全局的Keyboard Viewer熱鍵。

以下是來源腳本的內容:

 屬性theApplication:“ KeyboardViewer”屬性thePath:“ / System / Library / Input Methods / KeyboardViewer.app”將HFSPath設置為(((POSIX文件thePath)為字符串)告訴應用程序將“系統事件”設置為將isRunning設置為0 <(計數(名稱為Application的應用程序進程))如果isRunning,則告訴應用程序HFSPath忽略應用程序響應,告訴應用程序HFSPath激活結束ignoringend,如果 

如果使用AppleScript或 open 打開KeyboardViewer,並且關閉了主窗口,則Keyboard Viewer進程將保持打開狀態並使用大約0-20%的CPU。

我通常不喜歡為簡單的可編寫腳本的東西安裝第三方應用程序,但這是________。 :)非常感謝您,我的魅力十足。 ;)
如果您想避免使用第三方軟件,我剛剛發布了一個答案,該答案將對內置軟件執行相同的操作。
對不起,@CanuckSkier發布了一個我更喜歡的答案,因此接受了他的答案。不管怎樣,QuickSilver +1。 ;)
該腳本不適用於Catalina。
Lri
2012-08-07 21:40:56 UTC
view on stackexchange narkive permalink

在通過單擊關閉按鈕關閉主窗口之後,這也將起作用:

 如果應用程序“ KeyboardViewer”正在運行,則告訴應用程序“系統事件”進程數如果結果為0,則“ KeyboardViewer”,然後退出應用程序“ KeyboardViewer”;延遲0.1啟動應用程序“ KeyboardViewer”;否則,退出應用程序“ KeyboardViewer”;如果啟動應用程序“ KeyboardViewer”,則結束,如果 

如果鍵盤查看器為使用AppleScript或 open -a KeyboardViewer 打開,並且關閉了主窗口,該進程保持打開狀態,並繼續使用約0-15%的CPU。從輸入菜單中選擇“顯示鍵盤查看器”時,不會發生這種情況。因此,更好的選擇可能是單擊菜單項:

 告訴應用程序“系統事件”以告訴進程“ SystemUIServer”告訴(菜單欄項1,描述為“文本輸入”)欄1單擊單擊(菜單項1,標題以“ Keyboard Viewer”結尾的菜單項1),然後單擊菜單1 end Tellend tell  

。這兩個腳本都需要訪問輔助設備才能在輔助功能首選項窗格中啟用。

Render
2012-08-08 14:56:30 UTC
view on stackexchange narkive permalink

我已經找到了一種通過BetterTouchTool執行以下操作的方法:

  • 通過快捷方式激活鍵盤查看器
  • 通過另一個快捷方式關閉鍵盤查看器
  • 通過一個快捷方式切換鍵盤查看器(不需要前兩個)
  • 為了方便起見,我還上傳了AppleScript

平台:rMBP Mountain Lion OSX 10.8


通過快捷鍵激活鍵盤查看器

  • 啟動BetterTouchTool
  • 添加鍵盤快捷鍵
  • 添加預定義操作>>打開應用程序/文件/腳本...
  • 導航至Macintosh HD / System / Library / Input Methods /
  • 選擇KeyboardViewer

現在您有了鍵盤快捷鍵,無需其他腳本即可激活查看器。

但是,我注意到按下紅色的X按鈕實際上並沒有退出應用程序,這意味著鍵盤查看器只會被激活一次。因此,您需要創建一個腳本來退出程序。

要解決此問題:


通過另一個鍵盤快捷鍵關閉鍵盤查看器

  • 打開Automator
  • 選擇應用程序作為文檔類型
  • 在其中添加RunAppleScript
  • 在此處顯示(*您的腳本在此處*) ,將其替換為退出應用程序“ KeyboardViewer”
  • 編譯並另存為文檔中或所需的任何位置(我將其移至與KeyboardViewer相同的位置)
  • 打開BetterTouchTool
  • 添加鍵盤快捷鍵
  • 添加預定義操作>>打開應用程序/文件/腳本...
  • 找到剛剛保存的應用程序文件

一旦激活,您現在可以永久退出KeyBoard查看器。用它代替紅色的X按鈕。直到我弄清楚為什麼按下X按鈕時鍵盤查看器不能完全退出,這才是您的解決方案。

EDIT

找出一種切換鍵盤查看器的方法!


通過一個鍵盤快捷鍵切換鍵盤查看器

與以前相同的過程,但是代碼已更改:

  • 打開Automator
  • 選擇“應用程序”作為文檔類型
  • 添加RunAppleScript
  • 上面寫著(*您的腳本在這裡*),如果應用程序“ KeyboardViewer”正在運行,則將其替換為
 ,然後退出應用程序“ KeyboardViewer”如果 
  • 編譯並保存為文檔或您想要的任何位置,則激活應用程序“ KeyboardViewer”結束(我將其移至與KeyboardViewer相同的位置)
  • 打開BetterTouchTool
  • 添加鍵盤快捷鍵
  • 添加預定義操作>>打開應用程序/文件/腳本...
  • 找到剛剛保存的應用程序文件

現在切換了鍵盤查看器,您甚至不需要分配多個快捷鍵!


AppleScript的鏈接

我在線上傳該應用程序是為了更快地訪問,而不是執行上面的整個編碼步驟(只需通過BetterTo激活此應用程序uchTool)但是,由於不是確定的發布者,因此您的操作系統可能會阻止運行此應用程序,具體取決於您的安全偏好設置。因此,如果您不想從未知的發行商處運行應用程序,只需按照上述步驟創建自己的應用程序即可!

鏈接到文件: https://www.box.com/s/e2461c91e30e0af025e7


希望它對任何人都有幫助:)

太棒了!!我以為直接將keyboardViewer應用程序添加到啟動欄索引中可以很好地代替我的用途,但是一旦運行,就無法關閉kbv!因此,您無法再次調用它-很奇怪。無論如何,您的腳本很不錯! (我必須將其另存為腳本/運行才能使其對我有用。)Tx!
@memeLab很高興為您服務:)
Mr. Kennedy
2017-02-05 23:42:26 UTC
view on stackexchange narkive permalink

這不是一次簡單的快捷方式,但“非鼠標”解決方案是 Fn kbd> + Ctrl kbd> + F8 kbd>菜單欄右側的“ 狀態菜單”圖標。 (第4節

enter image description here

箭頭將使您導航到“鍵盤偏好設置”圖標和“顯示/隱藏”選項。當您輸入 Fn kbd> + Ctrl kbd> + F8 kbd>時,該圖標位於“狀態菜單”圖標最左側。菜單欄將突出顯示。選擇後,使用右箭頭→ kbd>導航到所需的那個。使用向下箭頭↓ kbd>打開菜單,然後選擇所需的選項。請注意, Option kbd>鍵將在某些“狀態菜單”中提供不同的菜單選項。

enter image description here

值得注意的是, Fn kbd> + Ctrl kbd> + F2 kbd>將激活左側的Apple菜單圖標。從此處,使用右箭頭→ kbd>可以訪問“應用程序”菜單。這些選項位於系統偏好設置>>鍵盤>>快捷方式::鍵盤:

enter image description here

根據功能鍵的配置方式, Fn kbd>是可選的。

enter image description here

在macOS Sierra中,您還可以使用Siri來解決此問題。使用從系統偏好設置>> Siri :: Keyboard快捷方式中選擇的任意鍵盤快捷方式調用Siri,例如 Option kbd> + Spacebar kbd>

enter image description here

...然後說“打開鍵盤查看器”

enter image description here

...和瞧,

enter image description here

不幸的是,Siri不會關閉鍵盤查看器,Command⌘ kbd> + w kbd>

也不會關閉
Gavin
2020-06-19 18:43:30 UTC
view on stackexchange narkive permalink

所選答案不適用於Catalina。這個做:

 激活應用程序“系統偏好設置”
告訴應用程序“系統偏好設置”
    在窗格ID“ com.apple.preference.universalaccess”中顯示錨點“ Virtual_Keyboard”
結束告訴

告訴應用程序“系統事件”
    告訴流程“系統偏好設置”
        延遲1
        將復選框設置為窗口1的組1的選項卡組1的複選框“啟用輔助功能鍵盤”
        如果(複選框的值作為布爾值)則
            點擊複選框
            鍵碼36-處理確認對話框
        其他
            點擊複選框
        萬一
        延遲1
    結束告訴
結束告訴
告訴應用程序“系統偏好設置”退出
 
使用Keyboard Maestro,可以通過自動單擊菜單項來切換鍵盤查看器。這樣可以跳過控制面板,並且速度更快。
Eugene Nogalsky
2014-02-14 00:37:06 UTC
view on stackexchange narkive permalink

您可以通過Automator進行所有操作:

  1. 打開Automator並選擇“應用程序”
  2. 在庫頂部找到“啟動應用程序”,雙擊
  3. >
  4. 選擇“其他”,然後導航到/ System / Library / Input Methods中的KeyboardViewer文件
  5. 使用“啟動鍵盤”之類的名稱進行保存。測試。
  6. ol>

    下一部分是關閉鍵盤:

    1. 打開Automator並選擇“庫”頂部的“應用程序”
    2. “退出應用程序”,雙擊它
    3. 選擇“其他”並導航到/ System / Library / Input Methods中的KeyboardViewer文件

    4. 保存帶有“退出鍵盤”之類的名稱。進行測試。

    5. ol>

      現在您將擁有兩個文件,一個用於打開,一個用於關閉。

      您需要關聯的鼠標按鈕來啟動這些文件。兩個文件!

      例如,我正在使用Microsoft藍牙筆記本鼠標5000,

      在10.9.1中對我非常有用

mark stewart
2017-10-24 19:57:33 UTC
view on stackexchange narkive permalink

活動監視器,KeyboardViewer.app從

啟動

查找器位置: /系統/庫/輸入法/KeyboardViewer.app

正常使用:從菜單欄打開,從鼠標懸停關閉以查看可單擊(x)關閉按鈕的窗口按鈕。要啟用菜單欄面板,系統偏好設置鍵盤鍵盤標籤,請選擇顯示鍵盤和表情符號菜單欄中的查看者

KeyboardViewer小程序具有限制性行為。

  1. Applet窗口對⌘-Q⌘-W沒有響應。
  2. 奇怪的是,當從文件夾Input Methods打開時,活動監視器顯示小程序在其窗口關閉後仍保持運行。
  3. 下面顯示的Automator AppleScript在後台運行緩慢,鍵盤服務需要幾秒鐘才能在Activity Monitor中註冊打開和關閉操作。
  4. 下面顯示的鍵盤快捷方式腳本可以正常運行,但係統似乎會忽略。
  5. Sierra Automator的 Quit Application 不會關閉KeyboardViewer.app
  6. ol>

    可以將以下Automator腳本作為應用程序保存到 open-close KeyboardViewer.app中,只需單擊一次 click (“活動監視器”也會顯示此打開-關閉活動),當放在Dock中時效果很好。

    Automator:新建應用程序運行AppleScript ,保存此腳本

     -參見以上文章,渲染
        在運行時{input,parameters}
            如果應用程序“ KeyboardViewer”正在運行,則
                退出應用程序“ KeyboardViewer”
            其他
                激活應用程序“ KeyboardViewer”
            萬一
            返回輸入
        結束運行
    -圖標/ System / Library / PreferencePanes Keyboard.prefPane / Contents / Resources / Keyboard.icns
     

    不幸的是,這沒有添加鍵盤快捷鍵。但是,它確實提供了一鍵解決方法。可以使用某種方式使用Automator添加鍵盤快捷鍵。一般的快捷方式腳本如下所示(但不確定如何合併)。

     告訴應用程序“系統事件”
        使用控制鍵將應用程序“ KeyboardViewer”設置為擊鍵“ K”
    結束告訴
     

    (MP 6,1上的macOS Sierra 10.12.6)

Ámon Tamás
2020-04-10 19:31:26 UTC
view on stackexchange narkive permalink

這不是捷徑,而是為我工作。首先單擊顯示鍵盤查看器。當您將鼠標移到角落時,將顯示一個小三角形。準備就緒後,鍵盤查看器將隱藏。顯示的下一個。

以下是有關它的一些視頻: https://dai.ly/x7t7x60

這個問題的重點是沒有鼠標怎麼辦。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...