+/* Maps to msgkeys[] in msgbase.c: */
+
+typedef enum _eMessageField {
+ eAuthor,
+ eXclusivID,
+ erFc822Addr,
+ eHumanNode,
+ emessageId,
+ eJournal,
+ eReplyTo,
+ eListID,
+ eMesageText,
+ eNodeName,
+ eOriginalRoom,
+ eMessagePath,
+ eRecipient,
+ eSpecialField,
+ eTimestamp,
+ eMsgSubject,
+ eenVelopeTo,
+ eWeferences,
+ eCarbonCopY
+}eMessageField;
+
+const char* fieldMnemonics[] = {
+ "from", /* A -> eAuthor */
+ "exti", /* E -> eXclusivID */
+ "rfca", /* F -> erFc822Addr */
+ "hnod", /* H -> eHumanNode */
+ "msgn", /* I -> emessageId */
+ "jrnl", /* J -> eJournal */
+ "rep2", /* K -> eReplyTo */
+ "list", /* L -> eListID */
+ "text", /* M -> eMesageText */
+ "node", /* N -> eNodeName */
+ "room", /* O -> eOriginalRoom */
+ "path", /* P -> eMessagePath */
+ "rcpt", /* R -> eRecipient */
+ "spec", /* S -> eSpecialField */
+ "time", /* T -> eTimestamp */
+ "subj", /* U -> eMsgSubject */
+ "nvto", /* V -> eenVelopeTo */
+ "wefw", /* W -> eWeferences */
+ "cccc" /* Y -> eCarbonCopY */
+};
+
+HashList *msgKeyLookup = NULL;
+
+int GetFieldFromMnemonic(eMessageField *f, const char* c)