remembering - TODOs


TODOs for remembering.

Register a new one at ~euandreh/ and see existing discussions.

Você também pode escrever em português.

Vous pouvez aussi écrire en français.

Vi povas ankaŭ skribi esperante.


TODO test_mkdir_p() is generating randon directories in $PWD instead of /tmp


TODO ensure that $(manpages) contain everything from $(manpages.en)


TODO malloc vs calloc


TODO Document EXIT_STATUS in manpage for remembering.1


TODO Use strtok(3) over manually separating strings


TODO Translate usage/help and manpages


Started at a79ced6f0925526ab41ecbdb9e6e8cac86f8ea75.

DONE Also use inline monospaced font in manpages


DONE Document requirement on STDIN needing to be sorted


DONE Use inline markings over single line "requests" on troff


DONE Use monospace font inside .EX/.EE tags


DONE What about UTF-8?


Does the current sh implementation handle it correctly? What about the C implementation?

It would be good to have a test stressing that.



The current values for $(CFLAGS) in the Makefile work on GCC, Clang, TinyCC, but not on POSIX c99.

TODO Can't test getopt


For some reason, getopt.3 doesn't read any of the options provided in the test.

Right now the code is disabled with an #ifdef DISABLE guard.

DONE Add --version flag


TODO Add AddressSanitizer and fuzzer tests


Rich discussion on AddressSanitizer and similar tools:

Relevant tools:

DONE Add $HOME and $XDG_DATA_HOME sh test




I feel a more descriptive name could be given.

Current candidates are:

TODO Make test_really_long_list runnable


Now test_really_long_list is commented.

Benchmark with yeganesh after this is done.

CANCELLED Improve speed even further


Handle 10k+ lists with ease.

CANCELLED Add completion script


How to support multiple shells without duplicating the code?

The major one is Bash, but also consider zsh and fish. Also tcsh and oilsh.



If it isn't, what to replace it with?

With sed.

DONE Add for 0.1.0


CANCELLED How to preserve to sort order from STDIN


Keeping the sort order from STDIN, I would have to find a way to merge STDIN with the existing profile.

DONE Make sure to forward status code given by the provided command


CANCELLED Exclude ponctuation from troff markup


Things like:

A phrase with the last word
.B bold.

The final period is marked as bold, too.

DONE Add -h and --help flags


DONE Optimize for large lists


DONE Add tests


On plain POSIX sh.



TODO Respond to UNIX signals


TODO Work on portability


Resources on writing portable C code:

TODO Learn about secure programming in C


The best reference by far I've found to learn about secure programming in C is the SEI CERT C Coding Standard.

There's also MISRA C but it feels like very corp.


TODO Use more const in the implementation?