4coder/TODO.txt

363 lines
12 KiB
Plaintext
Raw Normal View History

2016-09-13 19:56:14 +00:00
2016-03-07 19:39:15 +00:00
; Started this list on: (18.01.2016)(dd.mm.yyyy)
; This list is an informal todo list, it may very well miss items
; checked or unchecked, that I inted to do some day. It is included
; in the distribution so that you may take a look and see if your
; requested feature is there, and if not, so that you may remind me.
; Cheers everyone!
2016-09-13 19:56:14 +00:00
2016-03-07 19:39:15 +00:00
; BUGS
; [X] '\t' thing
; [X] smoothness in smoothscrolling isn't very smooth
; [X] examine ctrl left/right "stopspots" again
; [X] whitespace left/right
; [X] token left/right
; [X] white or token left/right
; [X] alphanumeric left/right
; [X] alphanumeric or camel left/right
; [X] jumping to top of buffer when invoking compiler
; [X] don't darken character with cursor ghost
; [X] only shows LOADED when all spelled out
; [X] cursor image is broken
; [X] special characters aren't colored correctly
; [X] screen does not always paint on open
; [X] unimportant flag for buffers so they don't ask to save
; [X] problem with clipping panel
; [X] paste highlight range is wrong
; [X] bug in new file interface
; [X] interactive open shouldn't be case sensitive (esp in windows)
; [X] REOPEN is still disabled!
; [X] lctrl + lalt = AltGr option
; [X] don't cursor ghost search highlights
; [X] auto indent stopped working (maps incorrect in one of the views?)
; [X] Assert(size + buffer->line_count < max)
; [X] unsigned
; [X] shift+backspace in interactive view is messed up
; [X] scrolls with mouse off window
; [X] file open same file/switch to file settings wrong
; [X] show whitespace isn't working
; [X] lexer in 4cpp_config.h
; [X] steady view in two panel editing of same file
; [X] offer error
; [X] switch to file "4ed.cpp" with "win32_4ed.cpp" open
; [X] inserting new line at top of file ~ scrolling jump when window is unaligned
; [X] saving/killing *compilation* doesn't work
; [X] line wrapping also doesn't work
2016-03-07 19:39:15 +00:00
; [X] save as corruptitates the filename
; [X] crash when leaving maximized mode and view get's weird
; [X] decrease scroll speed on short windows
; [X] different files, same live name, big ol' bug nest
; [X] can't open 4coder in arbitrary directory
; [X] shift tab
; [X] after auto indent always put cursor after whitespace
; [X] file menu non-ascii file names
; [X] strip \r in paste
; [X] page up scrolling stuff
; [X] stop spots for camel case aren't super
; [X] unmodified command then get's inserted in new view (z bug from hmh)
; [X] view_id always 1 bug
; [X] interactive kill not working
; [X] mouse not working on interactive view
; [X] reopen effects other view too?
2016-03-07 22:13:59 +00:00
; [X] allen's segfaults on linux launch
2016-03-20 03:09:00 +00:00
; [X] open empty file bug
; [X] chronal's map setting issue
2016-03-24 15:00:13 +00:00
; [X] linux save jankieness
2016-05-10 18:39:15 +00:00
; [X] bouncing when scrolling down
2016-05-30 14:56:54 +00:00
; [X] sometimes the main cursor is not the same width as the mark cursor in the same spot
; [X] tab character wrong width
; [X] miblo's off screen cursor thing
; [X] new file is messed up for code files, it never finishes parsing!
2016-05-31 01:22:55 +00:00
; [X] key presses that should be consumed in the GUI are now passed to the file!
2016-05-31 16:27:40 +00:00
; [X] paste snaps the cursor back into view!
; [X] clean whitespace doesn't appear to be cleaning trailing whitespace anymore???
; [X] problem with end of line comments
2016-08-31 18:40:22 +00:00
; [X] paths with parens in them
2016-09-09 13:04:51 +00:00
; [X] killing compilation panel changes active panel
2016-09-09 17:14:38 +00:00
; [X] make panel resizing not whacky with child panels
2016-09-13 19:56:14 +00:00
; [X] visual studio file saves aren't picked up by the file track system
; [X] findstr format not quite working
; [X] over left-shifting the view?
2016-05-31 16:27:40 +00:00
;
2016-05-23 23:43:19 +00:00
; [] indication on failure to save
; [] history is broken, revist the entire system
;
2016-09-09 13:04:51 +00:00
; [] view fails to follow cursor when the view is shrunk
; [] view fails to follow cursor after deleting long line
;
;
2016-09-09 01:02:51 +00:00
; BEFORE I SHIP
;
2016-03-07 19:39:15 +00:00
; TODOS
; [X] success message when compiler works
; [X] auto-complete
; [X] detect word to match against
; [X] search in file range for next match and use if found
; [X] create repeatable tracker of previous match and files' searched
; [X] more options for getting buffer in custom API
; [X] write to buffer in custom API
; [X] querry buffer string in custom API
; [X] API for file views
; [X] Seek backwards option
; [X] Use range parameters in all applicable commands
; [X] generate enum for key codes
2016-03-07 19:39:15 +00:00
; [X] API for direct input
; [X] Seek string instead of delimiter
; [X] hook parameters
; [X] API based themes
; [X] improve file limit (now is > 8 million I think)
; [X] get key stroke in custom callback
; [X] tab option for auto-indent
2016-03-20 03:09:00 +00:00
; [X] catch unsaved files on close
2016-03-20 22:43:28 +00:00
; [X] feedback messages
2016-03-21 22:27:27 +00:00
; [X] feedback message API
2016-05-23 23:43:19 +00:00
; [X] kill rect
2016-06-01 23:52:06 +00:00
; [X] add high DPI support
2016-07-13 19:59:42 +00:00
; [X] error parsing and jump to error
; [X] manipulate scroll target API
; [X] generate documentation for custom API
; [X] flag in create buffer to prevent making new files
; [X] locking to a view for next position jumping
; [X] break down the build system and get away from the preproc hack
; [X] exit command
; [X] full screen option
; [X] add to APIs
; [X] try to make win32 version better
2016-09-08 00:32:31 +00:00
; [X] don't execute frames on events dealing only with ctrl/alt/shift
; [X] additional hooks
; [X] new file
; [X] hook on exit
; [X] file out of sync
2016-09-09 17:14:38 +00:00
; [X] mouse down/up distinction
; [X] case insensitive interactive switch buffer
; [X] expose dirty flags
; [X] why are command line files not loading any more?
2016-09-13 13:52:54 +00:00
; [X] use strange theme
; [X] cuber's return to previous buffer idea
; [X] find matches for current identifier
; [X] query buffer font info
; [X] issues with drive letters
; [X] ad hoc call for setting up/down keys for interactive screens
; [X] miblo's various number editors
; [X] eliminate the need for the lexer state's spare array.
; [X] fix buffer render item capacity issue
; [X] tab to complete folder names in the new file dialogue
; [X] API docs have duplicate ids?
2016-09-09 13:04:51 +00:00
; Token related upgrades
2016-09-13 13:52:54 +00:00
; [X] tokens in the custom API
; [X] token seeking on custom side
; [X] auto indent on the custom side
; [X] indent whole comments
; [X] inserting lines at end of block comment
; [] switch to line classification system
; [] more built in options for auto indenting
; Arbitrary wrap positions
; [X] allow for arbitrary wrap positions independent of view width
; [X] command for adjusting wrap positions in views
; [X] get horizontal scrolling to work in line wrap mode
; [X] word level wrapping
; [X] ability to toggle virtual white space
; [X] home/end should go to the beginning/end of the visual line not the textual line
; [X] code level wrapping level 1
; [X] handle basic scope indents
; [X] handle parentheses
; [X] handle preprocessor
; [X] unify wrap rule parsing and indent rule parsing
; [X] handle square brackets
2016-10-08 20:20:49 +00:00
; [X] smarter wrap rule
2016-10-10 22:09:46 +00:00
; [X] handle unclosed statements
; [X] wrapped line indication
2016-10-25 02:45:34 +00:00
; [X] special indent rules in preprocessor body
2016-10-25 00:26:52 +00:00
; [X] handle comments
; [X] additional width for nesting?
; [X] fix issues when relexing happens in parallel
; [X] improve code display mode so that it can auto-indent the text on save
; [] command for setting wrap positions in views directly
; [] ability to see the wrap position as a number/line and adjust graphically
; [] code level wrapping level 2
; [] comment lead whitespace problem
; [] remeasure version of measure_wraps
2016-09-13 19:56:14 +00:00
; [] code file outlining
; [] alternate code completion plan
; Buffer behavior cleanup
; [X] show all characters as \# if they can't be rendered
; [X] get the navigation working correctly around multi-glyph characters
; [] provide full cursor positioning in buffers
; [] provide cursor positioning system that does columns correctly
; [] unicode buffer mode
; [] binary buffer mode
; [] support full length unicode file names
2016-09-09 13:04:51 +00:00
; [] user file bar string
; [] option to not open *messages* every startup
2016-09-09 13:04:51 +00:00
; [] API docs as text file
; [] read only files
; [] option to hide hidden files
; [] control over how mouse effects panel focus
; [] option to break buffer name ties by adding parent directories instead of <#>
2016-07-13 19:59:42 +00:00
; [] undo groups
; [] cursor/scroll groups
2016-03-07 19:39:15 +00:00
; [] double binding warnings
; [] the "main_4coder" experiment
; [] real multi-line editing
; [] multi-cursor editing
; [] matching brace/paren/#if#endif highlighting
; [] word repetition highlighting
; [] simple text based project file
; [] system commands bound to <ctrl #> in project file
; [] ability to save and reopen the window state
; [] introduce custom command line arguments
; [] control the file opening/start hook relationship better
; [] get keyboard state on launch
; [] never launch two 4coders unless special -R flag is used
2016-09-01 19:40:25 +00:00
; meta programming system
; [X] condense system into single meta compiler
; [X] formalize the documentation writer so the TOC can be better and so it's easier to shoot off other docs
; [] formalize the rewriter for the 4coder_string.h so it can be used for other single header libs
2016-09-01 19:40:25 +00:00
; [] profile and optimize the current metagen system
; [] expand the use of 4coder_types.h to also allow static variable and function declarations
; [] get more of the helper functions going through the documentation system
; [] method of virtually pulling the documentation line from another item rather than copy-pasting the text.
2016-09-01 19:40:25 +00:00
;
2016-04-22 00:50:16 +00:00
; GUI related tech
; [] scroll bar options
; [] buffer driven GUI experiment
2016-04-22 00:50:16 +00:00
;
2016-03-07 19:39:15 +00:00
; search related tech
; [X] replace word (incremental and/or in range)
2016-05-30 14:56:54 +00:00
; [X] caps insensitivety
2016-07-13 19:59:42 +00:00
; [X] improved custom API for text "streams"
; [X] wave search
2016-03-07 19:39:15 +00:00
; [] optimize search
2016-07-13 19:59:42 +00:00
; [] smarter isearch behavior
; [] cleanup word complete so it may be case-insensitive
2016-03-07 19:39:15 +00:00
;
2016-03-07 19:39:15 +00:00
; theme related business
2016-03-24 15:00:13 +00:00
; control schemes
2016-03-07 19:39:15 +00:00
; [] emacs style sub-maps
; [] vim keys
; [] sublime style editing
2016-03-24 15:00:13 +00:00
; [] command meta data
; [] macros
2016-03-07 19:39:15 +00:00
;
2016-03-24 15:00:13 +00:00
; code engine
2016-05-10 18:39:15 +00:00
; [X] lexer with multiple chunk input
2016-07-13 19:59:42 +00:00
; [X] more correct auto-indentation
; [X] switch over to gap buffer
2016-03-24 15:00:13 +00:00
; [] preprocessor
; [] AST generator
2016-03-07 19:39:15 +00:00
;
; "virtual text"
; [] line numbers
; [] macro expansion
; [] error text at line
; [] word complete ghosting
; [] fancy code presentation mode
;
; [] switch-case-enum based word complete
; [] keep copy of unedited orignal maybe? (compressed? restore by history?)
2016-03-07 19:39:15 +00:00
;
; [] diff
; [] cloc
; [] regex
; [] explicit panel layout
; [] polish for hot directories
;
2016-03-20 22:43:28 +00:00
; [] tutorials
; [] console emulator
;
; [] 10 GB text file
;
2016-03-07 19:39:15 +00:00
; INTERNAL TODOS
; [X] switch building non-extensible version by statically linking to custom.cpp
2016-05-30 14:56:54 +00:00
; [X] pack fonts more squarely
; [X] change job canceling to a polling based thing
2016-03-07 19:39:15 +00:00
; [] hashed string pool for clipboard/filenames/etc
; [] new profiling/debugging system
; [] new testing system
2016-03-07 19:39:15 +00:00
;
; EASY TODOS
; [X] better messages for example not "BEHIND OS"
; [X] shift backspace
2016-03-21 22:27:27 +00:00
; [X] center view on cursor
; [X] delta time in scroll interpolation
2016-03-07 19:39:15 +00:00
; [] panel grow/shrink commands
;
; HARD BUGS
2016-05-10 18:39:15 +00:00
; [X] reduce cpu consumption
; [X] repainting too slow for resize looks really dumb
; [X] fill screen right away
; [X] minimize and reopen problem (fixed by microsoft patch aparently)
2016-03-07 19:39:15 +00:00
; [] handling cursor in non-client part of window so it doesn't spaz
;
; [] a triangle rendered for a few frames? color of the dirty markers (not reproduced by me yet)
2016-05-31 20:01:25 +00:00
;
2016-09-13 19:56:14 +00:00
;
2016-05-31 20:01:25 +00:00
2016-03-07 19:39:15 +00:00
; PORTING TODOS
; [X] command line parameters
; [X] get command line arguments
; [X] user settings file name
; [X] custom DLL
; [X] window size and position / full screen
; [X] file(s) to open initially
; [X] position in file to open
; [X] transition Win32 layer to using system_shared stuff
; [X] event driven file synchronization
2016-03-07 19:39:15 +00:00
; [] user settings file
; [] system fonts
; [] file drag and drop
; [] low latency stuff
2016-07-13 19:59:42 +00:00
; [X] actually write the port
2016-03-07 19:39:15 +00:00
; [X] 4coder code compiling
; [X] opengl window up
; [X] basic versions of system functions
; [X] get 4coder to render to window
; [X] keyboard and mouse input (TY:insofaras)
; [X] file exchange (TY:insofaras)
; [X] clipboard (TY:insofaras)
2016-03-07 19:39:15 +00:00
; [X] background threads (TY:insofaras)
; [X] cli stuff (TY:insofaras)
; [X] event diven file synchronization (TY:insofaras)
2016-03-07 19:39:15 +00:00
; [] system fonts
; [] file drag and drop
; [] allow for multiple clipboards
2016-07-13 19:59:42 +00:00
; [] OS X port
; [X] 4coder code compiling
; [X] opengl window up
; [X] basic versions of system functions
; [X] get 4coder to render to window
2016-07-13 19:59:42 +00:00
; [] keyboard and mouse input
; [] file exchange
; [] clipboard
; [] background threads
; [] cli stuff
; [] event diven file synchronization
; [] system fonts
; [] file drag and drop
; [] allow for multiple clipboards
2016-03-07 19:39:15 +00:00
;