Điều này trả lời câu hỏi cụ thể hơn trong nhận xét của bạn cho câu hỏi ban đầu của bạn. Nó có thể có thể là một câu hỏi mới vì nó cụ thể hơn nhiều.
Để thiết lập Nhãn màu của người dùng trong các tệp hiện được chọn, bạn có thể kết hợp chương trình AppleScript (hoặc chương trình shell sử dụng osascript ) với bất kỳ ứng dụng nào trong số các ứng dụng của launcher (Quicksilver, FastScripts, v.v.) có thể chạy AppleScript các chương trình (hoặc chương trình shell) dựa trên tổ hợp phím tắt.
Đối với bất kỳ tập lệnh nào bên dưới, hãy dán chúng vào Trình chỉnh sửa tập lệnh / Trình biên tập AppleScript và lưu chúng ở định dạng tập lệnh của tập lệnh (hoặc bất kỳ định dạng nào mà trình khởi chạy bạn chọn sử dụng). Vị trí thông thường cho các tập lệnh đã lưu như vậy sẽ là ~ / Thư viện / Tập lệnh / Ứng dụng / Trình tìm kiếm, nhưng, tùy thuộc vào trình khởi chạy của bạn, bạn có thể sử dụng các vị trí khác.
Đây là một phiên bản đơn giản mà bạn có thể mã hóa cứng cho bất kỳ một trong các nhãn:
on run
tell application "Finder"
repeat with anItem in (get selection)
(*
* 0 - none
* 1 - Orange
* 2 - Red
* 3 - Yellow
* 4 - Blue
* 5 - Purple
* 6 - Green
* 7 - Gray
*)
set label index of anItem to 4
end repeat
end tell
end run
Nếu bạn chỉ có một vài nhãn mà bạn sử dụng, bạn có thể lưu một vài bản sao này và liên kết một khóa với mỗi bản sao.
Đây là phiên bản luôn nhắc bạn áp dụng nhãn nào:
on run
tell application "Finder" to set selectedItems to selection
if length of selectedItems is 0 then
display dialog "Select some items in Finder before running this program." with title "Apply Finder Label to Selected Items" buttons {"OK"} default button {"OK"}
return
end if
set labels to prependIndicies(getLabelNames())
set default to first item of labels
set labelIndex to choose from list labels default items default with prompt "Choose label to apply to selected items" without empty selection allowed and multiple selections allowed
if labelIndex is false then return
set labelIndex to (first word of first item of labelIndex) as number
tell application "Finder"
repeat with anItem in selectedItems
set label index of anItem to labelIndex
end repeat
end tell
end run
to getLabelNames()
set labelNames to {"Orange", "Red", "Yellow", "Blue", "Purple", "Green", "Gray"}
set useCustomLabelNames to true -- change to false if this is too slow or does not work for you
if useCustomLabelNames then
set cmds to {}
repeat with i from 1 to 7
set end of cmds to "defaults read com.apple.Labels Label_Name_" & (8 - i) & " || echo " & quoted form of item i of labelNames
end repeat
set text item delimiters to {";"}
set labelNames to paragraphs of (do shell script (cmds as text))
end if
end getLabelNames
to prependIndicies(theList)
repeat with i from 1 to length of theList
set item i of theList to (i as text) & " - " & (item i of theList)
end repeat
{"0 - none"} & theList
end prependIndicies
Khi hộp thoại xuất hiện, nhập một trong 0-7 để chọn nhãn, sau đó nhấn Return để áp dụng nó cho các mục được chọn trong Finder.