mutt: xác định tiêu đề nào được hiển thị (trong phần soạn thảo)


10

Khi soạn tin nhắn mutt, tôi thấy các tiêu đề sau:

    From: 
      To: 
      Cc:
     Bcc:
 Subject:
Reply-To:
     Fcc: ~/.mail/sent
     Mix: <no chain defined>
Security: None

Tôi không biết Mix:tiêu đề là gì và tôi không nghĩ mình sẽ cần nó. Tương tự, tôi sẽ không cần chỉnh sửa Reply-To:tiêu đề.

Hai dòng vô dụng này đang chiếm không gian có giá trị. Có thể loại bỏ hoàn toàn các tiêu đề này? Tôi có thể chỉ định tiêu đề nào được hiển thị trong menu soạn thảo không?


2
Theo Hướng dẫn Mutt , Mixlà để gửi tin nhắn nặc danh qua mixmaster(bất kể điều đó có nghĩa là gì)
Robert Hayek

Sooo, đang chứng minh bằng cách xem qua mã nguồn rằng các tùy chọn này không có sẵn (và do đó nói "không, không thể - nhưng hãy xem đây, một sửa đổi") cho các câu hỏi trên là một nguồn đáng tin cậy? :)
polym

Câu trả lời:


3

Ok tôi đã có một giải pháp (rất hacky). Trả lời: Có thể xóa các tiêu đề này bằng cách chỉnh sửa muttmã của chúng, nhưng cho đến nay không thể thực hiện được.

Trước hết, không có cờ hoặc bất kỳ muttmã nguồn nào trong kiểm tra để ngăn các tiêu đề này xuất hiện trong cửa sổ trình đơn soạn thảo. Ít nhất tôi đã không nhìn thấy bất kỳ.

Vì vậy, không thể chỉ định tiêu đề nào được hiển thị trong menu soạn thảo mà không phải chỉnh sửa muttmã.

Tôi đã xem mã nguồn ( apt-get source mutt) và tìm ra, nơi muttrút ra các tiêu đề của nó, khi bạn soạn thư.

Các phần quan trọng nằm ở compose.c:

[...]

[line 60]
//  HDR_REPLYTO,

[...]

[line 77]
static char *Prompts[] =
{
  "From: ",
  "To: ",
  "Cc: ",
  "Bcc: ",
  "Subject: ",
//  "Reply-To: ",
  "Fcc: "
};

[...]

[line 251]
static void draw_envelope (HEADER *msg, char *fcc)
{
  draw_envelope_addr (HDR_FROM, msg->env->from);
  draw_envelope_addr (HDR_TO, msg->env->to);
  draw_envelope_addr (HDR_CC, msg->env->cc);
  draw_envelope_addr (HDR_BCC, msg->env->bcc);
  mvprintw (HDR_SUBJECT, 0, TITLE_FMT, Prompts[HDR_SUBJECT - 1]);
  mutt_paddstr (W, NONULL (msg->env->subject));
//  draw_envelope_addr (HDR_REPLYTO, msg->env->reply_to);
  mvprintw (HDR_FCC, 0, TITLE_FMT, Prompts[HDR_FCC - 1]);
  mutt_paddstr (W, fcc);

  if (WithCrypto)
    redraw_crypt_lines (msg);

#undef MIXMASTER
#ifdef MIXMASTER
  redraw_mix_line (msg->chain);
#endif

[...]

[line 564]
//      case OP_COMPOSE_EDIT_REPLY_TO:
//  menu->redraw = edit_address_list (HDR_REPLYTO, &msg->env->reply_to);
//        mutt_message_hook (NULL, msg, M_SEND2HOOK);
//  break;

Thực hiện những thay đổi này theo mã trên:

  • nhận xét dòng 60, HDR_REPLYTOenum -> biến mất Reply-Totiêu đề
  • nhận xét chuỗi "Trả lời:" trong Promptsmảng -> làm biến mất Reply-Tochuỗi tiêu đề
  • bình luận ra draw_envelope_addr (HDR_REPLYTO, msg->env->reply_to);-> biến mất Reply-Totiêu đề
  • nhận xét các dòng 564- 567để tránh biên dịch lỗi do thiếu HDR_REPLYTO-> làm biến mất Reply-Totùy chọn chỉnh sửa tiêu đề
  • thêm #undef MIXMASTERtrước khi kiểm tra def (hoặc có thể thêm dòng này sớm hơn để tránh bất kỳ kiểm tra nào là tích cực) -> làm biến mất Mixtiêu đề.

Sau đó ./configuremakeđể tạo cá nhân của bạn mutt. Bạn có thể phải sửa một số vấn đề biên dịch và cấu hình.

Nó làm việc trên mutt-1.5.21.

Tôi thực sự không biết làm thế nào mã của mutt hoạt động, tôi thấy rằng họ sử dụng các cursescửa sổ. Nếu ai đó dành nhiều thời gian hơn để hiểu mã này và lý do tại sao nó hoạt động, xin vui lòng gửi theo dõi.


cảm ơn bạn, nhưng tôi đã hy vọng cho một số tham số cấu hình. Biên dịch lại Mutt có vẻ khá cao để trả tiền.
Martin Vegter

Vâng, tôi biết. Tôi đã nghiên cứu mã và cố gắng tìm bất kỳ khả năng nào cho một số tham số cấu hình, nhưng chúng không có ở đó. Do đó, câu trả lời cho câu hỏi của bạn là "Có, có thể, nhưng với nhiều công việc hơn. Không, không thể với các tham số cấu hình hoặc các phương tiện có thể cấu hình dễ dàng tương tự." Xin lỗi đã làm bạn thất vọng, dường như không có cách nào dễ dàng: /.
polym

3

Bạn đặt các tiêu đề bạn muốn hiển thị muttrc, như vậy:

# headers to show
ignore *                                      # ignore all headers
unignore from: to: cc: date: subject:         # show only these
hdr_order from: to: cc: date: subject:        # and in this order

cảm ơn, nhưng điều này chỉ có hiệu lực trong máy nhắn tin (tức là đối với tin nhắn nhận được), nhưng không có trong menu soạn thảo.
Martin Vegter 7/12/13

Làm việc cho tôi: những gì khác trong bạn .muttrc?
jasonwryan

tốt, những thứ thông thường. khoảng 50 dòng. Nhưng không có gì tôi có thể thấy sẽ can thiệp vàoignore
Martin Vegter 7/12/13

Bạn đã đặt edit_headerschưa
jasonwryan

không, tôi chưa edit_headersđặt
Martin Vegter 7/12/13

2

Nếu sử dụng vim:

set editor = "vim -c '/Mix: /d|/Reply-To: /d'"

Hacky, nhưng lừa Linux một cách ngắn gọn.
ThreeFx
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.