Update todos
This commit is contained in:
@@ -1,71 +1,57 @@
|
||||
/*
|
||||
- [x] list_functions.sh and rg in general in the color mode is prinitng differently from terminal as well as output is truncated!
|
||||
- [ ] Syntax for executing commands from root of project, or maybe commands should be executed from root of the CurrentDirectory and there should be a cd command instead of OpenProject
|
||||
- [ ] Fuzzy search over executed command ouput
|
||||
|
||||
## Basics
|
||||
- [ ] Ctrl+Shift+ArrowDown at the end of buffer, doesn't capture characters on last line without new line, same at the top
|
||||
- [ ] When inserting parenthesis and selection is there, put the parens on both sides?
|
||||
- [ ] KillProcess in console !!! - should also kill all the children ...........
|
||||
- [x] ctrl-e with these short main.c:290: breaks a little, need to first click ctrl-e and then alt-e to jump
|
||||
- [ ] Use command window without special fuzzy search features to type commands and stuff for executing shell etc..
|
||||
- [ ] I noticed WordComplete getting busted and returning cutdown words but not sure how to repro ...
|
||||
- [ ] I noticed WordComplete getting busted after using editor for a while and returning cutdown words but not sure how to repro ...
|
||||
- [ ] Rewrite WordComplete to use CoroutineCreate, maybe try reducing globals to just the coroutine itself
|
||||
- [ ] WorkComplete, Bounded search, after a while it becomes problematic with many buffers
|
||||
|
||||
## Monaco like design for familiarity
|
||||
- [x] Ctrl+Alt+- and Ctrl+Shift+- Jump back, jump forward
|
||||
- [x] ctrl-shift-l select all occurences of a string
|
||||
- [x] ctrl-alt-r open containing folder (file explorer system)
|
||||
- [x] ctrl-alt-MouseMove should do a box select with multiple cursors thing
|
||||
- [ ] ctrl-tab - switch file lister with instant hold release semantics?
|
||||
- [ ] SearchAndReplace how to do better?
|
||||
- [ ] ctrl-t find workspace symbols? how can we do it?
|
||||
- [ ] Snippet design?
|
||||
|
||||
## Refactor
|
||||
- [ ] Make a platform layer and separate SDL stuff out
|
||||
- [x] ReplaceAll - heap-use-after-free address, how to debug? I think would be nice to iterate all buffer ids and their addresses along with the state
|
||||
|
||||
- [x] BRO, the caret teleports on linux when I press the arrow for too long
|
||||
- [ ] Report SDL newest vs SDL previous version on wayland
|
||||
|
||||
- [ ] Ctrl+Shift+ArrowDown at the end of buffer, doesn't capture characters on last line without new line
|
||||
- [ ] Report a regression in SDL in newer versions that make it so that events are doubled when unpressing the held button
|
||||
- [ ] Remove -lbacktrace and add my backtrace library thing
|
||||
- [ ] Refactor build.sh to accept commands and remove build_web.sh
|
||||
- [ ] GetWindowZOrder to IterateWindowsInZOrder
|
||||
- [ ] Investigate reworking history API, tagging modification blocks with carets?
|
||||
- [ ] How to enable framerate to be unlimited and not break scrolling?
|
||||
- [ ] When 2 views of same buffer are open, the view with caret below the caret which modifies the view - starts moving and getting messed up
|
||||
- [ ] The lexing / parsing code for config / bindings appears sloppy would be nice to clean it up but I don't have any ideas
|
||||
- [ ] Redesign `:QueryFile`
|
||||
|
||||
- [ ] Cleanups
|
||||
- [ ] How to enable framerate to be unlimited and not break scrolling?
|
||||
- [x] When dragging a file into the editor, would be nice if the file opened in the window user dropped the file into. Not the active window.
|
||||
- [ ] When 2 views of same buffer are open, the view with caret below the caret which modifies the view - starts moving and getting messed up
|
||||
- [ ] Reduce number of created buffers to one per window, should be enough
|
||||
- [ ] GetWindowZOrder to IterateWindowsInZOrder
|
||||
- [ ] Rework history API, tagging modification blocks with carets?
|
||||
- [ ] The lexing / parsing code for config / bindings appears sloppy would be nice to clean it up but I don't have any ideas
|
||||
- [ ] Directory tree doesn't make much sense! Maybe just consolidate into one folder? create nice names - the raddbg idea didn't pan out well here
|
||||
## Features
|
||||
- [ ] KillProcess in console !!! - should also kill all the children ...........
|
||||
- [ ] BeginLog and EndLog, show all logs in the UI thing at the end
|
||||
- [ ] Fuzzy search over executed command ouput
|
||||
- [ ] Command window but for executing commands without special fuzzy stuff?
|
||||
- [ ] Implement Regex and jumps using regex so as to allow for using ctags
|
||||
- [ ] Add UndoKinds (SnapshotUndo, DiffUndo), I want to enable history in fuzzy search buffers without a huge memory cost
|
||||
- [ ] General parser / data description thing, rewrite other parsers using this, rewrite env handling
|
||||
- [ ] DirNav, update lister when files change on disk
|
||||
- [ ] Investigate ways to bind "open" commands to keys from config
|
||||
- [ ] Ability to access and set clipboard as well as affect selection in the open scripts
|
||||
- [ ] Syntax for executing commands from root of project, or maybe commands should be executed from root of the CurrentDirectory
|
||||
|
||||
## Test
|
||||
- [ ] Test BlockArena correctnsess - random allocations, writes and undos, try to crash
|
||||
|
||||
- [ ] General parser / data description thing
|
||||
- [ ] Rewrite other parsers using this
|
||||
- [ ] Rewrite Env handling (to not be OS specific)
|
||||
|
||||
- New error mechanism - we were losing errors when ReportError was called multiple times, I still want that but I don't want to lose errors, so turn it into a summary list of errors
|
||||
- [ ] BeginLog EndLog, and then show all logs as a list in the UI thing
|
||||
- [ ] Undo kinds (to enable history in fuzzy buffers)
|
||||
- [ ] Add undo kind. Snapshot kind, so that history is possible in weird buffers without paying a huge memory cost. The idea is that we would store the exact buffer state to replace with, editor would just save history of first line etc.
|
||||
|
||||
- [x] Macros
|
||||
- [ ] Regex
|
||||
- [ ] ctags based indexing
|
||||
- [ ] WordComplete
|
||||
- [ ] Rewrite WordComplete to use CoroutineCreate, maybe try reducing globals to just the coroutine itself
|
||||
- [ ] More bounded? seems like it might be problematic on a bigger project but so far it isn't (even for SDL or raddbg)
|
||||
## Low
|
||||
- [ ] Shell / terminal buffer plugin (keep the shell alive and talk with it)
|
||||
- [ ] Directory Navigation
|
||||
- [ ] Remake lister when files change on disk
|
||||
- [ ] When saving apply all the modifications instead (like deleting files, renaming etc.) or maybe that's not even needed considering we are integrating shell commands
|
||||
- [ ] OpenCode
|
||||
- [ ] Hangs the editor on big files
|
||||
- [ ] Open
|
||||
- [ ] Way to bind "open" commands to keys from config
|
||||
- [ ] Ability to access and set clipboard as well as affect selection in the open scripts
|
||||
- [ ] QueryFile
|
||||
- [ ] Indicate to user that he is choosing a file
|
||||
- [ ] Define clear rules for opt out (like switching to different window) and kill or views that were for choosing?
|
||||
- [ ] Fix somehow OpenCode hanging the editor on big files
|
||||
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
## :QueryFile problems
|
||||
- User doesn't see that he in a special mode
|
||||
- Coroutine is boundless here and the boundries of the mode are too lossely defined, it makes it strange when you learn that you are still in this mode
|
||||
- How do we kill all the views/buffers we entered? Do we care?
|
||||
|
||||
|
||||
*/
|
||||
#define PLUGIN_PROFILER 1
|
||||
@@ -581,6 +567,7 @@ void GarbageCollect() {
|
||||
return;
|
||||
}
|
||||
RunGCThisFrame = false;
|
||||
ReportConsolef("GarbageCollect");
|
||||
|
||||
ProfileFunction();
|
||||
Allocator sys_allocator = GetSystemAllocator();
|
||||
@@ -602,8 +589,8 @@ void GarbageCollect() {
|
||||
continue;
|
||||
}
|
||||
|
||||
bool ref = ViewIsReferenced(it);
|
||||
if (ref) {
|
||||
Int ref = ViewIsReferenced(it);
|
||||
if (ref < 25) {
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -668,7 +655,7 @@ void GarbageCollect() {
|
||||
JumpToLastValidView(it);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void LayoutWindows(int16_t wx, int16_t wy) {
|
||||
|
||||
Reference in New Issue
Block a user