5e250414946e3686b97a1a1253c1558109566c0a
[mmh] / config / config.c
1 /*
2 ** config.c -- master nmh configuration file
3 **
4 ** This code is Copyright (c) 2002, by the authors of nmh.  See the
5 ** COPYRIGHT file in the root directory of the nmh distribution for
6 ** complete copyright information.
7 */
8
9 #include <h/mh.h>
10
11
12
13 /*
14 ** nmh globals
15 */
16
17 char *mhetcdir = NMHETCDIR;
18
19 char *invo_name;        /* command invocation name    */
20 char *mypath;           /* user's $HOME               */
21 char *mmhpath;          /* pathname of user's mmh dir */
22 char *defpath;          /* pathname of user's profile */
23 char *ctxpath;          /* pathname of user's context */
24 char ctxflags;          /* status of user's context   */
25 struct node *m_defs;    /* profile/context structure  */
26
27
28 /*
29 ** nmh constants: standard file names
30 **
31 ** Important: Adjust uip/mmh.sh if you make changes here!
32 */
33
34 /* default name of the mail storage */
35 char *mailstore = "Mail";
36
37 /* default name of user profile */
38 char *mmhdir = ".mmh";
39
40 /* default name of user profile */
41 char *profile = "profile";
42
43 /* default name for the nmh context file */
44 char *context = "context";
45
46 /*
47 ** Default name of file for public sequences. Gets overridden
48 ** by a `Mh-Sequences' entry in the user's profile. Set to NULL
49 ** or the empty string to use private sequences by default.
50 */
51 char *mh_seq = ".mh_sequences";
52
53 /* standard component files */
54 char *components     = "components";       /* comp         */
55 char *replcomps      = "replcomps";        /* repl         */
56 char *replgroupcomps = "replgroupcomps";   /* repl -group  */
57 char *forwcomps      = "forwcomps";        /* forw         */
58 char *distcomps      = "distcomps";        /* dist         */
59 char *rcvdistcomps   = "rcvdistcomps";     /* rcvdist      */
60 char *digestcomps    = "digestcomps";      /* forw -digest */
61
62 /* standard format (filter) files */
63 char *mhlformat      = "mhl.format";       /* show         */
64 char *mhlreply       = "mhl.reply";        /* repl         */
65 char *scanformat     = "scan.default";     /* scan/inc     */
66
67
68 /*
69 ** standard names for: mail folders, sequences, and profile entries
70 */
71
72 /* some default folder names */
73 char *defaultfolder = "+inbox";
74 char *draftfolder = "+drafts";
75 char *trashfolder = "+trash";
76
77 char *inbox = "Inbox";  /* profile entry name to specify the default folder */
78 char *curfolder = "Current-Folder";
79
80 /* predefined sequences */
81 char *seq_all    = "a";
82 char *seq_beyond = "b";  /* the previous `new' sequence */
83 char *seq_cur    = "c";
84 char *seq_first  = "f";
85 char *seq_last   = "l";
86 char *seq_next   = "n";
87 char *seq_prev   = "p";
88 char *seq_unseen = "u";
89 char *seq_neg    = "!";
90
91 char *usequence = "Unseen-Sequence";
92 char *psequence = "Previous-Sequence";
93 char *nsequence = "Sequence-Negation";
94
95 /* profile entries for storage locations */
96 char *nmhstorage   = "nmh-storage";
97
98 /* Default header field names */
99 char *attach_hdr = "Attach";
100 char *sign_hdr = "Sign";
101 char *enc_hdr = "Enc";
102
103 /* the tool to query the mime type of a file */
104 char *mimetypequery = "Mime-Type-Query";
105 char *mimetypequeryproc = "file -b --mime";
106
107
108
109 /*
110 ** nmh default programs
111 */
112
113 /*
114 ** This is the default program invoked by a "list" or "display" response
115 ** at the "What now?" prompt. It will be given the absolute pathname of
116 ** the message to show.
117 */
118 char *listproc = "show";
119
120 /*
121 ** This is used by mhl as a front-end.  It is also used
122 ** by show(1) as the default method of displaying message bodies
123 ** or message parts of type text/plain.
124 */
125 char *defaultpager = "more";
126
127 /*
128 ** This is the editor invoked by the various message
129 ** composition programs.  It SHOULD be a full screen
130 ** editor, such as vi or emacs, but any editor will work.
131 */
132 char *defaulteditor = "vi";
133
134 /*
135 ** This program is called after comp, et. al., have built a draft
136 */
137 char *whatnowproc = "whatnow";
138
139 /*
140 ** This is the sendmail interface to use for sending mail.
141 */
142 char *sendmail = SENDMAILPATH;
143
144 /*
145 ** This is the path to the system mail spool directory (e.g. `/var/mail').
146 */
147 char *mailspool = MAILSPOOL;
148
149
150 /*
151 ** file stuff
152 */
153
154 /*
155 ** Folders (directories) are created with this protection (mode)
156 */
157 char *foldprot = "0700";
158
159 /*
160 ** Every NEW message will be created with this protection.  When a
161 ** message is filed it retains its protection.
162 */
163 char *msgprot = "0600";
164
165
166
167 /*
168 ** Standard yes/no switches structure
169 */
170 struct swit anoyes[] = {
171         { "no", 0 },
172         { "yes", 0 },
173         { NULL, 0 }
174 };
175