]> code.delx.au - gnu-emacs/blobdiff - etc/TODO
*** empty log message ***
[gnu-emacs] / etc / TODO
index 4efeada3aa04bda767029a869b36e91d85d5a8be..e5b3c64716e57eb44c2d738e9d23b33e48c62996 100644 (file)
--- a/etc/TODO
+++ b/etc/TODO
@@ -9,17 +9,36 @@ 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
+  <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,
-  display a font as a sample, etc.  [fx is looking at multilingual
-  font selection for Emacs 22.]
+   list fonts, display a font as a sample, etc.  [fx is looking at
+  multilingual font selection for Emacs 22.]
 
 ** Program Enriched mode to read and save in RTF.  [Is there actually a
   decent single definition of RTF?  Maybe see info at
@@ -28,11 +47,18 @@ 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" section 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).
 
 ** Implement other text formatting properties.
 *** Footnotes that can appear either in place or at the end of the page.
@@ -43,25 +69,52 @@ 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
+*** Use MLS for ange-ftp-insert-directory if a list of files is specified.
+
 ** Ability to map a key, including all modified-combinations.
    E.g map mouse-4 to wheel-up as well as M-mouse-4 -> M-wheel-up
    M-C-mouse-4 -> M-C-wheel-up, H-S-C-M-s-double-mouse-4 ->
@@ -77,6 +130,8 @@ to the FSF.
        at the same time and do it in a context-sensitive way.
 *** ability to add mode-specific data to the partial-parse-state.
 
+** Add a way to convert a keyboard macro to equivalent Lisp code.
+
 ** Have a command suggestion help system that recognizes patterns
   of commands which could be replaced with a simpler common command.
   It should not make more than one suggestion per 10 minutes.
@@ -91,6 +146,10 @@ to the FSF.
   Bison input files, for instance, or other kinds of text
   where one language is embedded in another language.
 
+** Arrange a way for an input method to return the first character
+  immediately, then replace it later.  So that C-s a with
+  input method latin-1-postfix would immediately search for an a.
+
 ** Give start-process the ability to direct standard-error
   output to a different filter.
 
@@ -104,6 +163,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
@@ -112,9 +173,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
@@ -140,6 +198,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.
 
@@ -169,7 +231,7 @@ to the FSF.
 
 ** Investigate using the language environment (or locale?) to set up
   more things, such as the default Ispell dictionary, calendar
-  holidays, quoting characters?,...
+  holidays, quoting characters, space after periods and colons, ...
 
 ** Improve the GC (generational, incremental).  (We may be able to use
   the Boehm collector.)  [See the Boehm-GC branch in CVS for work on
@@ -182,8 +244,6 @@ to the FSF.
 ** Provide an optional feature which computes a scroll bar slider's
   size and its position from lines instead of characters.
 
-** Make the Custom themes support do useful things.
-
 ** Add support for SVG (Scalable Vector Graphics) rendering to
   Emacs.
 
@@ -215,11 +275,16 @@ to the FSF.
 
 ** 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.
 
+** Face remapping.
+
 ** Add support for rendering antialiased text, probably using
   XRender/Freetype.
 
@@ -262,8 +327,6 @@ to the FSF.
   list in a menu, let you select one of the values, and put it into some
   other variable, without changing the value of `values'.
 
-** Fix skip-chars-{for,back}ward to allow character classes.
-
 ** (Controlled by a flag) make open and close syntax match exactly,
   i.e. `(' doesn't match `]'.
 
@@ -304,6 +367,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
@@ -315,7 +381,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