defaults-commando voor het Mac DockKort antwoord: elke Dock-instelling zit in com.apple.dock, en na elke
wijziging heb je killall Dock nodig, anders gebeurt er niets.
Deze pagina somt elke sleutel op die het weten waard is, welke waarden hij aanneemt, en wat hij precies doet. Het is een naslagwerk, geen tutorial, dus spring gerust naar de rij waarvoor je kwam.
Twee commando's. Het eerste schrijft de instelling weg, het tweede herstart het Dock zodat de instelling wordt opgepakt:
defaults write com.apple.dock tilesize -int 48; killall Dock
Zonder killall Dock blijft de waarde in het voorkeurenbestand staan zonder iets te doen. Dat is de
meest voorkomende reden waarom een commando uit een blogpost niet lijkt te werken. Zie
wat killall Dock doet voor de details.
Voordat je iets verandert: bekijk hoe het er nu uitziet, zodat je het kunt terugzetten:
defaults read com.apple.dock tilesize
Als een sleutel nooit is ingesteld, geeft defaults read een foutmelding terug in plaats van een waarde. Dat is
normaal en betekent dat het Dock de ingebouwde standaardwaarde gebruikt. Om terug te gaan naar die staat, verwijder je de sleutel
in plaats van te gokken naar het oorspronkelijke getal:
defaults delete com.apple.dock tilesize; killall Dock
tilesize is degene die iedereen wil. Het is de pictogramgrootte in punten, en de schuifregelaar in
Systeeminstellingen schrijft dezelfde waarde weg.
defaults write com.apple.dock tilesize -int 48; killall Dock
tilesize geheel getal, 16 tot 128. De schuifregelaar in Systeeminstellingen dekt
ook alleen 16 tot 128, maar door het getal in te typen kom je op een exacte grootte uit en kun je die later
terugvinden.magnification boolean. Of iconen groeien als de aanwijzer
eroverheen gaat.largesize integer, tot 128. Hoe groot ze worden wanneer vergroting
aan staat. Wordt volledig genegeerd wanneer dat uit staat.Goed om te weten: het Dock accepteert vanaf de commandoregel gewoon een tilesize boven 128 en
klemt die dan vast bij de volgende start, dus behandel een groter getal niet als een verborgen functie.
orientation string, left, bottom of
right. Er is geen top. macOS heeft dat nooit ondersteund.autohide boolean. Of het Dock verborgen blijft totdat je naar de rand duwt.autohide-delay float, seconden. Hoe lang de aanwijzer bij de
rand moet blijven voordat het Dock verschijnt. Zet dit op 0 voor direct.autohide-time-modifier float. Hoe lang de schuifanimatie duurt.
0.15 is snel, 0 verwijdert de animatie.Het duo dat mensen eigenlijk willen is een direct Dock:
defaults write com.apple.dock autohide-delay -float 0
defaults write com.apple.dock autohide-time-modifier -float 0
killall Dock
Dit zijn de sleutels waar deze site om bestaat. Elke sleutel zorgt dat het bijbehorende onderdeel in Systeeminstellingen niet meer reageert, zodat de instelling niet per ongeluk kan worden gewijzigd, door een andere app, of door jezelf over zes maanden wanneer je het bent vergeten.
defaults write com.apple.dock size-immutable -bool true
defaults write com.apple.dock position-immutable -bool true
defaults write com.apple.dock contents-immutable -bool true
defaults write com.apple.dock autohide-immutable -bool true
killall Dock
size-immutable bevriest de grootte, en daarmee de sleepgreep op de
scheidingslijn, wat de meeste mensen eigenlijk proberen te stoppen.position-immutable bevriest aan welke rand het Dock zit.contents-immutable voorkomt dat pictogrammen worden uitgesleept, ingesleept of
herschikt.autohide-immutable bevriest de instelling voor verbergen en tonen. Dit is
degene die de meeste handleidingen weglaten.Vervang true door false om er een van vrij te geven. Onze
commandogenerator schrijft de exacte set voor welke vergrendelingen je ook kiest,
inclusief de ongedaan-maken-commando's. Een uitgebreidere vergelijking van de aanpakken staat in
drie manieren om het Mac Dock te vergrendelen.
Deze vier zijn per gebruiker en ongedaan te maken. Een configuratieprofiel is de versie die Terminal en een herstart overleeft, en dat is het juiste gereedschap voor een Mac die anderen gebruiken en het verkeerde voor je eigen Mac.
show-recents boolean. De sectie met recente apps aan de rechterkant.
Instellen op false is de oplossing waar mensen na een upgrade het vaakst naar zoeken.static-only boolean. Als dit waar is, toont het Dock alleen apps
die op dat moment draaien en verbergt het elk vastgezet icoon. Een echt andere manier van werken.persistent-apps array. De vastgezette apps. Dit met de hand
bewerken kan, maar is onprettig; slepen gaat makkelijker.persistent-others array. De mappen en stapels rechts van de
scheidingslijn.show-process-indicators boolean. Het puntje onder een actieve app.Om het Dock volledig te legen van vastgezette apps, zodat alleen wat draait overblijft:
defaults write com.apple.dock persistent-apps -array; killall Dock
mineffect string, genie, scale of
suck. De minimaliseeranimatie. suck heeft nooit in Systeeminstellingen gestaan
en werkt al meer dan vijftien jaar.minimize-to-application boolean. Of een geminimaliseerd venster in zijn
app-pictogram verdwijnt in plaats van apart rechts te blijven staan.launchanim boolean. Het stuiterende icoon terwijl een app opent.scroll-to-open boolean. Scroll omhoog op een pictogram om Exposé
voor die app te openen.expose-group-apps boolean. Of Mission Control vensters
per app groepeert.mru-spaces boolean. Of Spaces zichzelf herordenen op basis van meest
recent gebruik. Zet dit op false om je bureaubladen in een vaste volgorde te houden, wat de andere
helft is van een bureaublad dat op zijn plek blijft.| Sleutel | Type | Wat het doet |
|---|---|---|
tilesize | int 16–128 | Pictogramgrootte |
magnification | bool | Iconen laten groeien bij aanwijzen |
largesize | int | Vergrote grootte |
orientation | left/bottom/right | Welke rand |
autohide | bool | Verbergen tot nodig |
autohide-delay | float | Vertraging voordat het wordt getoond |
autohide-time-modifier | float | Schuifsnelheid |
size-immutable | bool | Vergrendel de grootte |
position-immutable | bool | Vergrendel de rand |
contents-immutable | bool | De iconen vergrendelen |
autohide-immutable | bool | Verbergen en tonen vergrendelen |
show-recents | bool | Sectie recente apps |
static-only | bool | Alleen actieve apps |
persistent-apps | array | Vastgezette apps |
persistent-others | array | Mappen en stapels |
show-process-indicators | bool | Puntjes voor actieve apps |
mineffect | genie/schaal/opzuigen | Minimaliseeranimatie |
minimize-to-application | bool | Minimaliseren in het pictogram |
launchanim | bool | Stuiteren bij het starten |
scroll-to-open | bool | Scrollen voor Exposé |
expose-group-apps | bool | Groeperen op app |
mru-spaces | bool | Spaces herschikken op gebruik |
Om elke Dock-instelling die je ooit hebt veranderd weg te gooien en terug te keren naar een fabrieks-Dock:
defaults delete com.apple.dock; killall Dock
Dit is niet terug te draaien en het gooit werk weg. Je vastgezette apps, je stapels, je grootte, alles. Wil je slechts één ding ongedaan maken, verwijder dan alleen die ene sleutel. Meer hierover in hoe je het Mac Dock reset.
Bijna altijd een ontbrekende
killall Dock. De waarde is weggeschreven, maar het lopende Dock heeft die nog niet opnieuw ingelezen. De andere oorzaak
is een typefout in de sleutelnaam: defaults accepteert elke sleutel die je verzint en schrijft die probleemloos weg,
omdat het geen idee heeft welke sleutels het Dock begrijpt.
Ja. Ze staan in je gebruikersvoorkeuren, niet in het systeem, dus een update laat ze met rust. Een migratie naar een nieuwe Mac neemt ze ook mee.
Nee, en dat moet je ook niet gebruiken. Dit zijn instellingen per gebruiker.
Als je ze met sudo uitvoert, schrijf je naar de voorkeuren van root in plaats van die van jou, wat
eruitziet alsof het commando stilletjes mislukt.
Ja, en daar zijn de vier
immutable-sleutels voor bedoeld. Elke app met jouw rechten kan schrijven naar
com.apple.dock; de vergrendelingen zorgen ervoor dat die wijziging geen effect krijgt.
Still Dock biedt dezelfde vier vergrendelingen als schakelaars in je menubalk, plus het ene ding dat de commando's niet hebben: het onthoudt het Dock dat je had voordat je het vergrendelde, zodat je altijd terug kunt. De grootte vergrendelen is gratis.