Posso gerar um link clicável para o arquivo local usando o caminho relativo como "file: /// ~"
Este é o plano de fundo:
na minha empresa, usamos o Google Drive e geralmente precisamos informar um ao outro o caminho para um arquivo específico. Os caminhos são longos desde que utilizemos muitas pastas aninhadas, por isso é muito chato e demorado navegar por tudo isso.
Agora, na minha empresa anterior, usamos um servidor afp central; portanto, o caminho era comum a todos; portanto, eu criei um script AppleScript que poderia obter o caminho afp absoluto para o arquivo, as pessoas colaram esse caminho em um email ou chat e o usuário final poderia clicar no caminho que se tornaria automaticamente um link e o localizador abriria, selecionando o arquivo ou pasta específico ao qual o link levava.
O motivo pelo qual não posso usar exatamente o mesmo script é que a pasta do Google Drive está na pasta inicial do usuário. Portanto, se o nome do usuário for Foo, o caminho será file:///Users/Foo/Google Drive, enquanto para o usuário Bar, o caminho seráfile:///Users/Bar/Google Drive
Claramente, o caminho gerado pelo usuário Foo não funcionará para a barra do usuário
Como, pelo menos no terminal, o caminho para o qual file:///Users/usernameé igual a ~, fiz meu script gerar links como file:///~/Google Drive/pathToFolder, mas eles não funcionam :( Clicar nesse link abrirá o localizador, mas não selecionará o arquivo ou a pasta certos
Isso está me deixando louco porque parece que deveria funcionar, mas simplesmente não funciona ... existe alguma outra sintaxe que devo tentar? Alguma sugestão?
Você tem acesso às máquinas que abrirão esses links?
Sim eu faço, nós somos uma empresa pequena, apenas 7 máquinas diferentes
Você poderia tentar LinCastor (Eu não tenho tempo para escrever uma resposta agora, mas espero que ajude um pouco)
Exatamente, é isso que eu fiz e funcionou como um encanto :)
Ótimo! Você pode publicá-lo como uma resposta para que outras pessoas possam ver o que você fez?
— 0942v8653 02
Aqui está a solução. O script que gera o link gera um URL que começa com um personalizado googledrive://e, em seguida, o caminho para o arquivo na pasta do Google Drive.
Em seguida, defino o lincastor para acionar o seguinte script para URLs começando com googledrive://
set theUnixPath to |URL_PATH| of args
set theUnixPath to (POSIX path of (path to home folder)) & "Google Drive" & theUnixPath
set theMacPath to (POSIX file theUnixPath)
#display dialog "handle url: " & theMacPath
set theItem to item theMacPath
if (class of theItem) is folder then activate
reveal theItem
O script é super fácil, pega o URL, anexa o caminho à pasta home do usuário e /Google Drive/, em seguida, usa esse caminho gerado para abrir o Finder e revelar o item