mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-07 14:28:40 +00:00
fix source markup parsing, release notes for source-defined watch annotations
This commit is contained in:
@@ -1642,9 +1642,9 @@ fancy_viz_eval_tests(void)
|
|||||||
" return 0;\n"
|
" return 0;\n"
|
||||||
"}\n\n");
|
"}\n\n");
|
||||||
int x1 = 0;
|
int x1 = 0;
|
||||||
raddbg_pin(long_string, "text");
|
raddbg_pin(long_string, text);
|
||||||
raddbg_pin(code_string, "text(lang=c)");
|
raddbg_pin(code_string, text(lang=c));
|
||||||
raddbg_pin(fancy_viz_eval_tests, "disasm");
|
raddbg_pin(fancy_viz_eval_tests, disasm);
|
||||||
|
|
||||||
//- rjf: bitmaps
|
//- rjf: bitmaps
|
||||||
unsigned int background_color = 0x00000000;
|
unsigned int background_color = 0x00000000;
|
||||||
@@ -1676,7 +1676,7 @@ fancy_viz_eval_tests(void)
|
|||||||
bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg,
|
bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg,
|
||||||
bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg,
|
bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg, bg,
|
||||||
};
|
};
|
||||||
raddbg_pin(bitmap, "bitmap:(w:18, h:18)");
|
raddbg_pin(bitmap, bitmap(18, 18));
|
||||||
for(int i = 0; i < sizeof(bitmap)/sizeof(bitmap[0]); i += 1)
|
for(int i = 0; i < sizeof(bitmap)/sizeof(bitmap[0]); i += 1)
|
||||||
{
|
{
|
||||||
unsigned int r = bitmap[i]&0x000000ff;
|
unsigned int r = bitmap[i]&0x000000ff;
|
||||||
|
|||||||
@@ -35,11 +35,21 @@
|
|||||||
// common case is debugging a small number of programs, usually 1, and for
|
// common case is debugging a small number of programs, usually 1, and for
|
||||||
// those purposes, the `Threads` view is sufficient if not desirable, and
|
// those purposes, the `Threads` view is sufficient if not desirable, and
|
||||||
// the extra information provided by `Processes` and `Machines`, while useful
|
// the extra information provided by `Processes` and `Machines`, while useful
|
||||||
// in other contexts, is not useful in that common case.
|
// in other contexts, is not useful in that common case. The `Machines` view
|
||||||
|
// now shows a superset of the information previosuly found in the
|
||||||
|
// `Scheduler` view.
|
||||||
// - The two separate interfaces for editing threads, breakpoints, and watch
|
// - The two separate interfaces for editing threads, breakpoints, and watch
|
||||||
// pins (the right-click context menu and the dedicated tabs) have been
|
// pins (the right-click context menu and the dedicated tabs) have been
|
||||||
// merged.
|
// merged.
|
||||||
// - Added the ability to add per-target environment strings.
|
// - Added the ability to add a list environment strings to targets.
|
||||||
|
// - Added support for watch annotations derived from source code markup,
|
||||||
|
// rather than only from configuration. Instances of
|
||||||
|
// `raddbg_pin(<expr>, <view_rule>)` will be parsed, and used to create watch
|
||||||
|
// annotations inline with source code, in the same way that watch pins do.
|
||||||
|
// For instance, `raddbg_pin(dynamic_array, slice)` will visualize
|
||||||
|
// `dynamic_array` with a `slice` view rule;
|
||||||
|
// `raddbg_pin(some_function, disasm)` will visualize `some_function` as
|
||||||
|
// disassembly; and so on.
|
||||||
// - Fixed an annoyance where the debugger would open a console window, even
|
// - Fixed an annoyance where the debugger would open a console window, even
|
||||||
// for graphical programs, causing a flicker.
|
// for graphical programs, causing a flicker.
|
||||||
|
|
||||||
|
|||||||
@@ -1910,9 +1910,10 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
|||||||
U64 arg_start_off = 0;
|
U64 arg_start_off = 0;
|
||||||
for(U64 contents_off = 0; contents_off <= contents.size; contents_off += 1)
|
for(U64 contents_off = 0; contents_off <= contents.size; contents_off += 1)
|
||||||
{
|
{
|
||||||
if(contents_off == contents.size || contents.str[contents_off] == ',')
|
if(nest == 0 && (contents_off == contents.size || contents.str[contents_off] == ','))
|
||||||
{
|
{
|
||||||
String8 arg = str8_substr(contents, r1u64(arg_start_off, contents_off));
|
String8 arg = str8_substr(contents, r1u64(arg_start_off, contents_off));
|
||||||
|
arg = str8_skip_chop_whitespace(arg);
|
||||||
str8_list_push(scratch.arena, &args, arg);
|
str8_list_push(scratch.arena, &args, arg);
|
||||||
arg_start_off = contents_off+1;
|
arg_start_off = contents_off+1;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user