Làm thế nào để thêm nút vào thanh công cụ Finder để gọi tập lệnh python với thư mục hiện tại làm đối số?


1

Gần đây tôi đã thêm menu ngữ cảnh trong các dịch vụ để thực thi tập lệnh python nhưng tôi nghĩ sẽ thuận tiện nếu tôi thêm một nút trên thanh công cụ Finder, như bên cạnh Nút thư mục mới trong hình ảnh bên dưới.

enter image description here

Điều này có thể tại nút add trên Thanh công cụ Finder kích hoạt tập lệnh python và chuyển thư mục hiện tại làm đối số không?


Điều này rất có thể có thể bằng cách tạo cùng một dịch vụ mà tôi cho rằng bạn đã làm trong Automator thành một ứng dụng và sau đó giữ option + command phím và kéo ứng dụng vào thanh công cụ tìm cửa sổ. Có thể đáng để thể hiện những gì bạn có trong dịch vụ
markhunte

@markhunte: ok thì làm sao để dịch vụ trở thành một ứng dụng?
Ciasto piekarz

Để trả lời đúng, bạn cần cho chúng tôi thấy quy trình làm việc của mình bằng cách sử dụng các cảnh quay và đoạn mã trong Câu hỏi của bạn.
markhunte

đây là quy trình làm việc với ảnh chụp màn hình: apple.stackexchange.com/questions/115371/
Ciasto piekarz

Câu trả lời:


0

Xem nếu điều này làm việc.

Tải về Nhận đường dẫn cửa sổ Finder đầu tiên BETA 10.9 hành động tự động hóa từ blog của tôi: my_very_first_automator_action

Hành động trả về đường dẫn của cửa sổ tìm kiếm phía trước nhất. Nó không có bất kỳ đầu vào từ các hành động trên. Bài viết giải thích tất cả :-)

Tạo một tài liệu Ứng dụng mới trong Automator và thêm Nhận đường dẫn cửa sổ Finder đầu tiên với nó Sau đó, chỉ cần thêm bạn Run shell script sau nó.

Lưu dưới dạng Ứng dụng. Và sau đó thực hiện kéo và thả.

Tôi sẽ kiểm tra nó với mã của bạn nhưng tôi không có slideshow python ...


Lưu ý từ tài liệu của Apple liên quan đến Hành động của bên thứ ba.

Cài đặt hành động Khi hành động của bạn đã được gỡ lỗi triệt để và   đã thử nghiệm, xây dựng một phiên bản triển khai của gói (sử dụng đúng   tối ưu hóa). Sau đó tạo gói cài đặt cho hành động (hoặc   thêm hành động vào gói cài đặt ứng dụng của bạn). Các   trình cài đặt nên sao chép hành động sang / Library / Automator hoặc   ~ / Thư viện / Máy tự động, tùy thuộc vào việc có nên truy cập vào hành động hay không   được hệ thống rộng hoặc giới hạn cho người dùng cài đặt.

Thay vì cài đặt hành động của bạn một cách riêng biệt, bạn có thể đặt nó bên trong   gói ứng dụng của bạn, đặc biệt nếu hành động sử dụng   các tính năng của ứng dụng đó. Khi Automator tìm kiếm các hành động để   hiển thị, nó nhìn bên trong các ứng dụng đã đăng ký cũng như trong   thư mục Automator tiêu chuẩn. Ưu điểm của việc đóng gói   hành động bên trong một ứng dụng là bạn không cần phải tạo một   gói cài đặt riêng để cài đặt các hành động. Để cài đặt   hành động, người dùng chỉ cần kéo ứng dụng đến một vị trí tiêu chuẩn.

Các gói hành động nên được lưu trữ bên trong trình bao bọc ứng dụng tại   Nội dung / Thư viện / Máy tự động. Do đó, nếu hành động của bạn là MyAction.action   và ứng dụng của bạn là MyApp.app, đường dẫn bên trong ứng dụng   sẽ là:

MyApp.app/Contents/Library/Automator/MyAction.action

Bạn có thể tự sao chép một hành động vào vị trí này (sau   tạo các thư mục con cần thiết) hoặc bạn có Xcode sao chép nó bằng cách sử dụng   giai đoạn xây dựng Copy Files. Nếu bạn sao chép một hành động vào một ứng dụng   gói nhưng ứng dụng đã được cài đặt trên một hệ thống, bạn phải   nhận Dịch vụ khởi động để nhận ra rằng ứng dụng có nội dung mới   để đăng ký (nghĩa là hành động mới) bằng cách thay đổi ứng dụng   Ngày sửa đổi. Bạn có thể làm điều này bằng cách nhập lệnh cảm ứng trong   ứng dụng Terminal.

sudo touch /Applications/MyApp.app

Hoặc bạn có thể đổi tên ứng dụng trong Finder thành một thứ khác, thay đổi   nó trở lại tên ban đầu, và sau đó khởi chạy ứng dụng một lần.


tốt, liên kết bạn đưa ra không hoạt động: Hmm, www.markosx.com không tải ngay bây giờ.
Ciasto piekarz

Hừm. Tôi ra ở mo. Nhưng liên kết tải trên iPhone của tôi?
markhunte

vâng, điều này không giải quyết được những gì tôi đang tìm kiếm và tôi có thể làm theo cách tương tự để slideShow của tôi mở. nhưng đường dẫn mà tôi chỉ định trong Automator & gt; Run Shell Script sẽ khác nhau đối với mỗi người dùng, điều đó có nghĩa là tôi sẽ phải biết cách chèn đường dẫn cài đặt trong Run Shell Script để ứng dụng hoạt động với bất kỳ ai. Bạn có ý tưởng nhỏ nhất để làm điều đó hay tôi cần tạo một câu hỏi khác trên apple.stackexchange?
Ciasto piekarz

1
Vui vì đã làm việc. Tôi nghĩ rằng nó sẽ cần phải là một câu hỏi mới. Cung cấp chi tiết về lý do tại sao đường dẫn cho mỗi người dùng sẽ khác nhau và những gì bạn cần .. Bạn biết mũi khoan :-)
markhunte

Tôi đã thêm một lưu ý liên quan đến hành động của bên thứ ba mà bạn có thể cần biết liên quan đến việc phân phối ứng dụng sử dụng hành động của bên thứ ba.
markhunte
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.