Added parameters for alias and alias section in config file

v2.8-utf8proc
Sebastien Helleu 2003-10-03 19:33:59 +00:00
parent 106bdb1d4a
commit cec899898a
16 changed files with 314 additions and 178 deletions

View File

@ -5,7 +5,7 @@ ChangeLog - 2003-10-03
Version 0.0.2 (under dev!):
* alias for commands (new commands /alias and /unalias)
* alias for commands (new commands /alias and /unalias, new section in config file)
* config is now saved automatically when quitting WeeChat
* added new WeeChat commands: server, connect, disconnect, save
* added autoconnect flag for each server in config file

2
TODO
View File

@ -27,7 +27,7 @@ v0.0.2:
+ "/set" command: allow the user to set the WeeChat variables
under WeeChat without editing the config file (colours, time
format, etc)
- "/alias" and "/unalias" commands
# "/alias" and "/unalias" commands
- "/highlight" command: highlight a given word when it appears on
channels/privates

View File

@ -166,6 +166,51 @@ index_command_insert_sorted (t_index_command *index)
}
}
/*
* index_command_new: create new index command and add it to index list
*/
t_index_command *
index_command_new (char *command_name)
{
t_index_command *new_index;
if ((new_index = ((t_index_command *) malloc (sizeof (t_index_command)))))
{
new_index->command_name = strdup (command_name);
index_command_insert_sorted (new_index);
return new_index;
}
return NULL;
}
/*
* index_command_build: build an index of commands (internal, irc and alias)
* This list will be sorted, and used for completion
*/
void
index_command_build ()
{
int i;
index_commands = NULL;
last_index_command = NULL;
i = 0;
while (weechat_commands[i].command_name)
{
index_command_new (weechat_commands[i].command_name);
i++;
}
i = 0;
while (irc_commands[i].command_name)
{
if (irc_commands[i].cmd_function_args || irc_commands[i].cmd_function_1arg)
index_command_new (irc_commands[i].command_name);
i++;
}
}
/*
* index_command_free: free an index command and reomve it from list
*/
@ -196,44 +241,6 @@ index_command_free (t_index_command *index)
index_commands = new_index_commands;
}
/*
* index_command_build: build an index of commands (internal, irc and alias)
* This list will be sorted, and used for completion
*/
void
index_command_build ()
{
int i;
t_index_command *new_index;
index_commands = NULL;
last_index_command = NULL;
i = 0;
while (weechat_commands[i].command_name)
{
if ((new_index = ((t_index_command *) malloc (sizeof (t_index_command)))))
{
new_index->command_name = strdup (weechat_commands[i].command_name);
index_command_insert_sorted (new_index);
}
i++;
}
i = 0;
while (irc_commands[i].command_name)
{
if (irc_commands[i].cmd_function_args || irc_commands[i].cmd_function_1arg)
{
if ((new_index = ((t_index_command *) malloc (sizeof (t_index_command)))))
{
new_index->command_name = strdup (irc_commands[i].command_name);
index_command_insert_sorted (new_index);
}
}
i++;
}
}
/*
* alias_search: search an alias
*/
@ -310,6 +317,28 @@ alias_insert_sorted (t_weechat_alias *alias)
}
}
/*
* alias_new: create new alias and add it to alias list
*/
t_weechat_alias *
alias_new (char *alias_name, char *alias_command)
{
t_weechat_alias *new_alias;
if ((new_alias = ((t_weechat_alias *) malloc (sizeof (t_weechat_alias)))))
{
new_alias->alias_name = strdup (alias_name);
new_alias->alias_command = (char *)malloc (strlen (alias_command) + 2);
new_alias->alias_command[0] = '/';
strcpy (new_alias->alias_command + 1, alias_command);
alias_insert_sorted (new_alias);
return new_alias;
}
else
return NULL;
}
/*
* alias_free: free an alias and reomve it from list
*/
@ -436,8 +465,8 @@ explode_string (char *string, char *separators, int num_items_max,
int
exec_weechat_command (t_irc_server *server, char *string)
{
int i, j, argc, return_code;
char *pos, *ptr_args, **argv;
int i, j, argc, return_code, length1, length2;
char *pos, *ptr_args, **argv, *alias_command;
t_weechat_alias *ptr_alias;
if ((!string[0]) || (string[0] != '/'))
@ -574,7 +603,26 @@ exec_weechat_command (t_irc_server *server, char *string)
{
if (strcasecmp (ptr_alias->alias_name, string + 1) == 0)
{
exec_weechat_command (server, ptr_alias->alias_command);
if (ptr_args)
{
length1 = strlen (ptr_alias->alias_command);
length2 = strlen (ptr_args);
alias_command = (char *)malloc (length1 + 1 + length2 + 1);
strcpy (alias_command, ptr_alias->alias_command);
alias_command[length1] = ' ';
strcpy (alias_command + length1 + 1, ptr_args);
}
else
alias_command = strdup (ptr_alias->alias_command);
exec_weechat_command (server, alias_command);
free (alias_command);
if (argv)
{
for (j = 0; argv[j]; j++)
free (argv[j]);
free (argv);
}
return 1;
}
}
@ -663,8 +711,7 @@ int
weechat_cmd_alias (char *arguments)
{
char *pos, *pos2;
t_weechat_alias *ptr_alias, *new_alias;
t_index_command *new_index;
t_weechat_alias *ptr_alias;
if (arguments && arguments[0])
{
@ -705,19 +752,9 @@ weechat_cmd_alias (char *arguments)
}
if (pos2)
pos2[0] = ' ';
if ((new_index = ((t_index_command *) malloc (sizeof (t_index_command)))))
{
new_index->command_name = strdup (arguments);
index_command_insert_sorted (new_index);
}
if ((new_alias = ((t_weechat_alias *) malloc (sizeof (t_weechat_alias)))))
{
new_alias->alias_name = strdup (arguments);
new_alias->alias_command = (char *)malloc (strlen (pos) + 2);
new_alias->alias_command[0] = '/';
strcpy (new_alias->alias_command + 1, pos);
alias_insert_sorted (new_alias);
}
index_command_new (arguments);
if (!alias_new (arguments, pos))
return -1;
gui_printf (NULL, _("Alias \"%s\" => \"%s\" created\n"),
arguments, pos);
}

View File

@ -59,9 +59,12 @@ struct t_index_command
t_index_command *next_index;
};
extern t_weechat_alias *weechat_alias;
extern t_index_command *index_commands;
extern t_index_command *index_command_new (char *);
extern void index_command_build ();
extern t_weechat_alias *alias_new (char *, char *);
extern int exec_weechat_command (t_irc_server *, char *);
extern void user_command (t_irc_server *, char *);
extern int weechat_cmd_alias (char *);

View File

@ -31,6 +31,7 @@
#include "weechat.h"
#include "config.h"
#include "command.h"
#include "irc/irc.h"
#include "gui/gui.h"
@ -44,6 +45,7 @@ t_config_section config_sections[CONFIG_NUMBER_SECTIONS] =
{ CONFIG_SECTION_LOG, "log" },
{ CONFIG_SECTION_DCC, "dcc" },
{ CONFIG_SECTION_PROXY, "proxy" },
{ CONFIG_SECTION_ALIAS, "alias" },
{ CONFIG_SECTION_SERVER, "server" }
};
@ -485,7 +487,7 @@ t_config_option weechat_options_server[] =
t_config_option *weechat_options[CONFIG_NUMBER_SECTIONS] =
{ weechat_options_look, weechat_options_colors, weechat_options_history,
weechat_options_log, weechat_options_dcc, weechat_options_proxy,
weechat_options_server
NULL, weechat_options_server
};
@ -570,7 +572,7 @@ config_default_values ()
for (i = 0; i < CONFIG_NUMBER_SECTIONS; i++)
{
if (i != CONFIG_SECTION_SERVER)
if ((i != CONFIG_SECTION_ALIAS) && (i != CONFIG_SECTION_SERVER))
{
for (j = 0; weechat_options[i][j].option_name; j++)
{
@ -725,29 +727,35 @@ config_read ()
pos2 = strchr (pos, '\n');
if (pos2 != NULL)
pos2[0] = '\0';
option_number = -1;
for (i = 0;
weechat_options[section][i].option_name; i++)
if (section == CONFIG_SECTION_ALIAS)
{
if (strcmp
(weechat_options[section][i].option_name,
ptr_line) == 0)
{
option_number = i;
break;
}
}
if (option_number < 0)
{
gui_printf (NULL,
_("%s %s, line %d: invalid option \"%s\"\n"),
WEECHAT_WARNING, filename, line_number, ptr_line);
fclose (file);
free (filename);
return -2;
index_command_new (pos);
alias_new (line, pos);
}
else
{
option_number = -1;
for (i = 0;
weechat_options[section][i].option_name; i++)
{
if (strcmp
(weechat_options[section][i].option_name,
ptr_line) == 0)
{
option_number = i;
break;
}
}
if (option_number < 0)
{
gui_printf (NULL,
_("%s %s, line %d: invalid option \"%s\"\n"),
WEECHAT_WARNING, filename, line_number, ptr_line);
fclose (file);
free (filename);
return -2;
}
switch (weechat_options[section]
[option_number].option_type)
{
@ -923,7 +931,7 @@ config_create_default ()
for (i = 0; i < CONFIG_NUMBER_SECTIONS; i++)
{
if (i != CONFIG_SECTION_SERVER)
if ((i != CONFIG_SECTION_ALIAS) && (i != CONFIG_SECTION_SERVER))
{
sprintf (line, "\n[%s]\n", config_sections[i].section_name);
fputs (line, file);
@ -963,6 +971,10 @@ config_create_default ()
}
}
/* default alias */
fputs ("\n[alias]\n", file);
fputs ("say=msg *\n", file);
/* default server is freenode */
fputs ("\n[server]\n", file);
fputs ("server_name=freenode\n", file);
@ -996,6 +1008,7 @@ config_write (char *config_name)
int i, j;
time_t current_time;
t_irc_server *ptr_server;
t_weechat_alias *ptr_alias;
if (config_name)
filename = strdup (config_name);
@ -1023,7 +1036,7 @@ config_write (char *config_name)
for (i = 0; i < CONFIG_NUMBER_SECTIONS; i++)
{
if (i != CONFIG_SECTION_SERVER)
if ((i != CONFIG_SECTION_ALIAS) && (i != CONFIG_SECTION_SERVER))
{
sprintf (line, "\n[%s]\n", config_sections[i].section_name);
fputs (line, file);
@ -1080,6 +1093,17 @@ config_write (char *config_name)
}
}
/* alias section */
fputs ("\n[alias]\n", file);
for (ptr_alias = weechat_alias; ptr_alias;
ptr_alias = ptr_alias->next_alias)
{
sprintf (line, "%s=%s\n",
ptr_alias->alias_name, ptr_alias->alias_command + 1);
fputs (line, file);
}
/* server section */
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{

View File

@ -32,8 +32,9 @@
#define CONFIG_SECTION_LOG 3
#define CONFIG_SECTION_DCC 4
#define CONFIG_SECTION_PROXY 5
#define CONFIG_SECTION_SERVER 6
#define CONFIG_NUMBER_SECTIONS 7
#define CONFIG_SECTION_ALIAS 6
#define CONFIG_SECTION_SERVER 7
#define CONFIG_NUMBER_SECTIONS 8
#define OPTION_TYPE_BOOLEAN 1 /* values: on/off */
#define OPTION_TYPE_INT 2 /* values: from min to max */

View File

@ -675,7 +675,7 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
}
else
gui_printf (server->window,
_("%s nick not found for \"privmsg\" command\n"),
_("%s nick not found for \"msg\" command\n"),
WEECHAT_ERROR);
server_sendf (server, "PRIVMSG %s :%s\r\n", ptr_channel->name, pos);
}
@ -697,7 +697,7 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
}
else
gui_printf (server->window,
_("%s nick not found for \"privmsg\" command\n"),
_("%s nick not found for \"msg\" command\n"),
WEECHAT_ERROR);
}
server_sendf (server, "PRIVMSG %s :%s\r\n", arguments, pos);
@ -739,9 +739,12 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
}
}
else
{
gui_printf (server->window,
_("%s wrong number of args for \"privmsg\" command\n"),
_("%s wrong argument count for \"msg\" command\n"),
WEECHAT_ERROR);
return -1;
}
return 0;
}

