¿Puede la línea de comandos "escritura predeterminada" configurar la barra de menú en macOS?

16

Realmente me gustaría usar un script para habilitar estas cosas en macOS High Sierra, usando los valores predeterminados. Sé cómo crear el script en .bash_profile, ya que usaré una función para ello y luego ejecutaré la función en el terminal. Sin embargo, lo que me falta son las cadenas reales para habilitar lo siguiente:

  • Visualización del icono de Bluetooth
  • Visualización del icono de volumen
  • Visualización del porcentaje de batería
  • Visualización de la fecha completa

¿Alguno de estos es programable mediante el uso de valores predeterminados, y han cambiado mucho entre 10.6-10.13?

De acuerdo con lo que dijo IconDeamon en la sección de comentarios de esta publicación, pude ir y editar ~/Library/Preferences/com.apple.systemuiserver.plisty pude ver una lista de menús que he habilitado.

Sin embargo, esto no necesariamente me lleva al lugar al que quiero ir. Idealmente, sería bueno encontrar una lista y poder resolver esto. Quiero decir, está bien, ahora, gracias a la ayuda en este foro, sé que los que deseo mostrar son:

/System/Library/CoreServices/Menu Extras/Script Menu.menu

/System/Library/CoreServices/Menu Extras/RemoteDesktop.menu

/System/Library/CoreServices/Menu Extras/Bluetooth.menu

/System/Library/CoreServices/Menu Extras/TimeMachine.menu

/System/Library/CoreServices/Menu Extras/AirPort.menu

/System/Library/CoreServices/Menu Extras/TextInput.menu

/System/Library/CoreServices/Menu Extras/Battery.menu

/System/Library/CoreServices/Menu Extras/Volume.menu

/System/Library/CoreServices/Menu Extras/Clock.menu

y que el menú puede tener una _5o una _3al final para indicar a dónde debe ir. Pero..? No es exactamente un archivo de texto grabable por el usuario que solo puedo editar.

esaruoho
fuente
Supongo que sabe cómo configurar bash y script esto y está buscando las claves (o alguien que diga en el registro, no, no puede hacer esto) para una versión específica de macOS.
bmike
Sí. estoy ejecutando osx el capitan pero la máquina en la que estoy buscando escribir "valores predeterminados" (mi nombre de función en .bash_profile) será una sierra alta.
esaruoho
1
Busque en ~/Library/Preferences/com.apple.systemuiserver.plist.
IconDaemon
gracias @IconDaemon - Ahora tengo una lista de lo que yo tiendo a usar. pero no estoy seguro de cómo usar esta información para escribir en una computadora nueva. Además, el Battery.menu no parece especificar automáticamente el porcentaje.
esaruoho el
El siguiente comando mostrará el porcentaje de batería:defaults write com.apple.menuextra.battery ShowPercent YES; killall SystemUIServer
user3439894

Respuestas:

11

Este defaults writecomando habilitará varios iconos de barra de menú, incluido Bluetooth.

defaults write com.apple.systemuiserver menuExtras -array "/System/Library/CoreServices/Menu Extras/AirPort.menu" "/System/Library/CoreServices/Menu Extras/Bluetooth.menu" "/System/Library/CoreServices/Menu Extras/Clock.menu" "/System/Library/CoreServices/Menu Extras/Displays.menu" "/System/Library/CoreServices/Menu Extras/Volume.menu"

Los cambios no tendrán efecto hasta que reinicie SystemUIServer :
killall SystemUIServer

Si desea habilitar elementos adicionales, busque ~/Library/Preferences/com.apple.systemuiserver.plistpara encontrar el nombre específico del menú adicional que está buscando.

Nota: Si intenta habilitar un menú adicional que no tiene en su máquina, el comando se atascará en un bucle sin fin. Algunos usuarios pueden no tener el Eject.menu, por ejemplo.

Wade Williams
fuente
Estoy obteniendo un bucle sin fin de 2018-09-25 00: 31: 35.052 valores predeterminados [48638: 10853265] El argumento de representante no es un diccionario Los valores predeterminados no se han cambiado. 2018-09-25 00: 31: 35.973 valores predeterminados [48677: 10853403] El argumento del representante no es un diccionario Los valores predeterminados no se han cambiado. 2018-09-25 00: 31: 36.892 valores predeterminados [48715: 10853535] El argumento del representante no es un diccionario Los valores predeterminados no se han cambiado. 2018-09-25 00: 31: 37.807 valores predeterminados [48753: 10853666] El argumento del representante no es un diccionario Los valores predeterminados no se han cambiado. con macOS High Sierra. ¿Qué estoy haciendo mal?
esaruoho
2
@esaruoho El comando debe ser una línea: si tiene retornos de carro adicionales o líneas en blanco, eso podría causar un problema como el que mencionó.
Wade Williams
Lo pegué como una línea y obtuve esos errores.
esaruoho
2
Hola, después de eliminar Eject, pude hacer que todos trabajaran. Eject.menu estaba creando este bucle sin fin :)
esaruoho
Para mí, el elemento Reloj siempre volvería a aparecer en los valores predeterminados después de ejecutar killall
felixfbecker