Como oculto o ícone do Spotlight no Yosemite, mas mantenho a funcionalidade do Spotlight?

62

Uso o Spotlight no OS X e há muito não gosto do seu anexo na barra de menus.

Agora, em Yosemite, o Spotlight aparece como uma sobreposição no meio da tela quando chamado, assim como outros utilitários do iniciador, como Quicksilver ou Alfred. Mas o ícone do Spotlight ainda está preso na minha barra de menus, embora clicar nele agora mostre uma sobreposição totalmente desanexada.

A maneira tradicional de desativar o ícone de pesquisa ( chmod 600 /System/Library/CoreServices/Search.bundle/Contents/MacOS/Search) também desativa completamente o Spotlight. Quero manter a funcionalidade do Spotlight, mas matar o ícone da barra de menus (agora inútil), pois posso convocar o Spotlight com Cmd + Space.

Eu também experimentei o Bartender, que funciona, mas é caro (US $ 15 para remover um ícone!) E peculiar (demora um pouco para iniciar, então minha barra de menus acaba se deslocando por até um minuto após o login)

Qual é a melhor maneira de remover o ícone do Spotlight?

nneonneo
fonte
Ainda não testou e parece que pode estar um pouco desatualizado, mas a pergunta é a mesma e a resposta é marcada e aceita. superuser.com/a/32802/375410
jherran
11
@ jherran: Isso não resolve o problema, infelizmente. Ainda quero usar o Cmd + Space para iniciar a sobreposição do Spotlight.
Nneonneo 12/05

Respostas:

36

Então, eu me cansei disso e decidi consertar da maneira mais difícil.

Descobri onde o Spotlight inicializa o item da barra de status e corrigi o tamanho da barra de status para zero. Isso requer a edição do binário Spotlight . (Observe que Search.bundleé apenas o pequeno esboço carregado SystemUIServerpara permitir o Spotlight.appcontrole da barra de status).

Você precisará usar o Terminal para executar alguns comandos.

Para OS X 10.10 (Yosemite):

cd /System/Library/CoreServices/Spotlight.app/Contents/MacOS
sudo cp Spotlight Spotlight.bak
sudo perl -pi -e 's|(\x48\xb8\x00\x00\x00\x00\x00\x00)\x42\x40(\x48\x89\x47\x10\x48\xB8\x00\x00\x00\x00\x00\x00\x36\x40)|$1\x00\x00$2|sg' Spotlight
cmp -l Spotlight Spotlight.bak 
sudo codesign -f -s - Spotlight
sudo killall Spotlight

Para OS X 10.11 (El Capitan):

cd /System/Library/CoreServices/Spotlight.app/Contents/MacOS
sudo cp Spotlight Spotlight.bak
sudo perl -pi -e 's|(\x00\x00\x00\x00\x00\x00\x47\x40\x00\x00\x00\x00\x00\x00)\x42\x40(\x00\x00\x80\x3f\x00\x00\x70\x42)|$1\x00\x00$2|sg' Spotlight
cmp -l Spotlight Spotlight.bak 
sudo codesign -f -s - Spotlight
sudo killall Spotlight

A cmp -llinha deve imprimir algo como o seguinte:

248855   0 102
248856   0 100

Se não imprimir nada, o patch falhou. Eu testei isso no OS X 10.10.3 (Yosemite) e no OS X 10.11.5 (El Capitan; SIP desativado).

O que esse patch está fazendo é substituir o valor da largura da barra de status (36.0 ou 0000000000004240 em hexadecimal de ponto flutuante) por zero, para que, quando o item da barra de status for carregado, ele seja renderizado com largura zero, ou seja, fique invisível e não afeta o layout da barra.

Captura de tela antes de fazer esse hack:

antes de hackear

Captura de tela após fazer esse hack:

depois de hackear

O ícone do menu desapareceu, mas o Cmd + Space continua funcionando.


Para reverter, faça o seguinte:

cd /System/Library/CoreServices/Spotlight.app/Contents/MacOS
sudo mv Spotlight.bak Spotlight
sudo killall Spotlight
nneonneo
fonte
Isso parece realmente incrível, mas, para os menos alfabetizados entre os terminais, podemos adicionar instruções sobre como voltar ao normal se estivermos tão inclinados?
User24601
3
Adicionadas essas instruções.
Nneonneo 13/05
11
Depois que esse holofote não começa mais. $ codesign -f -s - Spotlight Spotlight: replacing existing signature Spotlight: bundle format unrecognized, invalid, or unsuitable
Rnhmjoj
11
Spotlight: substituindo a assinatura existente Spotlight: formato de pacote não reconhecido, inválido ou inadequado No subcomponente: /System/Library/CoreServices/Spotlight.app/Contents/XPCServices/com.apple.metadata.SpotlightNetHelper.xpc
Jarno
2
Ainda válido para o Sierra, embora eu tenha que desativar temporariamente o System Integrity Protection ( stackoverflow.com/a/32661637/1252653 ) para me dar o direito de duplicar o executável do Spotlight.
tinystride 25/11/16
16

