Tôi có thể tạo một liên kết tượng trưng (đến thư mục .app) trong thư mục Ứng dụng hiển thị dưới ánh đèn sân khấu không?


45

Tôi đã sử dụng brew để cài đặt MacVim và đưa nó vào /usr/local/Cellar/macvim/7.3-61/MacVim.app

Tôi muốn có thể đi đến spotlight và gõ MacVim để khởi chạy ứng dụng. Tôi đã thử tạo một symlink trong thư mục Ứng dụng /usr/local/Cellar/macvim/7.3-61/MacVim.app. Nhưng điều đó dường như không xuất hiện trong Spotlight. Tôi đặt các bit thực thi trên symlink. mở MacVim.app từ dòng lệnh hoạt động. Làm cách nào tôi có thể khiến MacVim hiển thị trong tìm kiếm Spotlight?


2
Spotlight không nhìn vào các thư mục ẩn và dường như cũng không hoạt động cho các bí danh. Bạn có sử dụng spotlight để khởi chạy ứng dụng không? Nếu vậy tôi phải giới thiệu alfredapp.com . Tôi sử dụng nó và tuyệt vời của nó. Nhanh hơn ánh đèn sân khấu!
kevin9794

Cảm ơn. Tôi đã cài đặt alfred và thêm thư mục MacVim vào phạm vi tìm kiếm. Im trong hình dạng tốt hơn nhiều.
m_sharp

3
OK, tôi đã tìm ra nó. Nếu tôi tạo bí danh cho /usr/local/Cellar/macvim/7.3-61/MacVim.app, Spotlight sẽ lập chỉ mục cho nó. Để biết thêm về các bí danh, kiểm tra switchingtomac.com/tutorials/creating-aliases-in-mac-os-x
m_sharp

3
Chào mừng bạn đến hỏi khác nhau! Nếu bạn tìm thấy giải pháp, vui lòng đăng nó dưới dạng câu trả lời để những người khác có cùng vấn đề dễ dàng hơn để xem điều gì đã giúp. Vui lòng xem Câu hỏi thường gặp để biết thêm thông tin. Cảm ơn.
Nathan Greenstein

1
Để làm rõ nhận xét của @ m_sharps, có vẻ như Spotlight sẽ lập chỉ mục bí danh, nhưng không liên kết tượng trưng ( ln -s).
zourtney

Câu trả lời:


37

Trong Finder, nhấn CommandShiftGcho Đi đến Thư mục . Gõ /usr/local/Cellar/macvim/7.3-61/và bấm return. Chọn tệp (thực sự là một thư mục) MacVim.app Nhấn CommandLđể tạo bí danh . Tùy thuộc vào quyền, bạn có thể được nhắc nhập mật khẩu quản trị viên tại đây.

Nhấn CommandNđể tạo Cửa sổ Finder mới . Nhấn CommandShiftAđể đi đến thư mục Ứng dụng trong cửa sổ đó.

Kéo bí danh vừa tạo từ cửa sổ mà nó được tạo vào cửa sổ chứa thư mục Ứng dụng . Đổi tên bí danh để nó không còn kết thúc bằng "bí danh".


2
Tôi đã làm theo các bước của bạn và MacVim xuất hiện trong ánh đèn sân khấu. Tuy nhiên, khi thử khởi chạy MacVim từ đèn chiếu, tôi nhận được thông báo lỗi "Mục MacVim được OS X sử dụng và không thể mở được".
m_sharp

Hừm. Làm thế nào để bạn thường khởi chạy MacVim khi không sử dụng Spotlight? Bạn có nhận được thông báo lỗi không?
Daniel

Có lẽ spotlight không thể khởi chạy nó vì nó không có quyền truy cập / usr / local / hoặc thứ gì đó.
styfle

Tôi đã làm điều này để hoạt động bằng cách trước tiên thay đổi quyền trên / usr / local / Cellar với 'sudo chflags nohidden / usr / local / Cellar' (Tôi thực sự đã làm điều này cho / usr / usr / local và / usr / local / Cellar). Sau đó, tôi đã sử dụng Finder để tạo bí danh cho MacVim (một trong Cellar). Sau đó, tôi chuyển bí danh vào thư mục Ứng dụng của mình. Spotlight hiện tìm thấy MacVim (nhìn vào cuối danh sách cho đến khi bạn mở nó một lần).
Chris

