mutt: lưu tin nhắn vào thư mục cụ thể


15

Tôi có một số thư mục được định nghĩa trong Mutt:

mailboxes           "~/Mail/inbox"
mailboxes           "~/Mail/sent"
mailboxes           "~/Mail/archive"

Tôi có thể lưu (di chuyển) một tin nhắn để lưu trữ, bằng cách nhấn svà sau đó ?để xem danh sách các thư mục, sau đó tôi có thể chọn archivetừ danh sách.

Vì tôi luôn muốn chỉ lưu vào nên archivetôi muốn có một macro, để nhấn stự động lưu tin nhắn đã chọn vào archivemà không cần hỏi tôi.

Ai đó có thể vui lòng giúp đỡ?

EDIT: Bây giờ tôi đã theo macro, để lưu thư vào thư mục "lưu trữ" của mình:

macro index,pager S "<tag-prefix><save-message>=archive<enter>\
  :set delete=yes<enter><sync-mailbox>:set delete=no<enter>"

vấn đề là, các tin nhắn ở trong chỉ mục được đánh dấu là đã xóa. Chúng không được "đồng bộ hóa" ngay lập tức. Thứ hai, <enter>ở cuối hoạt động như <display-message>, để khi tôi nhấn S, tôi kết thúc trong máy nhắn tin của tin nhắn hiện tại.

Theo cách tương tự, tôi đang cố gắng thực hiện trashthư mục trong mutt. Dưới đây được lấy từ Mutt MacroSamples

set maildir_trash=yes
set wait_key=no
folder-hook . 'bind index q quit'
folder-hook inbox 'macro index q ":unset maildir_trash;push \"T~D\\n<tag-prefix-cond>m=trash\\n<end-cond><quit>\"\n"'

nhưng điều này cũng không hoạt động. Mutt ngay lập tức hỏi tôi:

Append messages to etmaildir_trash;push"T~D\n<tag-prefix-cond>m=trash\n<end-cond><quit>"/maildir_trash;push"T~D\n<tag-prefix-cond>m=trash\n<end-co ([yes]/no):

bất cứ điều gì tôi nhấn, không có gì xảy ra (thư mục rác / {cur, new, tmp} tồn tại)


Thật khó hiểu khi <sync-mailbox>dường như không làm gì cả. Khi bạn sử dụng lệnh xóa thông thường ( d) và các thông báo còn lại trong chỉ mục được đánh dấu là đã xóa, điều gì xảy ra khi bạn nhấn $(đó là ràng buộc mặc định cho <sync-mailbox>)?
ewhac

khi tôi nhấn $mutt hỏi tôi Purge 1 deleted message?. Tôi có thể nhấn Ymà sẽ xóa tin nhắn.
dùng1968963

Một ý nghĩ xảy ra: <sync-mailbox>Lệnh đang mong đợi người dùng nhập ( y), nhưng :thay vào đó sẽ thấy ngay sau đó, vì vậy việc thanh lọc không xảy ra. Tôi tự hỏi điều gì có thể xảy ra nếu bạn đặt ysau nó ...
ewhac

Câu trả lời:


17

thư được gắn thẻ:

macro index S ":set confirmappend=no delete=yes\n<tag-prefix-cond><save-message>=archive\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n"

chỉ hiện tại:

macro index A ":set confirmappend=no delete=yes\n<save-message>=archive\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n"

biên tập

macro index S ":set confirmappend=no delete=yes\n<tag-prefix><save-message>=archive\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n"

Lỗi của tôi, sử dụng tag-prefixthay vì tag-prefix-cond, sẽ áp dụng macro cho các tin nhắn được gắn thẻ nếu có, khác với hiện tại được chọn.


Khi tôi thêm macro của bạn và bắt đầu mutt và pres S, mutt nói:nothing to do
user1968963 7/12/13

Bạn có tag một số thư?
Alex

thật tuyệt, nó hoạt động Làm thế nào tôi có thể làm cho nó hoạt động trên tin nhắn hiện tại (mà không phải gắn thẻ trước)?
dùng1968963

1
@ user1968963 xem bản cập nhật.
Alex

1
@ user1968963 có thể sử dụng thẻ-prefix-cond để đặt một lệnh / biến khác (đối với sự hiểu biết của tôi chỉ được thực thi nếu có thư được gắn thẻ), tôi sẽ thử nhưng sẽ cần một thời gian, sẽ cho bạn biết.
Alex

3

Các hướng dẫn mutt có một vĩ mô ví dụ cho trường hợp sử dụng của bạn:

chỉ mục macro <tag-prefix-cond> <save-message> = foo <enter> "Lưu tin nhắn được gắn thẻ (nếu có) vào = foo"

Bạn có thể thực hiện nó trong trường hợp của bạn như vậy:

macro index,pager A  "<save-message>=Mail/archive<enter>"  "mark message as Archived"

Nhấn Shiftavào chế độ xem chỉ mục hoặc máy nhắn tin sẽ lưu thư vào maildir lưu trữ của bạn.


Có hai vấn đề nhỏ với giải pháp này: 1) Tôi chỉ có thể "lưu" một tin nhắn tại một thời điểm. Tôi không thể gắn thẻ một số tin nhắn và lưu tất cả chúng để lưu trữ. 2) khi tôi "lưu" một tin nhắn, nó vẫn xuất hiện trong hộp thư đến được đánh dấu là đã xóa. Có thể áp dụng các thay đổi ngay lập tức (để nó bị xóa ngay lập tức khỏi hộp thư đến) không?
dùng1968963
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.