Eu recomendo usar o aplicativo utilitário chamado Bartender. http://www.macbartender.com

Este é um utilitário útil para gerenciar e alterar a maneira como os ícones da barra de menus são exibidos. Você pode deixá-los na barra de menus, deixá-los cair na barra de barman, que é aberta por meio de um pequeno ícone na barra de menus, mas pode reter qualquer um dos ícones normalmente na barra de menus ou ocultar completamente o ícone.

Você pode ver uma captura de tela aqui:

insira a descrição da imagem aqui

Ali Samii
fonte
6
Eu disse que não queria usar o Bartender na minha pergunta, mas obrigado pelo ponteiro de qualquer maneira.
Neyonneo
5
Não funciona mais na versão mais recente de ambos (OSX e Bartender :-(
Strinder
2
Atualização: Funciona se você seguir este caminho stackoverflow.com/questions/31640732/…
Strinder
Compatível com Sierra?
Daniel Springer
Como no mundo não Bartender escondê-lo assim ...
Daniel Springer
11

Acabei removendo o ícone e a funcionalidade de busca do Spotlight e agora uso Alfred ; é mais rápido e gratuito (com extensões pagas que você geralmente não precisa).

Removendo o aplicativo visível do Spotlight (e o ícone), os serviços de indexação não são interrompidos, apenas a interface gráfica do usuário é interrompida, ou seja, o ícone na barra superior do menu superior e a janela Pesquisar quando + Space. É por isso que você precisa de outro aplicativo para acessar esses índices, como Alfred.

Portanto, o comando a seguir que altera a permissão para tornar Searchnão executável.

sudo chmod 600 /System/Library/CoreServices/Search.bundle/Contents/MacOS/Search

como dito, ele não desabilita completamente o Spotlight, apenas remove a interface gráfica do usuário do Spotlight.

Sair e entrar pode ser suficiente, se não apenas reiniciar.


Você pode revertê-lo com este comando

sudo chmod 755 /System/Library/CoreServices/Search.bundle/Contents/MacOS/Search

Mesmo aqui, você precisa sair ou reiniciar.

Este método ainda está trabalhando com 10.10.3.


Esse método provavelmente não é exatamente o que a pergunta foi feita, mas tem o mérito de limitar os erros de manipulação. Apenas alterar as permissões dos arquivos é muito mais fácil do que alterar o binário de um programa. apenas para não mostrar o ícone do Spotlight o binário do Spotlight.

Brice
fonte
4
Eu fiz isso (em Yosemite), mas agora não consigo acionar os holofotes com o atalho de teclado também! Eu tive que sudo chmod 755 /System/Library/CoreServices/Search.bundle/Contents/MacOS/Search& killall SystemUIServerreverter de volta.
Rahul Thakur
@RahulThakur Sim, esse é o ponto da resposta, alfred se torna a principal ferramenta de pesquisa , mas usa índices de destaque. Também com Alfred, há uma opção a ser lançada comctrl+space
Brice
11
Ok, mas eu só quero remover o ícone e não a funcionalidade. De qualquer forma, obrigado.
Rahul Thakur
ESTÁ BEM. Barman talvez a melhor opção então. Mas você definitivamente pode querer tentar alfred. Especialmente em relação às informações que a Apple está vazando ao usar os holofotes.
Brice
Apenas estou ciente de que isso matou o Spotlight completamente para mim e teve que usar sudo chmod 755 /System/Library/CoreServices/Search.bundle/Contents/MacOS/Searche reiniciar para corrigi-lo.
Dillon
4

Uma solução simples e mais ampla para esse problema é ocultar ícones na barra de menus com o Vanilla , um utilitário gratuito desenvolvido por Matthew Palmer e com a mesma funcionalidade principal do Bartender, mas em um pacote mais minimalista.

http://matthewpalmer.net/vanilla/

juil
fonte
2

O Dozer é outro aplicativo totalmente gratuito, diferente do Bartender ou do Vanilla.

xji
fonte