Bisakah saya membuat symlink (ke folder .app) di direktori Aplikasi muncul dalam sorotan?

45

Saya menggunakan minuman untuk menginstal MacVim dan memasukkannya ke dalam /usr/local/Cellar/macvim/7.3-61/MacVim.app

Saya ingin dapat melihat dan mengetik MacVim untuk meluncurkan aplikasi. Saya mencoba membuat symlink di direktori Applications /usr/local/Cellar/macvim/7.3-61/MacVim.app. Tapi itu sepertinya tidak muncul di Spotlight. Saya mengatur bit yang dapat dieksekusi pada symlink. buka MacVim.app dari karya command line. Bagaimana saya bisa membuat MacVim muncul di pencarian Spotlight?

m_sharp
sumber
2
Spotlight tidak melihat ke dalam folder tersembunyi dan tampaknya juga tidak berfungsi untuk alias. Apakah Anda menggunakan lampu sorot untuk meluncurkan aplikasi? Jika demikian, saya harus merekomendasikan alfredapp.com . Saya menggunakannya dan itu bagus. Lebih cepat dari sorotan!
kevin9794
Terima kasih. Saya menginstal alfred dan menambahkan folder MacVim ke lingkup pencarian. Saya dalam kondisi yang jauh lebih baik.
m_sharp
3
OK, saya menemukan jawabannya. Jika saya membuat alias ke /usr/local/Cellar/macvim/7.3-61/MacVim.app, Spotlight akan mengindeksnya. Untuk informasi lebih lanjut tentang alias, lihat switchingtomac.com/tutorials/creating-aliases-in-mac-os-x
m_sharp
3
Selamat Datang di Tanya Berbeda! Jika Anda menemukan solusi, silakan posting sebagai jawaban sehingga lebih mudah bagi orang lain dengan masalah yang sama untuk melihat apa yang membantu. Silakan lihat FAQ untuk informasi lebih lanjut. Terima kasih.
Nathan Greenstein
1
Untuk memperjelas komentar @ m_sharps, tampaknya Spotlight akan mengindeks alias, tetapi bukan tautan simbolik ( ln -s).
zourtney

Jawaban:

37

Di Finder, tekan CommandShiftGuntuk Buka Folder . Ketik /usr/local/Cellar/macvim/7.3-61/dan tekan return. Pilih file (sebenarnya folder) MacVim.app Tekan CommandLuntuk Make Alias . Bergantung pada izin, Anda mungkin dimintai kata sandi administrator di sini.

Tekan CommandNuntuk membuat Jendela Finder Baru . Tekan CommandShiftAuntuk pergi ke folder Aplikasi di jendela itu.

Seret alias yang baru dibuat dari jendela di mana ia dibuat ke jendela yang berisi folder Aplikasi . Ganti nama alias sehingga tidak lagi berakhir dengan "alias".

Daniel
sumber
2
Saya mengikuti langkah-langkah Anda dan MacVim muncul dalam sorotan. Namun ketika mencoba meluncurkan MacVim dari sorotan, saya mendapatkan pesan kesalahan "Item MacVim digunakan oleh OS X dan tidak dapat dibuka".
m_sharp
Hmmm. Bagaimana Anda biasanya meluncurkan MacVim ketika tidak menggunakan Spotlight? Apakah Anda mendapat pesan kesalahan?
Daniel
Mungkin spotlight tidak dapat meluncurkannya karena tidak memiliki izin untuk mengakses / usr / local / atau sesuatu.
styfle
Saya mendapatkan ini untuk bekerja dengan terlebih dahulu mengubah izin pada / usr / local / Cellar dengan 'sudo chflags nohidden / usr / local / Cellar' (Saya benar-benar melakukan ini untuk / usr / usr / local dan / usr / local / Cellar). Lalu saya menggunakan Finder untuk membuat alias untuk MacVim (yang ada di Cellar). Kemudian saya memindahkan alias ke folder Aplikasi saya. Spotlight sekarang menemukan MacVim (lihat bagian bawah daftar sampai Anda membukanya sekali).
Chris
Saya juga perlu melakukan perubahan izin tambahan, secara default, tampaknya symlink dibuat tanpa izin sama sekali, menambahkan yang membuat symlink muncul dalam sorotan. Anehnya, alias yang saya buat dan kemudian diganti menjadi sesuatu yang tidak termasuk kata "alias" pada akhirnya juga tidak diambil oleh sorotan. Meletakkan "alias" kembali di akhir nama symlink memperbaikinya-
chrismarx
6

Metode alias tidak berfungsi untuk saya. Opsi yang lebih baik adalah menggunakan Automator untuk membuat Aplikasi yang menjalankan skrip shell:masukkan deskripsi gambar di sini

Juga, menautkan langsung ke MacVim.app di direktori Cellar seperti beberapa jawaban lain menyarankan Anda mengikat ke versi tertentu. Jika minuman memperbarui MacVim, tautan Anda masih akan mengarah ke versi yang lama. Sebaliknya, Anda harus menggunakan:

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

karena lokasi ini secara otomatis disinkronkan dengan menyeduh ke versi terbaru.

Ini bekerja baik untuk saya. Saya menyimpan file Automator di iCloud sehingga saya dapat dengan mudah menambahkan aplikasi di komputer lain.

