globals.h 4.47 KB
Newer Older
Thomas Roessler's avatar
Thomas Roessler committed
1
/*
2
 * Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu>
Thomas Roessler's avatar
Thomas Roessler committed
3 4 5 6 7 8 9 10 11 12 13 14 15
 * 
 *     This program is free software; you can redistribute it and/or modify
 *     it under the terms of the GNU General Public License as published by
 *     the Free Software Foundation; either version 2 of the License, or
 *     (at your option) any later version.
 * 
 *     This program is distributed in the hope that it will be useful,
 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *     GNU General Public License for more details.
 * 
 *     You should have received a copy of the GNU General Public License
 *     along with this program; if not, write to the Free Software
16
 *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
Thomas Roessler's avatar
Thomas Roessler committed
17 18 19 20 21 22
 */ 

WHERE void (*mutt_error) (const char *, ...);

WHERE CONTEXT *Context;

23
WHERE char Errorbuf[STRING];
Thomas Roessler's avatar
Thomas Roessler committed
24

25 26 27 28
#if defined(DL_STANDALONE) && defined(USE_DOTLOCK)
WHERE char *MuttDotlock;
#endif

29 30
WHERE ADDRESS *From;

Thomas Roessler's avatar
Thomas Roessler committed
31 32
WHERE char *AliasFile;
WHERE char *AliasFmt;
Thomas Roessler's avatar
Thomas Roessler committed
33
WHERE char *AttachSep;
Thomas Roessler's avatar
Thomas Roessler committed
34
WHERE char *Attribution;
Thomas Roessler's avatar
Thomas Roessler committed
35
WHERE char *AttachFormat;
Thomas Roessler's avatar
Thomas Roessler committed
36
WHERE char *Charset;
37
WHERE char *ComposeFormat;
Thomas Roessler's avatar
Thomas Roessler committed
38 39
WHERE char *DefaultHook;
WHERE char *DateFmt;
40
WHERE char *DisplayFilter;
Thomas Roessler's avatar
Thomas Roessler committed
41 42 43 44 45 46 47 48 49 50
WHERE char *DsnNotify;
WHERE char *DsnReturn;
WHERE char *Editor;
WHERE char *EscChar;
WHERE char *FolderFormat;
WHERE char *ForwFmt;
WHERE char *Fqdn;
WHERE char *HdrFmt;
WHERE char *Homedir;
WHERE char *Hostname;
Thomas Roessler's avatar
Thomas Roessler committed
51 52 53
#ifdef USE_IMAP
WHERE char *ImapUser INITVAL (NULL);
WHERE char *ImapPass INITVAL (NULL);
54
WHERE short ImapCheckTimeout;
55
WHERE char *ImapHomeNamespace INITVAL (NULL);
Thomas Roessler's avatar
Thomas Roessler committed
56
#endif
57
WHERE char *InReplyTo;
Thomas Roessler's avatar
Thomas Roessler committed
58 59 60 61 62 63
WHERE char *Inbox;
WHERE char *Ispell;
WHERE char *Locale;
WHERE char *MailcapPath;
WHERE char *Maildir;
WHERE char *MsgFmt;
64

65 66 67 68
#ifdef USE_SOCKET
WHERE char *Preconnect INITVAL (NULL);
#endif /* USE_SOCKET */

69 70
#ifdef MIXMASTER
WHERE char *Mixmaster;
71
WHERE char *MixEntryFormat;
72 73
#endif

Thomas Roessler's avatar
Thomas Roessler committed
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
WHERE char *Muttrc INITVAL (NULL);
WHERE char *Outbox;
WHERE char *Pager;
WHERE char *PagerFmt;
WHERE char *PipeSep;
#ifdef USE_POP
WHERE char *PopHost;
WHERE char *PopPass;
WHERE char *PopUser;
#endif
WHERE char *PostIndentString;
WHERE char *Postponed;
WHERE char *Prefix;
WHERE char *PrintCmd;
WHERE char *QueryCmd;
WHERE char *Realname;
90
WHERE char *SendCharset;
Thomas Roessler's avatar
Thomas Roessler committed
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110
WHERE char *Sendmail;
WHERE char *Shell;
WHERE char *Signature;
WHERE char *SimpleSearch;
WHERE char *Spoolfile;
WHERE char *StChars;
WHERE char *Status;
WHERE char *Tempdir;
WHERE char *Tochars;
WHERE char *Username;
WHERE char *Visual;