View File

@ -239,6 +239,9 @@ main (int argc, char *argv[])
/* init log file */
wee_init_log ();
/* build commands index (sorted), for completion */
index_command_build ();
/* read configuration */
switch (config_read ())
{
@ -256,9 +259,6 @@ main (int argc, char *argv[])
/* init gui */
gui_init ();
/* build commands index (sorted), for completion */
index_command_build ();
/* Welcome message - yeah! */
if (cfg_look_startup_logo)
{

View File

@ -5,7 +5,7 @@ ChangeLog - 2003-10-03
Version 0.0.2 (under dev!):
* alias for commands (new commands /alias and /unalias)
* alias for commands (new commands /alias and /unalias, new section in config file)
* config is now saved automatically when quitting WeeChat
* added new WeeChat commands: server, connect, disconnect, save
* added autoconnect flag for each server in config file

View File

@ -27,7 +27,7 @@ v0.0.2:
+ "/set" command: allow the user to set the WeeChat variables
under WeeChat without editing the config file (colours, time
format, etc)
- "/alias" and "/unalias" commands
# "/alias" and "/unalias" commands
- "/highlight" command: highlight a given word when it appears on
channels/privates

View File

@ -166,6 +166,51 @@ index_command_insert_sorted (t_index_command *index)
}
}
/*
* index_command_new: create new index command and add it to index list
*/
t_index_command *
index_command_new (char *command_name)
{
t_index_command *new_index;
if ((new_index = ((t_index_command *) malloc (sizeof (t_index_command)))))
{
new_index->command_name = strdup (command_name);
index_command_insert_sorted (new_index);
return new_index;
}
return NULL;
}
/*
* index_command_build: build an index of commands (internal, irc and alias)
* This list will be sorted, and used for completion
*/
void
index_command_build ()
{
int i;
index_commands = NULL;
last_index_command = NULL;
i = 0;
while (weechat_commands[i].command_name)
{
index_command_new (weechat_commands[i].command_name);
i++;
}
i = 0;
while (irc_commands[i].command_name)
{
if (irc_commands[i].cmd_function_args || irc_commands[i].cmd_function_1arg)
index_command_new (irc_commands[i].command_name);
i++;
}
}
/*
* index_command_free: free an index command and reomve it from list
*/
@ -196,44 +241,6 @@ index_command_free (t_index_command *index)
index_commands = new_index_commands;
}
/*
* index_command_build: build an index of commands (internal, irc and alias)
* This list will be sorted, and used for completion
*/
void
index_command_build ()
{
int i;
t_index_command *new_index;
index_commands = NULL;
last_index_command = NULL;
i = 0;
while (weechat_commands[i].command_name)
{
if ((new_index = ((t_index_command *) malloc (sizeof (t_index_command)))))
{
new_index->command_name = strdup (weechat_commands[i].command_name);
index_command_insert_sorted (new_index);
}
i++;
}
i = 0;
while (irc_commands[i].command_name)
{
if (irc_commands[i].cmd_function_args || irc_commands[i].cmd_function_1arg)
{
if ((new_index = ((t_index_command *) malloc (sizeof (t_index_command)))))
{
new_index->command_name = strdup (irc_commands[i].command_name);
index_command_insert_sorted (new_index);
}
}
i++;
}
}
/*
* alias_search: search an alias
*/
@ -310,6 +317,28 @@ alias_insert_sorted (t_weechat_alias *alias)
}
}
/*
* alias_new: create new alias and add it to alias list
*/
t_weechat_alias *
alias_new (char *alias_name, char *alias_command)
{
t_weechat_alias *new_alias;
if ((new_alias = ((t_weechat_alias *) malloc (sizeof (t_weechat_alias)))))
{
new_alias->alias_name = strdup (alias_name);
new_alias->alias_command = (char *)malloc (strlen (alias_command) + 2);
new_alias->alias_command[0] = '/';
strcpy (new_alias->alias_command + 1, alias_command);
alias_insert_sorted (new_alias);
return new_alias;
}
else
return NULL;
}
/*
* alias_free: free an alias and reomve it from list
*/
@ -436,8 +465,8 @@ explode_string (char *string, char *separators, int num_items_max,
int
exec_weechat_command (t_irc_server *server, char *string)
{
int i, j, argc, return_code;
char *pos, *ptr_args, **argv;
int i, j, argc, return_code, length1, length2;
char *pos, *ptr_args, **argv, *alias_command;
t_weechat_alias *ptr_alias;
if ((!string[0]) || (string[0] != '/'))
@ -574,7 +603,26 @@ exec_weechat_command (t_irc_server *server, char *string)
{
if (strcasecmp (ptr_alias->alias_name, string + 1) == 0)
{
exec_weechat_command (server, ptr_alias->alias_command);
if (ptr_args)
{
length1 = strlen (ptr_alias->alias_command);
length2 = strlen (ptr_args);
alias_command = (char *)malloc (length1 + 1 + length2 + 1);
strcpy (alias_command, ptr_alias->alias_command);
alias_command[length1] = ' ';
strcpy (alias_command + length1 + 1, ptr_args);
}
else
alias_command = strdup (ptr_alias->alias_command);
exec_weechat_command (server, alias_command);
free (alias_command);
if (argv)
{
for (j = 0; argv[j]; j++)
free (argv[j]);
free (argv);
}
return 1;
}
}
@ -663,8 +711,7 @@ int
weechat_cmd_alias (char *arguments)
{
char *pos, *pos2;
t_weechat_alias *ptr_alias, *new_alias;
t_index_command *new_index;
t_weechat_alias *ptr_alias;
if (arguments && arguments[0])
{
@ -705,19 +752,9 @@ weechat_cmd_alias (char *arguments)
}
if (pos2)
pos2[0] = ' ';
if ((new_index = ((t_index_command *) malloc (sizeof (t_index_command)))))
{
new_index->command_name = strdup (arguments);
index_command_insert_sorted (new_index);
}
if ((new_alias = ((t_weechat_alias *) malloc (sizeof (t_weechat_alias)))))
{
new_alias->alias_name = strdup (arguments);
new_alias->alias_command = (char *)malloc (strlen (pos) + 2);
new_alias->alias_command[0] = '/';
strcpy (new_alias->alias_command + 1, pos);
alias_insert_sorted (new_alias);
}
index_command_new (arguments);
if (!alias_new (arguments, pos))
return -1;
gui_printf (NULL, _("Alias \"%s\" => \"%s\" created\n"),
arguments, pos);
}

View File

@ -59,9 +59,12 @@ struct t_index_command
t_index_command *next_index;
};
extern t_weechat_alias *weechat_alias;
extern t_index_command *index_commands;
extern t_index_command *index_command_new (char *);
extern void index_command_build ();
extern t_weechat_alias *alias_new (char *, char *);
extern int exec_weechat_command (t_irc_server *, char *);
extern void user_command (t_irc_server *, char *);
extern int weechat_cmd_alias (char *);

View File

@ -31,6 +31,7 @@
#include "weechat.h"
#include "config.h"
#include "command.h"
#include "irc/irc.h"
#include "gui/gui.h"
@ -44,6 +45,7 @@ t_config_section config_sections[CONFIG_NUMBER_SECTIONS] =
{ CONFIG_SECTION_LOG, "log" },
{ CONFIG_SECTION_DCC, "dcc" },
{ CONFIG_SECTION_PROXY, "proxy" },
{ CONFIG_SECTION_ALIAS, "alias" },
{ CONFIG_SECTION_SERVER, "server" }
};
@ -485,7 +487,7 @@ t_config_option weechat_options_server[] =
t_config_option *weechat_options[CONFIG_NUMBER_SECTIONS] =
{ weechat_options_look, weechat_options_colors, weechat_options_history,
weechat_options_log, weechat_options_dcc, weechat_options_proxy,
weechat_options_server
NULL, weechat_options_server
};
@ -570,7 +572,7 @@ config_default_values ()
for (i = 0; i < CONFIG_NUMBER_SECTIONS; i++)
{
if (i != CONFIG_SECTION_SERVER)
if ((i != CONFIG_SECTION_ALIAS) && (i != CONFIG_SECTION_SERVER))
{
for (j = 0; weechat_options[i][j].option_name; j++)
{
@ -725,29 +727,35 @@ config_read ()
pos2 = strchr (pos, '\n');
if (pos2 != NULL)
pos2[0] = '\0';
option_number = -1;
for (i = 0;
weechat_options[section][i].option_name; i++)
if (section == CONFIG_SECTION_ALIAS)
{
if (strcmp
(weechat_options[section][i].option_name,
ptr_line) == 0)
{
option_number = i;
break;
}
}
if (option_number < 0)
{
gui_printf (NULL,
_("%s %s, line %d: invalid option \"%s\"\n"),
WEECHAT_WARNING, filename, line_number, ptr_line);
fclose (file);
free (filename);
return -2;
index_command_new (pos);
alias_new (line, pos);
}
else
{
option_number = -1;
for (i = 0;
weechat_options[section][i].option_name; i++)
{
if (strcmp
(weechat_options[section][i].option_name,
ptr_line) == 0)
{
option_number = i;
break;
}
}
if (option_number < 0)
{
gui_printf (NULL,
_("%s %s, line %d: invalid option \"%s\"\n"),
WEECHAT_WARNING, filename, line_number, ptr_line);
fclose (file);
free (filename);
return -2;
}
switch (weechat_options[section]
[option_number].option_type)
{
@ -923,7 +931,7 @@ config_create_default ()
for (i = 0; i < CONFIG_NUMBER_SECTIONS; i++)
{
if (i != CONFIG_SECTION_SERVER)
if ((i != CONFIG_SECTION_ALIAS) && (i != CONFIG_SECTION_SERVER))
{
sprintf (line, "\n[%s]\n", config_sections[i].section_name);
fputs (line, file);
@ -963,6 +971,10 @@ config_create_default ()
}
}
/* default alias */
fputs ("\n[alias]\n", file);
fputs ("say=msg *\n", file);
/* default server is freenode */
fputs ("\n[server]\n", file);
fputs ("server_name=freenode\n", file);
@ -996,6 +1008,7 @@ config_write (char *config_name)
int i, j;
time_t current_time;
t_irc_server *ptr_server;
t_weechat_alias *ptr_alias;
if (config_name)
filename = strdup (config_name);
@ -1023,7 +1036,7 @@ config_write (char *config_name)
for (i = 0; i < CONFIG_NUMBER_SECTIONS; i++)
{
if (i != CONFIG_SECTION_SERVER)
if ((i != CONFIG_SECTION_ALIAS) && (i != CONFIG_SECTION_SERVER))
{
sprintf (line, "\n[%s]\n", config_sections[i].section_name);
fputs (line, file);
@ -1080,6 +1093,17 @@ config_write (char *config_name)
}
}
/* alias section */
fputs ("\n[alias]\n", file);
for (ptr_alias = weechat_alias; ptr_alias;
ptr_alias = ptr_alias->next_alias)
{
sprintf (line, "%s=%s\n",
ptr_alias->alias_name, ptr_alias->alias_command + 1);
fputs (line, file);
}
/* server section */
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{

View File

@ -32,8 +32,9 @@
#define CONFIG_SECTION_LOG 3
#define CONFIG_SECTION_DCC 4
#define CONFIG_SECTION_PROXY 5
#define CONFIG_SECTION_SERVER 6
#define CONFIG_NUMBER_SECTIONS 7
#define CONFIG_SECTION_ALIAS 6
#define CONFIG_SECTION_SERVER 7
#define CONFIG_NUMBER_SECTIONS 8
#define OPTION_TYPE_BOOLEAN 1 /* values: on/off */
#define OPTION_TYPE_INT 2 /* values: from min to max */

View File

@ -675,7 +675,7 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
}
else
gui_printf (server->window,
_("%s nick not found for \"privmsg\" command\n"),
_("%s nick not found for \"msg\" command\n"),
WEECHAT_ERROR);
server_sendf (server, "PRIVMSG %s :%s\r\n", ptr_channel->name, pos);
}
@ -697,7 +697,7 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
}
else
gui_printf (server->window,
_("%s nick not found for \"privmsg\" command\n"),
_("%s nick not found for \"msg\" command\n"),
WEECHAT_ERROR);
}
server_sendf (server, "PRIVMSG %s :%s\r\n", arguments, pos);
@ -739,9 +739,12 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
}
}
else
{
gui_printf (server->window,
_("%s wrong number of args for \"privmsg\" command\n"),
_("%s wrong argument count for \"msg\" command\n"),
WEECHAT_ERROR);
return -1;
}
return 0;
}

View File

@ -239,6 +239,9 @@ main (int argc, char *argv[])
/* init log file */
wee_init_log ();
/* build commands index (sorted), for completion */
index_command_build ();
/* read configuration */
switch (config_read ())
{
@ -256,9 +259,6 @@ main (int argc, char *argv[])
/* init gui */
gui_init ();
/* build commands index (sorted), for completion */
index_command_build ();
/* Welcome message - yeah! */
if (cfg_look_startup_logo)
{