TODO.done (1922B)
1 Done todos 2 ========== 3 4 [x] Tidy up basic logic everywhere (based on sled) 5 [x] Check cleanness against sled, function-by-function 6 [x] draw.c 7 [x] poe.c 8 [x] po.c 9 [x] util.c 10 [x] Investigate insert_char 11 [x] Revise dirty <-> dirty_before_edit and the interaction with keys 12 [x] Copy join_lines from sled's simple_join_lines 13 [x] str* -> memccpy 14 [x] Tidy up return codes and error handling 15 [x] Get rid of SAVE_* 16 [x] Introduce position_to (sled) 17 [x] Handle all TODO comments 18 [x] util.c: u32_match_msgid_ending 19 [x] Check L"" literals 20 21 [x] Document exit statuses in poe.1.in 22 23 [x] Add - to the list of whitespace characters 24 25 [x] Add -B, -b, -L, -W, -w 26 [x] --no-backup 27 [x] --backup 28 [x] --dont-break-literals 29 [x] --no-wrap 30 [x] --wrap-width 31 32 [x] More sophisticated "not PO file" detection - avoid opening "binary" 33 (relatively speaking) files 34 35 [x] Add pledge(2) and unveil(2) 36 37 [x] Switch to strlcpy, strlcat similar to sled; compare util.c and util.h to 38 versions of those files from sled 39 40 [/] Replace strn* -> strc*: like str[^n]*, but with configurable string 41 ending character (for msgstr, which has multiple lines delimited 42 with '\n') 43 44 [x] Bugfix: C-W when there was text offscreen would move pointer outside of the 45 input dialog 46 47 [x] Bugfix: obsolete msgstrs followed by non-obsolete ones 48 - msgid list handling was built entirely around the idea of obsolete 49 entries being at the end of .po file. Since I came across .po files 50 which have obsolete entries among the normal entries, this needs 51 adjusting, which has to incur a performance hit when navigating the 52 list. 53 54 [x] Add config.h options: 55 [x] Enable/disable automatic addition of dot 56 [x] Enable/disable automatic addition of Plural-Forms 57 58 [x] Automatic addition of Plural-Forms (configured as a literal in config.h) 59 60 [x] Replace "Unknown key (H for help)" with "Unknown key" where H is not 61 applicable as help character