mutt: zdefiniuj, które nagłówki mają być wyświetlane (w tworzeniu)


10

Podczas redagowania wiadomości muttwidzę następujące nagłówki:

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

Nie wiem do czego Mix:służy nagłówek i nie sądzę, żebym go kiedykolwiek potrzebował. Podobnie nie będę musiał edytować Reply-To:nagłówka.

Te dwie bezużyteczne linie zajmują cenną przestrzeń. Czy można całkowicie usunąć te nagłówki? Czy mogę określić, które nagłówki mają być wyświetlane w menu tworzenia?


2
Według podręcznika Mutt , Mixjest za wysyłanie wiadomości za pośrednictwem anonimowych mixmaster(cokolwiek to znaczy)
Robert Hayek

Sooo, czy sprawdzanie przez przeglądanie kodu źródłowego, że te opcje nie są dostępne (a zatem mówienie „nie, niemożliwe - ale spójrz tutaj, modyfikacja”) na powyższe pytania, jest wiarygodnym źródłem? :)
polym

Odpowiedzi:


3

Ok mam rozwiązanie (bardzo hacky). Odpowiedź: Możliwe jest usunięcie tych nagłówków poprzez edycję muttkodu, ale jak dotąd nie jest to możliwe w żaden inny sposób.

Przede wszystkim nie ma flagi ani żadnego muttkodu źródłowego, aby zapobiec pojawianiu się tych nagłówków w oknie menu tworzenia. Przynajmniej nic nie widziałem.

Nie można więc określić, które nagłówki mają być wyświetlane w menu tworzenia bez konieczności edytowania muttkodu.

Spojrzałem na kod źródłowy ( apt-get source mutt) i dowiedziałem się, gdzie muttrysuje nagłówki, gdy piszesz pocztę.

Ważne części obejmują 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;

Wprowadź te zmiany zgodnie z powyższym kodem:

  • skomentuj wiersz 60, HDR_REPLYTOwyliczenie -> znika Reply-Tonagłówek
  • skomentuj ciąg „Reply-To:” w Promptstablicy -> znika Reply-Tociąg nagłówka
  • skomentuj draw_envelope_addr (HDR_REPLYTO, msg->env->reply_to);-> znika Reply-Tonagłówek
  • komentuj wiersze 564- 567aby uniknąć błędów kompilacji z powodu braku HDR_REPLYTO-> znika Reply-Toopcja edycji nagłówka
  • dodaj #undef MIXMASTERprzed sprawdzeniem def (lub dodaj ten wiersz wcześniej, aby uniknąć dodatnich kontroli) -> znika Mixnagłówek.

Następnie ./configurei makeaby utworzyć spersonalizowany mutt. Być może trzeba będzie rozwiązać niektóre problemy z kompilacją i konfiguracją.

To działało mutt-1.5.21.

Naprawdę nie wiem, jak działa kod mutta, widzę, że używają cursesokien. Jeśli ktoś poświęca więcej czasu na zrozumienie tego kodu i jego przyczyny, opublikuj dalsze informacje.


dziękuję, ale liczyłem na jakiś parametr konfiguracyjny. Ponowna kompilacja Mutt wydaje się dość wysoka.
Martin Vegter

tak, wiem. Studiowałem kod i próbowałem znaleźć jakąkolwiek możliwość dla niektórych parametrów konfiguracyjnych, ale ich tam nie ma. Odpowiedź na powyższe pytanie brzmi zatem: „Tak, jest to możliwe, ale przy większej pracy. Nie, nie jest to możliwe z parametrami konfiguracji lub podobnymi łatwymi do konfiguracji środkami”. Przepraszam za rozczarowanie, wydaje się, że nie ma łatwego sposobu: /.
polym

3

Ustawiasz nagłówki, w których chcesz wyświetlać, w następujący muttrcsposób:

# 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

dzięki, ale ma to wpływ tylko na pager (tj. na otrzymane wiadomości), ale nie w menu tworzenia.
Martin Vegter,

Działa dla mnie: co jeszcze jest w twoim .muttrc?
jasonwryan

cóż, zwykłe rzeczy. około 50 linii. Ale nic, co widziałem, nie przeszkadzałobyignore
Martin Vegter,

Ustawiłeś edit_headers?
jasonwryan

nie, nie edit_headersustawiłem
Martin Vegter,

2

Jeśli używasz vima:

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

Hacky, ale załatwia sprawę. Linux w pigułce.
ThreeFx
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.