Mac App para compilar e referenciar atalhos de teclado

2

Estou à procura de uma aplicação para mac que permita ao utilizador compilar atalhos de teclado e gatilhos de separadores para múltiplas aplicações, e referenciá-los em tempo real.

Sou um desenvolvedor e muitos dos aplicativos que uso têm muitos atalhos de teclado úteis ou gatilhos de guias, incluindo o próprio OS X. O problema é que, embora eu esteja aprendendo tudo, não há um método conveniente de referenciá-los. É claro que existem páginas da Web com listas de atalhos ou listas nos próprios aplicativos, além de PDFs que podem ser baixados e mantidos abertos, mas todas essas soluções não são simplificadas no fluxo de trabalho de uma pessoa.

Eu imagino um aplicativo que mora na barra de menus, que pode ser inserido em vários atalhos de teclado, etc. e que pode ser organizado e pesquisado por aplicativo ou palavra-chave etc. Dessa forma, quando você está trabalhando e precisa lembrar um atalho , tudo o que você precisa fazer é clicar na barra de menu e pesquisar, em vez de abrir e pesquisar por meio de um pdf ou outros enfeites.

Alguma sugestão? Eu suponho que com o tempo eu poderia criar o meu próprio ... mas você sabe ...

    
por stefmikhail 22.04.2012 / 04:18

1 resposta

4

Não sei se você viu KeyCue , mas basicamente exibe uma lista de atalhos no app frontmost quando você segura o comando.

EutambémescreviumAppleScriptquesalvaarquivosdetextoparaitensdemenueseusatalhos.Eurealmentenuncapreciseidemimmesmo-émaisfácilprocuraratalhosnabarrademenu.

setprocsto{"TextEdit"}
repeat with proc in procs
    activate application proc
    tell application "System Events" to tell process proc
        set out to ""
        repeat with v in menu bar items 2 thru -1 of menu bar 1
            set out to out & name of v & linefeed
            repeat with w in menu items of menu 1 of v
                try
                    set nme to name of w
                    set sc to my getshortcut(proc, w)
                    if nme is not missing value and sc is not missing value then
                        set out to out & "  " & sc & "  " & nme & linefeed
                    end if
                end try
                try
                    set mi to menu items of menu 1 of w
                    set subout to "  " & name of w & linefeed
                    set appendsubout to false
                    repeat with x in mi
                        try
                            set nme to name of x
                            set sc to my getshortcut(proc, x)
                            if nme is not missing value and sc is not missing value then
                                set subout to subout & "  " & "  " & sc & "  " & nme & linefeed
                                set appendsubout to true
                            end if
                        end try
                    end repeat
                    if appendsubout then set out to out & subout
                end try
            end repeat
        end repeat
    end tell
    try
        set vers to " " & version of application proc
    on error
        set vers to ""
    end try
    do shell script "echo " & quoted form of out & " > ~/Desktop/" & quoted form of (proc & vers & ".txt")
end repeat

on getshortcut(proc, x)
    set text item delimiters to space
    set menuglyphs to text items of "2 ⇥ 3 ⇤ 4 ⌤ 9 ␣ 10 ⌦ 11 ↩ 16 ↓ 23 ⌫ 24 ← 25 ↑ 26 → 27 ⎋ 28 ⌧ 98 ⇞ 99 ⇪ 100 ← 101 → 102 ↖ 104 ↑ 105 ↘ 106 ↓ 107 ⇟ 111 F1 112 F2 113 F3 114 F4 115 F5 116 F6 117 F7 118 F8 119 F9 120 F10 121 F11 122 F12 135 F13 136 F14 137 F15 140 ⏏ 143 F16 144 F17 145 F18 146 F19"
    set cmdmods to text items of "⌘ ⇧⌘ ⌥⌘ ⌥⇧⌘ ⌃⌘ ⌃⇧⌘ ⌃⌥⌘ ⌃⌥⇧⌘ - ⇧ ⌥ ⌥⇧ ⌃ ⌃⇧ ⌃⌥ ⌃⌥⇧"
    tell application "System Events" to tell process proc
        set c to ""
        try
            set n to value of attribute "AXMenuItemCmdModifiers" of x
            set modifier to item (n + 1) of cmdmods
            if modifier is "-" then set modifier to ""
            try
                set c to (value of attribute "AXMenuItemCmdChar" of x)
                c as text
                return modifier & c
            on error
                set glyph to (value of attribute "AXMenuItemCmdGlyph" of x) as text
                repeat with i from 1 to (count menuglyphs)
                    if item i of menuglyphs is glyph then
                        return modifier & item (i + 1) of menuglyphs
                    end if
                end repeat
            end try
        end try
    end tell
    return missing value
end getshortcut
    
por 22.04.2012 / 05:15