2 puntos por GN⁺ 20 일 전 | 1 comentarios | Compartir por WhatsApp
  • macOS tiene una arquitectura que no permite desactivar la animación de cambio de espacios, por lo que al cambiar con frecuencia se percibe una latencia molesta
  • Las soluciones existentes, como la configuración “Reduce motion” o el gestor de ventanas yabai, tienen limitaciones como latencia persistente o la necesidad de desactivar SIP
  • InstantSpaceSwitcher implementa el cambio instantáneo sin esas restricciones al simular gestos rápidos de deslizamiento en el trackpad
  • Funciona como una app nativa sin desactivar SIP y también ofrece la función de moverse por número de espacio mediante CLI
  • Es una herramienta práctica que elimina la complejidad de herramientas de terceros y permite cambios rápidos de espacio en el entorno predeterminado de macOS

El problema del cambio de espacios en macOS y las soluciones existentes

  • macOS tiene una arquitectura en la que no se puede desactivar la animación al cambiar de espacio (Space), lo que genera la molestia de una sensación de retraso acumulada cuando se cambia con frecuencia
    • Apple ha seguido sin aceptar las solicitudes para desactivar la animación
    • Aunque el tiempo de cambio sea corto, con cambios frecuentes se produce una disminución perceptible de la velocidad
  • La solución que normalmente se propone es la configuración “Reduce motion”, pero esta la reemplaza por una animación de fundido de entrada (fade-in), por lo que la latencia sigue existiendo
    • Además, esta configuración activa la media query prefers-reduced-motion del navegador web y provoca el efecto secundario de desactivar animaciones web
  • La función de cambio instantáneo del gestor de ventanas en mosaico yabai requiere parchar binarios del sistema operativo, por lo que hay que desactivar System Integrity Protection (SIP)
    • Al usar yabai, hay que reemplazar el gestor de ventanas predeterminado y no es compatible con PaperWM.spoon, entre otros
  • Los gestores de espacios virtuales de terceros, como FlashSpace y AeroSpace virtual workspaces, son implementaciones no nativas que imitan el cambio ocultando y mostrando ventanas
  • También existe la opción de usar la función de pago de BetterTouchTool, “Move Right/Left Space (Without Animation)”, pero tiene la limitación de requerir una licencia de pago

InstantSpaceSwitcher — herramienta nativa para cambio instantáneo de espacios

  • InstantSpaceSwitcher, desarrollada por jurplel en GitHub, elimina todas las limitaciones anteriores y permite el cambio instantáneo de espacios
    • Se ofrece en forma de aplicación de barra de menú** y** funciona sin desactivar SIP

      • Implementa un cambio sin latencia al simular a alta velocidad un gesto de deslizamiento del trackpad
      • También ofrece movimiento directo por número de espacio e interfaz de línea de comandos (CLI)
      • Ejemplo de uso de la CLI:
      .build/release/ISSCli [left|right|index <n>]
      
      • El procedimiento de instalación es el siguiente
      • git clone https://github.com/jurplel/InstantSpaceSwitcher
      • cd InstantSpaceSwitcher
      • ./build.sh
      • Después de compilarlo, puede ejecutarse como aplicación nativa
      • Actualmente, el repositorio de GitHub solo tiene 1 estrella (la del propio autor), y se espera que más usuarios descubran y aprovechen esta herramienta

Referencia adicional

  • instantspaces fue un intento de separar el cambiador instantáneo de yabai, pero no funciona en macOS Tahoe
    • Falló incluso tras varios intentos, y InstantSpaceSwitcher funciona de forma más estable
    • Si otro usuario logró hacerlo funcionar, se solicita retroalimentación

