1
0
mirror of https://github.com/irssi/irssi.git synced 2024-09-01 04:14:16 -04:00

command() doesn't need cmdchar at start of command anymore.

git-svn-id: http://svn.irssi.org/repos/irssi/trunk@937 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2000-12-03 04:43:53 +00:00 committed by cras
parent c8a90566ca
commit b3a642e548
2 changed files with 20 additions and 4 deletions

View File

@ -48,7 +48,7 @@ command(cmd, server=active_win->active_server, item=active_win->active)
Irssi::Server server
Irssi::Windowitem item
CODE:
signal_emit("send command", 3, cmd, server, item);
perl_command(cmd, server, item);
Irssi::Window
window_find_name(name)
@ -101,7 +101,7 @@ command(server, cmd, item=active_win->active)
CODE:
if (item != NULL && item->server != SERVER(server))
item = NULL;
signal_emit("send command", 3, cmd, server, item);
perl_command(cmd, server, item);
void
print(server, channel, str, level)
@ -181,7 +181,7 @@ command(window, cmd, server=window->active_server, item=window->active)
Irssi::Server server
Irssi::Windowitem item
CODE:
signal_emit("send command", 3, cmd, server, item);
perl_command(cmd, server, item);
void
window_item_add(window, item, automatic)
@ -281,7 +281,7 @@ command(item, cmd)
Irssi::Windowitem item
char *cmd
CODE:
signal_emit("send command", 3, cmd, item->server, item);
perl_command(cmd, item->server, item);
Irssi::Window
window_create(item, automatic)

View File

@ -30,6 +30,7 @@
#include "module.h"
#include "modules.h"
#include "signals.h"
#include "settings.h"
#include "chat-protocols.h"
#include "servers.h"
@ -189,6 +190,21 @@ void printformat_perl(TEXT_DEST_REC *dest, char *format, char **arglist)
g_free(module);
}
void perl_command(const char *cmd, SERVER_REC *server, WI_ITEM_REC *item)
{
const char *cmdchars;
char *sendcmd = (char *) cmd;
cmdchars = settings_get_str("cmdchars");
if (strchr(cmdchars, *cmd) == NULL) {
/* no command char - let's put it there.. */
sendcmd = g_strdup_printf("%c%s", *cmdchars, cmd);
}
signal_emit("send command", 3, cmd, server, item);
if (sendcmd != cmd) g_free(sendcmd);
}
static void perl_register_protocol(CHAT_PROTOCOL_REC *rec)
{
static char *items[] = {