X-Git-Url: https://git.tokkee.org/?p=tig.git;a=blobdiff_plain;f=TODO;h=2830ea0b8f355a21817ceeedb7e76e4b7dd51536;hp=d1008ddd0eb17187c667a7810f806fac996d04f5;hb=HEAD;hpb=14a2d3ce4d46a06eb53520db201fbcddd3f29ed3 diff --git a/TODO b/TODO index d1008dd..2830ea0 100644 --- a/TODO +++ b/TODO @@ -2,32 +2,40 @@ TODO ---- Features that should be explored. - - Add interface (somewhat like git-gui has) allowing a diff chunk to be - staged/unstaged for the next commit. - - - Better text-input support. From setsyx(3): - - The setsyx routine sets the virtual screen cursor to y, x. If y - and x are both -1, then leaveok is set. The two routines getsyx - and setsyx are designed to be used by a library routine, which - manipulates curses windows but does not want to change the - current position of the program cursor. The library routine - would call getsyx at the beginning, do its manipulation of its - own windows, do a wnoutrefresh on its windows, call setsyx, and - then call doupdate. - - - When the user wants to "view" a commit, you could show from which - branch heads and from which tags the commit is reachable, and perhaps - which tag is the latest among the ones reachable from that commit, as - part of the commit detail information you display on the lower pane - (log/diff view). - - - Use autoconf to check for iconv in libc and how it is declared (the - 2nd argument is 'const' on FreeBSD / Mac OS X). Maybe also check for - the AsciiDoc and XmlTo document tools. - - - The autoconf check could also be used to determine whether it is a - newer git so that git-config will be used instead of git-repo-config. - - - Use non-blocking I/O + select() for incremental loading of view - input. (debian bug #427093) +Before tig-1.0 +~~~~~~~~~~~~~~ + + - Better text-input support. + + - Add an edit keymap so the "editor" can be customized. + - Allow the cursor to navigate in the input area. + + - Wrap long lines to reduce horizontal scrolling. + + - Rewrite revgraph handling. + + The commit structure should be expanded to have a parent member, + which points to the parent commits. + + - Make main view support navigating the revision graph using the + parent action. + + - Color the revgraph to make it easier to follow branches. + + Other revgraph improvements: + + - Show from which branch heads and tags a commit is reachable, and + perhaps which tag is the latest among the ones reachable from + that commit, as part of the diff view. How should rewritten parent + information be handled? Depends on new enhanced commit structure. + +Long term goals +~~~~~~~~~~~~~~~ + + - Add a commit cache. + + Many views use commit information and load it into their own custom + data structure. Having the information shared would make it easier to + do various interesting stuff across the views. + + - Split sources of tig.c into multiple files.