Tôi cũng cần phải thực hiện các thay đổi quyền bổ sung, theo mặc định, nó xuất hiện liên kết tượng trưng được tạo mà không có bất kỳ quyền thực thi nào, thêm vào đó làm cho liên kết tượng trưng xuất hiện dưới ánh đèn sân khấu. Thật kỳ lạ, các bí danh tôi đã tạo và sau đó đổi tên thành một cái gì đó không bao gồm từ "bí danh" ở cuối cũng không được chọn bởi ánh đèn sân khấu. Đặt lại "bí danh" ở cuối tên symlink đã sửa nó-
chrismarx

6

Phương pháp bí danh không hiệu quả với tôi. Tùy chọn tốt hơn là sử dụng Automator để tạo Ứng dụng chạy tập lệnh shell:nhập mô tả hình ảnh ở đây

Ngoài ra, liên kết trực tiếp đến MacVim.app trong thư mục Cellar giống như một số câu trả lời khác gợi ý ràng buộc bạn với một phiên bản cụ thể. Nếu brew nâng cấp MacVim, liên kết của bạn vẫn sẽ trỏ đến phiên bản cũ. Thay vào đó, bạn nên sử dụng:

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

vì vị trí này được tự động liên kết bởi bia với phiên bản mới nhất.

Nó hiệu quả tuyệt vời đối với tôi. Tôi lưu tệp Automator trong iCloud để tôi có thể thuận tiện thêm ứng dụng trên các máy khác.


Đây dường như là giải pháp mạnh mẽ nhất. Để làm gì $@?
Jacktose

1
$ @ Đại diện cho các đối số được truyền cho tập lệnh. Trong trường hợp này, mọi đối số được truyền cho tập lệnh đang được chuyển tiếp tới MacVim.app (tức là tên tệp, tùy chọn, v.v.) Xem câu trả lời này về các biến shell đặc biệt.
zim

À, cảm ơn. Thật sự rất khó để google $@. Tuy nhiên, điều đó thực sự sẽ làm bất cứ điều gì trong trường hợp này, vì tập lệnh chỉ được chạy bằng cách chọn ứng dụng?
Jacktose

1
Vâng, nó hữu ích, ví dụ, nếu bạn sử dụng Open withlệnh trên một tệp trong Finder. Ứng dụng sẽ được bắt đầu với đường dẫn tệp làm đối số đầu tiên. Hoặc nếu bạn đặt MacVim làm ứng dụng mặc định cho loại tệp, ví dụ .txt - sau đó nhấp đúp vào tệp .txt sẽ khởi động MacVim với tệp đã chọn làm đối số đầu tiên.
zim

4

Cách tôi đã giải quyết điều này là sử dụng tập lệnh shell và xuất hiện.

Ví dụ: tạo một tập lệnh với trình soạn thảo văn bản có chứa

#!/bin/bash

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

Sau đó nhận được appify - http://git.abackstrom.com/appify.git

Chạy appify trên shell script và nó sẽ tạo một ứng dụng bạn có thể đặt vào / Ứng dụng sẽ gọi MacVim. Điều này sẽ hiển thị trong ánh đèn sân khấu.


1
Nếu bạn sẽ làm theo cách này, chỉ cần tạo một ứng dụng Automator để chạy tập lệnh.
ocodo

Có @Slomojo, đó là cách tiếp cận dễ nhất. Tôi đã tạo một shellscript để khởi động Ứng dụng (trong trường hợp của tôi là libreoffice) và đặt nó vào / usr / bin. Sau đó, tôi đã sử dụng trình tự động hóa để chỉ cần gọi tập lệnh và lưu Ứng dụng được tạo tự động trong thư mục Ứng dụng của mình với tên tôi muốn sử dụng trong Spotlight. Vô lý, không hợp lệ.
giọt vào

3

Để giữ mọi thứ tốt đẹp và có thể tạo tập lệnh, bạn có thể sử dụng osascriptđể chạy một ít AppleScript và tự động tạo bí danh của mình.

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

Điều này thực sự hiệu quả, không giống như nhiều lớp lót osascript mà tôi đã tìm thấy ở nhiều nơi khác nhau.
Xander Dunn

