====== Message Header ======

<file>
┌────────────────────────····                                       Synchronet
│ Subj: Word wrapping                                                ▌▀▌▌▀▌▌▀▌
│ Attr: Replied                                                      █▀▌█▀▌▐▄
│ To  : mark lewis                                                   █ ▌█ ▌▄ ▌
│ From: Digital Man #1                                               ▀▀ ▀▀  ▀
│ Date: Mon Apr 15 2019 03:17 am PDT (23.4 hours ago)                software
└───────────────────────────────────────────────······
</file>
Customizing the message header displayed when users read messages (e.g. posts and mail messages) via the [[server:terminal]] server involves either:
  * Modifying the first 9 strings defined in the system's ''[[dir:ctrl]]/[[custom:text.dat]]'' file, or
  * Creating/modifying the system's ''[[dir:text]]/menu/msghdr.*'' file

The default behavior for users of terminals with more than 40 columns is to use the hard-coded C/C++ Synchronet logic to display the ''text.dat'' lines which are appropriate for the current message (the order of displayed header fields can not be changed).

Since a 40-column version of the message header file (''msghdr.40col.asc'') exists in a default install (e.g. from Git), that file is displayed rather than the ''text.dat'' lines for users with 40-column terminals.

If you chose the ''text.dat'' file route, here are the strings you'll be interested in:
  * MsgSubj
  * MsgTags
  * MsgAttr
  * MsgTo
  * MsgToNet
  * MsgToExt
  * MsgFrom
  * MsgFromNet
  * MsgFromExt
  * MsgDate
  * MsgVotes
  * MsgHdrBodySeparator
  * PollAnswerChecked
  * ForwardedFrom

If you chose the ''msghdr.*'' file route, here are some [[custom:atcodes|@-codes]] that you may want to include in the file for dynamic string values:
  * SMB_GROUP
  * SMB_SUB
  * SMB_AREA_DESC
  * SMB_CURMSG
  * SMB_MSGS
  * MSG_DATE
  * MSG_TIMEZONE
  * MSG_AGE
  * MSG_ATTR
  * MSG_FROM_NAME
  * MSG_TO_NAME
  * MSG_SUBJECT

Synchronet comes stock with:
  * An example ''msghdr.*'': ''[[https://gitlab.synchro.net/main/sbbs/-/blob/master/text/menu/msghdrexample.asc|msghdrexample.asc]]''
  * A message header to use only for 40-columns terminals: ''[[https://gitlab.synchro.net/main/sbbs/-/blob/master/text/menu/msghdr.40col.asc|msghdr.40col.msg]]''

===== See Also =====
  * [[:custom:atcodes|@-Codes]]
  * [[:custom:ctrl-a_codes|Ctrl-A Codes]]
  * [[:custom:menu files]]
  * [[:config:text files]]
  * [[:custom:|Customization]]

{{tag>message header}}
