Não funciona assim, porque o OS X não trata arquivos, pastas e URLs, que são apenas argumentos de linha de comando para os programas associados em outros sistemas, como outras plataformas. Programas de Automator realmente só podem manipular arquivos e pastas.
Você precisa criar um aplicativo baseado em AppleScript, que responde a open location
.
Abra o AppleScript Editor e cole o seguinte código (alterando o script, é claro):
on open location myURL
do shell script "echo " & myURL & " > /Users/danielbeck/test"
end open location
Salvar como aplicativo . Em seguida, selecione o pacote de aplicativos que você acabou de criar, clique com o botão direito, Mostrar conteúdo do pacote e edite Contents/Info.plist
usando um editor de texto (após converter para XML usando plutil
na linha de comando, se for binário ), ou o editor padrão que faz parte das ferramentas de desenvolvimento da Apple.
Adicione o seguinte à sua estrutura de nível superior (a captura de tela é como parece no Xcode atual, o XML é o que você adicionaria em um editor de texto):
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>openme</string>
</array>
<key>CFBundleURLName</key>
<string>AppleScript Testing URL</string>
</dict>
</array>
Isso associará openme://
URLs a esse aplicativo. Salve, mova o programa para uma pasta diferente e volte para atualizar os Serviços de inicialização e teste-o digitando uma URL openme://
na barra de endereço do navegador:
Você desejará substituir openme
por git
e a echo
do seu script de shell, é claro.