Tendo problemas para criar symlink entre o terminal no Mac OS X e o Sublime Text 2 para que ele possa ser iniciado a partir da linha de comando

0

Estou usando o Mac OS X Yosemite e quero poder abrir o Sublime Text 2 no terminal com um comando como este:

sublime .

Eu digitei isso no terminal conforme mostrado no site do Sublime Text 2:

ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/sublime

E também esta variante:

ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/sublime

No terminal, se eu digitar:

echo $PATH

Eu recebo:

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

Eu tentei editar meu .bash_profile , mas agora está em branco

Depois de tudo isso, tento sublime . e obtenho o seguinte erro:

-bash: sublime: command not found

Sou completamente novo no Mac OS X e na configuração do terminal, e estou realmente com dificuldades para descobrir por que não posso fazê-lo funcionar, portanto, qualquer ajuda seria bem-vinda.

    
por Ryan Oliver Lanham 21.08.2015 / 06:38

2 respostas

5

Tente executar a versão com barra invertida / com escape do comando ln -s , conforme explicado aqui , assim:

ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime

Como esse site explica - e eu concordo - o ~/bin que o site oficial do Sublime Text recomenda parece estranho e eu nunca encontrei uma recomendação como essa para binários locais antes. Então evite usá-lo.

Mas o que também é estranho em todos os exemplos é que sudo não está sendo usado. Esse diretório /usr/local/bin é um diretório do sistema raiz e normalmente não pode ser gravado por ninguém, exceto root . Então, com isso em mente, basta executar o comando acima via sudo da seguinte forma:

sudo ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime

É claro que você terá que digitar sua senha root / administrador. Mas uma vez feito isso, o link simbólico deve estar no lugar. E para confirmar, basta executar este comando no terminal:

ls -la /usr/local/bin/sublime

A saída deve ser uma listagem de diretórios com datas / horários parecidos com os seguintes:

lrwxr-xr-x   1 root  wheel       27 Aug 21  2015 sublime -> /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl
    
por 21.08.2015 / 08:09
-1

Isso deve ser uma coisa muito simples, com o comando open -

open -a "Sublime Text 2"

Você também pode criar um alias de comando sublime para isso.

alias sublime='open -a "Sublime Text 2"'
    
por 07.09.2015 / 04:11