Age | Commit message (Collapse) | Author |
|
and move it in part to the DESCRIPTION, in part to STANDARDS;
triggered by a loosely related bug report from Lars dot Nooden at gmail dot com;
OK jmc@, and no opposition when shown on bugs@
|
|
because it changes the behaviour for empty input files;
revert requested by naddy@ and sthen@
|
|
the "b" and "t" commands with a label, and for compatibility with
GNU sed, also accept ";" followed by another command after "b"
and "t" commands without a label: branch to the end of the script
instead of erroring out. Parsing is unchanged.
Missing feature reported by Lars dot Nooden at gmail dot com on bugs@.
OK martijn@ millert@
|
|
Simplify the code by allowing usage of stdin with the -i flag by pushing
the result to stdout, so filters and in place editing can be combined.
OK millert@
|
|
- Reset the hold-space in between files
- quit the editor as soon as a 'q' command is found
- Make sure the temp-file is written back to the original file if we quit
the editor
temp-file not written back issue found by Time Chase.
Lots of feedback from millert@ and schwarze@
OK millert@
|
|
When the opening square bracket ('[') is abused as the delimiter, the regular
expression contains a bracket expression, and the bracket expression contains
another opening square bracket (sick! - i mean, sic!), then do not require
escaping that innermost bracket and treat a preceding backslash as a literal
backslash character, in accordance with POSIX:
$ printf 'x[x\\x\n' | sed 's[\[[][R[g'
xRx\x
$ printf 'x[x\\x\n' | sed 's[\[\[][R[g'
xRxRx
While here, also make the implementation more readable and insert
some comments.
Joint work with martijn@ (started during g2k18) and OK martijn@.
|
|
We now output $COLUMNS - 8 characters of the string and a newline.
This is similar to the behaviour in ed(1).
Discussed with and OK schwarze@
|
|
Cover more cases with less wording.
Joint work with schwarze@
OK millert@
|
|
and "s/// command" sections and clarify what an escaped delimiter
does inside regular expressions and inside character classes.
Joint work with martijn@, no objection from jmc@.
|
|
and then including '[' in the regular expression by prepending a backslash
to it, remove the backslash before feeding the RE to the RE engine, just
like we already do it for other special characters like .^$*+?{(|.
This makes sed 's[\[xy][...[' treat the xy thingy as a char class.
Joint work with martijn@, OK guenther@ martijn@
|
|
The example itself was taken directly from the POSIX specification by jmc@,
who doesn't remember adding it. This example isn't very clear about what
it actually does, so just remove it.
If someone can come up with one or more examples that give a more clear
introduction to the workings of sed feel free to send them in.
Prompted by a diff by kshe59 <at> zoho <dot> eu
OK jmc@
|
|
|
|
|
|
|
|
Pointed out by kshe59 <at> zoho <dot> eu
OK millert@
|
|
- When 'n' is used as a delimiter escaping 'n' will remain a newline
instead of becoming a 'n' character. This is how POSIX specifies how this
should work. Other implementations tested also do this wrong.
- '[' and maybe other characters are not special during the parsing of the
y command and don't need to be matched or treated special in any way.
- POSIX specifies that a backslash followed by anything other than the
delimiter, 'n', and another backslash, as well as repeating characters in
string1 are unspecified. Since the various implementations handle these
situations in opposing ways choose to error out on them to prevent people
falling into the pitfall of expecting identical behaviour on various
implementations.
Inspired by the sed.1 patch by kshe59 <at> zoho <dot> eu
Feedback and OK millert@
Manpage bits OK jmc@
|
|
do for several years.
While here make corresponding error message for missing read and write file
consistent between commands/flag, and shrink the the code of the w flag of
the s command by making it use the same code as the w command.
Prompted by a larger diff by kshe59 <at> zoho <dot> eu
OK millert@
|
|
s/with/width type-O fix while here.
From kshe59 <at> zoho <dot> eu
OK jmc@
|
|
the 'w' and 'r' functions and the 'w' flag to the 's' function.
If non of the above is used and input is being read from stdin, we drop
all the way down to stdio!
Original inspiration by benno@.
OK millert@
|
|
|
|
From Daniel Cegielka - thanks
ok jca@
|
|
rectification.
|
|
appease gcc.
ok procter@ deraadt@
|
|
more than one digit but cannot start with zero;
feedback and OK jmc@, OK jca@, OK millert@ on an earlier version
|
|
By pfg@ from FreeBSD
OK millert@ and otto@
|
|
it allows chown(2) call to change the user or group on a file.
- usr.bin/compress : aka gzip
- usr.bin/mg : open a file for writing
- usr.bin/sed : inplace editing
- usr.bin/sort : if outfile equals one of the input files
ok deraadt@ tb@
(and a reminder from Remi Locherer)
warning: in order to use it, you must have a recent kernel with the new
promise.
|
|
of word mismatch as reported by jsg@.
Discussed with otto@ and others early on, earlier version tested in ports build
by aja@
OK millert@
Few readability tweaks and OK schwarze@
|
|
Previously behaviors were all over the map. This changes them to
use COLUMNS first, and either terminal width or a hardcoded value
(typically 80) as appropriate.
ok deraadt@; man bits ok jmc@
|
|
From Michael Reed, thanks!
ok deraadt@
|
|
|
|
ok tobias@
|
|
ok tobias@
|
|
Discussed with jca@.
|
|
ok deraadt
|
|
which i have put in that order). this is not important, but helps look
for outliers which might be strange. it hints that "ioctl" should be
reassessed in a few places, to see if "tty" is better; that "unix" may
be used in some places where "route" could now work.
|
|
|
|
access in case it is exploited. tame with "stdio wpath rpath cpath"
seesms to covers all usage cases, except -i performs a fchmod() on the
in-place file, so conditionally also needs "fattr".
ok sthen
|
|
|
|
ok tedu miod
|
|
ok jasper@
|
|
|
|
|
|
|
|
feedback/ok deraadt@ millert@
|
|
function should be treated as a single negation. From FreeBSD
via Liviu Daia.
|
|
handling along the way.
Reviews by Brendan MacDonell, Jeremy Devenport, florian, doug, millert
|
|
to size_t to avoid overflow after allocation success
ok guenther doug
|
|
superflous '*' after '/*' and adding blank after terminating '$'.
Also eases parsing of the lines by simple awk scripts.
Aesthetic approval from tedu@.
|
|
of a diff from Sebastien Marie to prevent a crash found by Sebastien
with the afl fuzzer.
|
|
clearer and avoid a crash on 'g;P' found by Sebastien Marie with
the afl fuzzer.
|