aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add newlineHEADmasterdilluti0n12 days1-1/+1
|
* Edit readmedilluti0n2026-07-171-7/+8
|
* Improve readmedilluti0n2026-07-171-3/+20
|
* Add build instructiondilluti0n2026-07-171-0/+6
|
* Remove some todo entriesdilluti0n2026-07-171-13/+0
|
* Remove obsolated functions and tests about line_get_stringdilluti0n2026-07-175-63/+16
|
* Make two chaotic windows to onedilluti0n2026-07-171-4/+1
|
* Print log if file is not givendilluti0n2026-07-171-3/+5
| | | | Long time no see, I thought there was some problem at first.
* Improve log with hard coded map over runtime evaluationdilluti0n2026-07-173-14/+15
|
* Fix compiler warningdilluti0n2026-07-172-29/+5
|
* Fixed curser not displaying at the end of a linedilluti0n2026-04-201-15/+28
| | | | or an unallocated line
* Make scroll actaully scrolldilluti0n2026-04-202-6/+11
| | | | | | | | | | | | | | | | | | Fixed draw offsets and added scroll guard to not to try draw non-existing parts and produce this: (gdb) bt #0 0x00007ffff7daba3c in ?? () from /usr/lib64/libc.so.6 #1 0x00007ffff7d51bd6 in raise () from /usr/lib64/libc.so.6 #2 0x00007ffff7d3930d in abort () from /usr/lib64/libc.so.6 #3 0x00007ffff7d39275 in ?? () from /usr/lib64/libc.so.6 #4 0x000055555555d7a5 in Vec_slinep_get (v=0x555555ae1ea0, index=50) at editor.c:20 #5 0x000055555555d950 in eb_get_line (eb=0x555556479b50, index=50) at editor.c:67 #6 0x000055555555e18b in eb_get_line_slice (eb=0x555556479b50, pos=50, sl=0x7fffffffc6e0) at editor.c:255 #7 0x0000555555560c98 in view_eb_draw (veb=0x555556258100) at view.c:220 #8 0x00005555555607d9 in view_draw_under (root=0x555556689000) at view.c:155 #9 0x000055555555fc78 in main (argc=2, argv=0x7fffffffd8c8) at main.c:47 I mean... what I were doing last year? This is just unreadable.
* minor: remove unused scroll_row field on ebdilluti0n2025-06-211-2/+0
|
* refactor: modify field 'w' and 'h' to width and height respectivelydilluti0n2025-06-011-14/+14
|
* feat: enable fraction format of each geometry metadatas on viewdilluti0n2025-06-013-15/+64
|
* fix: mark unused dirty flag as TODOdilluti0n2025-06-012-4/+3
|
* refactor: view_eb_draw to draw text only for its boarderdilluti0n2025-06-011-13/+16
| | | | - rename and refactor draw_text_slice to draw_textn for more freely used
* fix: main.c to update redr context when window is resizeddilluti0n2025-06-011-2/+7
|
* minor: redefinition on redr.hdilluti0n2025-06-011-3/+1
|
* refactor: introduce view.c; ui drawing abstraction layerdilluti0n2025-06-015-79/+390
| | | | | | | | | | | | | | | This patch extracts the drawing logic from redr_raylib.c and moves it into a new abstraction layer in view.c, introducing a tree-based view system for UI rendering. - view.c defines a hierarchical 'view' structure with polymorphic draw methods. - root and ed_buf views are implemented as a proof of concept. - redr.c (via redr.h) now exposes only backend rendering primitives (text, clear, measure). - main.c is updated to instantiate and draw the view tree. This separation clarifies the responsibilities between layout (view) and rendering (redr) and prepares the system for future UI extensions such as nested panels, split views, and overlays.
* minor: remove unused field eb.scroll_rowdilluti0n2025-06-011-2/+0
|
* build: introduce .deps dir for put dirty *.d files into itdilluti0n2025-05-281-9/+15
| | | | | | | | Also introduce obj_rule, wrapper for obj build script used on %.o and %.test.o targets. [minor] use ?= instead of := for CC and CFLAGS.
* refactor: consolidate ENAMETOOLONG handling in eb_binddilluti0n2025-05-281-7/+5
| | | | | | | | - Skip unnecessary cwd resolution when realpath returns ENAMETOOLONG. - Drop duplicate error-handling branches and route all failures through bind_fail. - Keep behavior unchanged while shaving a few lines and clarifying the control flow.
* minor: update .gitignoredilluti0n2025-05-281-1/+2
|
* minor: update TODO.orgdilluti0n2025-05-281-0/+1
|
* build: add MAKEFILE_LIST to rebuild objs when makefile is changeddilluti0n2025-05-281-2/+2
|
* build: apply ASan flags to all linked objects in test targetdilluti0n2025-05-281-1/+7
| | | | | This patch produces *.test.o, which is dedicated for unittest binary which is compiled with -fsanitize=address flag.
* build: add automatic dependency tracking and streamline rulesdilluti0n2025-05-282-39/+26
| | | | | | | | | - Derive `SRCS`, `OBJS`, and `DEPS` automatically via `wildcard`/pattern rules - Switch to `:=` for simple variable expansion; drop redundant TEST_* variables - Use a single pattern rule (`%.o: %.c`) instead of hand-written per-file recipes - Mark `all`, `clean`, and `test` as explicit `.PHONY` targets - Extend `clean` to remove generated `.d` files - Update **.gitignore** to ignore `*.d` alongside `vgcore.*`
* refactor: abstract input/rendering modules from main routinedilluti0n2025-05-288-153/+221
| | | | | | This fetch moves raylib-specific logics to redr_raylib.c and input_raylib.c from main routine. Each apis are defined in redr.h and input.h respectively.
* minor: use log_printf instead of printf when logging saved filedilluti0n2025-05-271-1/+1
|
* refactor: eb_bind to bind absolute path to eb->file_namedilluti0n2025-05-271-9/+49
| | | | | [minor] fix perror("func: ") to perror("func")
* refactor: remove cursor initialization from eb_load_filedilluti0n2025-05-271-2/+3
| | | | | | | | | Cursor initialization is now assumed to be handled by eb_init, eliminating redundant resets in eb_load_file and improving separation of concerns. [minor] add comment to struct ed_buf
* fix: correct CRLF handling guard to avoid ineffective len > 0 checkdilluti0n2025-05-261-1/+1
| | | | len is size_t variable
* fix: double-free of line object in eb_backspace and eb_delete_linedilluti0n2025-05-145-8/+26
| | | | | | | | On eb_backspace, when the upper line was non-null, line_cat followed by line_free, and eb_delete_line only cleared the line_vec. However, commit 2441e78 introduced an additional line_free in eb_delete_line to fix a memory leak, which led to a double-free for that line. This patch resolves that problem.
* refactor: replace #ifdef DEBUG printf to log_printfdilluti0n2025-05-145-20/+23
| | | | - fix log_printf to not automatically insert newline
* refactor: unify log level and stream setup via log_initdilluti0n2025-05-144-15/+20
| | | | | | | | - Replaced log_set_level() with log_init() to allow stream configuration. - log_fprintf() now uses an internal stream, defaulting to stdout. [minor] update log tags in TODO.org correctly
* refactor: integrate raylib logs to RED log levelsdilluti0n2025-05-134-24/+58
| | | | | - refactor enums in LOG_* to RED_LOG_* since its conflicting raylib namespaces
* minor: implement shell script to make random and big test filedilluti0n2025-05-101-0/+1
|
* feat: introduce log.c; log handling moduledilluti0n2025-05-103-1/+41
|
* minor: add vgcore.* to .gitignoredilluti0n2025-05-101-1/+2
|
* refactor: introduce mem.h; wrappers for allocatorsdilluti0n2025-05-106-22/+44
| | | | This patch removes the dependency on raylib when allocating memory.
* fix: Memory Leak in eb_delete_linedilluti0n2025-05-107-34/+132
| | | | | | The function eb_delete_line did not properly free the contents of the entry when deleting an element from eb->line_vec. This patch fixes that issue.
* refactor: deprecate line->cursor; simplify vertical cursor movementdilluti0n2025-05-025-23/+7
| | | | | | | | | This patch removes the per-line cursor cache (`line->cursor`), reducing implementation complexity. Vertical cursor movement (up/down) now uniformly places the cursor at the beginning of the line, instead of trying to restore the previous horizontal position. UX considerations such as column preservation will be revisited after core stabilization.
* perf: use fwrite instead of fputc loop in eb_save_filedilluti0n2025-05-011-2/+1
| | | | | | | | Previously, each character of a line was written using fputc in a loop, resulting in millions of function calls for large lines and poor write performance. Replaced with a single fwrite call per line, significantly reducing overhead and improving save performance dramatically.
* fix: possable buffer overflow when sl.len >= BUFSIZE on draw routinedilluti0n2025-05-011-2/+4
|
* minor: use #pragma once instead of #ifndef ... on vector.hdilluti0n2025-05-011-4/+1
|
* update TODO.orgdilluti0n2025-05-011-1/+1
|
* test: mark TODOs for editor_suite::cursor_move and *::middle_of_linedilluti0n2025-05-011-0/+10
|
* fix: cr_assert_slice_eq not checking excess bytes with actual stringdilluti0n2025-05-011-4/+19
|
* test: for editor.c implement editor_suite::not_middle_of_linedilluti0n2025-05-013-2/+86
|