32947
|
1 -*-text-*-
|
33867
|
2
|
45069
|
3 If you are ready to start working on any of these TODO items, we
|
|
4 appreciate your help; please write to emacs-devel@gnu.org so we can be
|
|
5 aware that the problem is being addressed, and talk with you how to do
|
51647
|
6 it best. Since Emacs is an FSF-copyrighted package, please be
|
45069
|
7 prepared to sign legal papers to transfer the copyright on your work
|
|
8 to the FSF.
|
|
9
|
|
10 Small but important fixes needed in existing features:
|
43946
|
11
|
|
12 * Make compile.el record the markers that point to error loci
|
|
13 on text properties in the error message lines.
|
|
14
|
52413
|
15 * Fix the kill/yank treatment of invisible text. At the moment,
|
|
16 invisible text is placed in the kill-ring, so that the contents of
|
|
17 the ring may not correspond to the text as displayed to the user. It
|
|
18 ought to be possible to omit text which is invisible (due to a
|
|
19 text-property, overlay, or selective display) from the kill-ring.
|
|
20
|
43946
|
21 Important features:
|
|
22
|
43043
|
23 * Provide user-friendly ways to list all available font families,
|
49605
|
24 display a font as a sample, etc. [fx is looking at multilingual
|
|
25 font selection for Emacs 22.]
|
43043
|
26
|
35157
|
27 * Program Enriched mode to read and save in RTF. [Is there actually a
|
52780
|
28 decent single definition of RTF? Maybe see info at
|
|
29 http://latex2rtf.sourceforge.net/.]
|
32515
|
30
|
43946
|
31 * Implement something better than the current Refill mode. This
|
|
32 probably needs some primitive support.
|
|
33
|
|
34 * Implement primitive and higher-level functions to allow filling
|
|
35 properly with variable-pitch faces.
|
|
36
|
48072
|
37 * Implement a smoother vertical scroll facility, one that allows
|
|
38 C-v to scroll through a tall image.
|
43946
|
39
|
32515
|
40 * Implement other text formatting properties.
|
|
41 ** Footnotes that can appear either in place or at the end of the page.
|
|
42 ** text property that says "don't break line in middle of this".
|
|
43 Don't break the line between two characters that have the
|
|
44 same value of this property.
|
|
45 ** Discretionary hyphens that are not visible when they are at end of line.
|
|
46
|
43946
|
47 * Make movemail work with IMAP.
|
|
48
|
49605
|
49 * Internationalize Emacs's messages. [Note that this is of limited
|
|
50 use until the menus can display multilingual text. It also doesn't
|
|
51 address important issues like using the names of symbols essentially
|
|
52 as documentation, e.g. in command names and Custom. -- fx]
|
43990
|
53
|
49605
|
54 * Make the Lucid menu widget display multilingual text. [This
|
|
55 probably needs to be done from actual Emacs buffers, either directly
|
|
56 in the menu or by rendering in an unmapped window and copying the
|
|
57 pixels. Note that the relevant Xlib functions assume a specific
|
|
58 locale; that isn't good enough even if X can render the arbitrary
|
51647
|
59 text, which it often can't as far as I can tell. -- fx] [The gtk
|
|
60 port now displays multilingual text in menus, but only insofar as
|
|
61 Emacs can encode it as utf-8 and gtk can display the result.]
|
43946
|
62
|
|
63 * Remove the limitation that window and frame widths and heights can
|
|
64 be only full columns/lines.
|
|
65
|
45163
|
66 * Move fringe to be displayed between display margins and text area.
|
|
67 [KFS is looking into this].
|
|
68
|
|
69 * Set fringe widths per-window/per-buffer.
|
|
70
|
|
71 * Make fringe bitmaps user configurable. Maybe add ability to add
|
|
72 additional bitmaps to the fringe from lisp.
|
|
73
|
43946
|
74 Other features we would like:
|
|
75
|
|
76 * Have a command suggestion help system that recognizes patterns
|
|
77 of commands which could be replaced with a simpler common command.
|
|
78 It should not make more than one suggestion per 10 minutes.
|
32515
|
79
|
45945
|
80 * Add a way to define input methods by computing them (when first used)
|
|
81 from other input methods. Then redefine C-x 8 to use a
|
|
82 user-selected input method, with the default being the union of
|
|
83 latin-1-prefix and latin-1-postfix.
|
|
84
|
25853
|
85 * Implement a clean way to use different major modes for
|
|
86 different parts of a buffer.
|
|
87
|
|
88 * Give start-process the ability to direct standard-error
|
|
89 output to a different filter.
|
|
90
|
|
91 * Make desktop.el save the "frame configuration" of Emacs (in some
|
|
92 useful sense).
|
|
93
|
44914
|
94 * Give desktop.el a feature to switch between different named
|
|
95 desktops.
|
|
96
|
25853
|
97 * Replace finder.el with something that generates an Info file
|
32947
|
98 which gives the same information through a menu structure. [Dave
|
|
99 Love started on this.]
|
25853
|
100
|
32947
|
101 * Implement a variant of uncompress.el or jka-compr.el that works with
|
51317
|
102 GNU Privacy Guard for encryption. [Code exists but isn't assigned.
|
|
103 See the Gnus development sources for assigned code concerning GPG
|
|
104 use with mail, which is probably a good start.]
|
25853
|
105
|
|
106 * Save undo information in files, and reload it when needed
|
|
107 for undoing.
|
|
108
|
43994
|
109 * Merge the Emacs regex.c with the Glibc regex.c.
|
49605
|
110 They split off a few years ago through negligence.
|
43994
|
111
|
25853
|
112 * Change the Windows NT menu code
|
|
113 so that it handles the deep_p argument and avoids
|
|
114 regenerating the whole menu bar menu tree except
|
|
115 when the user tries to use the menubar.
|
|
116
|
|
117 This requires the RIT to forward the WM_INITMENU message to
|
|
118 the main thread, and not return from that message until the main
|
45790
|
119 thread has processed the MENU_BAR_ACTIVATE_EVENT and regenerated
|
25853
|
120 the whole menu bar. In the mean time, it should process other messages.
|
27949
|
121
|
32947
|
122 * Get some major packages installed: W3/url (development version needs
|
51317
|
123 significant work), PSGML. Check the assignments file for other
|
48064
|
124 packages which might go in and have been missed.
|
31733
|
125
|
32947
|
126 * Make keymaps a first-class Lisp object (this means a rewrite of
|
33362
|
127 keymap.c). What should it do apart from being opaque ?
|
|
128 multiple inheritance ? faster where-is ? no more fix_submap_inheritance ?
|
|
129 what else ?
|
32947
|
130
|
|
131 * Provide real menus on ttys. The MS-DOS implementation can serve as
|
|
132 an example how to do part of this.
|
|
133
|
|
134 * Implement popular parts of the rest of the CL functions as compiler
|
|
135 macros in cl-macs.
|
|
136
|
48064
|
137 * Highlight rectangles (`mouse-track-rectangle-p' in XEmacs). Already in CUA,
|
|
138 but it's a valuable feature worth making more general.
|
32947
|
139
|
|
140 * Support simultaneous tty and X frames.
|
|
141
|
49605
|
142 * Provide MIME support for Rmail using the Gnus MIME library. [Maybe
|
|
143 not now feasible, given Gnus maintenance decisions. fx looked at
|
|
144 this and can say where some of the problems are.]
|
32947
|
145
|
|
146 * Eliminate the storm of warnings concerning char/unsigned char
|
|
147 mismatches that we get with proprietary compilers on various systems.
|
|
148 They make it difficult to spot the important warnings.
|
|
149
|
|
150 * Fix anything necessary to use `long long' EMACS_INTs with GCC.
|
33076
|
151
|
|
152 * Split out parts of lisp.h and generate Makefile dependencies
|
|
153 automatically.
|
|
154
|
|
155 * Update the FAQ.
|
|
156
|
33253
|
157 * Allow auto-compression-mode to use zlib calls if zlib is available.
|
|
158 [It's required for PNG, so may be linked anyhow.]
|
33471
|
159
|
|
160 * Add a --pristine startup flag which does -q --no-site-file plus
|
|
161 ignoring X resources (Doze equivalents?) and most of the
|
|
162 environment. What should not be ignored needs consideration.
|
|
163
|
35583
|
164 * Investigate using the language environment (or locale?) to set up
|
|
165 more things, such as the default Ispell dictionary, calendar
|
43990
|
166 holidays, quoting characters?,...
|
33827
|
167
|
|
168 * Improve the GC (generational, incremental). (We may be able to use
|
51647
|
169 the Boehm collector.) [See the Boehm-GC branch in CVS for work on
|
|
170 this.]
|
33867
|
171
|
34029
|
172 * Check what hooks would help Emacspeak -- see the defadvising in W3.
|
34333
|
173
|
|
174 * Implement some variety of (non-gtk) drag-and-drop support under X.
|
34675
|
175 Using libdnd might be a good start.
|
|
176
|
34749
|
177 * Add horizontal scroll bars.
|
35157
|
178
|
43465
|
179 * Provide an optional feature which computes a scroll bar slider's
|
|
180 size and its position from lines instead of characters.
|
|
181
|
49605
|
182 * Make the Custom themes support do useful things.
|
35318
|
183
|
37111
|
184 * Investigate using GNU Lightning or similar system for incremental
|
37374
|
185 compilation of selected bytecode functions to subrs. Converting CCL
|
|
186 programs to native code is probably the first thing to try, though.
|
37353
405bb463989f
Remove the item about the Info mode manual. Add an item for functionality
Eli Zaretskii <eliz@gnu.org>
diff
changeset
|
187
|
405bb463989f
Remove the item about the Info mode manual. Add an item for functionality
Eli Zaretskii <eliz@gnu.org>
diff
changeset
|
188 * Add a feature to Info similar to "info --apropos SUBJECT".
|
37923
|
189
|
49600
|
190 * Add support for SVG (Scalable Vector Graphics) rendering to
|
38543
|
191 Emacs.
|
39373
|
192
|
48072
|
193 * Allow unknown image types to be rendered via an external program
|
|
194 converting them to, say, PBM (in the same way as PostScript?).
|
|
195
|
|
196 * Allow displaying an X window from an external program in a buffer,
|
|
197 e.g. to render graphics from Java applets. [gerd and/or wmperry
|
|
198 thought this was feasible.]
|
|
199
|
|
200 * Allow images (not just text) in the margin to be mouse-sensitive.
|
|
201 (Requires recursing through display properties). Provide some way
|
|
202 to simulate mouse-clicks on marginal text without a mouse.
|
|
203
|
|
204 * Implement Lisp functions to determine properly whether a character
|
|
205 is displayable (particularly needed in XFree 4, sigh). Use it to
|
|
206 define useful glyphs that may be displayed as images or unicodes
|
|
207 (with ASCIIfied fallback via latin1-disp). Examples include
|
|
208 box-drawing graphics in Custom buffers, W3 rules and tables, and
|
|
209 tree displays generally, mode-line mail indicator. [See work done
|
|
210 already for Emacs 22 and consult fx.]
|
|
211
|
|
212 * Do something to make rms happy with fx's dynamic loading, and use it
|
|
213 to implement things like auto-loaded buffer parsers and database
|
|
214 access in cases which need more than Lisp.
|
|
215
|
|
216 * Extend ps-print to deal with multiple font sizes, images, and extra
|
|
217 encodings.
|
|
218
|
|
219 * Provide portable undumping using mmap (per gerd design).
|
|
220
|
|
221 * Replace gmalloc.c with the modified Doug Lea code from the current
|
49605
|
222 GNU libc so that the special mmapping of buffers can be removed --
|
|
223 that apparently loses under Solaris, at least. [fx has mostly done
|
|
224 this.]
|
48072
|
225
|
39373
|
226 * Use the XIE X extension, if available, for image display.
|
39900
|
227
|
50587
|
228 * Make monochrome images display using the foreground and background
|
|
229 colors of the applicable faces.
|
|
230
|
45158
|
231 * Add support for rendering antialiased text, probably using
|
|
232 XRender/Freetype.
|
45081
|
233
|
48072
|
234 * Rewrite make-docfile to be clean and maintainable.
|
43043
|
235
|
|
236 * Port the conservative stack marking code of Emacs' garbage collector
|
|
237 to more systems, so that we can completely get rid of GCPROs.
|
|
238
|
45156
|
239 * Reorder defcustom's in each package so that the more important
|
|
240 options come first in the Customize buffers. This could be done by
|
|
241 either rearranging the file (since options are shown in the order
|
|
242 they appear in the *.el files), or by adding a few :set-after
|
|
243 attributes.
|
|
244
|
43043
|
245 * Maybe document the features of libraries missing from the manual (or
|
|
246 ancillary manuals, including the Lisp manual in some cases).
|
|
247 This is not worth doing for all of these packages and we need not
|
|
248 aim for completeness, but some may be worth documenting.
|
|
249
|
|
250 Here's a list which is probably not complete/correct: align, allout,
|
|
251 artist, ansi-color, array, battery, calculator, cdl, cmuscheme,
|
45163
|
252 completion, cua, delim-col, dirtrack, double, echistory, elide-head,
|
43043
|
253 easymenu, expand, flow-ctrl, format [format-alist],
|
|
254 generic/generic-x [various modes], kermit, log-edit, ledit
|
|
255 [obsolete?], makesum, midnight [other than in Kill Buffer node],
|
|
256 mouse-copy [?], mouse-drag, mouse-sel, net-utils, rcompile,
|
|
257 snmp-mode [?], soundex [should be interactive?], strokes [start from
|
|
258 the web page], talk, thingatpt [interactive functions?], type-break,
|
|
259 vcursor, xscheme, zone-mode [?], mlconvert [?], iso-cvt, iso-swed,
|
|
260 swedish, feedmail [?], uce, bruce, gametree, meese, page-ext,
|
|
261 refbib, refer, scribe, sgml-mode, spell, texinfo, underline,
|
|
262 cmacexp, hideif, mantemp [obsolete?], pcomplete, assoc, xml,
|
|
263 cvs-status (should be described in PCL-CVS manual); other progmodes,
|
|
264 probably in separate manual.
|
48177
|
265
|
49605
|
266 * Provide a means to extract image-relative coordinates from mouse
|
|
267 clicks on images. (Needed for W3, at least.) Also useful for W3
|
|
268 and Gnus: allow images to scroll properly.
|
|
269
|
|
270 * Convert the XPM bitmaps to PPM, replace the PBMs with them and scrap
|
|
271 the XPMs so that the colour versions work generally. (Requires care
|
|
272 with the colour used for the transparent regions.)
|
|
273
|
48177
|
274 * Convenient access to the `values' variable. It would be nice to have an
|
|
275 interface that would show you the printed reps of the elements of the
|
|
276 list in a menu, let you select one of the values, and put it into some
|
|
277 other variable, without changing the value of `values'.
|
49605
|
278
|
|
279 * Fix skip-chars-{for,back}ward to allow character classes.
|
52401
|
280
|
52780
|
281 * (Controlled by a flag) make open and close syntax match exactly,
|
|
282 i.e. `(' doesn't match `]'.
|
|
283
|
52401
|
284 ;;; arch-tag: b0a3e40b-726a-457d-9999-ba848321b036
|