1
Tôi khuyên bạn nên thực sự chuyển ứng dụng MacVim sang Ứng dụng. Hoặc cài đặt nó thông qua thùng bia. Bí danh làm chỉ số nổi bật, nhưng chúng được xếp hạng thấp một cách khó chịu.
ocodo

Cảm ơn. Tôi đã nhận thấy rằng thật khó để có được Spotlight để chọn bí danh MacVim của tôi.
Xander Dunn

2

Đối với những người sử dụng homebrew để cài đặt macvim (hoàn toàn được khuyến nghị)

Chạy như sau sau khi cài đặt

brew linkapps macvim

1
Thật không may, những thứ này không xuất hiện trong Spotlight.
Jacktose

nhưng bạn có thể tạo bí danh cho liên kết MacVim trong thư mục / Ứng dụng, bí danh được chọn bởi Spotlight.
Piotr Czapla

Thật không may, 'brew linkapps' không còn tồn tại nữa và nó không được thay thế.
Katarzyna

2
  1. Các liên kết tượng trưng (ln -s) không hoạt động tốt đối với tôi, có vẻ như Spotlight sẽ không xem đây là một ứng dụng.

  2. Tạo bí danh cho người tìm (như được mô tả bởi Daniel) hoạt động tốt hơn khi khởi chạy từ Finder, nhưng không khi sử dụng Finder Open With ... , bí danh sẽ vẫn bị mờ đi.

Đặc biệt, như được đề cập trong các bình luận khác ở đây, tôi cũng muốn MacVim có sẵn khi sử dụng Open With ... từ Finder, nhưng với liên kết tượng trưng hoặc bí danh Finder, MacVim sẽ vẫn có màu xám.

Điều làm việc cho tôi là tập lệnh Automator đơn giản (như zim mô tả), với lệnh "Run Shell Script". Điều duy nhất tôi phải làm khác với những gì zim thể hiện trong câu trả lời của anh ấy là thêm tham số -a để mở :

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

Nếu không có -a, khi được sử dụng với "Open With ...", MacVim sẽ khởi chạy, nhưng tên tệp tham số sẽ mở với bất kỳ ứng dụng mặc định nào của nó - vì vậy tôi sẽ nhận được cả MacVim với tài liệu trống VÀ TextEdit với tệp I đã chọn để mở (thay vì MacVim với tệp đã chọn của tôi đã mở).

Tập lệnh tự động hóa có thể được sao chép hoặc đặt bí danh vào thư mục Ứng dụng. Tôi cũng đã thay đổi biểu tượng tập lệnh tự động hóa của mình thành biểu tượng của MacVim bằng cách sao chép và dán biểu tượng từ cửa sổ bật lên Nhận thông tin của Người tìm kiếm.


0

Sau khi thử một vài giải pháp được đề xuất, điều tốt nhất cho tôi là sao chép ứng dụng từ Homebrew Cellar vào thư mục ứng dụng:

cp -r /usr/local/Cellar/macvim/7.3-66/MacVim.app / Ứng dụng /

Spotlight tìm thấy nó ngay lập tức.


0

Hành động đơn giản là cài đặt homebrew cho phép tôi tạo một liên kết tượng trưng đến Văn bản tuyệt vời. Có lẽ bạn đang cần nhiều hơn.

Cài đặt homebrew tại đây nếu bạn có macOS

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

và sau đó từ dòng lệnh (giả sử ST được cài đặt)

ln -s "/ Ứng dụng / Sublime Text.app/Contents/SharedSupport/bin/subl" / usr / local / bin / subl


-2

Âm thanh như bạn có thể làm như sau từ Terminal.

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

Bạn có thể phải sử dụng sudođể đặt symlink vào thư mục / Ứng dụng.


3
Spotlight coi các liên kết tượng trưng đến "tệp hệ thống" là tệp hệ thống, vì vậy chúng không được liệt kê trong kết quả bình thường. Bí danh là mặc dù.
Lri

Bất kỳ cách nào để tạo một bí danh OS X theo lập trình trong Bash?
Mathias Bynens

@MathiasBynens - xem câu trả lời của tôi, một chút AppleScript sẽ làm điều đó.
ocodo
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.