# HG changeset patch # User Mikael Berthe # Date 1299176973 -3600 # Node ID 518740bcd78b4c9e30ff2a91b1fd53dfa65d8c9e # Parent 098b7b5b48547705b7a86c823868326beec5c323 Add /iline iline_insert (Hermitifier) This patch from Hermitifier, slightly modified, should close ticket 70. diff -r 098b7b5b4854 -r 518740bcd78b mcabber/mcabber/commands.c --- a/mcabber/mcabber/commands.c Sun Feb 27 19:47:39 2011 +0100 +++ b/mcabber/mcabber/commands.c Thu Mar 03 19:29:33 2011 +0100 @@ -3806,6 +3806,19 @@ readline_cancel_completion(); } else if (!strcasecmp(arg, "compl_do")) { readline_do_completion(); + } else { + char **paramlst; + char *subcmd; + + paramlst = split_arg(arg, 2, 0); // subcmd, arg + subcmd = *paramlst; + arg = *(paramlst+1); + + if (!strcasecmp(subcmd, "iline_insert")) { + readline_insert(arg); + } + + free_arg_lst(paramlst); } } diff -r 098b7b5b4854 -r 518740bcd78b mcabber/mcabber/screen.c --- a/mcabber/mcabber/screen.c Sun Feb 27 19:47:39 2011 +0100 +++ b/mcabber/mcabber/screen.c Thu Mar 03 19:29:33 2011 +0100 @@ -3533,6 +3533,14 @@ process_command(mkcmdstr("msay send"), TRUE); } +void readline_insert(const char *toinsert) +{ + if (!toinsert || !*toinsert) return; + + scr_insert_text(toinsert); + check_offset(0); +} + // which_row() // Tells which row our cursor is in, in the command line. // -2 -> normal text diff -r 098b7b5b4854 -r 518740bcd78b mcabber/mcabber/screen.h --- a/mcabber/mcabber/screen.h Sun Feb 27 19:47:39 2011 +0100 +++ b/mcabber/mcabber/screen.h Thu Mar 03 19:29:33 2011 +0100 @@ -187,6 +187,7 @@ void readline_backward_kill_iline(void); void readline_forward_kill_iline(void); void readline_send_multiline(void); +void readline_insert(const char *toinsert); // For backward compatibility: