3 ms·
* It is interesting to see this written in "modern" C++. * Those input handlers (you have three) are terrible; pattern matching is the wrong way to go about th
by JdeBP 8y ago
* It is interesting to see this written in "modern" C++.
* Those input handlers (you have three) are terrible; pattern matching is the wrong way to go about this.
* You could no doubt get more imaginative with the progress bar using block characters.
* Users will no doubt ask for the ability to suspend such a program; which, note, has to properly tear the whole UI down and set it back up again.
* Users will also no doubt want this to work properly with the full range of Unicode text; you have not accounted for differing character widths, that I can see. Note that there exist zero-width characters and double-width characters.
* vi sentence, paragraph, and section motions are of course actually {, }, (, ), [[, and ]].
Some help:
* https://unix.stackexchange.com/a/499139/5132 https://unix.stackexchange.com/a/499139/5132
* https://unix.stackexchange.com/a/444270/5132 https://unix.stackexchange.com/a/444270/5132
* http://jdebp.eu./Softwares/nosh/guide/commands/TERM.xml http://jdebp.eu./Softwares/nosh/guide/commands/TERM.xml
* http://jdebp.eu./Softwares/nosh/guide/commands/TerminalCapabilities.xml http://jdebp.eu./Softwares/nosh/guide/commands/TerminalCapab...
* https://github.com/jdebp/nosh/blob/master/source/ECMA48Decoder.cpp#L290 https://github.com/jdebp/nosh/blob/master/source/ECMA48Decod...
* https://github.com/jdebp/nosh/blob/master/source/TUIInputBase.cpp#L281 https://github.com/jdebp/nosh/blob/master/source/TUIInputBas...
* https://github.com/neovim/libtermkey/blob/master/driver-csi.c https://github.com/neovim/libtermkey/blob/master/driver-csi....
* https://vt100.net/emu/dec_ansi_parser https://vt100.net/emu/dec_ansi_parser