Ron Yorston
e5213cee38
vi: failure to open file is not an error when initialising buffer
...
Commit 32afd3a
introduced these regressions on the master branch:
Starting vi with no filename on the command line gives the status message
"'(null)' Bad address" instead of "- No file 1/1 100%".
Starting vi with a non-existent file on the command line gives the status
message "'new.txt' No such file or directory" instead of "- new.txt 1/1 100%"
Signed-off-by: Ron Yorston <rmy@tigress.co.uk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-01-07 17:00:48 +01:00
Denys Vlasenko
cd73871178
sed: fix "sed CMD -i nonexistent_file". Closes 7484
...
function old new delta
sed_main 643 676 +33
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-10-05 02:44:34 +02:00
Denys Vlasenko
9caea2448e
sed: fix a buglet in s///NUM handling
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-09-16 01:11:13 +02:00
Denys Vlasenko
05399fc53d
vi: fix incorrect memory access on brace matching. Closes 7256
...
While at it, fix brace matching to actually show the match
(missed fflush was causing cursor positioning to be buffered);
shorten brace matching code; remove unused macro indirection
in indicate_error().
Custom linker script 'busybox_ldscript' found, using it
function old new delta
indicate_error - 61 +61
mysleep 43 56 +13
char_insert 483 486 +3
find_pair 167 124 -43
Indicate_Error 61 - -61
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 2/1 up/down: 77/-104) Total: -27 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-09-15 17:06:10 +02:00
Denys Vlasenko
5f8daefb83
awk: fix handling of "if ... break ; else ..." - closes 7226
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-06-26 16:40:28 +02:00
Denys Vlasenko
32afd3aa60
vi: some simplifications
...
function old new delta
file_insert 301 315 +14
init_text_buffer 179 171 -8
colon 2889 2878 -11
file_size 37 - -37
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/2 up/down: 14/-56) Total: -42 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-04-05 22:57:46 +02:00
Denys Vlasenko
e7430867a8
vi: clear undo buffer when we change to another file
...
function old new delta
init_text_buffer 156 190 +34
undo_push 360 382 +22
count_lines 74 72 -2
undo_pop 246 222 -24
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/2 up/down: 56/-26) Total: 30 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-04-03 12:47:48 +02:00
Denys Vlasenko
2c51202aec
vi: undo code shrink
...
function old new delta
undo_push 414 395 -19
do_cmd 4803 4761 -42
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-04-03 01:45:05 +02:00
Jody Bruchon
a8d6f9bee4
vi: undo support for vi with intermediate queuing
...
function old new delta
undo_push - 411 +411
undo_pop - 288 +288
do_cmd 4160 4426 +266
char_insert 363 483 +120
undo_queue_commit - 61 +61
text_hole_delete 108 163 +55
string_insert 94 127 +33
colon 2864 2882 +18
yank_delete 92 101 +9
vi_main 273 280 +7
dot_scroll 88 93 +5
dot_right 29 34 +5
dot_prev 20 25 +5
dot_next 20 25 +5
dot_left 24 29 +5
dot_end 20 25 +5
dot_begin 20 25 +5
init_text_buffer 154 156 +2
text_hole_make 145 142 -3
file_insert 333 318 -15
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 15/2 up/down: 1305/-18) Total: 1287 bytes
(without queuing it's ~870 bytes)
Signed-off-by: Jody Bruchon <jody@jodybruchon.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-04-02 13:49:26 +02:00
David A. Wheeler
80a068d741
sed: accept s///i as a synonym for s///I ("ignore case")
...
Signed-off-by: David A. Wheeler <dwheeler@dwheeler.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-12-18 16:23:49 +01:00
Denys Vlasenko
327f550669
Use unsigned printf/scanf conversion where more appropriate
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-11-29 16:45:45 +01:00
Denys Vlasenko
deb0769b26
sed: code shrink
...
function old new delta
get_next_line 246 250 +4
sed_main 671 662 -9
add_input_file 47 - -47
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/1 up/down: 4/-56) Total: -52 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-11-28 12:08:51 +01:00
Denys Vlasenko
259b3c047a
sed: open input files sequentially to avoid EMFILE
...
Currently, sed pre-opens all files, which may cause EMFILE errors
on systems with low ulimit -n. Change sed to open one file at a time.
function old new delta
get_next_line 177 235 +58
sed_main 682 652 -30
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 58/-30) Total: 28 bytes
Based on the patch by Daniel Borca <dborca@yahoo.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-11-28 03:14:16 +01:00
Denys Vlasenko
bd0e221620
awk: fix a bug in argc counting in recent change
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-11-21 15:09:55 +01:00
Denys Vlasenko
73225b6d6e
switch editors/* to embedded-in-source kbuild system
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-11-13 12:45:33 +01:00
Sven-Göran Bergh
f200f732f4
awk: optionally support -e AWK_PROG
...
function old new delta
awk_main 959 978 +19
Signed-off-by: Sven-Göran Bergh <sgb@systemasis.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-11-12 14:18:25 +01:00
Denys Vlasenko
c44539fcd3
sed: fix "sed clusternewline" testcase
...
function old new delta
process_files 2197 2226 +29
flush_append 47 54 +7
get_next_line 184 189 +5
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 41/0) Total: 41 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-10-30 14:25:22 +01:00
Denys Vlasenko
a82e32d9ce
sed: document -E in help text
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-10-30 13:00:00 +01:00
Denys Vlasenko
9d46a7a9a4
sed: fix memory leak in 'r FILE' command
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-10-30 10:22:47 +01:00
David A. Wheeler
af0cdeedc6
sed: accept -E as a synonym for -r
...
Signed-off-by: David A. Wheeler <dwheeler@dwheeler.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-10-29 00:52:48 +01:00
Denys Vlasenko
7985bc109e
awk: fix length(array)
...
function old new delta
evaluate 3526 3548 +22
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-10-12 04:51:54 +02:00
Bernhard Reutner-Fischer
a060a1ad96
awk: Fix handling of functions with empty body
...
ammend b79a0fef99
to properly
handle functions defined in another scope.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2013-07-31 21:51:14 +02:00
Denys Vlasenko
b0e9b72915
sed: fix matching of newlines by $
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-07-21 22:09:44 +02:00
Denys Vlasenko
1390a010b6
awk: use "long long" as integer type, not "int"
...
Testcase:
awk "BEGIN{n=(2^31)-1; print n, int(n), n%1, ++n, int(n), n%1}"
2147483647 2147483647 0 2147483648 2147483648 0
(last three values weren't showing right)
function old new delta
evaluate 3444 3458 +14
fmt_num 221 230 +9
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-07-20 21:23:01 +02:00
Denys Vlasenko
40ab27a225
sed: remove now-redundant backslash-newline handling
...
4b0bb9e0fd
added this code in 2007,
then in a2215b98f7
more general fix
was added.
function old new delta
add_cmd_block 98 58 -40
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-07-08 02:07:16 +02:00
Denys Vlasenko
e93d15613e
sed: document where we are more liberal then GNU
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-07-08 01:43:40 +02:00
Denys Vlasenko
264f37363d
vi: make regexp search case-insensitive if ":set ignorecase" is active
...
Reported by Dan Moinescu <dan@moinescu.net>.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-04-21 15:51:41 +02:00
Denys Vlasenko
9e7c002182
vi: code shrink
...
function old new delta
status_line_bold_errno - 32 +32
colon 2891 2873 -18
file_insert 354 313 -41
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/2 up/down: 32/-59) Total: -27 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-03-15 02:17:29 +01:00
Ron Yorston
cb5aa725df
vi: fix adjustment of buffer on partial file read
...
The second argument to text_hole_delete was incorrect: it should
be a pointer to the end of the hole.
Signed-off-by: Ron Yorston <rmy@tigress.co.uk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-03-15 02:10:07 +01:00
Bernhard Reutner-Fischer
b79a0fef99
awk: Fix handling of functions with empty body
...
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2013-03-13 09:47:07 +01:00
Denys Vlasenko
778794d1dd
*: reuse more strings
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-01-22 10:13:52 +01:00
Denys Vlasenko
6830ade6aa
whitespace fixes. no code changes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-01-15 13:58:01 +01:00
Denys Vlasenko
60cb48ca50
whitespace cleanup. no code changes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-01-14 15:57:44 +01:00
Mimi Li
37a79c092e
sed: allow 'w' cmd to use two address form
...
function old new delta
add_cmd 1101 1094 -7
Signed-off-by: Mimi Li <felloak@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-07-24 13:20:12 +02:00
Denys Vlasenko
df8066a78c
awk: fix FS assignment behavior. Closes 5108
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-07-11 01:27:15 +02:00
Denys Vlasenko
ea664dde87
awk: make -F STR interpret escape sequences. Closes 5126
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-22 18:41:01 +02:00
Denys Vlasenko
1d7ad7a022
tweak help texts
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-21 09:45:11 +02:00
Denys Vlasenko
d3dff879f0
vi: save/restore screen upon invocation
...
function old new delta
vi_main 253 273 +20
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-11 13:53:26 +02:00
Denys Vlasenko
04b52892ed
vi: nuke FEATURE_VI_OPTIMIZE_CURSOR
...
It is not Unicode safe, it is not saving much of I/O, and it's large:
function old new delta
vi_main 255 253 -2
go_bottom_and_clear_to_eol 28 26 -2
do_cmd 4194 4182 -12
show_status_line 388 374 -14
strncat 39 - -39
__GI_strncat 39 - -39
refresh 774 724 -50
place_cursor 276 83 -193
------------------------------------------------------------------------------
(add/remove: 0/3 grow/shrink: 0/6 up/down: 0/-351) Total: -351 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-11 13:51:38 +02:00
Denys Vlasenko
605f2641d8
vi: do not set autoindent by default
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-11 01:53:33 +02:00
Denys Vlasenko
37ca36a711
sed: yet another fix on top of zero length match code
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-08 10:25:31 +02:00
Denys Vlasenko
84406e459b
sed: fix breakage added by zero length match code
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-07 16:34:57 +02:00
Denys Vlasenko
c35545a100
sed: code shrink
...
function old new delta
process_files 2181 2173 -8
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-04 14:45:09 +02:00
Denys Vlasenko
21f6fbf545
sed: fix zero chars match/replace
...
function old new delta
process_files 2099 2181 +82
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-04 14:44:47 +02:00
Simon B
8c3439554a
sed: support long opts and -iSFX
...
function old new delta
static.sed_longopts - 67 +67
sed_main 618 682 +64
packed_usage 29179 29236 +57
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/0 up/down: 188/0) Total: 188 bytes
Signed-off-by: Simon B <sburnet@hotmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-05-06 14:01:41 +02:00
Denys Vlasenko
b84dafb5e5
sed: slightly better fix for prev commit's problem
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-04-24 19:27:34 +02:00
Denys Vlasenko
e39afe1fbd
sed: fix handling of s/// which has empty matches
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-04-24 19:21:16 +02:00
Dennis Groenen
c0657e0d0a
vi: add ":prev" command support
...
function old new delta
colon 2844 2891 +47
vi_main 243 255 +12
text_yank 54 56 +2
refresh 780 774 -6
Signed-off-by: Dennis Groenen <tj.groenen@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-01-31 14:12:38 +01:00
Denys Vlasenko
800a9a056a
vi: move mark[i] pointers if text[] moves after realloc
...
While at it, optimized :s/find/repl/ a bit
function old new delta
text_hole_make 120 150 +30
colon 2848 2844 -4
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-01-31 14:10:26 +01:00
Denys Vlasenko
6e8861b5f1
*: better comments on termios manipulations. No code changes.
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-01-15 23:00:13 +01:00