]> code.delx.au - gnu-emacs/blobdiff - etc/TODO
Version 3.15
[gnu-emacs] / etc / TODO
index e9bfbb01009e01482c997278b8e107f36ad81e1d..e9540c2b6baf81b48ded4724c34e6623fb75d9c1 100644 (file)
--- a/etc/TODO
+++ b/etc/TODO
@@ -9,12 +9,31 @@ to the FSF.
 
 * Small but important fixes needed in existing features:
 
 
 * 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
   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.
 
   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
+  <URL:http://www.catb.org/~esr/BROWSER/browse-url.patch>.
+
+** 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,
 * 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.
 
 ** 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
 ** 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).
 
 ** 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.
 
 
 ** 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
 
 ** 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.]
   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:
 
 
 ** 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
 ** 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.
 *** 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.]
 
   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
 ** 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.
 
 ** 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
 ** Change the Windows NT menu code
   so that it handles the deep_p argument and avoids
   regenerating the whole menu bar menu tree except
@@ -229,11 +273,16 @@ to the FSF.
 
 ** Provide portable undumping using mmap (per gerd design).
 
 
 ** Provide portable undumping using mmap (per gerd design).
 
+** Make byte-compile avoid binding an expanded defsubst's args
+when the body only calls primitives.
+
 ** Use the XIE X extension, if available, for image display.
 
 ** Make monochrome images display using the foreground and background
   colors of the applicable faces.
 
 ** Use the XIE X extension, if available, for image display.
 
 ** 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.
 
 ** Add support for rendering antialiased text, probably using
   XRender/Freetype.
 
@@ -316,6 +365,9 @@ to the FSF.
   "japanese".  Currently, most Japanese users are using external
   packages (e.g. tamago, anthy) or an input method via XIM.
 
   "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
 * Internal changes
 
 ** Replace gmalloc.c with the modified Doug Lea code from the current
@@ -327,7 +379,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
 
 ** 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
 
 ;;; arch-tag: b0a3e40b-726a-457d-9999-ba848321b036