Những gì tôi cố gắng làm:Làm thế nào để có được tên của ứng dụng frontmost với AppleScript và sử dụng nó để có được những filepath
Khi tôi đang ở trong một trong soạn thảo văn bản của tôi (TextEdit, tục ngư, FoldingText) Tôi muốn AppleScript này để hiển thị đường dẫn tệp.
Tôi đã tìm ứng dụng cửa sổ ở phía trước giúp tôi có được tên ứng dụng đẹp và dễ dàng và sau đó tôi có thể yêu cầu đường dẫn POSIX trong bước tiếp theo.
Vấn đề:
Các kịch bản đã được 99% đó, nhưng tôi đang thiếu một cái gì đó. Khi tôi cố gắng sử dụng các biến của activeApp
nó không hoạt động và tôi nhận được lỗi này:
Error Number:System Events got an error: Can’t get application {"TextEdit"}.
-1728
Đây là kịch bản:
tell application "System Events"
set activeApp to name of application processes whose frontmost is true
--This doesn't work either:
--do shell script "php -r 'echo urldecode(\"" & activeApp & "\");'"
tell application activeApp
set myPath to POSIX path of (get file of front document)
end tell
display dialog myPath
end tell
Nếu tôi trao đổi với activeApp
"TextEdit"
mọi thứ hoạt động. Trợ giúp sẽ được đánh giá cao.
Có thể có một cái gì đó ở đây giúp: Get process name from application name and vice versa, using Applescript
Phần thử chỉ là tuyệt vời. Rất linh hoạt và rất ít công việc tay của việc nhận tất cả các ứng dụng khác nhau để xuất ra đường dẫn chính xác (chỉ dừng viết các điều kiện IF ngay sau khi tôi thử nghiệm điều này). Apropos, "nếu" tôi có thể làm điều này để làm việc với nvALT thì tôi thậm chí còn nhiều hơn tôi mong muốn. – pattulus
Bạn có thể sử dụng một cái gì đó như 'nói ứng dụng" Sự kiện hệ thống "để nói (quá trình 1 ở phía trước là đúng) nếu tên là" nvALT "thì ((thuộc tính hệ thống" HOME ") &"/Ghi chú/"& giá trị của trường văn bản 1 của nhóm 1 của thanh công cụ 1 của cửa sổ 1 & ".txt") '. – user495470
Điều này thật tuyệt. Cảm ơn. Nhưng khi tôi chạy kịch bản, nó sẽ xóa văn bản ở đầu đường dẫn để '/ users/username/path/to/file' trở thành' sername/path/to/file'. Bất kỳ ý tưởng tại sao? – drstevok