(update_text_area): Set phys_cursor_on_p to 0 in the
[bpt/emacs.git] / etc / TODO
index ce15a57..600d3d0 100644 (file)
--- a/etc/TODO
+++ b/etc/TODO
@@ -1,9 +1,28 @@
                                                                 -*-text-*-
 
-* Port the conservative stack marking code of Emacs' garbage collector
-  to more systems, so that we can completely get rid of GCPROs.
+Small but important fixes in existing features:
+
+* Bring back the feature of showing the part of the buffer that is a problem
+  for the use of the preferred coding systems.
+
+* Make compile.el record the markers that point to error loci
+  on text properties in the error message lines.
+
+Important features:
+
+* Provide user-friendly ways to list all available font families,
+  display a font as a sample, etc.
+
+* Program Enriched mode to read and save in RTF.  [Is there actually a
+  decent single definition of RTF?]
+
+* Implement something better than the current Refill mode.  This
+  probably needs some primitive support.
+
+* Implement primitive and higher-level functions to allow filling
+  properly with variable-pitch faces.
 
-* Program Enriched mode to read and save in RTF.
+* Implement a smoother vertical scroll facility.
 
 * Implement other text formatting properties.
 ** Footnotes that can appear either in place or at the end of the page.
    same value of this property.
 ** Discretionary hyphens that are not visible when they are at end of line.
 
-* Implement something better than the current Refill mode.  This
-  probably needs some primitive support.
+* Make movemail work with IMAP.
+
+* Internationalize Emacs's messages.
+
+* Port Emacs to GTK+.  (Relevant work has been done already.)
+
+* Make the Lucid menu widget display multilingual text.
+
+* Remove the limitation that window and frame widths and heights can
+  be only full columns/lines.
+
+Other features we would like:
+
+* 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.
 
 * Implement a clean way to use different major modes for
   different parts of a buffer.
 * Give start-process the ability to direct standard-error
   output to a different filter.
 
-* Make compile.el record the markers that point to error loci
-  on text properties in the error message lines.
-
 * Make desktop.el save the "frame configuration" of Emacs (in some
   useful sense).
 
-* Make movemail work with IMAP.
-
-* Add ANSI C prototype forward declarations to the source files,
-  so that even the functions used within one file have prototypes.
-
 * Replace finder.el with something that generates an Info file
   which gives the same information through a menu structure.  [Dave
   Love started on this.]
@@ -42,6 +67,9 @@
 * Save undo information in files, and reload it when needed
   for undoing.
 
+* Merge the Emacs regex.c with the Glibc regex.c.
+  They split off a few years ago through negligance.
+
 * Change the Windows NT menu code
   so that it handles the deep_p argument and avoids
   regenerating the whole menu bar menu tree except
   thread has processed the menu_bar_activate_event and regenerated
   the whole menu bar.  In the mean time, it should process other messages.
 
-* Make Emacs work as a Java Bean.
-
-* Implement the design for Unicode-based internal encoding for Mule.
-
-* Document the features of libraries missing from the manual (or
-  ancillary manuals, including the Lisp manual in some cases).  Here's
-  a list which is probably not complete/correct: align, allout, artist,
-  ansi-color, array, battery, calculator, cdl, cmuscheme, completion,
-  delim-col, dirtrack, double, echistory, elide-head, easymenu,
-  expand, flow-ctrl, format [format-alist], generic/generic-x [various
-  modes], kermit, log-edit, ledit [obsolete?], makesum, midnight
-  [other than in Kill Buffer node], mouse-copy [?], mouse-drag,
-  mouse-sel, net-utils, rcompile, snmp-mode [?], soundex [should be
-  interactive?], strokes [start from the web page], talk, thingatpt
-  [interactive functions?], type-break, vcursor, xscheme, zone-mode
-  [?], mlconvert [?], iso-cvt, iso-swed, swedish, feedmail [?], uce,
-  bruce, gametree, meese, page-ext, refbib, refer, scribe, sgml-mode,
-  spell, texinfo, underline, cmacexp, hideif, mantemp [obsolete?],
-  pcomplete, assoc, xml, cvs-status (should be described in PCL-CVS manual);
-  other progmodes, probably in separate manual.
-
 * Get some major packages installed: W3/url (development version needs
   significant work), PSGML, Mule-UCS, Tramp (?).  Check the
   assignments file for other packages which might go in and have been
 
 * Support simultaneous tty and X frames.
 
