mutt: Definiere, welche Header angezeigt werden (in compose)


10

Beim Verfassen einer Nachricht in muttwerden folgende Überschriften angezeigt:

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

Ich weiß nicht, wofür der Mix:Header ist, und ich glaube nicht, dass ich ihn jemals brauchen werde. Ebenso muss ich den Reply-To:Header nicht bearbeiten .

Diese beiden nutzlosen Linien nehmen wertvollen Platz ein. Ist es möglich, diese Header vollständig zu entfernen? Kann ich angeben, welche Überschriften im Erstellungsmenü angezeigt werden?


2
Nach dem Mutt Handbuch , Mixist für über anonyme Versenden von Nachrichten mixmaster(was immer das bedeutet)
Robert Hayek

Ist es also eine glaubwürdige Quelle, durch Durchsuchen des Quellcodes zu beweisen, dass diese Optionen nicht verfügbar sind (und daher "Nein, nicht möglich - aber hier eine Modifikation" zu den oben genannten Fragen zu sagen)? :)
Polym

Antworten:


3

Ok, ich habe eine (sehr hackige) Lösung. Antwort: Es ist möglich, diese Header durch Bearbeiten muttdes Codes zu entfernen , aber bisher nicht auf andere Weise.

Erstens gibt es kein Flag oder keinen Check-in mutt-Quellcode, um zu verhindern, dass diese Header im Menü des Erstellungsmenüs angezeigt werden. Zumindest habe ich keine gesehen.

Es ist daher nicht möglich anzugeben, welche Überschriften im Erstellungsmenü angezeigt werden, ohne den muttCode bearbeiten zu müssen.

Ich habe mir den Quellcode ( apt-get source mutt) angesehen und herausgefunden, wo muttseine Überschriften gezeichnet werden, wenn Sie eine Mail verfassen.

Die wichtigen Teile liegen in 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;

Nehmen Sie diese Änderungen gemäß dem obigen Code vor:

  • Kommentar aus Zeile 60, die HDR_REPLYTOAufzählung -> verschwindet die Reply-ToKopfzeile
  • Kommentieren Sie die Zeichenfolge "Reply-To:" im PromptsArray aus -> verschwindet die Reply-ToHeader-Zeichenfolge
  • auskommentieren draw_envelope_addr (HDR_REPLYTO, msg->env->reply_to);-> verschwindet der Reply-ToHeader
  • Zeilen auskommentieren 564- 567um Kompilierungsfehler aufgrund des Fehlens von HDR_REPLYTO-> zu vermeiden, verschwindet die Reply-ToOption zum Bearbeiten von Headern
  • fügen Sie #undef MIXMASTERvor dem def Scheck (oder vielleicht auch diese Zeile früher fügen Sie alle Kontrollen zu vermeiden , positiv zu sein) -> verschwindet die MixHeader.

Dann ./configureund makeum Ihre personalisierte zu erstellen mutt. Möglicherweise müssen Sie einige Kompilierungs- und Konfigurationsprobleme beheben.

Es hat funktioniert mutt-1.5.21.

Ich weiß nicht wirklich, wie Mutts Code funktioniert, ich sehe, dass sie cursesWindows verwenden. Wenn jemand mehr Zeit damit verbringt, diesen Code zu verstehen und warum er funktioniert, veröffentlichen Sie bitte ein Follow-up.


Danke, aber ich hatte auf einige Konfigurationsparameter gehofft. Mutt neu zu kompilieren scheint ziemlich teuer zu sein.
Martin Vegter

ja ich weiß. Ich habe den Code studiert und versucht, eine Möglichkeit für einige Konfigurationsparameter zu finden, aber sie sind nicht vorhanden. Die Antwort auf Ihre Frage oben lautet daher "Ja, es ist möglich, aber mit mehr Arbeit. Nein, mit Konfigurationsparametern oder ähnlichen einfach konfigurierbaren Mitteln ist dies nicht möglich." Es tut mir leid, Sie zu enttäuschen, es scheint, dass es keinen einfachen Weg gibt: /.
Polym

3

Sie legen die Überschriften fest, in denen Sie anzeigen möchten muttrc, wie folgt:

# 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

danke, aber dies wirkt sich nur im Pager aus (dh für empfangene Nachrichten), nicht aber im Erstellungsmenü.
Martin Vegter

Funktioniert für mich: Was ist noch in deinem .muttrc?
Jasonwryan

na ja, übliches Zeug. etwa 50 Zeilen. Aber nichts, was ich sehen konnte, würde störenignore
Martin Vegter

Hast du eingestellt edit_headers?
Jasonwryan

Nein, ich habe nicht edit_headersgesetzt
Martin Vegter

2

Bei Verwendung von vim:

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

Hacky, macht aber den Trick. Linux auf den Punkt gebracht.
ThreeFx
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.