]> diplodocus.org Git - nmh/blob - docs/TODO
new.c: Order two return statements to match comment.
[nmh] / docs / TODO
1 [TODO]
2
3 * Add IPv6 support.
4 * Write different function to read configuration files, instead
5 of using m_getfld.c
6 * convert calls from sprintf/vsprintf to snprintf/vsnprintf
7 * convert calls from getcpy to strdup
8 * modularize access to context/profile list.
9 * add command printm to print messages
10 * finish changing to macros for msgstats and msgflags
11 * Add support for Mail-Followup-To and Mail-Reply-To
12 * Add support for profile entry "Mailing-Lists"
13 * let mhn and mhl accept files on standard in, and output to
14 standard out, when filtering files.
15 * Add switch -more to `show' to call moreproc.
16 * Add new command "show" at WhatNow? prompt.
17 * Add command to reverse the action of rmm [-nounlink] -- "urmm"? "umm"? "um"?
18 * Allow user customization of which kinds of text parts in multipart/alternative
19 messages are preferred. It would be nice if one selectable behavior would be
20 to be prompted at runtime for which version to show.
21 * Add a new %-escape that makes temp files more permanent than %f, so that you
22 can use gnuclient -q or netscape -remote on message parts. Put netscape
23 -remote in mhn.defaults for text/html once this is done.
24 * Change all man pages to group all the commandline options together in one
25 section with each as a separate mini-heading. Having to dig through prose to
26 find what a particular option does is a pain in the nads.
27 * Add some way to configure whether you prefer to see text/plain or text/html
28 parts of multipart/alternative messages.
29 * Allow multiple simultaneous differing contexts, probably each tied to a parent
30 (terminal) process.
31
32 [POSSIBILITIES]
33
34 MAN PAGES
35 ---------
36 * Update mh-tailor man page.
37 * update default mode in man pages with sed
38
39 SEQUENCES
40 ---------
41 * Maybe add option gracefully handle empty sequences (-force).
42
43 ENVIRONMENT/PROFILE
44 -------------------
45 * Should nmh check for EDITOR environment variable?
46
47 OPTIONS
48 -------
49 * change switches to accept two dashes (--help)
50 * can we move option checking to its own function? Currently each
51 command is doing that itself.
52 * make the option parsing code dynamic, so that there is no limit
53 to the number of command line arguments (this has been done for
54 most all the commands).
55 * Add switch descriptions to -help output.
56
57 COMP
58 ----
59 * add option so that prompter can be used to input addresses,
60 before the real editor is called to edit message.
61 * fix -nowhatnowproc switch. Right now whatnowproc starts the edit
62 session instead of comp, so -nowhatnowproc does nothing.
63
64 FLIST
65 -----
66 * add -format option so you can specify the look of the output
67 of flist.
68 * add Flist-Exclude profile component
69
70 FOLDER
71 ------
72 * add Folder-Order profile component (same as flist)
73 * add Folder-Exclude profile component
74
75 FORMATS
76 -------
77 * add escape %(sequence{foobar}) to detect arbitrary sequences.
78
79 FORW
80 ----
81 * Decode RFC-2047 headers in messages included when replying
82 or forwarding.
83 * Merge code for forw and repl.
84
85 INC
86 ---
87 * Add ability to do filtering (call filterproc) when incorporating mail
88 * Change inc to use library function folder_addmsg().
89
90 MHBUILD
91 -------
92 * add ability to specify Content-Transfer-Encoding in composition
93 drafts.
94 * remove the code for caching from mhbuild.
95
96 MHL
97 ---
98 * remove naming hack in mhlsbr.c for adios and done.
99 * add ability to filter parts of the message by calling
100 an external filtering program.
101 * fix internal pager for mhl?
102
103 MHN/MHSHOW/MHLIST/MHSTORE
104 -------------------------
105 * add way so user can tell mhn to use internal method for
106 handling type, such as multipart/mixed.
107 * add way so user can tell mhn to use a certain `proc' such
108 as moreproc, for certain content types.
109 * merge the two places in which mhshowsbr.c reads display
110 strings.
111 * when storing to a folder, should we save the folder context
112 first, so that storage string of "+" stores to the new
113 folder?
114
115 PICK
116 ----
117 * split regex code out into library.
118 * replace regex code with Henry Spencer's regex library.
119
120 POST
121 ----
122 * make -msgid the default
123 * factor msgid code into own function
124
125 PROMPTER
126 --------
127 * maybe add ability to use prompter just for headers, and
128 then use primary editor for editing message.
129
130 RCVSTORE
131 --------
132 * Change rcvstore so that it can store into multiple folders.
133 * Add folder locking.
134
135 REPL
136 ----
137 * Decode RFC-2047 headers in messages included when replying
138 or forwarding.
139 * Merge code for forw and repl.
140
141 SEND/SENDSBR
142 ------------
143 * Add ability for returned messages from "send -push" to be
144 in MIME format (this is actually a change in mhmail).
145 * make -msgid the default.
146 * Add RFC-2047 encoding support for out-going messages. This
147 will probably require hooking mhparse into sendsbr.c, and doing
148 a complete MIME parsing. Then all handling of Content encoding
149 can be on the backend.
150
151 SLOCAL
152 -----
153 * Change slocal to use .slocalrc file, instead of .maildelivery?
154 * Add ability to use regular expressions in header matching.
155 * Add support for Berkeley db.
156 * Clean up output from -debug option.
157 * Add -debuglevel to control the amount of debug info that is output.
158 * Add -debuglog to specify file to save debugging output.
159 * Add -logfile (or -audit) to specify where to record info about successful
160 deliveries.
161
162 MTA INTERFACE
163 -------------
164 * Fix locking code. Add lockfile command.
165 * Think about support for DSN (Delivery Status Notification)
166 * Test nmh with qmail. Add qmail's maildir format.
167 * Relax restrictions on what can be done with headers in send/post.
168 * figure out why smail.c and client.c need their own copies of
169 getcpy, copyip, etc... (funny linking problem)
170
171 GENERAL
172 -------
173 * see if the various versions of copyfile and copyf can be
174 merged.
175 * Add MH-6.8.4 features into nmh (mostly done).
176 * Maybe should move etcpath to sbr and add to libmh.
177 * collect winsize, struct termio, etc... together into a ttyinfo
178 structure.
179 * change adios to take exit code argument.
180 * use wait3 if not waitpid (maybe)
181 * some of the calls to setjmp/longjmp should be replaced with
182 sigsetjmp/siglongjmp.
183 * replace use of ftell with fgetpos.