Veja esta solução para o Mac OS X 10.6.
No Mac OS X 10.5, você pode abrir o seguinte programa:
/System/Library/Components/KeyboardViewer.component/Contents/SharedSupport/KeyboardViewerServer.app/Contents/MacOS/KeyboardViewerServer
Eu preciso de um método de teclado para abrir o teclado virtual do Mac. Eu poderia ser um comando do Terminal. A string será injetada na porta USB do Mac do usuário pelo nosso dispositivo; "Voila, um OSK!"
Veja esta solução para o Mac OS X 10.6.
No Mac OS X 10.5, você pode abrir o seguinte programa:
/System/Library/Components/KeyboardViewer.component/Contents/SharedSupport/KeyboardViewerServer.app/Contents/MacOS/KeyboardViewerServer
Pelo menos em 10.7 e mais tarde você pode simplesmente abrir o aplicativo KeyboardViewer:
open -a KeyboardViewer
Tem algumas desvantagens:
Tudo isso pode ser evitado abrindo a janela do teclado no menu de entrada:
tell application "System Events" to tell process "SystemUIServer"
tell (menu bar item 1 where description is "text input") of menu bar 1
click
click (menu item 1 where title ends with "Keyboard Viewer") of menu 1
end tell
end tell
Uma solução alternativa para o segundo problema é finalizar o KeyboardViewer se ele estiver em execução, mas não tiver janelas:
if application "KeyboardViewer" is running then
tell application "System Events" to number of windows of process "KeyboardViewer"
if result is 0 then
quit application "KeyboardViewer"
delay 0.1
activate application "KeyboardViewer"
else
quit application "KeyboardViewer"
end if
else
activate application "KeyboardViewer"
end if
Tags macos on-screen-keyboard