Emacs TODO List -*-outline-*-
-Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
Free Software Foundation, Inc.
See the end of the file for license conditions.
* Simple tasks. These don't require much emacs knowledge, they are
suitable for anyone from beginners to experts.
+** Convert modes that use view-mode to be derived from special-mode instead.
+
** 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, conf-*-mode, debugger-mode.
+not have one at the moment and probably should: text-mode, inferior-lisp-mode.
-** Change the text for the mode-line tooltips to not use things like C-x 0.
-In general make sure that tooltips have obvious meanings. Check if
-all items on the mode-line have a suitable tooltip.
+** 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.
+
+** Remove any leading `*'s from defcustom doc-strings.
+
+** Remove unnecessary autoload cookies from defcustoms.
+This needs a bit of care, since often people have become used to
+expecting such variables to always be defined, eg when they modify
+things in their .emacs.
+
* 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.
** 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.
+
+** `dired-mode' should specify the semantics of `buffer-modified-p' for
+dired buffers and DTRT WRT `auto-revert-mode'.
+
+** Check uses of prin1 for error-handling.
+http://lists.gnu.org/archive/html/emacs-devel/2008-08/msg00456.html
+
* 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.]
Bison input files, for instance, or other kinds of text
where one language is embedded in another language. See
http://www.loveshack.ukfsn.org/emacs/multi-mode.el and also
- mmm-mode, as reference for approaches took by others.
+ mmm-mode, as reference for approaches taken by others.
** Arrange a way for an input method to return the first character
immediately, then replace it later. So that C-s a with
** 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
- use with mail, which is probably a good start.] See also
- http://www.loveshack.ukfsn.org/emacs/auto-crypt.tgz.
-
** Save undo information in special temporary files, and reload it
when needed for undoing. This could extend undo capacity.
** Provide portable undumping using mmap (per gerd design).
** Make byte-compile avoid binding an expanded defsubst's args
-when the body only calls primitives.
+ 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.
-
** Make `format-time-string' preserve text properties like `format'.
** Optionally make the cursor a little thinner at the end of a line
probably in separate manual.
** Convert the XPM bitmaps to PPM, replace the PBMs with them and scrap
- the XPMs so that the colour versions work generally. (Requires care
- with the colour used for the transparent regions.)
+ the XPMs so that the color versions work generally. (Requires care
+ with the color used for the transparent regions.)
** Convenient access to the `values' variable. It would be nice to have an
interface that would show you the printed reps of the elements of the
the definition of `file-attributes' and `directory-files-and-attributes'
and from the calls.
-** Modify the emulation of `stat' for MS-Windows to support large files.
- The current version uses the stock Windows definition of `struct
- stat', where the file's size is returned as a 32-bit integer. That
- overflows for files larger than 4GB. To fix, modify `stat' to use
- 64-bit size, and use a declaration of `struct stat' that supports
- such sizes.
-
** Make language-info-alist customizable. Currently a user can customize
only the variable `current-language-environment'.
packages (e.g. tamago, anthy) or an input method via XIM.
** Let LEIM handle the Mode_switch key like XIM does (i.e. a toggle like C-\
-but which can also be used as a modifier).
+ but which can also be used as a modifier).
** Improve Help buffers: Change the face of previously visited links (like
- Info, but also with regard to namespace), add a forward button to make the
- Help buffer more browser like and gives the value of lisp expressions
- e.g auto-mode-alist, the right face. [nickrob@snap.net.nz has a patch
- for this for inclusion after 22.1].
+ Info, but also with regard to namespace), and give the value of
+ lisp expressions, e.g auto-mode-alist, the right face.
** Possibly make `list-holidays' eval items in the calendar-holidays variable.
See thread
For use by sml-mode, python-mode, tex-mode, scheme-mode, lisp-mode,
haskell-mode, tuareg-mode, ...
-** Make SYNC_INPUT the default.
+** Make SYNC_INPUT the default. [true since 2008-03-11]
All loops using immediate_quit need to be checked to ensure that
C-g can interrupt them, in case of an infinite loop. Once we
switch to using SYNC_INPUT, we can remove the BLOCK_INPUTs in the
* 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" <drew.adams@oracle.com>
-
-(define-key minibuffer-local-map [(control ?=)] 'foo)
-(define-key minibuffer-local-completion-map [(control ?=)] 'foo)
-
-(defun toto () "\\{minibuffer-local-completion-map}" 4)
-
-C-h f toto shows a duplicate entry for C-=:
-
-toto is a Lisp function.
-(toto)
-
-key binding
-- --- -------
-
-C-g abort-recursive-edit
-TAB minibuffer-complete
-C-j exit-minibuffer
-RET exit-minibuffer
-ESC Prefix Command
-SPC minibuffer-complete-word
-? minibuffer-completion-help
-C-= foo
-C-= foo
-...
** a two-char comment-starter whose two chars are symbol constituents will
not be noticed if it appears within a word.
\f
This file is part of GNU Emacs.
-GNU Emacs is free software; you can redistribute it and/or modify
+GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
-along with GNU Emacs; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA.
+along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
;;; arch-tag: b0a3e40b-726a-457d-9999-ba848321b036