X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/2d1ef312c83d551dab1416d532652492bf7aead0..090475f391ceb175048e0610bcfabffd8d5a0241:/etc/TODO diff --git a/etc/TODO b/etc/TODO index 21a7c7d8dc..6949a1818c 100644 --- a/etc/TODO +++ b/etc/TODO @@ -9,12 +9,31 @@ to the FSF. * Small but important fixes needed in existing features: -** Fix the kill/yank treatment of invisible text. At the moment, +** Make occur correctly handle matches that span more than one line, + as well as overlapping matches. + +** Fix the kill/yank treatment of invisible text. At the moment, invisible text is placed in the kill-ring, so that the contents of - the ring may not correspond to the text as displayed to the user. It - ought to be possible to omit text which is invisible (due to a + the ring may not correspond to the text as displayed to the user. + It ought to be possible to omit text which is invisible (due to a text-property, overlay, or selective display) from the kill-ring. +** Change the way define-minor-mode handles autoloading. + It should not generate :require. Or :require in defcustom + should not be recorded in the user's custom-set-variables call. + +** The buttons at the top of a custom buffer should not omit + variables whose values are currently hidden. + +** Clean up the variables in browse-url. Perhaps use a shell command string to + specify the browser instead of the mushrooming set of functions. + See also ESR's proposal for a BROWSER environment variable + . + +** Enhance scroll-bar to handle tall line (similar to line-move). + +** Make occur handle multi-line matches cleanly with context. + * Important features: ** Provide user-friendly ways to list all available font families, @@ -28,11 +47,15 @@ to the FSF. ** Implement something better than the current Refill mode. This probably needs some primitive support. +** Add a command to make a local variables list in the current buffer + and/or add a variable to the list. + ** Implement primitive and higher-level functions to allow filling properly with variable-pitch faces. ** Implement a smoother vertical scroll facility, one that allows - C-v to scroll through a tall image. + C-v to scroll through a tall image. The primitive operations + posn-at-point and posn-at-x-y should now make it doable in elisp. ** Implement intelligent search/replace, going beyond query-replace (see http://graphics.csail.mit.edu/~rcm/chi04.pdf). @@ -46,28 +69,50 @@ to the FSF. ** Make movemail work with IMAP. -** Internationalize Emacs's messages. [Note that this is of limited - use until the menus can display multilingual text. It also doesn't - address important issues like using the names of symbols essentially - as documentation, e.g. in command names and Custom. -- fx] +** Internationalize Emacs's messages. + +** Add a "current vertical pixel level" value that goes with point, + so that motion commands can also move through tall images. + This value would be to point as window-vscroll is to window-start. + +** Address internationalization of symbols names essentially + as documentation, e.g. in command names and Custom. ** Make the Lucid menu widget display multilingual text. [This probably needs to be done from actual Emacs buffers, either directly in the menu or by rendering in an unmapped window and copying the - pixels. Note that the relevant Xlib functions assume a specific - locale; that isn't good enough even if X can render the arbitrary - text, which it often can't as far as I can tell. -- fx] [The gtk + pixels. The current code assumes a specific locale; that isn't good + enough even if X can render the arbitrary text] [The gtk port now displays multilingual text in menus, but only insofar as Emacs can encode it as utf-8 and gtk can display the result.] + Maybe making Lucid menus work like Gtk's (i.e. just force utf-8) is good + enough now that Emacs can encode most chars into utf-8. ** Remove the limitation that window and frame widths and heights can be only full columns/lines. * Other features we would like: +** Create a category of errors called `process-error' + for some or all errors associated with using subprocesses. + +** Maybe reinterpret `parse-error' as a category of errors + and put some other errors under it. + +** A function to check for customizable options that have been + set but not saved, and ask the user whether to save them. + This could go in kill-emacs-query-functions, to remind people + to save their changes. If the user says yes, show them + in a Custom buffer using customize-customized. + +** Emacs Lisp mode could put an overlay on the defun for every + function that has advice. The overlay could have `after-text' like " + [Function has advice]". It might look like + (defun foo [Function has advice] (x y) + The overlay could also be a button that you could use to view the advice. + ** ange-ftp *** understand sftp -*** ignore some irrelevant errors (like IPv6 and kerberos thingies). *** Use MLS for ange-ftp-insert-directory if a list of files is specified. ** Ability to map a key, including all modified-combinations. @@ -114,6 +159,8 @@ to the FSF. which gives the same information through a menu structure. [Dave Love started on this.] +** Add a cpio mode, more or less like tar mode. + ** Implement a variant of uncompress.el or jka-compr.el that works with GNU Privacy Guard for encryption. [Code exists but isn't assigned. See the Gnus development sources for assigned code concerning GPG @@ -122,9 +169,6 @@ to the FSF. ** Save undo information in special temporary files, and reload it when needed for undoing. This could extend undo capacity. -** Merge the Emacs regex.c with the Glibc regex.c. - They split off a few years ago through negligence. - ** Change the Windows NT menu code so that it handles the deep_p argument and avoids regenerating the whole menu bar menu tree except @@ -150,6 +194,10 @@ to the FSF. ** Implement popular parts of the rest of the CL functions as compiler macros in cl-macs. +** Make compiler warnings about functions that might be undefined at run time + smarter, so that they know which files are required by the file being + compiled and don't warn about functions defined in them. + ** Highlight rectangles (`mouse-track-rectangle-p' in XEmacs). Already in CUA, but it's a valuable feature worth making more general. @@ -230,6 +278,8 @@ to the FSF. ** Make monochrome images display using the foreground and background colors of the applicable faces. +** Face remapping. + ** Add support for rendering antialiased text, probably using XRender/Freetype. @@ -312,6 +362,9 @@ to the FSF. "japanese". Currently, most Japanese users are using external packages (e.g. tamago, anthy) or an input method via XIM. +** Provide the toolbar on ttys. This could map a bit like tmm-menubar + for the menubar and buttons could look a bit like those used by customize. + * Internal changes ** Replace gmalloc.c with the modified Doug Lea code from the current @@ -323,7 +376,16 @@ to the FSF. ** Add an inferior-comint-minor-mode to capture the common set of operations offered by major modes that offer an associated inferior - comint-derived mode. I.e. basically make cmuscheme.el generic. - For use by sml-mode, python-mode, tex-mode, scheme-mode, ... + comint-derived mode. I.e. basically make cmuscheme.el/inf-lisp.el generic. + For use by sml-mode, python-mode, tex-mode, scheme-mode, lisp-mode, + haskell-mode, tuareg-mode, ... + +* Other known bugs: + +** a two-char comment-starter whose two chars are symbol constituents will +not be noticed if it appears within a word. + +** Fix unexelf.c to handle the .data.rel and .data.rel.local + sections made by GCC 3.4 on IRIX. ;;; arch-tag: b0a3e40b-726a-457d-9999-ba848321b036