X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Ftodo.txt;h=4e5d94fddb30bf7c22d4eaf47abe13937932f81d;hb=15718f19cbf3868bf6fba79f4e26b5254c57873e;hp=58b7996dd1483e16970a72659082e1d980f21509;hpb=7e8433684f65e5198480aa5a70b84af6330e44ad;p=protos%2Flibecoli.git diff --git a/lib/todo.txt b/lib/todo.txt index 58b7996..4e5d94f 100644 --- a/lib/todo.txt +++ b/lib/todo.txt @@ -9,27 +9,24 @@ X tk_re cleanup / rework ================ -- ec_completed_item_update() -- ec_completed_item_set_display_value() - -- add_no_match -- add_partial_match +X ec_completed_item_update() +X ec_completed_item_set_display_value() +X add_no_match +X add_partial_match - check XXX in code -- properly manage quotes in shlex +X properly manage quotes in shlex X remove the _new() functions -- iterate children nodes without chaining them -- add a tk vector type: will be used in several nodes (ex: or, seq, ...) +X iterate children nodes without chaining them +- add a node vector type: will be used in several nodes (ex: or, seq, ...) - check allocation model everywhere - checkpatch? - use linux style (update .emacs) - better logs -- return values -- use errno when returning pointers -- missing static / const -- license: "s/neither the name...may/the names of its contributors may not/" +- check return values (-1 or NULL) + use errno +- check missing static / const +- license: SPDX - check all completion nodes X split ecoli_tk.h -- cache results when appropriate? - size_t or unsigned int? X rename: X ec_tk -> ec_node @@ -37,14 +34,16 @@ X rename: X ec_completed_tk -> ec_completed X tk, gen_tk, token, ... -> node X tokens -> input_str / input_strvec ? -- use is_err() or errno for funcs returning ptrs, or use errno for all funcs -- save node path in completion to fix help string +X save node path in completion to fix help string - code coverage - try to hide structures - anything better than weakref? -- add get_max_parse_len() for all relevant nodes - add ec_node_defaults.[ch] providing usual implementations of node methods X use vec for strvec +- ELOOP in case of loop +- remove weakref? +- sh_lex to provide offsets in attributes +- accessors for all structs dependencies ============ @@ -82,6 +81,8 @@ examples - example with libedit - mini script language - configuration file +- mini shell: cd, ls, cat, stat +- mini network console based on ip doc === @@ -320,6 +321,17 @@ changes: - ec_completed_item_set_display() - ec_completed_item_add() +----- + +sh_lex + or + str(foo) + str(foo2) + str(bar) + +complete(sh_lex, ["'fo"]) + complete(sh_lex, ["fo"]) -> ["foo", "foo2"] + ----- @@ -364,3 +376,46 @@ int main(void) return 0; } + + +---- + + +expr expr expr + +[toto] | tutu + +[toto [titi]] + + + +pre_op = "!" +post_op = "^" +post = val | + pre_op expr | + "(" expr ")" +term = post post_op* +prod = term ( "*" term )* +sum = prod ( "+" prod )* +expr = sum + + +----- + +break on malloc: + +b debug_malloc +# or: b debug_realloc +condition malloc_seq >= + +alternative + +watch malloc_seq +condition malloc_seq == +run +c + + +--------------- + +