71188
|
1 Emacs TODO List -*-outline-*-
|
|
2
|
75343
|
3 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
|
75774
|
4 Free Software Foundation, Inc.
|
|
5 See the end of the file for license conditions.
|
|
6
|
33867
|
7
|
45069
|
8 If you are ready to start working on any of these TODO items, we
|
|
9 appreciate your help; please write to emacs-devel@gnu.org so we can be
|
|
10 aware that the problem is being addressed, and talk with you how to do
|
51647
|
11 it best. Since Emacs is an FSF-copyrighted package, please be
|
45069
|
12 prepared to sign legal papers to transfer the copyright on your work
|
|
13 to the FSF.
|
|
14
|
55090
|
15 * Small but important fixes needed in existing features:
|
43946
|
16
|
84785
|
17 ** Make "emacs --daemon" start emacs without showing any frame.
|
84784
|
18 Use emacsclient later to open frames.
|
|
19
|
84785
|
20 ** Make it possible to reliably turn on minor modes using "mode:" in the local
|
|
21 variables section.
|
84784
|
22
|
81924
|
23 ** "Options -> Save Options" should save the font set via "Set Font/Fontset"
|
|
24 I.e. mouse-set-font should use customize-face.
|
77321
44e4bfbc989d
Add "Fix compilation when Xaw3d libraries are present but libxaw is not".
Chong Yidong <cyd@stupidchicken.com>
diff
changeset
|
25
|
77177
|
26 ** Compute the list of active keymaps *after* reading the first event.
|
|
27
|
71490
|
28 ** mouse-autoselect-window should wait to select the window until
|
|
29 the mouse is put to rest or after a delay or both, so that moving over
|
|
30 a window doesn't select it.
|
|
31
|
70040
|
32 ** Distribute a bar cursor of width > 1 evenly between the two glyphs
|
|
33 on each side of the bar (what to do at the edges?).
|
|
34
|
69794
|
35 ** Make vc-checkin avoid reverting the buffer if has not changed after
|
|
36 the checkin. Comparing (md5 BUFFER) to (md5 FILE) should be enough.
|
|
37
|
68286
|
38 ** buffer-offer-save should be a permanent local.
|
|
39
|
67174
|
40 ** revert-buffer should eliminate overlays and the mark.
|
|
41
|
67585
|
42 ** erase-buffer should perhaps disregard read-only properties of text.
|
|
43
|
63608
|
44 ** Make occur correctly handle matches that span more than one line,
|
|
45 as well as overlapping matches.
|
|
46
|
58814
|
47 ** Fix the kill/yank treatment of invisible text. At the moment,
|
52413
|
48 invisible text is placed in the kill-ring, so that the contents of
|
63599
|
49 the ring may not correspond to the text as displayed to the user.
|
|
50 It ought to be possible to omit text which is invisible (due to a
|
52413
|
51 text-property, overlay, or selective display) from the kill-ring.
|
|
52
|
59663
|
53 ** Change the way define-minor-mode handles autoloading.
|
|
54 It should not generate :require. Or :require in defcustom
|
|
55 should not be recorded in the user's custom-set-variables call.
|
|
56
|
72734
|
57 ** Feature to change cursor shape when Emacs is idle (for more than
|
|
58 a specified time).
|
|
59
|
59894
|
60 ** The buttons at the top of a custom buffer should not omit
|
|
61 variables whose values are currently hidden.
|
|
62
|
61602
|
63 ** Clean up the variables in browse-url. Perhaps use a shell command string to
|
|
64 specify the browser instead of the mushrooming set of functions.
|
|
65 See also ESR's proposal for a BROWSER environment variable
|
|
66 <URL:http://www.catb.org/~esr/BROWSER/browse-url.patch>.
|
|
67
|
63726
|
68 ** Enhance scroll-bar to handle tall line (similar to line-move).
|
|
69
|
|
70 ** Make occur handle multi-line matches cleanly with context.
|
|
71
|
67585
|
72 ** In Custom buffers, put the option that turns a mode on or off first,
|
|
73 using a heuristic of some kind?
|
|
74
|
|
75 ** Define recompute-arg and recompute-arg-if for fix_command to use.
|
|
76 See rms message of 11 Dec 05.
|
|
77
|
67533
|
78 ** Height returned by frame-parameter ... and height given to
|
|
79 make-frame does not mean the same thing. The former includes menu and
|
|
80 tool bar lines, the latter don't. frame-parameter should return height
|
|
81 without menu and tool bar lines.
|
|
82
|
67585
|
83 ** In Emacs Info, examples of using Customize should be clickable
|
|
84 and they should create Custom buffers.
|
|
85
|
67679
|
86 ** The toolbar should show keyboard equivalents in its tooltips.
|
|
87
|
75042
|
88 ** Add function to redraw the tool bar.
|
|
89
|
68431
|
90 ** M-! M-n should fetch the buffer-file-name as the default.
|
|
91
|
69393
|
92 ** Redesign the load-history data structure so it can cope better
|
|
93 with evaluating definitions of the same function from different files,
|
|
94 recording which file the latest definition came from.
|
70040
|
95
|
74771
|
96 ** make back_comment use syntax-ppss or equivalent.
|
|
97
|
77386
|
98 ** Consider improving src/sysdep.c's search for a fqdn.
|
|
99 http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00782.html
|
|
100
|
|
101 ** Find a proper fix for rcirc multiline nick adding.
|
|
102 http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00684.html
|
77312
|
103
|
85002
|
104 ** Implement `network-interface-list' and `network-interface-info'
|
|
105 on MS-Windows. Hint: the information is present in the Registry,
|
|
106 under the keys
|
|
107 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Linkage\
|
|
108 and
|
|
109 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<device>\
|
|
110 where <device> is the network device found under the first key.
|
|
111
|
86498
ec825106d4b8
Check for any included packages that define obsolete bug-reporting commands.
Glenn Morris <rgm@gnu.org>
diff
changeset
|
112 ** Check for any included packages that define obsolete bug-reporting commands.
|
ec825106d4b8
Check for any included packages that define obsolete bug-reporting commands.
Glenn Morris <rgm@gnu.org>
diff
changeset
|
113 Change them to use report-emacs-bug.
|
ec825106d4b8
Check for any included packages that define obsolete bug-reporting commands.
Glenn Morris <rgm@gnu.org>
diff
changeset
|
114
|
55090
|
115 * Important features:
|
43946
|
116
|
55090
|
117 ** Provide user-friendly ways to list all available font families,
|
67679
|
118 list fonts, display a font as a sample, etc. [fx is looking at
|
|
119 multilingual font selection for the Unicode branch of Emacs.]
|
43043
|
120
|
71732
|
121 ** Provide a convenient way to select a color with the mouse.
|
|
122
|
66847
|
123 ** Rewrite the face code to be simpler, clearer and faster.
|
|
124
|
55090
|
125 ** Program Enriched mode to read and save in RTF. [Is there actually a
|
52780
|
126 decent single definition of RTF? Maybe see info at
|
67610
|
127 http://latex2rtf.sourceforge.net/.] This task seems to be addressed
|
|
128 by http://savannah.nongnu.org/projects/emacs-rtf/, which is still in
|
|
129 very early stages.
|
32515
|
130
|
55090
|
131 ** Implement something better than the current Refill mode. This
|
43946
|
132 probably needs some primitive support.
|
|
133
|
65789
|
134 ** Add a command to make a "Local Variables" section in the current buffer
|
63585
|
135 and/or add a variable to the list.
|
|
136
|
55090
|
137 ** Implement primitive and higher-level functions to allow filling
|
43946
|
138 properly with variable-pitch faces.
|
|
139
|
55090
|
140 ** Implement a smoother vertical scroll facility, one that allows
|
58814
|
141 C-v to scroll through a tall image. The primitive operations
|
|
142 posn-at-point and posn-at-x-y should now make it doable in elisp.
|
43946
|
143
|
57466
|
144 ** Implement intelligent search/replace, going beyond query-replace
|
|
145 (see http://graphics.csail.mit.edu/~rcm/chi04.pdf).
|
|
146
|
55090
|
147 ** Implement other text formatting properties.
|
|
148 *** Footnotes that can appear either in place or at the end of the page.
|
|
149 *** text property that says "don't break line in middle of this".
|
32515
|
150 Don't break the line between two characters that have the
|
|
151 same value of this property.
|
55090
|
152 *** Discretionary hyphens that are not visible when they are at end of line.
|
32515
|
153
|
61602
|
154 ** Internationalize Emacs's messages.
|
|
155
|
72495
|
156 ** Set up a facility to save backtraces when errors happen during
|
|
157 specified filters, specified timers, and specified hooks.
|
|
158
|
67149
|
159 ** Install mmc@maruska.dyndns.org's no-flicker change.
|
|
160
|
63585
|
161 ** Add a "current vertical pixel level" value that goes with point,
|
|
162 so that motion commands can also move through tall images.
|
|
163 This value would be to point as window-vscroll is to window-start.
|
|
164
|
61602
|
165 ** Address internationalization of symbols names essentially
|
|
166 as documentation, e.g. in command names and Custom.
|
43990
|
167
|
55090
|
168 ** Make the Lucid menu widget display multilingual text. [This
|
49605
|
169 probably needs to be done from actual Emacs buffers, either directly
|
|
170 in the menu or by rendering in an unmapped window and copying the
|
60719
|
171 pixels. The current code assumes a specific locale; that isn't good
|
|
172 enough even if X can render the arbitrary text] [The gtk
|
51647
|
173 port now displays multilingual text in menus, but only insofar as
|
|
174 Emacs can encode it as utf-8 and gtk can display the result.]
|
60719
|
175 Maybe making Lucid menus work like Gtk's (i.e. just force utf-8) is good
|
|
176 enough now that Emacs can encode most chars into utf-8.
|
43946
|
177
|
55090
|
178 ** Remove the limitation that window and frame widths and heights can
|
43946
|
179 be only full columns/lines.
|
|
180
|
55090
|
181 * Other features we would like:
|
|
182
|
85469
|
183 ** Allow frames(terminals) created by emacsclient to inherit their environment
|
|
184 from the emacsclient process.
|
70722
|
185 ** Remove the default toggling behavior of minor modes when called from elisp
|
|
186 rather than interactively. This a trivial one-liner in easy-mode.el.
|
81122
|
187
|
68572
|
188 ** Create a category of errors called `user-error' for errors which are
|
|
189 typically due to pilot errors and should thus be in debug-ignored-errors.
|
|
190
|
68551
|
191 ** Give Tar mode all the features of Archive mode.
|
|
192
|
64234
|
193 ** Create a category of errors called `process-error'
|
|
194 for some or all errors associated with using subprocesses.
|
|
195
|
64235
|
196 ** Maybe reinterpret `parse-error' as a category of errors
|
|
197 and put some other errors under it.
|
|
198
|
67146
|
199 ** A function to tell you the argument pattern of functions.
|
67610
|
200 See `function-arity' in http://www.loveshack.ukfsn.org/emacs/fx-misc.el.
|
67146
|
201
|
|
202 ** Make byte-compile warn when a doc string is too wide.
|
|
203
|
76964
573d15a35ad6
Make byte-optimization warnings issue accurate line numbers.
Chong Yidong <cyd@stupidchicken.com>
diff
changeset
|
204 ** Make byte-optimization warnings issue accurate line numbers.
|
573d15a35ad6
Make byte-optimization warnings issue accurate line numbers.
Chong Yidong <cyd@stupidchicken.com>
diff
changeset
|
205
|
59672
|
206 ** A function to check for customizable options that have been
|
|
207 set but not saved, and ask the user whether to save them.
|
|
208 This could go in kill-emacs-query-functions, to remind people
|
|
209 to save their changes. If the user says yes, show them
|
|
210 in a Custom buffer using customize-customized.
|
|
211
|
71716
|
212 ** Record the sxhash of the default value for customized variables
|
|
213 and notify the user (maybe by adding a menu item or toolbar button,
|
|
214 as the detection can occur during autoload time) when the default
|
|
215 changes (meaning that new versions of the Lisp source with a changed
|
|
216 default value got installed) and offer ediff on the respective
|
|
217 customization buffers.
|
|
218
|
60573
|
219 ** Emacs Lisp mode could put an overlay on the defun for every
|
71716
|
220 function that has advice. The overlay could have `after-text' like
|
|
221 " [Function has advice]". It might look like (defun foo [Function
|
|
222 has advice] (x y) The overlay could also be a button that you could
|
|
223 use to view the advice.
|
60573
|
224
|
75289
|
225 ** Add a function to get the insertion-type of the markers in an overlay.
|
|
226
|
56722
|
227 ** ange-ftp
|
|
228 *** understand sftp
|
67610
|
229 This is hard to make work because sftp doesn't print status
|
|
230 messages.
|
|
231
|
56722
|
232 *** Use MLS for ange-ftp-insert-directory if a list of files is specified.
|
|
233
|
55090
|
234 ** Ability to map a key, including all modified-combinations.
|
|
235 E.g map mouse-4 to wheel-up as well as M-mouse-4 -> M-wheel-up
|
|
236 M-C-mouse-4 -> M-C-wheel-up, H-S-C-M-s-double-mouse-4 ->
|
|
237 H-S-C-M-s-double-wheel-up, ...
|
43946
|
238
|
55090
|
239 ** Beefed-up syntax-tables.
|
|
240 *** recognize multi-character syntactic entities like `begin' and `end'.
|
|
241 *** nested string-delimiters (for Postscript's (foo(bar)baz) strings).
|
|
242 *** support for infix operators (with precedence).
|
|
243 *** support for the $ (paired delimiter) in parse-partial-sexp.
|
|
244 *** support for hook-chars whose effect on the parsing-state is specified
|
|
245 by elisp code. Thus a char could both close a string and open a comment
|
|
246 at the same time and do it in a context-sensitive way.
|
|
247 *** ability to add mode-specific data to the partial-parse-state.
|
|
248
|
57829
|
249 ** Add a way to convert a keyboard macro to equivalent Lisp code.
|
|
250
|
55090
|
251 ** Have a command suggestion help system that recognizes patterns
|
43946
|
252 of commands which could be replaced with a simpler common command.
|
|
253 It should not make more than one suggestion per 10 minutes.
|
32515
|
254
|
55090
|
255 ** Add a way to define input methods by computing them (when first used)
|
45945
|
256 from other input methods. Then redefine C-x 8 to use a
|
|
257 user-selected input method, with the default being the union of
|
|
258 latin-1-prefix and latin-1-postfix.
|
|
259
|
76958
|
260 ** Switch the Windows port to using Unicode keyboard input (maybe).
|
76912
|
261 Based on http://msdn2.microsoft.com/en-us/library/ms633586.aspx,
|
|
262 this boils down to (1) calling RegisterClassW function to register
|
|
263 Emacs windows, and (2) modifying ALL system messages to use Unicode.
|
|
264 In particular, WM_CHAR messages, which result from keyboard input,
|
76958
|
265 will then come in encoded in UTF-16.
|
76912
|
266
|
|
267 One advantage of switching to Unicode is to toss encoded-kbd usage,
|
|
268 which will solve the problem with binding non-ASCII keys with
|
|
269 modifiers.
|
|
270
|
76958
|
271 Problem: using this on Windows 9x/ME requires installing the
|
|
272 Microsoft Layer for Unicode (MSLU), which might not implement all
|
|
273 the required functionality that is available built-in on Windows XP
|
|
274 and later. We should not make this change if it would pressure
|
|
275 users of unauthorized copies of older versions of Windows to
|
|
276 downgrade to versions that require activation.
|
|
277
|
55090
|
278 ** Implement a clean way to use different major modes for
|
56444
|
279 different parts of a buffer. This could be useful in editing
|
|
280 Bison input files, for instance, or other kinds of text
|
67610
|
281 where one language is embedded in another language. See
|
|
282 http://www.loveshack.ukfsn.org/emacs/multi-mode.el and also
|
|
283 mmm-mode, as reference for approaches took by others.
|
25853
|
284
|
66448
|
285 ** Arrange a way for an input method to return the first character
|
|
286 immediately, then replace it later. So that C-s a with
|
|
287 input method latin-1-postfix would immediately search for an a.
|
|
288
|
55090
|
289 ** Give start-process the ability to direct standard-error
|
25853
|
290 output to a different filter.
|
|
291
|
55090
|
292 ** Make desktop.el save the "frame configuration" of Emacs (in some
|
25853
|
293 useful sense).
|
|
294
|
55090
|
295 ** Give desktop.el a feature to switch between different named
|
44914
|
296 desktops.
|
|
297
|
55090
|
298 ** Replace finder.el with something that generates an Info file
|
32947
|
299 which gives the same information through a menu structure. [Dave
|
|
300 Love started on this.]
|
25853
|
301
|
64191
|
302 ** Add a cpio mode, more or less like tar mode.
|
|
303
|
55090
|
304 ** Implement a variant of uncompress.el or jka-compr.el that works with
|
51317
|
305 GNU Privacy Guard for encryption. [Code exists but isn't assigned.
|
|
306 See the Gnus development sources for assigned code concerning GPG
|
67610
|
307 use with mail, which is probably a good start.] See also
|
|
308 http://www.loveshack.ukfsn.org/emacs/auto-crypt.tgz.
|
25853
|
309
|
56444
|
310 ** Save undo information in special temporary files, and reload it
|
|
311 when needed for undoing. This could extend undo capacity.
|
25853
|
312
|
55090
|
313 ** Change the Windows NT menu code
|
25853
|
314 so that it handles the deep_p argument and avoids
|
|
315 regenerating the whole menu bar menu tree except
|
|
316 when the user tries to use the menubar.
|
|
317
|
|
318 This requires the RIT to forward the WM_INITMENU message to
|
|
319 the main thread, and not return from that message until the main
|
45790
|
320 thread has processed the MENU_BAR_ACTIVATE_EVENT and regenerated
|
25853
|
321 the whole menu bar. In the mean time, it should process other messages.
|
27949
|
322
|
55090
|
323 ** Get some major packages installed: W3 (development version needs
|
86415
|
324 significant work), PSGML, _possibly_ Cedet and ECB.
|
85056
|
325 http://lists.gnu.org/archive/html/emacs-devel/2007-05/msg01493.html
|
|
326 Check the assignments file for other packages which might go in and
|
|
327 have been missed.
|
|
328
|
55090
|
329 ** Make keymaps a first-class Lisp object (this means a rewrite of
|
33362
|
330 keymap.c). What should it do apart from being opaque ?
|
|
331 multiple inheritance ? faster where-is ? no more fix_submap_inheritance ?
|
|
332 what else ?
|
32947
|
333
|
55090
|
334 ** Provide real menus on ttys. The MS-DOS implementation can serve as
|
76912
|
335 an example how to do part of this; see the XMenu* functions on msdos.c.
|
32947
|
336
|
55090
|
337 ** Implement popular parts of the rest of the CL functions as compiler
|
32947
|
338 macros in cl-macs.
|
|
339
|
58503
|
340 ** Make compiler warnings about functions that might be undefined at run time
|
|
341 smarter, so that they know which files are required by the file being
|
|
342 compiled and don't warn about functions defined in them.
|
|
343
|
55090
|
344 ** Highlight rectangles (`mouse-track-rectangle-p' in XEmacs). Already in CUA,
|
48064
|
345 but it's a valuable feature worth making more general.
|
32947
|
346
|
55090
|
347 ** Provide MIME support for Rmail using the Gnus MIME library. [Maybe
|
49605
|
348 not now feasible, given Gnus maintenance decisions. fx looked at
|
|
349 this and can say where some of the problems are.]
|
32947
|
350
|
55090
|
351 ** Eliminate the storm of warnings concerning char/unsigned char
|
67610
|
352 mismatches that we get with GCC 4.x and proprietary compilers on
|
|
353 various systems. They make it difficult to spot the important
|
|
354 warnings.
|
32947
|
355
|
55090
|
356 ** Fix anything necessary to use `long long' EMACS_INTs with GCC.
|
33076
|
357
|
55090
|
358 ** Split out parts of lisp.h and generate Makefile dependencies
|
33076
|
359 automatically.
|
|
360
|
55090
|
361 ** Update the FAQ.
|
33076
|
362
|
55090
|
363 ** Allow auto-compression-mode to use zlib calls if zlib is available.
|
33253
|
364 [It's required for PNG, so may be linked anyhow.]
|
33471
|
365
|
55090
|
366 ** Add a --pristine startup flag which does -q --no-site-file plus
|
33471
|
367 ignoring X resources (Doze equivalents?) and most of the
|
|
368 environment. What should not be ignored needs consideration.
|
85056
|
369 [Do the existing -Q and -D cover this, or is more needed?]
|
33471
|
370
|
55090
|
371 ** Improve the GC (generational, incremental). (We may be able to use
|
51647
|
372 the Boehm collector.) [See the Boehm-GC branch in CVS for work on
|
|
373 this.]
|
33867
|
374
|
55090
|
375 ** Check what hooks would help Emacspeak -- see the defadvising in W3.
|
34333
|
376
|
71397
|
377 ** Add definitions for symbol properties, for documentation purposes.
|
|
378
|
55090
|
379 ** Add horizontal scroll bars.
|
35157
|
380
|
55090
|
381 ** Provide an optional feature which computes a scroll bar slider's
|
43465
|
382 size and its position from lines instead of characters.
|
|
383
|
55090
|
384 ** Allow unknown image types to be rendered via an external program
|
85056
|
385 converting them to, say, PBM (in the same way as PostScript?). [does
|
|
386 doc-view.el do this, or could it be extended to do this?]
|
48072
|
387
|
55090
|
388 ** Allow displaying an X window from an external program in a buffer,
|
48072
|
389 e.g. to render graphics from Java applets. [gerd and/or wmperry
|
|
390 thought this was feasible.]
|
|
391
|
55090
|
392 ** Allow images (not just text) in the margin to be mouse-sensitive.
|
48072
|
393 (Requires recursing through display properties). Provide some way
|
|
394 to simulate mouse-clicks on marginal text without a mouse.
|
|
395
|
55090
|
396 ** Implement Lisp functions to determine properly whether a character
|
48072
|
397 is displayable (particularly needed in XFree 4, sigh). Use it to
|
|
398 define useful glyphs that may be displayed as images or unicodes
|
|
399 (with ASCIIfied fallback via latin1-disp). Examples include
|
|
400 box-drawing graphics in Custom buffers, W3 rules and tables, and
|
|
401 tree displays generally, mode-line mail indicator. [See work done
|
|
402 already for Emacs 22 and consult fx.]
|
|
403
|
55090
|
404 ** Do something to make rms happy with fx's dynamic loading, and use it
|
48072
|
405 to implement things like auto-loaded buffer parsers and database
|
|
406 access in cases which need more than Lisp.
|
|
407
|
55090
|
408 ** Extend ps-print to deal with multiple font sizes, images, and extra
|
48072
|
409 encodings.
|
|
410
|
55090
|
411 ** Provide portable undumping using mmap (per gerd design).
|
48072
|
412
|
64809
|
413 ** Make byte-compile avoid binding an expanded defsubst's args
|
|
414 when the body only calls primitives.
|
|
415
|
55090
|
416 ** Use the XIE X extension, if available, for image display.
|
48072
|
417
|
55090
|
418 ** Make monochrome images display using the foreground and background
|
50587
|
419 colors of the applicable faces.
|
|
420
|
62222
|
421 ** Face remapping.
|
|
422
|
71620
|
423 ** Make `format-time-string' preserve text properties like `format'.
|
|
424
|
66738
|
425 ** Optionally make the cursor a little thinner at the end of a line
|
|
426 or the end of the buffer.
|
|
427
|
55090
|
428 ** Add support for rendering antialiased text, probably using
|
45158
|
429 XRender/Freetype.
|
45081
|
430
|
55090
|
431 ** Port the conservative stack marking code of Emacs' garbage collector
|
67610
|
432 to more systems, so that we can completely get rid of GCPROs. Note
|
|
433 that Boehm garbage collector provides this.
|
43043
|
434
|
55090
|
435 ** Reorder defcustom's in each package so that the more important
|
45156
|
436 options come first in the Customize buffers. This could be done by
|
|
437 either rearranging the file (since options are shown in the order
|
|
438 they appear in the *.el files), or by adding a few :set-after
|
|
439 attributes.
|
|
440
|
55090
|
441 ** Maybe document the features of libraries missing from the manual (or
|
43043
|
442 ancillary manuals, including the Lisp manual in some cases).
|
|
443 This is not worth doing for all of these packages and we need not
|
|
444 aim for completeness, but some may be worth documenting.
|
|
445
|
|
446 Here's a list which is probably not complete/correct: align, allout,
|
|
447 artist, ansi-color, array, battery, calculator, cdl, cmuscheme,
|
45163
|
448 completion, cua, delim-col, dirtrack, double, echistory, elide-head,
|
43043
|
449 easymenu, expand, flow-ctrl, format [format-alist],
|
|
450 generic/generic-x [various modes], kermit, log-edit, ledit
|
|
451 [obsolete?], makesum, midnight [other than in Kill Buffer node],
|
|
452 mouse-copy [?], mouse-drag, mouse-sel, net-utils, rcompile,
|
|
453 snmp-mode [?], soundex [should be interactive?], strokes [start from
|
|
454 the web page], talk, thingatpt [interactive functions?], type-break,
|
|
455 vcursor, xscheme, zone-mode [?], mlconvert [?], iso-cvt, iso-swed,
|
|
456 swedish, feedmail [?], uce, bruce, gametree, meese, page-ext,
|
|
457 refbib, refer, scribe, sgml-mode, spell, texinfo, underline,
|
|
458 cmacexp, hideif, mantemp [obsolete?], pcomplete, assoc, xml,
|
|
459 cvs-status (should be described in PCL-CVS manual); other progmodes,
|
|
460 probably in separate manual.
|
48177
|
461
|
55090
|
462 ** Convert the XPM bitmaps to PPM, replace the PBMs with them and scrap
|
49605
|
463 the XPMs so that the colour versions work generally. (Requires care
|
|
464 with the colour used for the transparent regions.)
|
|
465
|
55090
|
466 ** Convenient access to the `values' variable. It would be nice to have an
|
48177
|
467 interface that would show you the printed reps of the elements of the
|
|
468 list in a menu, let you select one of the values, and put it into some
|
|
469 other variable, without changing the value of `values'.
|
49605
|
470
|
55090
|
471 ** (Controlled by a flag) make open and close syntax match exactly,
|
52780
|
472 i.e. `(' doesn't match `]'.
|
|
473
|
55090
|
474 ** Specify parameter ID-FORMAT in all calls to `file-attributes' and
|
53107
422a00e3d747
Add plans for change of file attributes UID and GID from integer to string.
Lars Hansen <larsh@soem.dk>
diff
changeset
|
475 `directory-files-and-attributes' where attributes UID or GID are used.
|
422a00e3d747
Add plans for change of file attributes UID and GID from integer to string.
Lars Hansen <larsh@soem.dk>
diff
changeset
|
476 Whenever possible, use value 'string.
|
422a00e3d747
Add plans for change of file attributes UID and GID from integer to string.
Lars Hansen <larsh@soem.dk>
diff
changeset
|
477 When done, change meaning of default value from 'integer to 'string.
|
422a00e3d747
Add plans for change of file attributes UID and GID from integer to string.
Lars Hansen <larsh@soem.dk>
diff
changeset
|
478 If value 'integer is used nowhere, remove the parameter ID-FORMAT from
|
422a00e3d747
Add plans for change of file attributes UID and GID from integer to string.
Lars Hansen <larsh@soem.dk>
diff
changeset
|
479 the definition of `file-attributes' and `directory-files-and-attributes'
|
422a00e3d747
Add plans for change of file attributes UID and GID from integer to string.
Lars Hansen <larsh@soem.dk>
diff
changeset
|
480 and from the calls.
|
422a00e3d747
Add plans for change of file attributes UID and GID from integer to string.
Lars Hansen <larsh@soem.dk>
diff
changeset
|
481
|
77517
|
482 ** Modify the emulation of `stat' for MS-Windows to support large files.
|
|
483 The current version uses the stock Windows definition of `struct
|
|
484 stat', where the file's size is returned as a 32-bit integer. That
|
|
485 overflows for files larger than 4GB. To fix, modify `stat' to use
|
|
486 64-bit size, and use a declaration of `struct stat' that supports
|
|
487 such sizes.
|
|
488
|
56410
|
489 ** Make language-info-alist customizable. Currently a user can customize
|
|
490 only the variable `current-language-environment'.
|
|
491
|
|
492 ** Improve language environment handling so that Emacs can fit
|
|
493 better to a users locale. Currently Emacs uses utf-8 language
|
|
494 environment for all utf-8 locales, thus a user in ja_JP.UTF-8 locale
|
|
495 are also put in utf-8 lang. env. In such a case, it is
|
|
496 better to use Japanese lang. env. but prefer utf-8 coding system.
|
56347
|
497
|
67679
|
498 ** Enhance locale handling: handle language, territory and charset
|
|
499 orthogonally and de-emphasize language environments. Use the locale
|
|
500 to set up more things, such as fontsets, the default Ispell
|
|
501 dictionary, diary format, calendar holidays and display, quoting
|
|
502 characters and phrase boundaries, sentence endings, collation for
|
|
503 sorting (at least for unicodes), HTTP Accept-language, patterns for
|
|
504 directory listings and compilation messages, yes-or-no replies,
|
|
505 common menu items when the toolkit supports it ... `locale-info'
|
|
506 needs extending for LC_COLLATE &c. [fx started on this.]
|
|
507
|
56347
|
508 ** Eliminate the current restriction on header printing by ps-print.
|
|
509 Currently, a header can contain only single 1-byte charset in
|
|
510 addition to ASCII.
|
|
511
|
|
512 ** In ps-print, provide an user friendly interface to specify fonts.
|
|
513
|
|
514 ** OpenType font support for various complex scripts (e.g. Devanagari).
|
|
515 As X protocal doesn't provide a way to access OpenType Layout Tables
|
|
516 in a OpenType font of a server side, we need a way to utilize local
|
|
517 fonts (perhaps by directly using the Freetype library or indirectly
|
|
518 via Xft library).
|
|
519
|
|
520 ** Enhance word boundary detection for such a script that doesn't use
|
|
521 space at word boundary (e.g. Thai).
|
|
522
|
56410
|
523 ** Implement interface programs with major Japanese conversion server
|
|
524 in lib-src so that they can be used from the input method
|
|
525 "japanese". Currently, most Japanese users are using external
|
|
526 packages (e.g. tamago, anthy) or an input method via XIM.
|
56347
|
527
|
68572
|
528 ** Let LEIM handle the Mode_switch key like XIM does (i.e. a toggle like C-\
|
|
529 but which can also be used as a modifier).
|
|
530
|
67753
|
531 ** Improve Help buffers: Change the face of previously visited links (like
|
|
532 Info, but also with regard to namespace), add a forward button to make the
|
|
533 Help buffer more browser like and gives the value of lisp expressions
|
|
534 e.g auto-mode-alist, the right face. [nickrob@snap.net.nz has a patch
|
|
535 for this for inclusion after 22.1].
|
|
536
|
69353
|
537 ** Possibly make `list-holidays' eval items in the calendar-holidays variable.
|
|
538 See thread
|
|
539 <http://lists.gnu.org/archive/html/emacs-devel/2006-02/msg01034.html>.
|
|
540 [rgm@gnu.org will look at this after 22.1]
|
|
541
|
73887
|
542 ** Possibly make cal-dst use the system timezone database directly.
|
|
543 See thread
|
|
544 <http://lists.gnu.org/archive/html/emacs-pretest-bug/2006-11/msg00060.html>
|
|
545
|
85056
|
546 ** Possibly add a "close" button to the modeline.
|
|
547 The idea is to add an "X" of some kind, that when clicked deletes
|
|
548 the window associated with that modeline.
|
|
549 http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg02416.html
|
|
550
|
55090
|
551 * Internal changes
|
|
552
|
77161
|
553 ** Cleanup all the GC_ mark bit stuff -- there is no longer any distinction
|
76474
|
554 since the mark bit is no longer stored in the Lisp_Object itself.
|
|
555
|
81051
|
556 ** Refine the `predicate' arg to read-file-name.
|
|
557 Currently, it mixes up the predicate to apply when doing completion and the
|
|
558 one to use when terminating the selection.
|
|
559
|
74941
|
560 ** Merge ibuffer.el and buff-menu.el.
|
|
561 More specifically do what's needed to make ibuffer.el the default,
|
|
562 or just an extension of buff-menu.el.
|
|
563
|
|
564 ** Use pcomplete by default in shell-mode.
|
|
565 This means to make it behave (by default) more like the current code.
|
|
566 Use it also for read-shell-command, M-x compile, ...
|
|
567
|
|
568 ** Merge sendmail.el and messages.el.
|
|
569 Probably not a complete merge, but at least arrange for messages.el to be
|
|
570 a derived mode of sendmail.el. Or arrange for messages.el to be split
|
|
571 into a small core and "the rest" so that we use less resources as long as
|
|
572 we stick to the features provided in sendmail.el.
|
77312
|
573
|
55090
|
574 ** Replace gmalloc.c with the modified Doug Lea code from the current
|
74941
|
575 GNU libc so that the special mmapping of buffers can be removed --
|
|
576 that apparently loses under Solaris, at least. [fx has mostly done
|
|
577 this.]
|
55090
|
578
|
|
579 ** Rewrite make-docfile to be clean and maintainable.
|
|
580
|
|
581 ** Add an inferior-comint-minor-mode to capture the common set of operations
|
|
582 offered by major modes that offer an associated inferior
|
58814
|
583 comint-derived mode. I.e. basically make cmuscheme.el/inf-lisp.el generic.
|
|
584 For use by sml-mode, python-mode, tex-mode, scheme-mode, lisp-mode,
|
|
585 haskell-mode, tuareg-mode, ...
|
55090
|
586
|
68433
|
587 ** Make SYNC_INPUT the default.
|
|
588 All loops using immediate_quit need to be checked to ensure that
|
|
589 C-g can interrupt them, in case of an infinite loop. Once we
|
|
590 switch to using SYNC_INPUT, we can remove the BLOCK_INPUTs in the
|
|
591 allocation functions (allocate_string etc.) without worrying about
|
|
592 data munging.
|
|
593
|
71536
|
594 ** Add "link" button class
|
|
595 Add a standard button-class named "link", and make all other link-like
|
|
596 button classes inherit from it. Set the default face of the "link" button
|
|
597 class to the standard "link" face.
|
|
598
|
63599
|
599 * Other known bugs:
|
|
600
|
85469
|
601 ** `make-frame' forgets unhandled parameters, at least for X11 frames.
|
80873
|
602 ** The \\{...} keymap dump output does not correctly remove shadowed entries:
|
|
603 From: "Drew Adams" <drew.adams@oracle.com>
|
|
604
|
|
605 (define-key minibuffer-local-map [(control ?=)] 'foo)
|
|
606 (define-key minibuffer-local-completion-map [(control ?=)] 'foo)
|
|
607
|
|
608 (defun toto () "\\{minibuffer-local-completion-map}" 4)
|
|
609
|
|
610 C-h f toto shows a duplicate entry for C-=:
|
|
611
|
|
612 toto is a Lisp function.
|
|
613 (toto)
|
|
614
|
|
615 key binding
|
|
616 - --- -------
|
|
617
|
|
618 C-g abort-recursive-edit
|
|
619 TAB minibuffer-complete
|
|
620 C-j exit-minibuffer
|
|
621 RET exit-minibuffer
|
|
622 ESC Prefix Command
|
|
623 SPC minibuffer-complete-word
|
|
624 ? minibuffer-completion-help
|
|
625 C-= foo
|
|
626 C-= foo
|
|
627 ...
|
|
628
|
63599
|
629 ** a two-char comment-starter whose two chars are symbol constituents will
|
|
630 not be noticed if it appears within a word.
|
|
631
|
63585
|
632 ** Fix unexelf.c to handle the .data.rel and .data.rel.local
|
|
633 sections made by GCC 3.4 on IRIX.
|
|
634
|
75774
|
635
|
|
636 This file is part of GNU Emacs.
|
|
637
|
|
638 GNU Emacs is free software; you can redistribute it and/or modify
|
|
639 it under the terms of the GNU General Public License as published by
|
78271
|
640 the Free Software Foundation; either version 3, or (at your option)
|
75774
|
641 any later version.
|
71188
|
642
|
75774
|
643 GNU Emacs is distributed in the hope that it will be useful,
|
|
644 but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
645 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
646 GNU General Public License for more details.
|
71188
|
647
|
75774
|
648 You should have received a copy of the GNU General Public License
|
|
649 along with GNU Emacs; see the file COPYING. If not, write to the
|
|
650 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
651 Boston, MA 02110-1301, USA.
|
71188
|
652
|
52401
|
653 ;;; arch-tag: b0a3e40b-726a-457d-9999-ba848321b036
|