MacVim wird von Spotlight nicht gefunden

10

Ich bin ein Mac Noob, aber im Allgemeinen ein Power-Linux-Benutzer. Mein neuer Job gab mir ein neues MacBook Pro mit installiertem Lion.

Ich habe MacVim erfolgreich mit Homebrew installiert. Ich würde es lieben, wenn es die Standard-App zum Öffnen bestimmter Dateitypen wäre. (.rb, .haml)

Wenn ich jedoch versuche, MacVim als Standard-App im Finder zuzuweisen, ist die App unbekannt. Bei einer Spotlight-Suche unter MacVim wird nur die ursprüngliche .tgz-Datei angezeigt.

Ich kann es jedoch über eine Befehlszeile (mvim) ausführen und an das Dock anheften und von dort aus ausführen.

Ich vermute, dass etwas namens "Alias" erstellt werden muss, und ich habe den Eindruck, dass dies etwas anderes ist als eine symbolische Verknüpfung. Tatsächlich habe ich einen symbolischen Link in meinem Ordner ~ / Applications für MacVim, der dort von Homebrew erstellt wurde.

Wie kann ich MacVim irgendwie als installierte App segnen und sie zum Öffnen bestimmter Dateierweiterungen zuweisen?

Mojo
quelle
1
Versuchen Sie es brew link macvim. Ah warte ... Ich hatte auch ein Problem, dass mein Link irgendwie nicht funktionierte, obwohl er da war. Sie können unlinkes zuerst und linkwieder und wenn das nicht funktioniert, installieren Sie es neu.
Felix
1
Mojo
Funktionieren die Anweisungen für MacVim als "normale" App? Das würde jede Frage beseitigen, dass es die Binärdatei selbst sein könnte.
digitxp
Ich hatte das gleiche Problem und Symlink wurde von Spotlight nicht ausgewählt. Es wurde behoben, indem zu Alfredo (www.alfredapp.com) anstelle von Spotlight gewechselt wurde, da Spotlight anscheinend keine Verknüpfungen für Symlink-Ordner auswählt. Ähnliches Thema apple.stackexchange.com/questions/23653/…
Arsal

Antworten:

5

Wenn Sie eine Datei aus dem Internet OS X herunterladen, wird sie als "unter Quarantäne gestellt" markiert. Sie können dies mit einem Terminal-Befehl wie dem folgenden sehen:

 cd "wherever your app folder is" (not in the .app folder itself)
 ls -la@

Eines der Dinge, die Sie sehen werden, ist, dass das Attribut "com.apple.quarantine" für den Ordner "MacVim.app" (und für alle Dateien in seinem Baum) festgelegt ist. Wenn Sie die App starten, erhalten Sie von OS X eine Warnung wie "Diese App wurde aus dem Internet heruntergeladen - möchten Sie fortfahren". Wenn Sie "Ja" sagen, werden die Dateien in der App aus der Quarantäne entfernt. Sie können dies manuell für alle Dateien in der Ordnerstruktur von MacVim.app tun, indem Sie den Befehl Terminal verwenden:

xattr -dr com.apple.quarantine MacVim.app

Oder für nur eine Datei mit dem Befehl:

xattr -d com.apple.quarantine somefile

Ich habe MacVim 7.3 heruntergeladen und dies würde nicht funktionieren, bis ich den Befehl xattr -dr ... ausgeführt habe, aber sobald ich es getan habe, hat es von jedem Ort aus, an dem es installiert wurde, einwandfrei funktioniert. Stellen Sie eine Datei so ein, dass sie mit MacVim geöffnet wird, und sie funktionierte auch (mithilfe des Dialogfelds "GetInfo").

Der Speicherort der MacVim-App ist nicht wirklich wichtig. Es ist nur so, dass sich Apps normalerweise im Ordner / Applications befinden. Dies gilt möglicherweise nicht für einige Apps, ist jedoch aus Gründen der Einheitlichkeit wahrscheinlich eine gute Idee.

Manchmal gibt es einen Grund, warum dies nicht praktikabel ist, z. B. haben Sie möglicherweise keine Schreibberechtigung für den Ordner / Applications.

