TODO file (? means the feature may be implemented, but not definitely) ------------------------------------------------------------------------ For the next version: - Undo/Redo keys? - Rebindable keys? - FriBidi support? - Port to DJGPP? - Make matching bracket searches sophisticated enough to skip over brackets inside comments? - Allow indentation of marked text by spaces as well as tabs? - Allow indentation to add just enough columns to reach the nearest multiple of tabsize, rather than always adding tabsize columns? - Rewrite the nano FAQ in SGML. - Allow conversion between different character sets. Maybe use glib's iconv() if the system's iconv() is inadequate, since we already use glib's vsnprintf() if the system lacks vsnprintf()? - Properly preserve the cursor position when going from the "Read File" or "Save File As" prompt to the file browser to the "Go To Directory" prompt, and then canceling back to the "Read File" or "Save File As" prompt. - Handle window resizes better. After we resize, we should stay wherever we were before we resized, as Pico does. - Fix problems with color syntaxes' highlighting lines too aggressively. - Allow color syntaxes to apply to more than just color, so that we can e.g. specify a different alternate spell checker depending on which file type we have open. - Allow color syntaxes to be selected based on more than just filename extension, e.g. through libmagic? - Allow text searches in the help browser. - Allow setting marks (saved positions, not to be confused with the mark set via Ctrl-^) at various lines and/or columns in the buffer, and allow movement between them with a single keystroke. - Add the ability to move to different lines of the screen with a single keystroke, e.g. M-` (M-~) to go to the top line, M-& (M-7) to go to the center line, and M-' (M-") to go to the last line. Old requests: For version 2.0: - UTF-8 support. [DONE] - Support for paragraph searches. [DONE] - Support for justifying the entire file at once. [DONE] - Support for filename searches in the file browser. [DONE] - Keystroke to implement "Add next sequence as raw" like vi's ^V. [DONE] - Spell check selected text only. [DONE] - Make "To Line" (^W^T) and "Read from Command" (^R^X) reenter their parent menu when their keystroke is entered a second time (^W^T^T and (^R^X^X) (requires figuring out when to keep cursor position and when not to). [DONE] - Fix resetstatuspos global which we shouldn't have. [DONE] For version 1.2: - Single line scroll up/down? [DONE] - Color syntax highlighting? (certainly seems like there's a demand for it.) [DONE] - .nanorc [DONE] - Backup making (filename~)? [DONE] - Search (etc.) string history [DONE] - Implement Pico's -j and -g flags, as they are pretty easy to do. [DONE] - Make mouse support work with clicking on the shortcuts (-m). Must make global variable pointing to current shortcut list to determine what keystroke to ungetch(). [DONE]. - Implement -o (chroot of sorts) [DONE] - Allow -r to take a negative argument, meaning right margin instead of left (allows resizing that way), formerly -W arg. [DONE] For version 1.0: - Implement Spelling [DONE] - Implement Help [DONE] - Internationalization [In progress, translators welcome!] - Allow nano to be resized in X. [DONE] - On page up/down, put the cursor on the first line (like Pico), not the center line [DONE] - Rewrite edit_refresh, if at all possible [DONE] - Implement justify function [DONE] - Cut to end of line [DONE] - Built-in speller command [needed for version 1.0] [DONE] - Better statusbar interaction (scrolling, tab completion for filename) [needed for version 1.0] [DONE] - Now do username completion [DONE]. - Unjustify command (^U after ^J) [DONE =-]. - Username completion (~user) [DONE =-]. $Id$