Menu

21 februari 2011

Het “Open met…” menu herstellen

Wanneer je met de rechtermuisknop op een bestand klikt kun je gebruik maken van de optie ‘Open met’ in het contextueel menu. In dit menu kan het voorkomen dat er dubbele of zelfs opties verschijnen die betrekking hebben op verwijderde applicaties. Een ander probleem dat zich kan voordoen is dat een verkeerd programma wordt gestart wanneer je een bestand probeert te openen via het menu.

De opties van de contextuele menu’s en bestand associaties zijn onderdeel van de OS X LaunchServices database. De corrupte opties/associaties kunnen met behulp van het Terminal commando: lsregister worden hersteld.

Het commando zit zeer diep verborgen in de bestandsstructuur van je Mac, met behulp van het locate commando laten we Terminal zelf zoeken naar lsregister op je harddisk. Start een OS X Terminal sessie en typ het onderstaande commando:

`locate lsregister` -kill -r -f -domain system -domain local -domain user

Mocht er een foutmelding verschijnen dat er geen locate database beschikbaar is op je Mac, dan kun je de onderstaande drie commando’s uitvoeren deze hebben het zelfde effect.

cd /System/Library/Frameworks/CoreServices.framework/Versions/A/
cd Frameworks/LaunchServices.framework/Versions/A/Support/
./lsregister -kill -r -domain local -domain system -domain user

Met het uitvoeren van het lsregister commando is je Mac enkele seconden druk bezig en kan de melding ‘throttling disk i/o’ verschijnen. Op het moment dat de terminal prompt weer verschijnt zijn alle menu koppelingen en bestand associaties hersteld.




Gerelateerde tips:




Reacties


  • Exotic 21 februari 2011 om 8:37

    Super tip, nice! Ik heb wel eens last gehad van dubbele opties en daar ergerde ik me aan.

  • Christa 21 februari 2011 om 8:49

    als ik het commando hierboven kopieer en plak in Terminal krijg ik het volgende terug:
    ———–
    `locate lsregister` -kill -r -f -domain system -domain local -domain user

    WARNING: The locate database (/var/db/locate.database) does not exist.
    To create the database, run the following command:

    sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist

    Please be aware that the database can take some time to generate; once
    the database has been created, this message will no longer appear.

    -bash: -kill: command not found
    ———

    Nu is dit allemaal abracadabra voor me, dus ik weet niet wat voor effect dat opgegeven command gaat hebben als ik het uitvoer. Die ellenlange lijsten als ik ‘open met’ gebruik irriteren me genoeg dat ik er toch wel vanaf wil ;)

  • Thomas Brockmans 21 februari 2011 om 9:35

    Ik krijg de melding:
    -bash: locate lsregister: command not found

  • Thomas Brockmans 21 februari 2011 om 9:42

    Ok Gevonden.

    op deze pagina staat ‘locate lsregister’ tussen aanhalingstekens.
    (nochtans staat de hele zin in een balkje alsof je de hele zin gewoon mag copy-pasten).

    Blijkbaar moet je echter gewoon typen:
    locate lsregister -kill -r -f -domain system -domain local -domain user

    @Christa: ik krijg dan ook diezelfde warning, maar heb het erop gewaagd en alles wordt gedaan zoals op deze pagina gezegd wordt. Na een kleine wachttijd (afhankelijk van hoe rommelig je mac is) is alles terug op orde gesteld.

  • TonV 21 februari 2011 om 9:48

    Gaat hier ook fout. Is er trouwens niet een “opruimprogramma” wat dit zelfde doet?

  • Stan 21 februari 2011 om 9:54

    Super! Dit vroeg ik me al een tijdje af. Werkt prima.

  • Saul Philippeth 21 februari 2011 om 10:14

    @ Thomas:

    heb je dan die sudo uitgevoerd?

  • Richard IJzermans 21 februari 2011 om 10:40

    Je kunt het bovenstaande commando zonder meer 1 op 1 kopiëren in OS X Terminal (zie toegevoegd screenshot).

    In een normale ‘unmanaged’ omgeving moet het niet nodig om SUDO te gebruiken, je account dient echter wel beheerders rechten te hebben.

    Wanneer je het commando over gaat type let dan op dat het geen ‘ tekens zijn maar ` (dat is de ~ ` toets rechts van de linker shift toets).

  • Richard IJzermans 21 februari 2011 om 10:50

    (Update 10:49) Extra informatie toegevoegd voor de mensen die een locate database foutmelding krijgen.

  • Pepijn Koning 21 februari 2011 om 12:49

    Echt een heel erg handige tip, eindelijk is dat menu weer eens een beetje overzichtelijk.

  • Mike 21 februari 2011 om 16:10

    Fijne tip! thx. gelijk een vraagje, is het ook mogelijk om bijvoorbeeld een map met film te openen met vlc? dus rechtermuis knop op map waar film inzit en dan dat vlc hem af gaat spelen? Op windhoos kan dat maar OSX weet ik niet, mij lukt het niet in ieder geval ;-)

    iemand tippie?

    gr Mike

  • Christa 21 februari 2011 om 17:16

    joepie! het is gelukt, m’n schijf is flink gethrottled hahaha… maar ik heb nu weer nette lijstjes.

    mijn dank is groot :D

  • Johan 21 februari 2011 om 18:37

    Eindelijk… Hier zat ik dus ook op te wachten. Die dubbele zijn er nu uit. Supper tip!

  • Eelco Deuling 22 februari 2011 om 17:46

    Een opruimprogramma wat hetzelde kan doen is Tinkertool system. Wat mij betreft is dit het enige opruimprogramma wat je zonder problemen kunt gebruiken trouwens: de € 8,- die het kost meer dan waard.

  • Patrick 22 februari 2011 om 18:41

    Super tip. Inderdaad zijn nu alle dubbelingen verwijderd. Is voor mij altijd een punt van frustratie.

Een reactie toevoegen: