pkgsrc-ng/chat/icb/patches/patch-readline_vi__mode.c
2013-09-26 17:14:40 +02:00

301 lines
5.6 KiB
C

$NetBSD: patch-readline_vi__mode.c,v 1.1 2013/01/11 13:24:32 joerg Exp $
--- readline/vi_mode.c.orig 2013-01-11 12:42:57.000000000 +0000
+++ readline/vi_mode.c
@@ -172,7 +172,7 @@ rl_vi_search (count, key)
default:
ding ();
- return;
+ return 0;
}
vi_histpos = where_history ();
@@ -199,7 +199,7 @@ rl_vi_search (count, key)
maybe_unsave_line ();
rl_clear_message ();
rl_point = save_pos;
- return;
+ return 0;
}
case CTRL('W'):
@@ -218,7 +218,7 @@ rl_vi_search (count, key)
rl_clear_message ();
rl_point = 0;
ding ();
- return;
+ return 0;
default:
rl_insert (1, c);
@@ -232,6 +232,7 @@ rl_vi_search (count, key)
vi_last_search = savestring (rl_line_buffer);
rl_vi_dosearch (rl_line_buffer, dir);
+ return 0;
}
/* Search for STRING in the history list. DIR is < 0 for searching
@@ -274,7 +275,7 @@ rl_vi_dosearch (string, dir)
if (string == 0 || *string == 0 || vi_histpos < 0)
{
ding ();
- return;
+ return 0;
}
if ((save = vi_history_search_pos (string, dir, vi_histpos + dir)) == -1)
@@ -283,7 +284,7 @@ rl_vi_dosearch (string, dir)
rl_clear_message ();
rl_point = 0;
ding ();
- return;
+ return 0;
}
vi_histpos = save;
@@ -305,6 +306,7 @@ rl_vi_dosearch (string, dir)
rl_end = strlen (rl_line_buffer);
rl_point = 0;
rl_clear_message ();
+ return 0;
}
/* Completion, from vi's point of view. */
@@ -335,19 +337,20 @@ rl_vi_prev_word (count, key)
if (count < 0)
{
rl_vi_next_word (-count, key);
- return;
+ return 0;
}
if (rl_point == 0)
{
ding ();
- return;
+ return 0;
}
if (uppercase_p (key))
rl_vi_bWord (count);
else
rl_vi_bword (count);
+ return 0;
}
/* Next word in vi mode. */
@@ -357,19 +360,20 @@ rl_vi_next_word (count, key)
if (count < 0)
{
rl_vi_prev_word (-count, key);
- return;
+ return 0;
}
if (rl_point >= (rl_end - 1))
{
ding ();
- return;
+ return 0;
}
if (uppercase_p (key))
rl_vi_fWord (count);
else
rl_vi_fword (count);
+ return 0;
}
/* Move to the end of the ?next? word. */
@@ -379,13 +383,14 @@ rl_vi_end_word (count, key)
if (count < 0)
{
ding ();
- return;
+ return 0;
}
if (uppercase_p (key))
rl_vi_eWord (count);
else
rl_vi_eword (count);
+ return 0;
}
/* Move forward a word the way that 'W' does. */
@@ -610,7 +615,7 @@ rl_vi_change_case (count, ignore)
/* Don't try this on an empty line. */
if (rl_point >= rl_end)
- return;
+ return 0;
while (count-- && rl_point < rl_end)
{
@@ -631,6 +636,7 @@ rl_vi_change_case (count, ignore)
else
rl_forward (1);
}
+ return 0;
}
rl_vi_put (count, key)
@@ -779,13 +785,14 @@ rl_vi_delete_to (count, key)
if (rl_vi_domove (key, &c))
{
ding ();
- return;
+ return 0;
}
if ((c != 'l') && (c != '|') && (c != 'h') && rl_mark < rl_end)
rl_mark++;
rl_kill_text (rl_point, rl_mark);
+ return 0;
}
rl_vi_change_to (count, key)
@@ -799,7 +806,7 @@ rl_vi_change_to (count, key)
if (rl_vi_domove (key, &c))
{
ding ();
- return;
+ return 0;
}
if ((c != 'l') && (c != '|') && (c != 'h') && rl_mark < rl_end)
@@ -809,6 +816,7 @@ rl_vi_change_to (count, key)
vi_doing_insert = 1;
rl_kill_text (rl_point, rl_mark);
rl_vi_insertion_mode ();
+ return 0;
}
rl_vi_yank_to (count, key)
@@ -822,7 +830,7 @@ rl_vi_yank_to (count, key)
if (rl_vi_domove (key, &c))
{
ding ();
- return;
+ return 0;
}
if ((c != 'l') && (c != '|') && (c != 'h') && rl_mark < rl_end)
@@ -833,6 +841,7 @@ rl_vi_yank_to (count, key)
rl_end_undo_group ();
rl_do_undo ();
rl_point = save;
+ return 0;
}
rl_vi_delete (count)
@@ -842,7 +851,7 @@ rl_vi_delete (count)
if (rl_end == 0)
{
ding ();
- return;
+ return 0;
}
end = rl_point + count;
@@ -854,6 +863,7 @@ rl_vi_delete (count)
if (rl_point > 0 && rl_point == rl_end)
rl_backward (1);
+ return 0;
}
/* Turn the current line into a comment in shell history.
@@ -932,7 +942,7 @@ rl_vi_char_search (count, key)
if (pos == 0)
{
ding ();
- return;
+ return 0;
}
pos--;
@@ -952,7 +962,7 @@ rl_vi_char_search (count, key)
if (pos < 0)
{
ding ();
- return;
+ return 0;
}
}
else
@@ -960,7 +970,7 @@ rl_vi_char_search (count, key)
if (pos >= rl_end)
{
ding ();
- return;
+ return 0;
}
pos++;
@@ -980,10 +990,11 @@ rl_vi_char_search (count, key)
if (pos >= (rl_end - 1))
{
ding ();
- return;
+ return 0;
}
}
}
+ return 0;
}
/* Match brackets */
@@ -1002,7 +1013,7 @@ rl_vi_match ()
{
rl_point = pos;
ding ();
- return;
+ return 0;
}
}
@@ -1023,7 +1034,7 @@ rl_vi_match ()
else
{
ding ();
- return;
+ return 0;
}
}
}
@@ -1042,11 +1053,12 @@ rl_vi_match ()
else
{
ding ();
- return;
+ return 0;
}
}
}
rl_point = pos;
+ return 0;
}
int
@@ -1073,7 +1085,7 @@ rl_vi_change_char (count, key)
c = rl_getc (rl_instream);
if (c == '\033' || c == CTRL ('C'))
- return;
+ return 0;
while (count-- && rl_point < rl_end)
{
@@ -1086,6 +1098,7 @@ rl_vi_change_char (count, key)
rl_end_undo_group ();
}
+ return 0;
}
rl_vi_subst (count, key)