WHERE char *LastFolder;

WHERE LIST *AutoViewList INITVAL(0);
WHERE LIST *AlternativeOrderList INITVAL(0);
WHERE LIST *HeaderOrderList INITVAL(0);
WHERE LIST *Ignore INITVAL(0);
WHERE LIST *UnIgnore INITVAL(0);
WHERE LIST *MailLists INITVAL(0);
111
WHERE LIST *SubscribedLists INITVAL(0);
Thomas Roessler's avatar
Thomas Roessler committed
112 113 114 115 116 117 118 119 120

/* bit vector for boolean variables */
#ifdef MAIN_C
unsigned char Options[(OPTMAX + 7)/8];
#else
extern unsigned char Options[];
#endif

/* bit vector for the yes/no/ask variable type */
121 122 123 124 125
#ifdef MAIN_C
unsigned char QuadOptions[(OPT_MAX*2 + 7) / 8];
#else
extern unsigned char QuadOptions[];
#endif
Thomas Roessler's avatar
Thomas Roessler committed
126 127 128 129 130 131 132 133 134 135 136

WHERE unsigned short Counter INITVAL (0);

WHERE short HistSize;
WHERE short PagerContext;
WHERE short PagerIndexLines;
WHERE short PopPort;
WHERE short ReadInc;
WHERE short SendmailWait;
WHERE short Timeout;
WHERE short WriteInc;
Thomas Roessler's avatar
Thomas Roessler committed
137 138 139
WHERE short ScoreThresholdDelete;
WHERE short ScoreThresholdRead;
WHERE short ScoreThresholdFlag;
Thomas Roessler's avatar
Thomas Roessler committed
140

141
/* flags for received signals */
142 143 144
WHERE SIG_ATOMIC_VOLATILE_T SigAlrm INITVAL (0);
WHERE SIG_ATOMIC_VOLATILE_T SigInt INITVAL (0);
WHERE SIG_ATOMIC_VOLATILE_T SigWinch INITVAL (0);
Thomas Roessler's avatar
Thomas Roessler committed
145

146 147
WHERE int CurrentMenu;

Thomas Roessler's avatar
Thomas Roessler committed
148 149 150 151 152 153 154 155 156 157 158 159
WHERE ALIAS *Aliases INITVAL (0);
WHERE LIST *UserHeader INITVAL (0);

#ifdef DEBUG
WHERE FILE *debugfile INITVAL (0);
WHERE int debuglevel INITVAL (0);
#endif

#ifdef MAIN_C
const char *Weekdays[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
const char *Months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "ERR" };

Thomas Roessler's avatar
Thomas Roessler committed
160
const char *BodyTypes[] = { "x-unknown", "audio", "application", "image", "message", "model", "multipart", "text", "video" };
161
const char *BodyEncodings[] = { "x-unknown", "7bit", "8bit", "quoted-printable", "base64", "binary", "x-uuencoded" };
Thomas Roessler's avatar
Thomas Roessler committed
162 163 164 165 166 167 168 169 170 171 172
#else
extern const char *Weekdays[];
extern const char *Months[];
#endif

#ifdef MAIN_C
/* so that global vars get included */ 
#include "mx.h"
#include "mutt_regex.h"
#include "buffy.h"
#include "sort.h"
173
#ifdef HAVE_PGP
Thomas Roessler's avatar
Thomas Roessler committed
174 175 176
#include "pgp.h"
#endif
#endif /* MAIN_C */