#include <cstring>
+#include "rxvtperl.h"
#include "keyboard.h"
#include "command.h"
{
if (strncmp (str, "command:", 8) == 0)
rt->cmd_write ((unsigned char *)str + 8, strlen (str) - 8);
+ else if (strncmp (str, "perl:", 5) == 0)
+ PERL_INVOKE((rt, HOOK_KEYBOARD_COMMAND, DT_STRING, str + 5, DT_END));
else
rt->tt_write ((unsigned char *)str, strlen (str));
}
XPUSHs (sv_2mortal (newSViv (va_arg (ap, long))));
break;
+ case DT_STRING:
+ XPUSHs (sv_2mortal (newSVpv (va_arg (ap, char *), 0)));
+ break;
+
case DT_END:
{
va_end (ap);
set_hookname (TTY_ACTIVITY);
set_hookname (REFRESH_BEGIN);
set_hookname (REFRESH_END);
+ set_hookname (KEYBOARD_COMMAND);
sv_setpv (get_sv ("urxvt::LIBDIR", 1), LIBDIR);
}