La ligne de commande «écriture par défaut» peut-elle configurer la barre de menus sur macOS?

17

J'aimerais vraiment utiliser un script pour activer ces choses sur macOS High Sierra, en utilisant les valeurs par défaut. Je sais comment créer le script dans .bash_profile, car je vais utiliser une fonction pour cela, puis exécuter la fonction dans le terminal. Cependant, ce qui me manque, ce sont les chaînes réelles pour activer les éléments suivants:

  • Affichage de l'icône Bluetooth
  • Affichage de l'icône de volume
  • Affichage du pourcentage de batterie
  • Affichage de la date complète

Certains de ces paramètres peuvent-ils être programmés en utilisant les valeurs par défaut, et ont-ils beaucoup changé entre le 10.6-10.13?

Ok, sur la base de ce que IconDeamon a dit dans la section commentaires de ce post, j'ai pu aller et modifier ~/Library/Preferences/com.apple.systemuiserver.plistet j'ai pu voir une liste des menus que j'ai activés.

Cependant, cela ne m'amène pas nécessairement à l'endroit où je veux aller. Idéalement, il serait bon de trouver une liste et de pouvoir résoudre ce problème. Je veux dire, d'accord, maintenant, grâce à l'aide sur ce forum, je sais que ceux que je souhaite afficher sont:

/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

et que le menu peut avoir un _5ou un _3à la fin pour indiquer où il doit aller. Mais..? Ce n'est pas exactement un fichier texte inscriptible par l'utilisateur que je peux simplement modifier.

esaruoho
la source
Je suppose que vous savez comment définir bash et le script et que vous recherchez les clés (ou quelqu'un à dire sur l'enregistrement - non, vous ne pouvez pas le faire) pour une version spécifique de macOS.
bmike
oui. je lance osx el capitan mais la machine que je cherche à taper simplement "par défaut" dans (mon nom de fonction dans .bash_profile) va être une haute sierra.
esaruoho
1
Regardez ~/Library/Preferences/com.apple.systemuiserver.plist.
IconDaemon
merci @IconDaemon - maintenant j'ai une liste de ce que j'ai tendance à utiliser. mais je ne sais pas comment utiliser ces informations pour écrire sur un tout nouvel ordinateur. en outre, le menu Battery.menu ne semble pas automatiquement spécifier le pourcentage.
esaruoho
La commande suivante affichera le pourcentage de batterie:defaults write com.apple.menuextra.battery ShowPercent YES; killall SystemUIServer
user3439894

Réponses:

12

Cette defaults writecommande activera plusieurs icônes de barre de menus, y compris 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"

Les modifications ne prendront effet qu'au redémarrage de SystemUIServer :
killall SystemUIServer

Si vous souhaitez activer des éléments supplémentaires, recherchez ~/Library/Preferences/com.apple.systemuiserver.plistpour trouver le nom spécifique du menu supplémentaire que vous recherchez.

Remarque: Si vous essayez d'activer un menu supplémentaire que vous n'avez pas sur votre ordinateur, la commande restera bloquée dans une boucle sans fin. Certains utilisateurs peuvent ne pas avoir le Eject.menu, par exemple.

Wade Williams
la source
Je reçois une boucle sans fin des valeurs par défaut 2018-09-25 00: 31: 35.052 [48638: 10853265] L'argument Rep n'est pas un dictionnaire Les valeurs par défaut n'ont pas été modifiées. 2018-09-25 00: 31: 35.973 valeurs par défaut [48677: 10853403] L'argument Rep n'est pas un dictionnaire Les valeurs par défaut n'ont pas été modifiées. 2018-09-25 00: 31: 36.892 valeurs par défaut [48715: 10853535] L'argument Rep n'est pas un dictionnaire Les valeurs par défaut n'ont pas été modifiées. 2018-09-25 00: 31: 37.807 valeurs par défaut [48753: 10853666] L'argument Rep n'est pas un dictionnaire Les valeurs par défaut n'ont pas été modifiées. avec macOS High Sierra. Qu'est-ce que je fais mal?
esaruoho
2
@esaruoho La commande doit être sur une seule ligne - si vous avez des retours chariot supplémentaires ou des lignes vides dedans, cela pourrait provoquer un problème comme celui que vous avez mentionné.
Wade Williams
Je l'ai collé sur une seule ligne et j'ai obtenu ces erreurs.
esaruoho
2
Salut, après avoir supprimé Eject, j'ai pu les faire fonctionner tous. Eject.menu créait cette boucle sans fin :)
esaruoho
Pour moi, l'élément Horloge réapparaîtrait toujours dans les
paramètres par