X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/b3843c61858aa78d450bdaaa2e597f0a1f7b39e4..84cb74cf070bd76a81e81f597165d67875fe79a7:/etc/TODO diff --git a/etc/TODO b/etc/TODO index bea9f39f2a..058bd6a581 100644 --- a/etc/TODO +++ b/etc/TODO @@ -1,6 +1,6 @@ Emacs TODO List -*-outline-*- -Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. See the end of the file for license conditions. @@ -12,8 +12,39 @@ it best. Since Emacs is an FSF-copyrighted package, please be prepared to sign legal papers to transfer the copyright on your work to the FSF. +* Simple tasks. These don't require much emacs knowledge, they are +suitable for anyone from beginners to experts. + +** make emacsclient accept -nw as a synonym to -t. + +** Replace some uses of the preprocessor code in Makefile.in with the equivalent autoconf. + +** Major modes should have a menu entry. Examples of modes that do +not have one at the moment and probably should: text-mode, +change-log-mode, texinfo-mode, inferior-lisp-mode. + +** Check if all items on the mode-line have a suitable tooltip for all modes. + +** edebug and debugger-mode should have a toolbar. +It can use the same icons as gud. + +** Check what minor modes don't use define-minor-mode and convert them +to use it. + +** Convert all defvars with leading `*' in the doc-strings into defcustoms +of appropriate :type and :group. + * Small but important fixes needed in existing features: +** Flymake's customization mechanism needs to be both simpler (fewer +levels of indirection) and better documented, so it is easier to +understand. I find it quite hard to figure out what compilation +command it will use. + +I suggest totally rewriting that part of Flymake, using the simplest +mechanism that sufficies for the specific needs. That will be easy +for users to customize. + ** Make "emacs --daemon" start emacs without showing any frame. Use emacsclient later to open frames. @@ -25,23 +56,14 @@ I.e. mouse-set-font should use customize-face. ** Compute the list of active keymaps *after* reading the first event. -** mouse-autoselect-window should wait to select the window until -the mouse is put to rest or after a delay or both, so that moving over -a window doesn't select it. - -** In C-x d, the default if you type RET should be the directory name, -but if you type M-n you should get the visited file name of the -current buffer. - ** Distribute a bar cursor of width > 1 evenly between the two glyphs on each side of the bar (what to do at the edges?). -** Make vc-checkin avoid reverting the buffer if has not changed after - the checkin. Comparing (md5 BUFFER) to (md5 FILE) should be enough. - ** buffer-offer-save should be a permanent local. ** revert-buffer should eliminate overlays and the mark. + For related problems consult the thread starting with + http://lists.gnu.org/archive/html/emacs-devel/2005-11/msg01346.html ** erase-buffer should perhaps disregard read-only properties of text. @@ -113,8 +135,42 @@ and HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\\ where is the network device found under the first key. +** Check for any included packages that define obsolete bug-reporting commands. +Change them to use report-emacs-bug. + +** Allow fringe indicators to display a tooltip (provide a help-echo property?) + +** Add a defcustom that supplies a function to name numeric backup files, +like make-backup-file-name-function for non-numeric backup files. + * Important features: +** Having tabs above a window to switch buffers in it. + +** "Perspectives" are named persistent window configurations. We have +had the window configuration mechanism in GNU Emacs since the +beginning but we have never developed a good user interface to take +advantage of them. Eclipse's user interface seems to be good. + +Perspectives work well even if you do the equivalent of C-x 4 C-f +because of the distinction between view windows vs file windows. In +Emacs this is more or less the "dedicated window" feature, but we have +never really made it work for this. + +Perspectives also need to interact with the tabs. + +** Imenu could be extended into a file-structure browsing mechanism +using code like that of customize-groups. + +** Display something in the margin on lines that have compilation +errors. + +** Compilation error navigation bar, parallel to the scroll bar, +indicating where in the buffer there are compilation errors. +Perhaps we could arrange to display these error indications on top +of the scroll bar itself. That depends on to what extent toolkit +scroll bars are extensible. + ** Provide user-friendly ways to list all available font families, list fonts, display a font as a sample, etc. [fx is looking at multilingual font selection for the Unicode branch of Emacs.] @@ -181,6 +237,12 @@ specified filters, specified timers, and specified hooks. * Other features we would like: +** Make longlines-mode wrap lines based on screen position instead + of character position, so that variable-width fonts can be handled + properly. + +** Allow frames(terminals) created by emacsclient to inherit their environment +from the emacsclient process. ** Remove the default toggling behavior of minor modes when called from elisp rather than interactively. This a trivial one-liner in easy-mode.el. @@ -320,15 +382,18 @@ typically due to pilot errors and should thus be in debug-ignored-errors. the whole menu bar. In the mean time, it should process other messages. ** Get some major packages installed: W3 (development version needs - significant work), PSGML, nXML [Mark Hershberger is looking at this - http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg01699.html], - _possibly_ Cedet and ECB. + significant work), PSGML, _possibly_ Cedet and ECB. http://lists.gnu.org/archive/html/emacs-devel/2007-05/msg01493.html Check the assignments file for other packages which might go in and have been missed. -** Install ruby-mode (needs assignment)? - http://lists.gnu.org/archive/html/emacs-devel/2007-06/msg00051.html +** Possibly install python-mode in place of python.el, or combine the two. +Someone needs to do the work of figuring out who all the non-trivial +python-mode.el contributors are and getting assignments. +http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg02156.html +http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg02201.html +http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg02489.html +http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg02234.html ** Make keymaps a first-class Lisp object (this means a rewrite of keymap.c). What should it do apart from being opaque ? @@ -403,7 +468,7 @@ typically due to pilot errors and should thus be in debug-ignored-errors. (with ASCIIfied fallback via latin1-disp). Examples include box-drawing graphics in Custom buffers, W3 rules and tables, and tree displays generally, mode-line mail indicator. [See work done - already for Emacs 22 and consult fx.] + already for Emacs 23 and consult fx.] ** Do something to make rms happy with fx's dynamic loading, and use it to implement things like auto-loaded buffer parsers and database @@ -429,9 +494,6 @@ when the body only calls primitives. ** Optionally make the cursor a little thinner at the end of a line or the end of the buffer. -** Add support for rendering antialiased text, probably using - XRender/Freetype. - ** Port the conservative stack marking code of Emacs' garbage collector to more systems, so that we can completely get rid of GCPROs. Note that Boehm garbage collector provides this. @@ -515,12 +577,6 @@ when the body only calls primitives. ** In ps-print, provide an user friendly interface to specify fonts. -** OpenType font support for various complex scripts (e.g. Devanagari). - As X protocal doesn't provide a way to access OpenType Layout Tables - in a OpenType font of a server side, we need a way to utilize local - fonts (perhaps by directly using the Freetype library or indirectly - via Xft library). - ** Enhance word boundary detection for such a script that doesn't use space at word boundary (e.g. Thai). @@ -552,13 +608,6 @@ but which can also be used as a modifier). the window associated with that modeline. http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg02416.html -** When running isearch in a ChangeLog file, if the search fails, - then after another C-s try searching the previous ChangeLog, if - there is one. (e.g. go from ChangeLog to ChangeLog.12). - http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg02237.html - Juri Linkov has a patch for this: - http://lists.gnu.org/archive/html/emacs-devel/2007-10/msg00265.html - * Internal changes ** Cleanup all the GC_ mark bit stuff -- there is no longer any distinction @@ -581,7 +630,7 @@ but which can also be used as a modifier). a derived mode of sendmail.el. Or arrange for messages.el to be split into a small core and "the rest" so that we use less resources as long as we stick to the features provided in sendmail.el. - + ** Replace gmalloc.c with the modified Doug Lea code from the current GNU libc so that the special mmapping of buffers can be removed -- that apparently loses under Solaris, at least. [fx has mostly done @@ -609,6 +658,7 @@ but which can also be used as a modifier). * Other known bugs: +** `make-frame' forgets unhandled parameters, at least for X11 frames. ** The \\{...} keymap dump output does not correctly remove shadowed entries: From: "Drew Adams"