feat(twin): implemented grapheme
also tidied up.
feat(twin): get_attr now takes chars
feat(twin): get_wc now takes chars
simplified get_wc function
feat(twin): is_wc now takes chars
feat(twin): word_length now uses grapheme
word length calculation now correctly uses number of grapheme clusters rather than bytes.
fix(twin): simplified
- shortened word_length.
- replaced wcscmp with strcmp in word_incorrect.
feat: no longer using wchar
because char is better
fix(menu): menus update on input
feat(file): file can now load long lines.
feat: update
reformatted and misc fixes.
feat(file): simplified location definition
feat(Makefile): added targets for words and quotes
fix: can now run without quotes/words files
tt can now run without said files
timer: added timer_string
it's a function that converts a duration in seconds to a formatted wide
string in the H:M:S format.
twin: fixed freeing sentences
twin: time duration formatted
the twin title bar in time mode will now show the formatted time left.
This is useful for longer tests.
twin: incorrect words are underlined
menu: simplified matches
matches start with all option bits set so it's easier to compare which
options should be displayed