Spotlight找不到MacVim


10

我是Mac Noob,但通常是Linux的高级用户。我的新工作让我有了安装了Lion的新MacBook Pro。

我使用自制软件成功安装了MacVim。我希望它成为打开某些文件类型的默认应用。(.rb,.haml)

但是,当我尝试将MacVim分配为Finder中的默认应用程序时,该应用程序是闻所未闻的。在MacVim上进行Spotlight搜索只会打开原始.tgz文件。

但是我可以从命令行(mvim)运行它,并将其固定到扩展坞并从那里运行。

我猜想需要创建一个称为“别名”的东西,给人的印象是这与符号链接有所不同。确实,我的MacVim的〜/ Applications文件夹中有一个符号链接,该链接由自制软件创建。

如何以某种方式祝福MacVim成为已安装的应用程序并将其分配为打开某些文件扩展名?


1
尝试brew link macvim。等等,我也有一个问题,尽管我的链接在那里,但仍然不起作用。您可以unlink一次link又一次地操作它,如果那不起作用,请重新安装它。
菲利克斯(Felix)

1
好吧,似乎没有任何作用……
Mojo

执行指令进行的MacVim作为一个“普通”的应用程序的工作?这将消除任何可能是二进制本身的问题。
digitxp 2011年

我遇到了同样的问题,Symlight未选择symlink。它通过切换到Alfredo(www.alfredapp.com)而不是Spotlight得以解决,因为Spotlight似乎没有选择symlink文件夹快捷方式。类似的线程apple.stackexchange.com/questions/23653/...
Arsal

Answers:


5

从Internet OS X下载文件时,将其标记为“已隔离”。您可以使用如下的Terminal命令查看此内容:

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

您将看到的一件事是为MacVim.app文件夹(及其树中的所有文件)设置了名为“ com.apple.quarantine”的属性。如果启动该应用程序,您将收到来自OS X的警告,例如“此应用程序已从互联网下载-您要继续吗”,当您说是时,它将取消隔离该应用程序中的文件。您可以使用Terminal命令手动对MacVim.app文件夹树中的所有文件执行此操作:

xattr -dr com.apple.quarantine MacVim.app

或仅使用命令一个文件:

xattr -d com.apple.quarantine somefile

我下载了MacVim 7.3,直到执行xattr -dr ...命令后,该命令才起作用,但是,一旦安装完成,无论从哪里安装,它都可以正常工作。设置一个文件以使用MacVim打开它,它也可以工作(使用“ GetInfo”对话框)。

MacVim应用程序的位置并不是很重要。只是按照惯例,应用程序通常位于/ Applications文件夹中。对于某些应用程序可能并非如此,但仅出于一致性考虑,这可能是一个好主意。

有时,这可能是不实用的原因,例如您没有对/ Applications文件夹的写许可权。


鲍勃,谢谢你的回答!我下面的蛮力解决方案有效,但是我对苹果隔离区一无所知。
Mojo

不幸的是,这对我没有用。
Dan Loewenherz

10

我遇到过同样的问题。我将MacVim.app移至/ Applications,然后符号链接到自制酒窖目录。

mv /usr/local/Cellar/macvim/7.3-65/MacVim.app / Applications /  
ln -s /Applications/MacVim.app /usr/local/Cellar/macvim/7.3-65/

根据Mojo的评论,我还必须复制它而不是符号链接。move / symlink在聚光灯下启用了它,但是我再也无法通过在终端中键入“ mvim”来启动它。将其复制到两个位置可解决此问题。
optevo

5

对于那些来自自制的Yosemite和MacVim不在Spotlight中显示的用户,可以使用别名。

(确保删除已存在的任何MacVim /Applications。)

从终端:

  1. 卸载现有的: brew uninstall macvim
  2. 安装最新版本: brew install macvim
  3. 在Finder中打开目录。例如:open /usr/local/Cellar/macvim/7.3-64
  4. 在Finder中,右键单击该MacVim.app图标,然后选择“制作别名”。
  5. 将刚刚创建的别名复制到该/Applications文件夹。

Spotlight将索引MacVim别名。

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


1
这对我有用,但仅当搜索区分大小写时,spotlight才会返回该应用程序。如果我搜索“ macvim”,则没有结果,但如果搜索为“ MacVim”,则返回应用程序
user34215

请注意,您可以使用其他名称创建别名。就我而言,我制作了一个名为“ vim”的文件。
2015年

2

对我有用的是将整个MacVim.app树从自制程序安装树(/ usr / local / Cellar / ...)复制到/ Applications。一个符号链接是不够的,并且我无法做出有效的“别名”。


2

使用桶安装MacVim似乎可以在Spotlight中使用它:

brew cask install macvim

0

这是我的设置-使用自制软件在El Capitan上安装MacVim,并使用linkapps向/Applications/MacVIM.app添加符号链接。不幸的是,Spotlight并没有意识到这一点。通过在MacVIM.app下创建目录树的一部分,可以使聚光灯工作。Spotlight要求Info.plist和PkgInfo文件是MacVim.app/Contents下的非符号链接文件。因此,最后,我执行了以下操作:

    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

就是这样 注意:使用brew更新MacVim时,您可能已执行以下步骤:

    cd /Application/MacVim.app/Contents
    cp Info.plist.link Info.plist
    cp PkgInfo.link PkgInfo
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.