commit 6902aad4352a7c88cf270da33403a632c398dd99 parent 2b8f1ee3a6a4e16d9a83b40b2ce647f1f6cce1f8 Author: Michael Forney <mforney@mforney.org> Date: Sun, 5 Apr 2020 19:57:45 -0700 Add a bugs section to TODO Diffstat:
M | TODO | | | 48 | ++++++++++++++++++++++++++++++++++++++++++++++++ |
M | ed.c | | | 31 | ------------------------------- |
2 files changed, 48 insertions(+), 31 deletions(-)
diff --git a/TODO b/TODO @@ -22,3 +22,51 @@ The return values of mdcheckline() in crypt.c need to be fixed (0 -> success, [0] http://landley.net/toybox/roadmap.html [1] http://git.suckless.org/ubase/ + +Bugs +==== + +ed +-- +* Multi-line commands don't work in global commands: + g/^line/a \ + line1 + . +* Signal handling is broken. +* cat <<EOF | ed + 0a + int radix = 16; + int Pflag; + int Aflag; + int vflag; + int gflag; + int uflag; + int arflag; + + . + ?radix?;/^$/-s/^/static / +* cat <<EOF | ed + 0a + Line + . + s# *## +* cat <<EOF | ed + 0a + line + . + 1g/^$/p +* w command doesn't print byte count. +* Editing huge files doesn't work well. + +printf +------ +* Flags for string conversion-specifier (%s) are not supported. +* Escape sequences that expand to '%' are treated as beginning of + conversion specification. +* An trailing '%' at the end of a format string causes a read past + the end of the string. + +tr +-- +* When a character class is present, all other characters in the + string are ignored. diff --git a/ed.c b/ed.c @@ -1,35 +1,4 @@ /* See LICENSE file for copyright and license details. */ - -/* - * TODO: Multi-line commands don't work in global commands: - * o g/^line/a \ - * line1 - * . - * o Signal handling is broken - * o cat <<EOF | ed - * 0a - * int radix = 16; - * int Pflag; - * int Aflag; - * int vflag; - * int gflag; - * int uflag; - * int arflag; - * - * . - * ?radix?;/^$/-s/^/static / - * o cat <<EOF | ed - * 0a - * Line - * . - * s# *## - * o cat <<EOF | ed - * 0a - * line - * . - * 1g/^$/p - */ - #include <sys/stat.h> #include <fcntl.h> #include <regex.h>