1090: Add `LATIN SMALL LETTER L` confusable r=Learath2 a=heinrich5991
This makes `LATIN SMALL LETTER L` confusable with `LATIN SMALL LETTER I`
because `CYRILLIC SMALL LETTER PALOCHKA` "ӏ" (mapping to i) wasn't
confusable with `LATIN SMALL LETTER L` "l" (mapping to l) before.
Also add tests for `str_utf8_comp_confusable`.
This makes `LATIN SMALL LETTER L` confusable with `LATIN SMALL LETTER I`
because `CYRILLIC SMALL LETTER PALOCHKA` "ӏ" (mapping to i) wasn't
confusable with `LATIN SMALL LETTER L` "l" (mapping to l) before.
Also add tests for `str_utf8_comp_confusable`.
Which is cl_control_dummy, cl_dummy_jump, cl_dummy_fire and cl_dummy_fire.
if i want to contol my dummy to jump,
first, press f1 in game, and use "cl_control_dummy 0",
second, use "bind mouse1 +toggle cl_dummy_jump 1 0".
finally, i can contol my dummy to jump by pressing left mouse button.
`str_utf8_isspace` now returns true if the passed code point renders as
a space, instead of when not.
Add `str_utf8_trim_right`, use this function and
`str_utf8_skip_whitespaces` in the server.
Add tests for the three functions
1055: Keep track of lost frames and update time r=heinrich5991 a=Jupeyy
The problem a friend was occuring was, that on a fresh Windows install settings like cl_refresh_rate are set to 480.
Since the render calls take longer time than no render calls, it happened that client was sleeping on one update cycle and then took to long in another, where it called the render functions, leeding to less FPS than the cl_refresh_rate. this caused mouse lags and rarely frame drops.
another thing is, that select on Windows is non microsecond accurate, or just often returns too early, which caused that the refresh rate is much too high, or even ignored, (probably windows can only sleep on milliseconds, or again, is extremly inaccurate).
Another things on windows is that time_freq might be a "very odd" number ^^
i mean like on unix it's one microsecond (1,000,000 = 1s), but on windows the time_freq depends on the CPU leading to inaccurate calculation of the sleep time and render time.
This wasn't insanly huge issue, but probably skipped a few microseconds here and there.
This fix should stabilize the frames. I'd like to hear your opinion on this tho.
1076: Execute `git_revision.py` in the source directory r=Learath2 a=heinrich5991
Previously, if using an out-of-source build directory, git would report
an error and no revision string would be added to the final executable.