1 comentarios

 
GN⁺ 20 일 전
Comentarios en Hacker News
  • Desde chico estaba acostumbrado a esta animación de cambio de espacio, así que no me parecía incómoda
    Pero después de comprar una MacBook nueva, empecé a notar que las pulsaciones de atajos iban más rápido que el cambio de foco del sistema y todo se desacomodaba
    Buscando, descubrí que no era que mi memoria muscular estuviera mal, sino que en las Mac nuevas con pantallas de 120 Hz la animación realmente se volvió más lenta
    Si cambias la pantalla a 60 Hz, vuelve a la velocidad de antes
    Me pregunto por qué ocurrió este cambio, y por qué una empresa con una capitalización de mercado de 3.82 billones de dólares no lo ha arreglado después de 5 años
    También se puede ver una discusión relacionada en el foro de Apple y en este video de YouTube

    • No puedo creer que un bug tan viejo siga ahí
      Me pregunto si los ingenieros de Apple siquiera usan macOS
    • No sé mucho sobre la personalización en Mac, pero en Android y Linux probé desactivar las animaciones y no extrañé nada
      Al final, no servían para nada salvo el efecto wow inicial
    • Lo noté de inmediato cuando usé por primera vez una MacBook de 120 Hz en 2021
      Sorprende que una función tan básica de la UI siga sin arreglarse
    • Yo también estaba sufriendo el mismo problema
      Me frustraba que durante el cambio de espacio la entrada del teclado fuera a la ventana equivocada, y recién ahora me entero de que era por la MacBook nueva
      Qué alivio
    • Supongo que probablemente se debe a la forma de calcular la animación de desaceleración
      Debe ser un principio parecido a cuando en juegos sin límite de cuadros el movimiento cambia según la tasa de frames
  • Creo que Apple está cometiendo un error fatal
    Microsoft también
    Hay que diseñar buenas interfaces y valores predeterminados razonables, pero no se debe atar de manos a los power users
    Los power users son una minoría, pero son clave para hacer evolucionar el lenguaje de diseño, encontrar bugs y sostener a la comunidad
    Sin embargo, Apple y Microsoft están cerrando sus ecosistemas en nombre de un mayor control
    Como resultado, los usuarios están cada vez más incómodos
    Por eso la popularidad de Linux está creciendo más bien — porque ofrece control total y al mismo tiempo la barrera de entrada ha bajado
    La Apple de antes manejaba bien ese equilibrio, pero ahora solo parece una obsesión por el control

    • El problema es que ya ni siquiera ofrecen buenos valores predeterminados
      El mal diseño no desaparece fácilmente y termina quedándose durante décadas
      El tiempo desperdiciado en animaciones perjudica no solo a los power users, sino a todos
  • Ya que salió el tema de yabai, recomiendo mucho probar Aerospace
    He usado varios WM, pero este ha sido el más estable
    Aerospace GitHub

    • Yo también uso Aerospace, y funciona excelente casi sin configuración
      La configuración por defecto es tan buena que casi no la he tocado en años
      Eso sí, no soy un power user de WM en mosaico
    • Aerospace es una herramienta realmente increíble
    • Antes usaba mucho macOS Spaces, pero me lo recomendaron, cambié a Aerospace y desde entonces estoy completamente satisfecho
      También consideré Yabai, pero lo descarté porque tiene funciones para las que hay que desactivar SIP (System Integrity Protection)
    • Antes funcionaba bien, pero últimamente me pasa que pierde ventanas todo el tiempo y tengo que reiniciarlo una y otra vez
  • Hace poco me cambié a macOS por trabajo, y esto de verdad no es la cumbre de la ingeniería
    Quizá porque estaba acostumbrado a un escritorio Linux configurado por mí, pero macOS se siente lento, difícil de ajustar y poco amigable con el teclado

  • Hasta hace un momento no lo sabía, pero recién ahora me doy cuenta de lo molesta que es la animación de cambio de espacio en macOS

    • Encima, en monitores de 120 Hz es más lenta, y el foco de entrada se queda en el espacio anterior hasta que termina la animación
    • Ahora vas a empezar a notar también otros problemas, así que por tu salud mental, mejor olvídalo
  • Por este bug de macOS me cambié a Fedora Asahi Remix
    Asahi Remix está basado en Gnome y la gestión de ventanas es mucho más razonable
    El video del bug está aquí

    • Yo también me pasé a Asahi Linux por la misma razón
      Fui usuario de Mac desde la época de System 6 a principios de los 90, pero ya no sé si voy a comprar mi próximo hardware de Apple
    • Yo uso Asahi Alarm (basado en Arch) y Sway
      Me cambié inmediatamente después de que macOS forzara una actualización sin importar mi voluntad
  • La idea de componer swipes rápidos para eliminar la animación de transición es realmente genial

  • Es algo relacionado, pero cuando Finder restaura varias pestañas después de reiniciar
    si haces clic en una pestaña, la ventana de repente salta a otro espacio
    Parece como si creyera por error que las pestañas de la misma ventana pertenecen a espacios distintos
    Los bugs del software de Apple últimamente ya no parecen simples casos excepcionales, sino el resultado de una estructura de modelado incorrecta

  • Este hack de cambio de espacio también está genial, pero ojalá hubiera una forma de revivir la cuadrícula 2D de espacios del viejo OS X 10.5/10.6
    El diseño lineal desde 10.7 es demasiado simple

    • A mí también me hacía muchísima falta esa función
      Después de pasar de macOS a KDE recuperé una cuadrícula 3x3 de escritorios virtuales, y de verdad es comodísima
      Puedes fijar cada escritorio para un uso distinto, y también configurar libremente las animaciones de transición con fade, slide y ajuste de velocidad, entre otras cosas
      Ese tipo de flexibilidad de configuración es justo uno de los grandes atractivos de KDE
  • Después de acostumbrarme en Linux a opciones como Hyperland y Niri, últimamente he estado probando OmniWM

    • Todavía está en una etapa temprana de desarrollo, pero la velocidad con la que corrigen bugs es muy alta
      Cuando me toca usar macOS, OmniWM hace que sea soportable
    • Yo no uso espacios ni gestores de ventanas, así que me pregunto qué me estoy perdiendo con solo cambiar con Cmd+Tab
      ¿Será una experiencia que te cambia la vida?
    • Yo pensaba lo mismo, pero OmniWM se ve tan bueno que lo voy a probar de inmediato