31 votos

¿Cómo desactivar Cmd+Shift+A y Cmd+Shift+M desde la CLI en MacOS?

Cómo desactivar esos accesos directos usando algún comando/herramienta de CLI:

  • "Abrir página del manual en Terminal" - Cmd+Shift+A
  • "Buscar índice de la página del manual en Terminal" - Cmd+Shift+A

Ambos se encuentran en Preferencias del Sistema > Teclado > Accesos directos > Servicios como se muestra en la imagen:

'Accesos directos' de servicios

Anteriormente logré habilitar/deshabilitar algunos de los accesos directos de 'Control de misión' y 'Spotlight' editando ~/Library/Preferences/com.apple.symbolichotkeys.plist" (enlace), pero parece que están definidos en otro lugar.

¿Existe algún otro archivo plist, base de datos, archivo de configuración, herramienta de CLI o API para modificar estos?

2 votos

Para las personas que hacen esto desde la UI, estos comandos se encuentran en un submenú de "Texto" en Ventura.

0 votos

Entonces... bastante embarazoso, pero comencé a actualizar la pregunta para que coincida con el diseño de macOS Ventura, pero luego me di cuenta de que esta no es una respuesta. Estaba buscando cualquier forma de deshabilitar esos atajos. Todavía publiqué la actualización, pero tal vez deberíamos hacer algunas preguntas y respuestas para la forma de deshabilitarlos a través de la GUI, teniendo en cuenta que el SEO apunta a esta pregunta para "macOS deshabilitar cmd shift a".

11voto

Raúl Martín Puntos 519

En Ventura, esto está en una nueva ubicación Configuración del sistema / Teclado / Accesos directos de teclado... / Servicios / texto

ingresar descripción de la imagen aquí:

ingresar descripción de la imagen aquí

3voto

Ian Lesperance Puntos 101

Cuando deshabilitas estos atajos de teclado a través de la interfaz de usuario, estás efectivamente añadiendo el siguiente par clave-valor al diccionario NSServicesStatus en el dominio pbs:

"com.apple.Terminal - Search man Page Index in Terminal - searchManPages" = {
  "enabled_context_menu" = 0;
  "enabled_services_menu" = 0;
  "presentation_modes" = {
    ContextMenu = 0;
    ServicesMenu = 0;
  };
};

Para hacerlo a través de la CLI, puedes escribir en forma codificada en XML usando -dict-add:

VALUE='enabled_context_menuenabled_services_menupresentation_modesContextMenuServicesMenu'

defaults write pbs NSServicesStatus \
  -dict-add \
  'com.apple.Terminal - Open man Page in Terminal - openManPage' \
  "$VALUE"
defaults write pbs NSServicesStatus \
  -dict-add \
  'com.apple.Terminal - Search man Page Index in Terminal - searchManPages' \
  "$VALUE"

0voto

benwiggy Puntos 8

No existe un comando (documentado) para eliminar un elemento clave de un diccionario, pero puedes reemplazar una clave de diccionario existente:

defaults write  -dict-add "Insert Bookmark" -string "@^b"

donde @ es para la tecla Command, ^ es CTRL, $ es para shift, y ~ es para Alt.

Por lo tanto, necesitarás proporcionar otra secuencia de teclas que no vayas a utilizar. Obviamente, tendrás que averiguar cuál es el archivo.

0 votos

Sí, esas teclas no activan esos Servicios en Terminal. Activan esos Servicios cuando estoy usando IntelliJ Idea. No quiero activarlos en absoluto. Lo que quiero es desactivarlos usando algún comando de CLI.

0 votos

Si nunca los quieres encendidos, ¿tiene que ser un comando CLI?

3 votos

@benwiggly esos dos son ajustes predeterminados. Quiero desactivar esos atajos como parte de mis scripts de configuración de MacOS. En los últimos años, los desactivé manualmente varias veces y en este momento quiero automatizarlo. Para otros atajos pude hacerlo, pero para estos no encuentro la manera.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X