-* Implement primitive and higher-level functions to allow filling
-  properly with variable-pitch faces.
-
 * Provide MIME support for Rmail using the Gnus MIME library.
 
 * Eliminate the storm of warnings concerning char/unsigned char
 
 * Update the FAQ.
 
-* Support dynamically-loadable primitive support using libtool and
-  support similarly to Guile.  [Some work has been done.]
-
 * Allow auto-compression-mode to use zlib calls if zlib is available.
   [It's required for PNG, so may be linked anyhow.]
 
   ignoring X resources (Doze equivalents?) and most of the
   environment.  What should not be ignored needs consideration.
 
-* Investigate using the language environment to set up more things,
-  such as the default Ispell dictionary.
+* Investigate using the language environment (or locale?) to set up
+  more things, such as the default Ispell dictionary, calendar
+  holidays, quoting characters?,...
 
 * Improve the GC (generational, incremental).  (We may be able to use
   the Boehm collector.)
 
-* Implement variable aliases, i.e. a `defvaralias' analogous to the
-  `defalias' for functions.  The implementation should not slow down
-  Emacs, and it shouldn't use additional memory, at least not much. 
+* Check what hooks would help Emacspeak -- see the defadvising in W3.
 
-* Port Emacs to GTK+.  (Relevant work has been done already.)
+* Implement some variety of (non-gtk) drag-and-drop support under X.
+  Using libdnd might be a good start.
 
-* Make the Lucid menu widget display multilingual text.
+* Add horizontal scroll bars.
 
-* Implement, in C, a ``focus follows mouse'' mode that selects a window
-  when the mouse enters it.
+* Provide an optional feature which computes a scroll bar slider's
+  size and its position from lines instead of characters.
 
-* Check what hooks would help Emacspeak -- see the defadvising in W3.
+* Integrate Vroonhof's Custom themes code and make it do useful
+  things.  [The integration is partly done.]
 
-* Implement some variety of (non-gtk) drag-and-drop support under X.
-  Using libdnd might be a good start.
+* Adapt the gnuserv/gnudoit features for server/emacsclient.
 
-* Remove the limitation that window and frame widths and heights can
-  be only full columns/lines.
+* Investigate using GNU Lightning or similar system for incremental
+  compilation of selected bytecode functions to subrs.  Converting CCL
+  programs to native code is probably the first thing to try, though.
+
+* Add a feature to Info similar to "info --apropos SUBJECT".
+
+* If you do an insert-file and that file is currently modified in
+  another buffer but not written yet, print a warning.
+
+* Add support for SVG (Scalable Vector Graphics) rendering to 
+  Emacs.
+
+* Use the XIE X extension, if available, for image display.
+
+* Rewrite make-docfile to something sane.
+
+* Port the conservative stack marking code of Emacs' garbage collector
+  to more systems, so that we can completely get rid of GCPROs.
+
+* Maybe document the features of libraries missing from the manual (or
+  ancillary manuals, including the Lisp manual in some cases).
+  This is not worth doing for all of these packages and we need not
+  aim for completeness, but some may be worth documenting.
+
+  Here's a list which is probably not complete/correct: align, allout,
+  artist, ansi-color, array, battery, calculator, cdl, cmuscheme,
+  completion, delim-col, dirtrack, double, echistory, elide-head,
+  easymenu, expand, flow-ctrl, format [format-alist],
+  generic/generic-x [various modes], kermit, log-edit, ledit
+  [obsolete?], makesum, midnight [other than in Kill Buffer node],
+  mouse-copy [?], mouse-drag, mouse-sel, net-utils, rcompile,
+  snmp-mode [?], soundex [should be interactive?], strokes [start from
+  the web page], talk, thingatpt [interactive functions?], type-break,
+  vcursor, xscheme, zone-mode [?], mlconvert [?], iso-cvt, iso-swed,
+  swedish, feedmail [?], uce, bruce, gametree, meese, page-ext,
+  refbib, refer, scribe, sgml-mode, spell, texinfo, underline,
+  cmacexp, hideif, mantemp [obsolete?], pcomplete, assoc, xml,
+  cvs-status (should be described in PCL-CVS manual); other progmodes,
+  probably in separate manual.