¿Puedo hacer que un enlace simbólico (a una carpeta .app) en el directorio de Aplicaciones aparezca en el centro de atención?


45

Solía ​​brew para instalar MacVim y lo puso en /usr/local/Cellar/macvim/7.3-61/MacVim.app

Me gustaría poder ir al centro de atención y escribir MacVim para iniciar la aplicación. Intenté crear un enlace simbólico en el directorio de Aplicaciones para /usr/local/Cellar/macvim/7.3-61/MacVim.app. Pero eso no parece aparecer en Spotlight. Configuré los bits ejecutables en el enlace simbólico. abrir MacVim.app desde la línea de comandos funciona. ¿Cómo puedo hacer que MacVim aparezca en la búsqueda de Spotlight?


2
Spotlight no mira dentro de las carpetas ocultas y aparentemente tampoco funciona para los alias. ¿Utiliza Spotlight para iniciar aplicaciones? Si es así, debo recomendar alfredapp.com . Lo uso y es genial. Más rápido que el centro de atención!
kevin9794

Gracias. Instalé alfred y agregué la carpeta MacVim al ámbito de búsqueda. Estoy en mucho mejor forma.
m_sharp

3
OK, lo descubrí. Si hago un alias a /usr/local/Cellar/macvim/7.3-61/MacVim.app, Spotlight lo indexará. Para obtener más información sobre los alias, consulte switchingtomac.com/tutorials/creating-aliases-in-mac-os-x
m_sharp

3
Bienvenido a Ask Different! Si encontró una solución, publíquela como respuesta para que sea más fácil para otras personas con el mismo problema ver qué ayudó. Por favor, eche un vistazo a las preguntas frecuentes para obtener más información. Gracias.
Nathan Greenstein

1
Para aclarar el comentario de @ m_sharps, parece que Spotlight indexará alias, pero no enlaces simbólicos ( ln -s).
zourtney

Respuestas:


37

En el Finder, presione CommandShiftGpara Ir a la carpeta . Escribe /usr/local/Cellar/macvim/7.3-61/y presiona return. Seleccione el archivo (en realidad una carpeta) MacVim.app Presione CommandLpara crear un alias . Dependiendo de los permisos, es posible que se le solicite una contraseña de administrador aquí.

Presione CommandNpara crear una nueva ventana del Finder . Presione CommandShiftApara ir a la carpeta Aplicaciones en esa ventana.

Arrastre el alias recién creado desde la ventana en la que se creó hasta la ventana que contiene la carpeta Aplicaciones . Cambie el nombre del alias para que ya no termine en "alias".


2
Seguí tus pasos y MacVim aparece en el centro de atención. Sin embargo, cuando intento iniciar MacVim desde el punto de mira, recibo un mensaje de error "El ítem MacVim es usado por OS X y no se puede abrir".
m_sharp

Hmmm ¿Cómo se ejecuta MacVim normalmente cuando no se utiliza Spotlight? ¿Recibes un mensaje de error entonces?
Daniel

Quizás Spotlight no pueda iniciarlo porque no tiene los permisos para acceder / usr / local / o algo.
styfle

Obtuve esto para trabajar primero cambiando los permisos en / usr / local / Cellar con 'sudo chflags nohidden / usr / local / Cellar' (en realidad hice esto para / usr / usr / local y / usr / local / Cellar). Luego usé Finder para crear un alias para MacVim (el que está en Cellar). Luego moví el alias a mi carpeta de Aplicaciones. Spotlight ahora encuentra MacVim (mira al final de su lista hasta que lo abras una vez).
Chris

También necesitaba hacer cambios de permisos adicionales, de forma predeterminada, parece que el enlace simbólico se creó sin ningún permiso de ejecución, agregando los que hicieron que el enlace simbólico apareciera en primer plano. Por extraño que parezca, los alias que creé y luego cambié de nombre a algo que no incluía la palabra "alias" al final tampoco fueron captados por los reflectores. Poner "alias" de nuevo al final del nombre del enlace simbólico lo arregló-
chrismarx

6

El método de alias no funcionó para mí. Una mejor opción es usar Automator para crear una aplicación que ejecute un script de shell:ingrese la descripción de la imagen aquí

Además, vincular directamente a MacVim.app en el directorio de Cellar como sugieren algunas de las otras respuestas lo vincula a una versión específica. Si Brew actualiza MacVim, su enlace todavía apuntará a la versión anterior. Más bien, debes usar:

open /usr/local/opt/macvim/MacVim.app $@

ya que esta ubicación se enlaza automáticamente por brew a la versión más reciente.

Esto funciono muy bien para mi. Guardo el archivo de Automator en iCloud para poder agregar convenientemente la aplicación en otras máquinas.


Esta parece ser la solución más robusta. ¿Para qué sirve $@?
Jacktose

1
$ @ Representa los argumentos pasados ​​al script. En este caso, los argumentos pasados ​​al script se reenvían a MacVim.app (es decir, nombres de archivos, opciones, etc.). Consulte esta respuesta sobre variables de shell especiales.
Zim

Ah gracias. Es realmente difícil de google $@. Sin embargo, ¿eso realmente hará algo en este caso, ya que el script solo se ejecuta seleccionando la aplicación?
Jacktose