Bob Freeman
quelle
Bob, danke für diese schöne Antwort! Meine unten stehende Brute-Force-Lösung hat funktioniert, aber ich hätte nie etwas über die Apfelquarantäne gewusst.
Mojo
Leider hat das bei mir nicht funktioniert.
Dan Loewenherz
10

Ich hatte das gleiche Problem. Ich habe MacVim.app nach / Applications verschoben und mich dann mit dem Homebrew-Kellerverzeichnis verbunden.

mv /usr/local/Cellar/macvim/7.3-65/MacVim.app / Applications /  
ln -s /Applications/MacVim.app /usr/local/Cellar/macvim/7.3-65/
Shaun Jackman
quelle
Laut Mojos Kommentar musste ich es auch kopieren, anstatt es zu verknüpfen. Der Move / Symlink hat es im Rampenlicht aktiviert, aber ich konnte es nicht mehr starten, indem ich "mvim" in ein Terminal eingegeben habe. Durch Kopieren an beide Speicherorte wurde dies behoben.
optevo
5

Für diejenigen mit Yosemite und MacVim von Homebrew, die nicht in Spotlight angezeigt werden, funktioniert die Verwendung eines Alias.

(Stellen Sie sicher, dass Sie alle MacVim löschen, die bereits vorhanden sind /Applications.)

Vom Terminal:

  1. Vorhandene deinstallieren: brew uninstall macvim
  2. Neueste installieren: brew install macvim
  3. Öffnen Sie das Verzeichnis im Finder. Ex:open /usr/local/Cellar/macvim/7.3-64
  4. Klicken Sie im Finder mit der rechten Maustaste auf das MacVim.appSymbol und wählen Sie "Alias ​​erstellen".
  5. Kopieren Sie den soeben erstellten Alias ​​in den /ApplicationsOrdner.

Spotlight indiziert den MacVim-Alias.

Quelle: https://github.com/Homebrew/homebrew/issues/8970#issuecomment-4262695

Alanning
quelle
1
Dies hat bei mir funktioniert, aber Spotlight gibt die App nur zurück, wenn bei der Suche zwischen Groß- und Kleinschreibung unterschieden wird. Kein Ergebnis, wenn ich nach "macvim" suche, aber App zurückgibt, wenn die Suche "MacVim" ist
user34215
Beachten Sie, dass Sie einen Alias ​​mit einem anderen Namen erstellen können. In meinem Fall habe ich eine namens "vim" gemacht.
Alanning
2

Für mich hat es funktioniert, den gesamten MacVim.app-Baum von dort, wo Homebrew ihn installiert hat (/ usr / local / Cellar / ...), nach / Applications zu kopieren. Ein Sym-Link war unzureichend und ich konnte keinen funktionierenden "Alias" erstellen.

Mojo
quelle
2

Die Installation von MacVim mithilfe von cask scheint es in Spotlight verfügbar zu machen:

brew cask install macvim
Jon
quelle
0

Dies war mein Setup - ich habe Homebrew verwendet, um MacVim auf El Capitan zu installieren, und mithilfe der Linkapps einen Symlink zu /Applications/MacVIM.app hinzugefügt. Leider wurde dies von Spotlight nicht aufgegriffen. Ich konnte Spotlight zum Laufen bringen, indem ich einen Teil des Verzeichnisbaums unter MacVIM.app erstellte. Spotlight erfordert, dass die Dateien Info.plist und PkgInfo unter MacVim.app/Contents keine Symlink-Dateien sind. Am Ende habe ich also Folgendes getan:

    cd /Applications
    rm -rf MacVim.app
    mkdir -p MacVim.app/Contents
    cd !$
    ln -s /usr/local/opt/macvim/MacVim.app/Contents/* .
    mv Info.plist Info.plist.link
    mv PkgInfo PkgInfo.link
    cp Info.plist.link Info.plist
    cp PkgInfo.link PkgInfo

Das war's. Hinweis: Wenn Sie Ihren MacVim mit Brew aktualisieren, müssen Sie möglicherweise die folgenden Schritte ausführen:

    cd /Application/MacVim.app/Contents
    cp Info.plist.link Info.plist
    cp PkgInfo.link PkgInfo
user583446
quelle