- O macOS tem uma arquitetura em que não é possível desativar a animação de troca de Spaces, o que causa uma sensação de atraso em trocas frequentes
- Soluções existentes, como a configuração “Reduce motion” ou o gerenciador de janelas yabai, têm limitações como persistência da latência ou necessidade de desativar o SIP
- O InstantSpaceSwitcher implementa troca instantânea sem essas restrições ao simular rapidamente o gesto de swipe do trackpad
- Funciona como um app nativo sem desativar o SIP e também oferece movimentação por número do Space via CLI
- Remove a complexidade de ferramentas de terceiros e é uma ferramenta prática para possibilitar trocas rápidas de Spaces no ambiente padrão do macOS
O problema da troca de Spaces no macOS e as soluções existentes
- O macOS tem uma estrutura em que não é possível desligar a animação ao trocar de Space, o que traz o inconveniente de uma sensação de lentidão acumulada em trocas frequentes
- A Apple continua sem atender aos pedidos para desativar a animação
- Mesmo que o tempo de transição seja curto, em trocas frequentes há perda perceptível de velocidade
- A solução geralmente sugerida é a configuração “Reduce motion”, mas ela apenas substitui por uma animação de fade-in, então a latência continua existindo
- Além disso, essa configuração ativa a media query
prefers-reduced-motionno navegador, causando o efeito colateral de desativar animações na web
- Além disso, essa configuração ativa a media query
- A função de instant switcher do gerenciador de janelas em mosaico yabai exige patch em binários do sistema operacional, então é necessário desativar o System Integrity Protection (SIP)
- Ao usar o yabai, é preciso substituir o gerenciador de janelas padrão, e ele não é compatível com PaperWM.spoon e afins
- Gerenciadores de espaços virtuais de terceiros, como FlashSpace e AeroSpace virtual workspaces, são implementações não nativas que simulam a troca escondendo e exibindo janelas
- Também existe a opção de usar o recurso pago “Move Right/Left Space (Without Animation)” do BetterTouchTool, mas isso traz a limitação de exigir licença paga
InstantSpaceSwitcher — ferramenta nativa de troca instantânea de Spaces
- O InstantSpaceSwitcher, desenvolvido por jurplel no GitHub, elimina todas as limitações acima e oferece troca instantânea de Spaces
-
Disponível no formato de aplicativo de barra de menu e funciona sem desativar o SIP
- Implementa troca sem latência ao simular rapidamente o gesto de swipe do trackpad
- Também oferece movimentação direta para um número de Space e uma interface de linha de comando (CLI)
- Exemplo de uso da CLI:
.build/release/ISSCli [left|right|index <n>]- O procedimento de instalação é o seguinte
-
- git clone https://github.com/jurplel/InstantSpaceSwitcher
- cd InstantSpaceSwitcher
- ./build.sh
-
- Após o build, pode ser executado como um aplicativo nativo
- No momento, o repositório no GitHub tem apenas 1 estrela (do próprio autor), e há a expectativa de que mais usuários descubram e aproveitem a ferramenta
-
Referência adicional
- instantspaces era uma tentativa de separar o instant switcher do yabai, mas não funciona no macOS Tahoe
- Mesmo após várias tentativas, não houve sucesso, e o InstantSpaceSwitcher funciona de forma mais estável
- Se outro usuário tiver conseguido fazê-lo funcionar, o autor pede feedback
1 comentários
Comentários do Hacker News
Desde pequeno eu já estava acostumado com essa animação de troca de Spaces, então nunca achei incômodo
Mas, depois de comprar um MacBook novo, percebi que os atalhos de teclado eram mais rápidos do que a troca de foco do sistema, e isso vivia causando confusão
Pesquisando, descobri que não era só a minha memória muscular falhando: nos Macs mais novos com tela de 120Hz, a animação realmente ficou mais lenta
Se eu mudar a tela para 60Hz, volta à velocidade antiga
Fico me perguntando por que essa mudança aconteceu e por que, mesmo depois de 5 anos, uma empresa de valor de mercado de US$ 3,82 trilhões ainda não corrigiu isso
Também dá para ver discussões relacionadas no fórum da Apple e em vídeos no YouTube
Fico pensando se os engenheiros da Apple realmente usam macOS no dia a dia
No fim, fora o efeito “uau” inicial, elas não serviam para muita coisa
É surpreendente que uma função tão básica da UI ainda não tenha sido corrigida
Estava frustrado porque, durante a troca de Spaces, a digitação ia para a janela errada, e só agora descobri que era por causa do MacBook novo
Que alívio
Deve ser parecido com jogos sem limite de frames, em que o movimento muda de acordo com a taxa de quadros
Acho que a Apple está cometendo um erro fatal
A Microsoft também
Você deve projetar boas interfaces e padrões razoáveis, mas não pode prender os usuários avançados
Usuários avançados são minoria, mas são essenciais para evoluir a linguagem de design, encontrar bugs e liderar a comunidade
Só que Apple e Microsoft estão fechando seus ecossistemas em nome de aumentar o controle
Como resultado, os usuários estão ficando cada vez mais desconfortáveis
Por isso a popularidade do Linux está até aumentando — porque ele oferece controle total e, ao mesmo tempo, a barreira de entrada ficou menor
A Apple de antigamente equilibrava bem isso, mas agora parece apenas obsessão por controle
Design ruim não desaparece facilmente, então fica por décadas
O tempo desperdiçado com animações prejudica não só usuários avançados, mas todo mundo
Já que falaram do yabai, recomendo muito experimentar o Aerospace
Já usei vários WMs, e esse foi o mais estável
Aerospace GitHub
As configurações padrão são tão boas que há anos quase não mexo em nada
Mas eu não sou exatamente um power user de WM em mosaico
Também considerei o Yabai, mas desisti porque algumas funções exigiam desativar o SIP (System Integrity Protection)
Recentemente mudei para o macOS por causa do trabalho, mas isso definitivamente não é o ápice da engenharia
Talvez porque eu estivesse acostumado com um desktop Linux ajustado por mim mesmo, mas o macOS parece lento, difícil de configurar e pouco amigável para teclado
Até agora há pouco eu não sabia, mas só agora percebi como a animação de troca de Spaces do macOS é irritante
Troquei para o Fedora Asahi Remix por causa desse bug do macOS
O Asahi Remix é baseado em Gnome e o gerenciamento de janelas é muito mais sensato
O vídeo do bug está aqui
Sou usuário de Mac desde a época do System 6, no começo dos anos 90, mas agora nem sei se vou comprar meu próximo hardware da Apple
Migrei imediatamente depois que o macOS forçou uma atualização contra a minha vontade
A ideia de sintetizar swipes rápidos para eliminar a animação de transição é simplesmente genial
É meio relacionado, mas quando o Finder restaura várias abas depois de reiniciar
ao clicar numa aba, às vezes a janela salta de repente para outro Space
Parece que ele acha que as abas da mesma janela pertencem a Spaces diferentes
Os bugs do software da Apple hoje em dia já não parecem simples casos extremos, mas sim resultado de uma estrutura de modelagem errada
Esse hack de troca de Spaces também é legal, mas eu adoraria se houvesse um jeito de trazer de volta a grade 2D de Spaces do antigo OS X 10.5/10.6
O design linear adotado desde o 10.7 é simplista demais
Depois de sair do macOS para o KDE, recuperei uma grade 3x3 de desktops virtuais, e é muito confortável
Posso fixar cada desktop por finalidade, e também configurar livremente as animações de transição com fade, slide e ajuste de velocidade
Essa flexibilidade de configuração é realmente um grande atrativo do KDE
Depois de me acostumar no Linux com opções como Hyperland e Niri, recentemente comecei a testar o OmniWM
Quando preciso usar macOS, o OmniWM faz com que fique tolerável
Será que pode ser uma experiência que muda a vida?