1
Sí, es útil, por ejemplo, si usa el Open withcomando en un archivo en Finder. La aplicación se iniciará con la ruta del archivo como primer argumento. O si configura MacVim como la aplicación predeterminada para un tipo de archivo, .txt, por ejemplo, luego, al hacer doble clic en un archivo .txt, se iniciará MacVim con el archivo seleccionado como primer argumento.
zim

4

La forma en que he resuelto esto es usar un script de shell y aplicar.

Por ejemplo, haga un script con un editor de texto que contenga

#!/bin/bash

/usr/local/Cellar/macvim/7.3-61/MacVim.app

Luego obtenga appify - http://git.abackstrom.com/appify.git

Ejecute appify en el script de shell y creará una aplicación que puede agregar / Aplicaciones que invocará MacVim. Esto aparecerá en el centro de atención.


1
Si lo vas a hacer de esta manera, solo crea una aplicación Automator para ejecutar el script.
ocodo

Sí @Slomojo, ese fue el enfoque más fácil. Creé un shellscript que inicia la aplicación (en mi caso, libreoffice) y la puse en / usr / bin. Luego usé el automatizador para invocar el script y guardé la aplicación creada por Automator en mi carpeta de aplicaciones con el nombre que quería usar en Spotlight. Absurdo.
atripes

3

Para mantener las cosas agradables y programables, puede usar osascriptun pequeño AppleScript y crear su alias automáticamente.

osascript <<END

  set macvim to POSIX file "/usr/local/Cellar/macvim/7.3-61/MacVim.app" 
  set applications_folder to POSIX file "/Applications"

  tell application "Finder"
    make alias file to macvim at applications_folder
  end tell

END

Esto en realidad funcionó, a diferencia de muchas frases de osascript que he encontrado en varios lugares.
Xander Dunn

1
En realidad, recomendaría mover la aplicación MacVim a Aplicaciones. O instalarlo a través de barril de cerveza. Los alias se indexan en el centro de atención, pero se clasifican molestamente bajo.
ocodo

Gracias. Me di cuenta de que es difícil hacer que Spotlight elija mi alias MacVim.
Xander Dunn

2

Para aquellos que usan homebrew para instalar macvim (totalmente recomendado)

Ejecute lo siguiente después de la instalación

brew linkapps macvim

1
Desafortunadamente, estos no aparecen en Spotlight.
Jacktose

pero puede crear un alias para el enlace MacVim en el directorio / Aplicaciones, Spotlight recoge el alias.
Piotr Czapla

Desafortunadamente, 'brew linkapps' ya no existe y no se reemplaza.
Katarzyna

2
  1. Los enlaces simbólicos (ln -s) no funcionaron bien para mí, no parecía que Spotlight lo viera como una aplicación.

  2. Hacer un alias de buscador (como lo describe Daniel) funcionó mejor con respecto al lanzamiento desde Finder, pero no lo hizo al usar Finder Open With ... , el alias permanecería atenuado.

En particular, como se menciona en otros comentarios aquí, también quería que MacVim estuviera disponible al usar Abrir con ... desde Finder, pero con el enlace simbólico o el alias del Finder, MacVim permanecería atenuado.

Lo que funcionó para mí fue el script simple de Automator (como se describe en zim), con el comando "Ejecutar script de Shell". Lo único que tuve que hacer de manera diferente a lo que zim mostró en su respuesta fue agregar el parámetro -a para abrir :

open -a /usr/local/opt/macvim/MacVim.app $@

Sin el -a, cuando se usa con "Abrir con ...", MacVim se abriría, pero también el nombre del archivo del parámetro se abriría con cualquier aplicación predeterminada, por lo que obtendría tanto MacVim con el documento vacío Y TextEdit con el archivo I había seleccionado abrir (en lugar de MacVim con mi archivo seleccionado abierto).

El script del automatizador se puede copiar o alias a la carpeta Aplicaciones. También cambié el ícono de mi script de automatización al ícono de MacVim copiando y pegando el ícono de las ventanas emergentes Obtener información del Finder.


0

Después de probar varias de las soluciones sugeridas, lo mejor que me funcionó fue copiar la aplicación de Homebrew Cellar al directorio de aplicaciones:

cp -r /usr/local/Cellar/macvim/7.3-66/MacVim.app / Applications /

Spotlight lo encontró al instante.


0

El simple acto de instalar homebrew me permitió crear un enlace simbólico a Sublime Text. Quizás necesites más.

Instala homebrew aquí si tienes macOS

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

y luego desde la línea de comando (suponiendo que ST esté instalado)

ln -s "/ Aplicaciones / Sublime Text.app/Contents/SharedSupport/bin/subl" / usr / local / bin / subl


-2

Parece que podrías hacer lo siguiente desde la Terminal.

$ ln -s /usr/local/Cellar/macvim/7.3-61/MacVim.app /Applications

Puede que tenga que usar sudopara poner el enlace simbólico en el directorio / Aplicaciones.


3
Spotlight trata los enlaces simbólicos a "archivos del sistema" como archivos del sistema, por lo que no figuran en los resultados normales. Sin embargo, los alias son.
Lri

¿Alguna forma de crear un alias de OS X mediante programación en Bash?
Mathias Bynens

@MathiasBynens: vea mi respuesta, un pequeño AppleScript lo hará.
ocodo
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.