zim
sumber
Ini sepertinya solusi yang paling kuat. Untuk apa ini $@?
Jacktose
1
$ @ Mewakili argumen yang diteruskan ke skrip. Dalam hal ini, argumen apa pun yang diteruskan ke skrip sedang diteruskan ke MacVim.app (yaitu nama file, opsi, dll.) Lihat jawaban ini tentang variabel shell khusus.
zim
Ah terima kasih. Sangat sulit untuk google $@. Akankah itu benar-benar melakukan sesuatu dalam kasus ini, karena skrip hanya dijalankan dengan memilih aplikasi?
Jacktose
1
Ya, ini sangat membantu, misalnya, jika Anda menggunakan Open withperintah pada file di Finder. Aplikasi akan dimulai dengan jalur file sebagai argumen pertama. Atau jika Anda menetapkan MacVim sebagai aplikasi default untuk jenis file, misalnya .txt - kemudian mengklik dua kali file .txt akan memulai MacVim dengan file yang dipilih sebagai argumen pertama.
zim
4

Cara saya memecahkan ini menggunakan shell script dan appify.

Misalnya membuat skrip dengan editor teks yang berisi

#!/bin/bash

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

Kemudian dapatkan appify - http://git.abackstrom.com/appify.git

Jalankan appify pada skrip shell dan itu akan membuat aplikasi yang dapat Anda masukkan / Aplikasi yang akan memanggil MacVim. Ini akan muncul dalam sorotan.

Dean Smith
sumber
1
Jika Anda akan melakukannya dengan cara ini, buat saja aplikasi Automator untuk menjalankan skrip.
ocodo
Ya @Slomojo, itu terbukti menjadi pendekatan yang paling mudah. Saya membuat shellscript yang memulai App (dalam libreoffice kasus saya) dan meletakkannya di / usr / bin. Kemudian saya menggunakan automator untuk menjalankan script dan menyimpan Aplikasi Automator yang dibuat di folder Applications saya dengan nama yang ingin saya gunakan di Spotlight. Konyol.
Atrip
3

Untuk menjaga hal-hal tetap bagus dan dapat dituliskan, Anda dapat menggunakan osascriptuntuk menjalankan sedikit AppleScript dan membuat alias Anda secara otomatis.

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
ocodo
sumber
Ini sebenarnya bekerja, tidak seperti banyak osascript satu-baris yang saya temukan di berbagai tempat.
Xander Dunn
1
Saya akan merekomendasikan untuk memindahkan aplikasi MacVim ke Aplikasi. Atau menginstalnya melalui tong minuman. Alias ​​melakukan indeks dalam sorotan, tetapi peringkatnya sangat rendah.
ocodo
Terima kasih. Saya perhatikan bahwa Spotlight sulit untuk memilih alias MacVim saya.
Xander Dunn
2

Bagi mereka yang menggunakan homebrew untuk menginstal macvim (sangat disarankan)

Jalankan yang berikut ini setelah menginstal

brew linkapps macvim
DevByStarlight
sumber
1
Sayangnya, ini tidak muncul di Spotlight.
Jacktose
tetapi Anda dapat membuat alias ke tautan MacVim di direktori / Aplikasi, alias diambil oleh Spotlight.
Piotr Czapla
Sayangnya 'buat linkapps' tidak ada lagi, dan itu tidak diganti.
Katarzyna
2
  1. Tautan simbolik (ln -s) tidak berfungsi dengan baik untuk saya, tampaknya Spotlight tidak akan melihat ini sebagai aplikasi.

  2. Membuat alias finder (seperti dijelaskan oleh Daniel) berfungsi lebih baik untuk meluncurkan dari Finder, tetapi tidak ketika menggunakan Finder Open With ... , alias akan tetap berwarna abu-abu.

Secara khusus, seperti disebutkan dalam komentar lain di sini, saya juga ingin MacVim tersedia saat menggunakan Open With ... dari Finder, tetapi dengan tautan simbolik atau alias Finder, MacVim akan tetap berwarna abu-abu.

Apa yang berhasil bagi saya adalah skrip Automator sederhana (seperti yang dijelaskan zim), dengan perintah "Run Shell Script". Satu-satunya hal yang harus saya lakukan berbeda dari apa yang ditunjukkan zim dalam jawabannya adalah menambahkan parameter -a untuk membuka :

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

Tanpa -a, ketika digunakan dengan "Open With ...", MacVim akan diluncurkan, tetapi juga nama file parameter akan terbuka dengan apa pun aplikasi standarnya - jadi saya akan mendapatkan kedua MacVim dengan dokumen kosong DAN TextEdit dengan file I telah memilih untuk membuka (bukan MacVim dengan file yang saya pilih dibuka).

Script automator dapat disalin atau alias ke folder Aplikasi. Saya juga mengubah ikon skrip automator saya menjadi ikon MacVim dengan menyalin & menempelkan ikon tersebut dari popup Finder's Get Info.

Andrew Gilchrist
sumber
0

Setelah mencoba beberapa solusi yang disarankan, hal terbaik yang berhasil bagi saya adalah menyalin aplikasi dari Homebrew Cellar ke direktori aplikasi:

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

Spotlight menemukannya secara instan.

pengguna39587
sumber
0

Tindakan sederhana menginstal homebrew memungkinkan saya untuk membuat symlink ke Sublime Text. Mungkin Anda membutuhkan lebih banyak.

Instal homebrew di sini jika Anda memiliki macOS

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

dan kemudian dari baris perintah (dengan asumsi ST diinstal)

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

Michael Sefranek
sumber
-2

Sepertinya Anda bisa melakukan hal berikut dari Terminal.

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

Anda mungkin harus menggunakan sudountuk meletakkan symlink di direktori / Aplikasi.

afragen
sumber
3
Spotlight memperlakukan symlink ke "file sistem" sebagai file sistem, jadi mereka tidak terdaftar dalam hasil normal. Alias ​​adalah meskipun.
Lri
Adakah cara untuk membuat OS X alias secara terprogram di Bash?
Mathias Bynens
@MathiasBynens - lihat jawaban saya, sedikit AppleScript akan melakukannya.
ocodo