207 changes: 0 additions & 207 deletions plugins/hextray/sdTray.cpp

This file was deleted.

39 changes: 0 additions & 39 deletions plugins/hextray/sdTray.h

This file was deleted.

410 changes: 0 additions & 410 deletions plugins/hextray/utility.cpp

This file was deleted.

46 changes: 0 additions & 46 deletions plugins/hextray/utility.h

This file was deleted.

25 changes: 0 additions & 25 deletions plugins/mailcheck/Makefile.am

This file was deleted.

94 changes: 0 additions & 94 deletions plugins/mailcheck/mailcheck.c

This file was deleted.

1 change: 1 addition & 0 deletions plugins/mpcinfo/mp3Info.c
Expand Up @@ -244,6 +244,7 @@ struct tagInfo readID3V2(char *file){
for (i=0;i<10;i++){
c=fgetc(f);
if (c==EOF){
fclose(f);
//putlog("found eof while reading id3v2");
return ret;
}
Expand Down
4 changes: 2 additions & 2 deletions plugins/mpcinfo/mpcinfo.vcxproj
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Configuration">
<PlatformToolset>v110</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|Win32">
Expand Down
2 changes: 1 addition & 1 deletion plugins/mpcinfo/oggInfo.c
Expand Up @@ -77,7 +77,7 @@ struct tagInfo getOggHeader(char *file){
info.bitrate=nomBr;
if (((maxBr==nomBr)&&(nomBr=minBr))||((minBr==0)&&(maxBr==0))||((minBr=-1)&&(maxBr=-1)) )info.cbr=1;else info.cbr=0;
printf("bitrates: %i|%i|%i\n",maxBr,nomBr,minBr);
printf("freq: %i\n",info.freq);
printf("freq: %u\n",info.freq);
pos=h3pos+7;
pos+=getOggInt(header,pos,4)+4;
count=getOggInt(header,pos,4);
Expand Down
14 changes: 7 additions & 7 deletions plugins/perl/Makefile.am
@@ -1,18 +1,18 @@

EXTRA_DIST=alt_completion.pl generate_header lib/Xchat.pm lib/Xchat/Embed.pm lib/Xchat/List/Network.pm \
lib/Xchat/List/Network/Entry.pm lib/Xchat/List/Network/AutoJoin.pm lib/IRC.pm
EXTRA_DIST=generate_header lib/HexChat.pm lib/Xchat.pm lib/HexChat/Embed.pm lib/HexChat/List/Network.pm \
lib/HexChat/List/Network/Entry.pm lib/HexChat/List/Network/AutoJoin.pm lib/IRC.pm

libdir = $(hexchatlibdir)

lib_LTLIBRARIES = perl.la
perl_la_SOURCES = perl.c
perl_la_LDFLAGS = -avoid-version -module
perl_la_LIBADD = $(PERL_LDFLAGS)
BUILT_SOURCES = xchat.pm.h irc.pm.h
BUILT_SOURCES = hexchat.pm.h irc.pm.h
#CFLAGS = @CFLAGS@ -Wno-unused
AM_CPPFLAGS = $(PERL_CFLAGS) $(COMMON_CFLAGS) -I$(srcdir)/../../src/common
CLEANFILES = xchat.pm.h irc.pm.h
xchat.pm.h irc.pm.h: lib/Xchat.pm lib/Xchat/Embed.pm \
lib/Xchat/List/Network.pm lib/Xchat/List/Network/Entry.pm \
lib/Xchat/List/Network/AutoJoin.pm lib/IRC.pm
CLEANFILES = hexchat.pm.h irc.pm.h
hexchat.pm.h irc.pm.h: lib/HexChat.pm lib/Xchat.pm lib/HexChat/Embed.pm \
lib/HexChat/List/Network.pm lib/HexChat/List/Network/Entry.pm \
lib/HexChat/List/Network/AutoJoin.pm lib/IRC.pm
perl generate_header
511 changes: 0 additions & 511 deletions plugins/perl/alt_completion.pl

This file was deleted.

101 changes: 0 additions & 101 deletions plugins/perl/char_count.pl

This file was deleted.

13 changes: 7 additions & 6 deletions plugins/perl/generate_header
Expand Up @@ -25,12 +25,13 @@ sub toc {
}

for my $files (
[ "xchat.pm.h", # output file
"lib/Xchat.pm", # input files
"lib/Xchat/Embed.pm",
"lib/Xchat/List/Network.pm",
"lib/Xchat/List/Network/Entry.pm",
"lib/Xchat/List/Network/AutoJoin.pm",
[ "hexchat.pm.h", # output file
"lib/HexChat.pm", # input files
"lib/Xchat.pm",
"lib/HexChat/Embed.pm",
"lib/HexChat/List/Network.pm",
"lib/HexChat/List/Network/Entry.pm",
"lib/HexChat/List/Network/AutoJoin.pm",
],
[ "irc.pm.h", # output file
"lib/IRC.pm" # input file
Expand Down
27 changes: 0 additions & 27 deletions plugins/perl/generate_html

This file was deleted.

556 changes: 556 additions & 0 deletions plugins/perl/lib/HexChat.pm

Large diffs are not rendered by default.

@@ -1,6 +1,7 @@
package Xchat::Embed;
package HexChat::Embed;
use strict;
use warnings;
use Data::Dumper;
# list of loaded scripts keyed by their package names
# The package names are generated from the filename of the script using
# the file2pkg() function.
Expand Down Expand Up @@ -42,11 +43,11 @@ sub load {
if( exists $scripts{$package} ) {
my $pkg_info = pkg_info( $package );
my $filename = File::Basename::basename( $pkg_info->{filename} );
Xchat::printf(
HexChat::printf(
qq{'%s' already loaded from '%s'.\n},
$filename, $pkg_info->{filename}
);
Xchat::print(
HexChat::print(
'If this is a different script then it rename and try '.
'loading it again.'
);
Expand All @@ -60,7 +61,7 @@ sub load {
$source =~ s/^__END__.*//ms;

# this must come before the eval or the filename will not be found in
# Xchat::register
# HexChat::register
$scripts{$package}{filename} = $file;
$scripts{$package}{loaded_at} = Time::HiRes::time();

Expand Down Expand Up @@ -93,7 +94,7 @@ sub load {
$error_message .= " $conflict_package already defined in " .
pkg_info($owner_package{ $conflict_package })->{filename}."\n";
}
Xchat::print( $error_message );
HexChat::print( $error_message );

return 2;
}
Expand All @@ -114,21 +115,21 @@ sub load {

unless( exists $scripts{$package}{gui_entry} ) {
$scripts{$package}{gui_entry} =
Xchat::Internal::register(
HexChat::Internal::register(
"", "unknown", "", $file
);
}

if( $@ ) {
# something went wrong
$@ =~ s/\(eval \d+\)/$file/g;
Xchat::print( "Error loading '$file':\n$@\n" );
HexChat::print( "Error loading '$file':\n$@\n" );
# make sure the script list doesn't contain false information
unload( $scripts{$package}{filename} );
return 1;
}
} else {
Xchat::print( "Error opening '$file': $!\n" );
HexChat::print( "Error opening '$file': $!\n" );
return 2;
}

Expand Down Expand Up @@ -162,7 +163,7 @@ sub unload {

if( exists $pkg_info->{hooks} ) {
for my $hook ( @{$pkg_info->{hooks}} ) {
Xchat::unhook( $hook, $package );
HexChat::unhook( $hook, $package );
}
}

Expand All @@ -176,10 +177,10 @@ sub unload {
}
Symbol::delete_package( $package );
delete $scripts{$package};
return Xchat::EAT_ALL;
return HexChat::EAT_ALL;
} else {
Xchat::print( qq{"$file" is not loaded.\n} );
return Xchat::EAT_NONE;
HexChat::print( qq{"$file" is not loaded.\n} );
return HexChat::EAT_NONE;
}
}

Expand All @@ -188,7 +189,7 @@ sub unload_all {
unload( $scripts{$package}->{filename} );
}

return Xchat::EAT_ALL;
return HexChat::EAT_ALL;
}

sub reload {
Expand All @@ -203,11 +204,11 @@ sub reload {
}

load( $fullpath );
return Xchat::EAT_ALL;
return HexChat::EAT_ALL;
}

sub reload_all {
my @dirs = Xchat::get_info( "configdir" );
my @dirs = HexChat::get_info( "configdir" );
push @dirs, File::Spec->catdir( $dirs[0], "plugins" );
for my $dir ( @dirs ) {
my $auto_load_glob = File::Spec->catfile( $dir, "*.pl" );
Expand All @@ -227,6 +228,28 @@ sub reload_all {
}
}

sub evaluate {
my ($code) = @_;

my @results = eval $code;
HexChat::print $@ if $@; #print warnings

local $Data::Dumper::Sortkeys = 1;
local $Data::Dumper::Terse = 1;

if (@results > 1) {
HexChat::print Dumper \@results;
}
elsif (ref $results[0] || !$results[0]) {
HexChat::print Dumper $results[0];
}
else {
HexChat::print $results[0];
}

return HexChat::EAT_HEXCHAT;
};

sub expand_homedir {
my $file = shift @_;

Expand All @@ -244,7 +267,7 @@ sub file2pkg {
my $string = File::Basename::basename( shift @_ );
$string =~ s/\.pl$//i;
$string =~ s|([^A-Za-z0-9/])|'_'.unpack("H*",$1)|eg;
return "Xchat::Script::" . $string;
return "HexChat::Script::" . $string;
}

sub pkg_info {
Expand All @@ -256,7 +279,7 @@ sub find_external_pkg {
my $level = 1;

while( my @frame = caller( $level ) ) {
return @frame if $frame[0] !~ /(?:^IRC$|^Xchat)/;
return @frame if $frame[0] !~ /(?:^IRC$|^HexChat)/;
$level++;
}
return;
Expand All @@ -266,7 +289,7 @@ sub find_pkg {
my $level = 1;

while( my ($package, $file, $line) = caller( $level ) ) {
return $package if $package =~ /^Xchat::Script::/;
return $package if $package =~ /^HexChat::Script::/;
$level++;
}

Expand Down
@@ -1,12 +1,12 @@
package Xchat::List::Network;
package HexChat::List::Network;
use strict;
use warnings;
use Storable qw(dclone);
my $last_modified;
my @servers;

sub get {
my $server_file = Xchat::get_info( "configdir" ) . "/servlist.conf";
my $server_file = HexChat::get_info( "configdir" ) . "/servlist.conf";

# recreate the list only if the server list file has changed
if( -f $server_file &&
Expand All @@ -19,7 +19,7 @@ sub get {
while( my $record = <$fh> ) {
chomp $record;
next if $record =~ /^v=/; # skip the version line
push @servers, Xchat::List::Network::Entry::parse( $record );
push @servers, HexChat::List::Network::Entry::parse( $record );
}
} else {
warn "Unable to open '$server_file': $!";
Expand Down
@@ -1,4 +1,4 @@
package Xchat::List::Network::AutoJoin;
package HexChat::List::Network::AutoJoin;
use strict;
use warnings;

Expand Down
@@ -1,4 +1,4 @@
package Xchat::List::Network::Entry;
package HexChat::List::Network::Entry;
use strict;
use warnings;

Expand Down Expand Up @@ -26,7 +26,7 @@ sub parse {

# the order of the channels need to be maintained
# list of { channel => .., key => ... }
autojoins => Xchat::List::Network::AutoJoin->new( '' ),
autojoins => HexChat::List::Network::AutoJoin->new( '' ),
connect_commands => [],
flags => {},
selected => undef,
Expand All @@ -39,7 +39,7 @@ sub parse {
my @fields = split /\n/, $data;
chomp @fields;

$entry->{ autojoins } = Xchat::List::Network::AutoJoin->new();
$entry->{ autojoins } = HexChat::List::Network::AutoJoin->new();

for my $field ( @fields ) {
SWITCH: for ( $field ) {
Expand Down
2,399 changes: 0 additions & 2,399 deletions plugins/perl/lib/Pod/Html.pm

This file was deleted.

526 changes: 1 addition & 525 deletions plugins/perl/lib/Xchat.pm

Large diffs are not rendered by default.

1,362 changes: 0 additions & 1,362 deletions plugins/perl/lib/Xchat.pod

This file was deleted.

281 changes: 183 additions & 98 deletions plugins/perl/perl.c

Large diffs are not rendered by default.

14 changes: 7 additions & 7 deletions plugins/perl/perl.vcxproj
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Configuration">
<PlatformToolset>v110</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|Win32">
Expand All @@ -16,7 +16,7 @@
<PropertyGroup Label="Globals">
<ProjectGuid>{D90BC3E3-1341-4849-9354-5F40489D39D1}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>perl518</RootNamespace>
<RootNamespace>perl520</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
Expand Down Expand Up @@ -61,7 +61,7 @@
</PrecompiledHeader>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;PERL518_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;PERL520_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(PerlPath)\lib\CORE;$(IntDir);..\..\src\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
Expand All @@ -81,7 +81,7 @@ move $(PerlLib).def "$(IntDir)"
lib /nologo /machine:x86 "/def:$(IntDir)$(PerlLib).def" "/out:$(OutDir)\$(PerlLib).lib"
"$(PerlPath)\bin\perl.exe" generate_header
move irc.pm.h "$(IntDir)"
move xchat.pm.h "$(IntDir)"</Command>
move hexchat.pm.h "$(IntDir)"</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
Expand All @@ -90,7 +90,7 @@ move xchat.pm.h "$(IntDir)"</Command>
</PrecompiledHeader>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;_WIN64;_AMD64_;NDEBUG;_WINDOWS;_USRDLL;PERL518_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_WIN64;_AMD64_;NDEBUG;_WINDOWS;_USRDLL;PERL520_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(PerlPath)\lib\CORE;$(IntDir);..\..\src\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
Expand All @@ -110,7 +110,7 @@ move $(PerlLib).def "$(IntDir)"
lib /nologo /machine:x64 "/def:$(IntDir)$(PerlLib).def" "/out:$(OutDir)\$(PerlLib).lib"
"$(PerlPath)\bin\perl.exe" generate_header
move irc.pm.h "$(IntDir)"
move xchat.pm.h "$(IntDir)"</Command>
move hexchat.pm.h "$(IntDir)"</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemGroup>
Expand Down
69 changes: 0 additions & 69 deletions plugins/perl/syntax_highlight

This file was deleted.

43 changes: 0 additions & 43 deletions plugins/perl/xcperl_build.bat

This file was deleted.

189 changes: 75 additions & 114 deletions plugins/python/python.c
Expand Up @@ -83,18 +83,9 @@
#define VERSION_MAJOR 1
#define VERSION_MINOR 0

/* Version string macro */
#ifdef WIN32
#if PY_MAJOR_VERSION == 2
#define VERSION STRINGIZE(VERSION_MAJOR) "." STRINGIZE(VERSION_MINOR) "/2.7" /* Linked to python27.dll */
#elif PY_MAJOR_VERSION == 3
#define VERSION STRINGIZE(VERSION_MAJOR) "." STRINGIZE(VERSION_MINOR) "/3.3" /* Linked to python33.dll */
#endif
#endif

#ifndef VERSION
#define VERSION STRINGIZE(VERSION_MAJOR) "." STRINGIZE(VERSION_MINOR)
#endif
/* Version string macro e.g 1.0/3.3 */
#define VERSION STRINGIZE(VERSION_MAJOR) "." STRINGIZE(VERSION_MINOR) "/" \
STRINGIZE(PY_MAJOR_VERSION) "." STRINGIZE (PY_MINOR_VERSION)

/* #define's for Python 2 */
#if PY_MAJOR_VERSION == 2
Expand Down Expand Up @@ -280,6 +271,7 @@ typedef struct {
/* Function declarations */

static PyObject *Util_BuildList(char *word[]);
static PyObject *Util_BuildEOLList(char *word[]);
static void Util_Autoload();
static char *Util_Expand(char *filename);

Expand Down Expand Up @@ -382,7 +374,7 @@ Usage: /PY LOAD <filename>\n\
ABOUT\n\
\n";

static const char about[] = "HexChat Python " PY_VERSION " Interface Version " VERSION "\n";
static const char about[] = "HexChat Python interface version " VERSION "\n";

/* ===================================================================== */
/* Utility functions */
Expand All @@ -391,24 +383,76 @@ static PyObject *
Util_BuildList(char *word[])
{
PyObject *list;
int listsize = 0;
int listsize = 31;
int i;
while (word[listsize] && word[listsize][0])
listsize++;
/* Find the last valid array member; there may be intermediate NULLs that
* would otherwise cause us to drop some members. */
while (listsize > 0 &&
(word[listsize] == NULL || word[listsize][0] == 0))
listsize--;
list = PyList_New(listsize);
if (list == NULL) {
PyErr_Print();
PyErr_Print();
return NULL;
}
for (i = 0; i != listsize; i++) {
PyObject *o = PyUnicode_FromString(word[i]);
if (o == NULL) {
Py_DECREF(list);
PyErr_Print();
return NULL;
for (i = 1; i <= listsize; i++) {
PyObject *o;
if (word[i] == NULL) {
Py_INCREF(Py_None);
o = Py_None;
} else {
/* This handles word[i][0] == 0 automatically. */
o = PyUnicode_FromString(word[i]);
}
PyList_SetItem(list, i - 1, o);
}
return list;
}

static PyObject *
Util_BuildEOLList(char *word[])
{
PyObject *list;
int listsize = 31;
int i;
/* Find the last valid array member; there may be intermediate NULLs that
* would otherwise cause us to drop some members. */
while (listsize > 0 &&
(word[listsize] == NULL || word[listsize][0] == 0))
listsize--;
list = PyList_New(listsize);
if (list == NULL) {
PyErr_Print();
return NULL;
}
char *accum = NULL;
char *last = NULL;
for (i = listsize; i > 0; i--) {
char *part = word[i];
if (accum == NULL) {
accum = g_strdup (part);
} else if (part != NULL && part[0] != 0) {
last = accum;
accum = g_strjoin(" ", part, last, NULL);
g_free (last);
last = NULL;

if (accum == NULL) {
Py_DECREF(list);
hexchat_print(ph, "Not enough memory to alloc accum"
"for python plugin callback");
return NULL;
}
}
PyList_SetItem(list, i, o);
PyObject *uni_part = PyUnicode_FromString(accum);
PyList_SetItem(list, i - 1, uni_part);
}

if (last)
g_free (last);
if (accum)
g_free (accum);

return list;
}

Expand Down Expand Up @@ -524,12 +568,12 @@ Callback_Server(char *word[], char *word_eol[], hexchat_event_attrs *attrs, void
plugin = hook->plugin;
BEGIN_PLUGIN(plugin);

word_list = Util_BuildList(word+1);
word_list = Util_BuildList(word);
if (word_list == NULL) {
END_PLUGIN(plugin);
return 0;
}
word_eol_list = Util_BuildList(word_eol+1);
word_eol_list = Util_BuildList(word_eol);
if (word_eol_list == NULL) {
Py_DECREF(word_list);
END_PLUGIN(plugin);
Expand Down Expand Up @@ -575,12 +619,12 @@ Callback_Command(char *word[], char *word_eol[], void *userdata)
plugin = hook->plugin;
BEGIN_PLUGIN(plugin);

word_list = Util_BuildList(word+1);
word_list = Util_BuildList(word);
if (word_list == NULL) {
END_PLUGIN(plugin);
return 0;
}
word_eol_list = Util_BuildList(word_eol+1);
word_eol_list = Util_BuildList(word_eol);
if (word_eol_list == NULL) {
Py_DECREF(word_list);
END_PLUGIN(plugin);
Expand Down Expand Up @@ -615,58 +659,19 @@ Callback_Print_Attrs(char *word[], hexchat_event_attrs *attrs, void *userdata)
PyObject *word_list;
PyObject *word_eol_list;
PyObject *attributes;
char **word_eol;
char *word_eol_raw;
int listsize = 0;
int next = 0;
int i;
int ret = 0;
PyObject *plugin;

/* Cut off the message identifier. */
word += 1;

/* HexChat doesn't provide a word_eol for print events, so we
* build our own here. */
while (word[listsize] && word[listsize][0])
listsize++;
word_eol = (char **) g_malloc(sizeof(char*)*(listsize+1));
if (word_eol == NULL) {
hexchat_print(ph, "Not enough memory to alloc word_eol "
"for python plugin callback.");
return 0;
}
/* First build a word clone, but NULL terminated. */
memcpy(word_eol, word, listsize*sizeof(char*));
word_eol[listsize] = NULL;
/* Then join it. */
word_eol_raw = g_strjoinv(" ", word_eol);
if (word_eol_raw == NULL) {
hexchat_print(ph, "Not enough memory to alloc word_eol_raw "
"for python plugin callback.");
return 0;
}
/* And rebuild the real word_eol. */
for (i = 0; i != listsize; i++) {
word_eol[i] = word_eol_raw+next;
next += strlen(word[i])+1;
}
word_eol[i] = "";

plugin = hook->plugin;
BEGIN_PLUGIN(plugin);

word_list = Util_BuildList(word);
if (word_list == NULL) {
g_free(word_eol_raw);
g_free(word_eol);
END_PLUGIN(plugin);
return 0;
}
word_eol_list = Util_BuildList(word_eol);
word_eol_list = Util_BuildEOLList(word);
if (word_eol_list == NULL) {
g_free(word_eol_raw);
g_free(word_eol);
Py_DECREF(word_list);
END_PLUGIN(plugin);
return 0;
Expand All @@ -681,8 +686,6 @@ Callback_Print_Attrs(char *word[], hexchat_event_attrs *attrs, void *userdata)
Py_DECREF(word_eol_list);
Py_DECREF(attributes);

g_free(word_eol_raw);
g_free(word_eol);
if (retobj == Py_None) {
ret = HEXCHAT_EAT_NONE;
Py_DECREF(retobj);
Expand All @@ -705,72 +708,30 @@ Callback_Print(char *word[], void *userdata)
PyObject *retobj;
PyObject *word_list;
PyObject *word_eol_list;
char **word_eol;
char *word_eol_raw;
int listsize = 0;
int next = 0;
int i;
int ret = 0;
PyObject *plugin;

/* Cut off the message identifier. */
word += 1;

/* HexChat doesn't provide a word_eol for print events, so we
* build our own here. */
while (word[listsize] && word[listsize][0])
listsize++;
word_eol = (char **) g_malloc(sizeof(char*)*(listsize+1));
if (word_eol == NULL) {
hexchat_print(ph, "Not enough memory to alloc word_eol "
"for python plugin callback.");
return 0;
}
/* First build a word clone, but NULL terminated. */
memcpy(word_eol, word, listsize*sizeof(char*));
word_eol[listsize] = NULL;
/* Then join it. */
word_eol_raw = g_strjoinv(" ", word_eol);
if (word_eol_raw == NULL) {
hexchat_print(ph, "Not enough memory to alloc word_eol_raw "
"for python plugin callback.");
return 0;
}
/* And rebuild the real word_eol. */
for (i = 0; i != listsize; i++) {
word_eol[i] = word_eol_raw+next;
next += strlen(word[i])+1;
}
word_eol[i] = "";

plugin = hook->plugin;
BEGIN_PLUGIN(plugin);

word_list = Util_BuildList(word);
if (word_list == NULL) {
g_free(word_eol_raw);
g_free(word_eol);
END_PLUGIN(plugin);
return 0;
}
word_eol_list = Util_BuildList(word_eol);
word_eol_list = Util_BuildEOLList(word);
if (word_eol_list == NULL) {
g_free(word_eol_raw);
g_free(word_eol);
Py_DECREF(word_list);
END_PLUGIN(plugin);
return 0;
}


retobj = PyObject_CallFunction(hook->callback, "(OOO)", word_list,
word_eol_list, hook->userdata);

Py_DECREF(word_list);
Py_DECREF(word_eol_list);

g_free(word_eol_raw);
g_free(word_eol);
if (retobj == Py_None) {
ret = HEXCHAT_EAT_NONE;
Py_DECREF(retobj);
Expand Down Expand Up @@ -1968,7 +1929,7 @@ Module_hexchat_pluginpref_list(PyObject *self, PyObject *args)
{
PluginObject *plugin = (PluginObject*)Plugin_GetCurrent();
hexchat_plugin *prefph = Plugin_GetHandle(plugin);
char list[512];
char list[4096];
char* token;
int result;
PyObject *pylist;
Expand Down
4 changes: 2 additions & 2 deletions plugins/python/python2.vcxproj
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Configuration">
<PlatformToolset>v110</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|Win32">
Expand Down
4 changes: 2 additions & 2 deletions plugins/python/python3.vcxproj
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Configuration">
<PlatformToolset>v110</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|Win32">
Expand Down
19 changes: 7 additions & 12 deletions plugins/sysinfo/match.c
Expand Up @@ -32,36 +32,31 @@ float percentage(unsigned long long *free, unsigned long long *total)

char *pretty_freespace(const char *desc, unsigned long long *free_k, unsigned long long *total_k)
{
char *result, *bytesize;
char *result, **quantity;
double free_space, total_space;
free_space = *free_k;
total_space = *total_k;
result = malloc(bsize * sizeof(char));
const char *quantities = "KB\0MB\0GB\0TB\0PB\0EB\0ZB\0YB\0";
int i=0;
char *quantities[] = { "KiB", "MiB", "GiB", "TiB", "PiB", "EiB", "ZiB", "YiB", 0 };
if (total_space == 0)
{
snprintf(result, bsize, "%s: none", desc);
return result;
}
bytesize = malloc(3 * sizeof(char));
while (total_space > 1023 && i <= 14)
quantity = quantities;
while (total_space > 1023 && *(quantity + 1))
{
i=i+3;
*bytesize=*(quantities+i);
*(bytesize+1)=*(quantities+i+1);
*(bytesize+2)=*(quantities+i+2);
quantity++;
free_space = free_space / 1024;
total_space = total_space / 1024;
}
if (sysinfo_get_percent () != 0)
snprintf(result, bsize, "%s: %.1f%s, %.1f%% free",
desc, total_space, bytesize,
desc, total_space, *quantity,
percentage(free_k, total_k));
else
snprintf(result, bsize, "%s: %.1f%s/%.1f%s free",
desc, free_space, bytesize, total_space, bytesize);
free (bytesize);
desc, free_space, *quantity, total_space, *quantity);
return result;
}

Expand Down
12 changes: 6 additions & 6 deletions plugins/sysinfo/parse.c
Expand Up @@ -399,12 +399,6 @@ int xs_parse_distro(char *name)
fgets(buffer, bsize, fp);
else if((fp = fopen("/etc/mandrake-release", "r")) != NULL)
fgets(buffer, bsize, fp);
else if((fp = fopen("/etc/debian_version", "r")) != NULL)
{
char release[bsize];
fgets(release, bsize, fp);
snprintf(buffer, bsize, "Debian %s", release);
}
else if((fp = fopen("/etc/SuSE-release", "r")) != NULL)
fgets(buffer, bsize, fp);
else if((fp = fopen("/etc/turbolinux-release", "r")) != NULL)
Expand All @@ -425,6 +419,12 @@ int xs_parse_distro(char *name)
}
snprintf(buffer, bsize, "%s \"%s\" %s", id, codename, release);
}
else if((fp = fopen("/etc/debian_version", "r")) != NULL)
{
char release[bsize];
fgets(release, bsize, fp);
snprintf(buffer, bsize, "Debian %s", release);
}
else
snprintf(buffer, bsize, "Unknown Distro");
if(fp != NULL) fclose(fp);
Expand Down
4 changes: 2 additions & 2 deletions plugins/sysinfo/sysinfo.vcxproj
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Configuration">
<PlatformToolset>v110</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|Win32">
Expand Down
10 changes: 5 additions & 5 deletions plugins/sysinfo/xsys.c
Expand Up @@ -140,11 +140,11 @@ print_summary (int announce, char* format)

if (giga)
{
snprintf (buffer, bsize, "%d x %s (%s) @ %.2fGHz", count, cpu_model, cpu_vendor, cpu_freq);
snprintf (buffer, bsize, "%u x %s (%s) @ %.2fGHz", count, cpu_model, cpu_vendor, cpu_freq);
}
else
{
snprintf (buffer, bsize, "%d x %s (%s) @ %.0fMHz", count, cpu_model, cpu_vendor, cpu_freq);
snprintf (buffer, bsize, "%u x %s (%s) @ %.0fMHz", count, cpu_model, cpu_vendor, cpu_freq);
}

format_output ("CPU", buffer, format);
Expand Down Expand Up @@ -332,11 +332,11 @@ print_cpu (int announce, char* format)

if (giga)
{
snprintf (buffer, bsize, "%d x %s (%s) @ %.2fGHz w/ %s L2 Cache", count, model, vendor, freq, cache);
snprintf (buffer, bsize, "%u x %s (%s) @ %.2fGHz w/ %s L2 Cache", count, model, vendor, freq, cache);
}
else
{
snprintf (buffer, bsize, "%d x %s (%s) @ %.0fMHz w/ %s L2 Cache", count, model, vendor, freq, cache);
snprintf (buffer, bsize, "%u x %s (%s) @ %.0fMHz w/ %s L2 Cache", count, model, vendor, freq, cache);
}

format_output ("CPU", buffer, format);
Expand Down Expand Up @@ -598,7 +598,7 @@ netdata_cb (char *word[], char *word_eol[], void *userdata)
bytes_recv /= 1024;
bytes_sent /= 1024;

snprintf (netdata, bsize, "%s: %.1f MB Recieved, %.1f MB Sent", word[2], (double)bytes_recv/1024.0, (double)bytes_sent/1024.0);
snprintf (netdata, bsize, "%s: %.1f MB Received, %.1f MB Sent", word[2], (double)bytes_recv/1024.0, (double)bytes_sent/1024.0);
hexchat_pluginpref_get_str (ph, "format", format);
format_output ("Netdata", netdata, format);

Expand Down
4 changes: 2 additions & 2 deletions plugins/upd/upd.vcxproj
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Configuration">
<PlatformToolset>v110</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|Win32">
Expand Down
4 changes: 2 additions & 2 deletions plugins/winamp/winamp.vcxproj
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Configuration">
<PlatformToolset>v110</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|Win32">
Expand Down
7 changes: 0 additions & 7 deletions plugins/xdcc/Makefile.am

This file was deleted.

18 changes: 0 additions & 18 deletions plugins/xdcc/makefile.mak

This file was deleted.

331 changes: 0 additions & 331 deletions plugins/xdcc/xdcc.c

This file was deleted.

53 changes: 53 additions & 0 deletions po/LINGUAS
@@ -0,0 +1,53 @@
af
am
ast
az
be
bg
ca
cs
da
de
el
en_GB
es
et
eu
fi
fr
gl
gu
hi
hu
id
it
ja_JP
kn
ko
lt
lv
mk
ml
ms
nb
nl
no
pa
pl
pt
pt_BR
ru
rw
sk
sl
sq
sr
sr@latin
sv
th
tr
uk
vi
wa
zh_CN
zh_TW
4 changes: 3 additions & 1 deletion po/POTFILES.in
@@ -1,3 +1,6 @@
data/misc/hexchat.appdata.xml.in
data/misc/hexchat.desktop.in
data/misc/htm.desktop.in
src/common/cfgfiles.c
src/common/dcc.c
src/common/hexchat.c
Expand Down Expand Up @@ -28,7 +31,6 @@ src/fe-gtk/notifygui.c
src/fe-gtk/plugin-tray.c
src/fe-gtk/plugingui.c
src/fe-gtk/rawlog.c
src/fe-gtk/search.c
src/fe-gtk/servlistgui.c
src/fe-gtk/setup.c
src/fe-gtk/sexy-spell-entry.c
Expand Down
3,333 changes: 1,678 additions & 1,655 deletions po/af.po

Large diffs are not rendered by default.

3,337 changes: 1,680 additions & 1,657 deletions po/am.po

Large diffs are not rendered by default.

3,365 changes: 1,694 additions & 1,671 deletions po/ast.po

Large diffs are not rendered by default.

3,347 changes: 1,685 additions & 1,662 deletions po/az.po

Large diffs are not rendered by default.

3,365 changes: 1,694 additions & 1,671 deletions po/be.po

Large diffs are not rendered by default.

3,355 changes: 1,689 additions & 1,666 deletions po/bg.po

Large diffs are not rendered by default.

3,359 changes: 1,691 additions & 1,668 deletions po/ca.po

Large diffs are not rendered by default.

3,365 changes: 1,694 additions & 1,671 deletions po/cs.po

Large diffs are not rendered by default.

3,359 changes: 1,691 additions & 1,668 deletions po/da.po

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion po/de.po
Expand Up @@ -21,7 +21,7 @@ msgstr ""
"Project-Id-Version: HexChat\n"
"Report-Msgid-Bugs-To: www.hexchat.org\n"
"POT-Creation-Date: 2013-09-08 01:16-0400\n"
"PO-Revision-Date: 2013-09-08 05:21+0000\n"
"PO-Revision-Date: 2013-11-20 09:21+0000\n"
"Last-Translator: TingPing <tingping@tingping.se>\n"
"Language-Team: German (http://www.transifex.com/projects/p/hexchat/language/de/)\n"
"MIME-Version: 1.0\n"
Expand Down
3,367 changes: 1,695 additions & 1,672 deletions po/el.po

Large diffs are not rendered by default.

90 changes: 46 additions & 44 deletions po/en_GB.po
Expand Up @@ -3,17 +3,19 @@
#
# Translators:
# sacarasc <sacarasc@gmail.com>, 2013
# Sir_Burpalot <doctor.z01db3rg@gmail.com>, 2014
# Gareth Owen <gowen72@yahoo.com>, 2004
# tea <Srbulov.Ivan@gmail.com>, 2013
# rbh00 <rbh00@netcom.com>, 2013
# sacarasc <sacarasc@gmail.com>, 2012
# TheEndermen <theendermenofdoom@gmail.com>, 2012
msgid ""
msgstr ""
"Project-Id-Version: HexChat\n"
"Report-Msgid-Bugs-To: www.hexchat.org\n"
"POT-Creation-Date: 2013-09-08 01:16-0400\n"
"PO-Revision-Date: 2013-09-08 05:21+0000\n"
"Last-Translator: TingPing <tingping@tingping.se>\n"
"PO-Revision-Date: 2014-01-05 04:00+0000\n"
"Last-Translator: Sir_Burpalot <doctor.z01db3rg@gmail.com>\n"
"Language-Team: English (United Kingdom) (http://www.transifex.com/projects/p/hexchat/language/en_GB/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
Expand Down Expand Up @@ -355,11 +357,11 @@ msgstr "CHARSET [<encoding>], get or set the encoding used for the current conne
msgid ""
"CLEAR [ALL|HISTORY|[-]<amount>], Clears the current text window or command "
"history"
msgstr ""
msgstr "CLEAR [ALL|HISTORY|[-]<amount>], Clears the current text window or command history"

#: src/common/outbound.c:3819
msgid "CLOSE [-m], Closes the current window/tab or all queries"
msgstr ""
msgstr "CLOSE [-m], Closes the current window/tab or all queries"

#: src/common/outbound.c:3822
msgid "COUNTRY [-s] <code|wildcard>, finds a country code, eg: au = australia"
Expand Down Expand Up @@ -546,7 +548,7 @@ msgstr "MOP, Mass op's all users in the current channel (needs chanop)"
msgid ""
"MSG <nick> <message>, sends a private message, message \".\" to send to last"
" nick or prefix with \"=\" for dcc chat"
msgstr ""
msgstr "MSG <nick> <message>, sends a private message, message \".\" to send to last nick or prefix with \"=\" for dcc chat"

#: src/common/outbound.c:3922
msgid "NAMES, Lists the nicks on the current channel"
Expand Down Expand Up @@ -627,7 +629,7 @@ msgstr "RECV <text>, send raw data to HexChat, as if it was received from the IR

#: src/common/outbound.c:3954
msgid "RELOAD <name>, reloads a plugin or script"
msgstr ""
msgstr "RELOAD <name>, reloads a plugin or script"

#: src/common/outbound.c:3956
msgid "SAY <text>, sends the text to the object in the current window"
Expand Down Expand Up @@ -902,7 +904,7 @@ msgstr "%C22*%O$t%C26$1%O removes quiet on %C18$2%O"

#: src/common/textevents.h:108
msgid "%C22*%O$tChannel %C22$1%O url: %C24$2"
msgstr ""
msgstr "%C22*%O$tChannel %C22$1%O url: %C24$2"

#: src/common/textevents.h:111
msgid "%C22*%O$t%C26$1%O gives voice to %C18$2%O"
Expand Down Expand Up @@ -1099,7 +1101,7 @@ msgstr "%C24*%O$tYou have been invited to %C22$1%O by %C18$2%O (%C29$3%O)"
#: src/common/textevents.h:252
#, c-format
msgid "%C23*$t$1 ($3%C23) has joined"
msgstr ""
msgstr "%C23*$t$1 ($3%C23) has joined"

#: src/common/textevents.h:255
msgid "%C20*%O$tCannot join %C22$1%C (%C20Requires keyword%O)"
Expand Down Expand Up @@ -1170,12 +1172,12 @@ msgstr "%C23*%O$tNotify: %C18$1%C is online (%C29$3%O)"
#: src/common/textevents.h:318
#, c-format
msgid "%C24*$t$1 ($2%C24) has left"
msgstr ""
msgstr "%C24*$t$1 ($2%C24) has left"

#: src/common/textevents.h:321
#, c-format
msgid "%C24*$t$1 ($2%C24) has left ($4)"
msgstr ""
msgstr "%C24*$t$1 ($2%C24) has left ($4)"

#: src/common/textevents.h:324
msgid "%C24*%O$tPing reply from %C18$1%C: %C24$2%O second(s)"
Expand Down Expand Up @@ -1208,7 +1210,7 @@ msgstr "%C24*%O$tLooking up IP number for %C18$1%O..."

#: src/common/textevents.h:357
msgid "%C23*%O$tAuthenticating via SASL as %C18$1%O (%C24$2%O)"
msgstr ""
msgstr "%C23*%O$tAuthenticating via SASL as %C18$1%O (%C24$2%O)"

#: src/common/textevents.h:363
msgid "%C29*%O$tConnected."
Expand Down Expand Up @@ -1236,7 +1238,7 @@ msgstr "%C22*%O$tTopic for %C22$1%C set by %C26$2%C (%C24$3%O)"

#: src/common/textevents.h:393
msgid "%C20*%O$tUnknown host. Maybe you misspelled it?"
msgstr "%C20*%O$tUnknown host. Maybe you misspelled it?"
msgstr "%C20*%O$tUnknown host. Maybe you misspelt it?"

#: src/common/textevents.h:396
msgid "%C20*%O$tCannot join %C22$1%C (%C20User limit reached%O)"
Expand Down Expand Up @@ -1668,7 +1670,7 @@ msgstr "Channel Name"

#: src/common/text.c:1301
msgid "Mechanism"
msgstr ""
msgstr "Mechanism"

#: src/common/text.c:1306 src/common/text.c:1314
msgid "Raw Numeric or Identifier"
Expand Down Expand Up @@ -3343,7 +3345,7 @@ msgstr "Open URL or execute command in an existing HexChat"

#: src/fe-gtk/fe-gtk.c:132
msgid "Begin minimized. Level 0=Normal 1=Iconified 2=Tray"
msgstr "Begin minimized. Level 0=Normal 1=Iconified 2=Tray"
msgstr "Begin minimised. Level 0=Normal 1=Iconified 2=Tray"

#: src/fe-gtk/fe-gtk.c:132
msgid "level"
Expand Down Expand Up @@ -3405,7 +3407,7 @@ msgstr "The Insert in Buffer command will insert the contents of Data 1 into t
msgid ""
"The Scroll Page command scrolls the text widget up or down one page or one"
" line. Set Data 1 to either Top, Bottom, Up, Down, +1 or -1."
msgstr ""
msgstr "The Scroll Page command scrolls the text widget up or down one page or one line. Set Data 1 to either Top, Bottom, Up, Down, +1 or -1."

#: src/fe-gtk/fkeys.c:153
msgid ""
Expand Down Expand Up @@ -3707,7 +3709,7 @@ msgstr "Some file transfers are still active."

#: src/fe-gtk/maingui.c:1280
msgid "_Minimize to Tray"
msgstr "_Minimize to Tray"
msgstr "_Minimise to Tray"

#: src/fe-gtk/maingui.c:1500
msgid "Insert Attribute or Color Code"
Expand Down Expand Up @@ -3913,7 +3915,7 @@ msgstr "_Autojoin"

#: src/fe-gtk/menu.c:1054
msgid "Autojoin Channel"
msgstr ""
msgstr "Autojoin Channel"

#: src/fe-gtk/menu.c:1088 src/fe-gtk/menu.c:1092
msgid "_Auto-Connect"
Expand Down Expand Up @@ -4143,15 +4145,15 @@ msgstr "_Reconnect"

#: src/fe-gtk/menu.c:1751
msgid "_Join a Channel..."
msgstr ""
msgstr "_Join a Channel..."

#: src/fe-gtk/menu.c:1752
msgid "_List of Channels..."
msgstr ""
msgstr "_List of Channels..."

#: src/fe-gtk/menu.c:1755
msgid "Marked _Away"
msgstr ""
msgstr "Marked _Away"

#: src/fe-gtk/menu.c:1757
msgid "_Usermenu"
Expand Down Expand Up @@ -4207,7 +4209,7 @@ msgstr "_Window"

#: src/fe-gtk/menu.c:1773
msgid "_Ban List..."
msgstr ""
msgstr "_Ban List..."

#: src/fe-gtk/menu.c:1774
msgid "Character Chart..."
Expand All @@ -4219,7 +4221,7 @@ msgstr "Direct Chat..."

#: src/fe-gtk/menu.c:1776
msgid "File _Transfers..."
msgstr ""
msgstr "File _Transfers..."

#: src/fe-gtk/menu.c:1777
msgid "Friends List..."
Expand All @@ -4231,11 +4233,11 @@ msgstr "Ignore List..."

#: src/fe-gtk/menu.c:1779
msgid "_Plugins and Scripts..."
msgstr ""
msgstr "_Plugins and Scripts..."

#: src/fe-gtk/menu.c:1780
msgid "_Raw Log..."
msgstr ""
msgstr "_Raw Log..."

#: src/fe-gtk/menu.c:1781
msgid "URL Grabber..."
Expand Down Expand Up @@ -4471,11 +4473,11 @@ msgstr "_Load..."

#: src/fe-gtk/plugingui.c:270
msgid "_Unload"
msgstr ""
msgstr "_Unload"

#: src/fe-gtk/plugingui.c:273
msgid "_Reload"
msgstr ""
msgstr "_Reload"

#: src/fe-gtk/rawlog.c:80 src/fe-gtk/rawlog.c:146 src/fe-gtk/textgui.c:428
#: src/fe-gtk/urlgrab.c:216
Expand Down Expand Up @@ -4687,7 +4689,7 @@ msgstr "Skip network list on startup"

#: src/fe-gtk/servlistgui.c:2071
msgid "Show favorites only"
msgstr "Show favorites only"
msgstr "Show favourites only"

#: src/fe-gtk/servlistgui.c:2101
msgid "_Edit..."
Expand All @@ -4705,11 +4707,11 @@ msgstr "Sorts the network list in alphabetical order. Use SHIFT-UP and SHIFT-DOW

#: src/fe-gtk/servlistgui.c:2117
msgid "_Favor"
msgstr "_Favor"
msgstr "_Favour"

#: src/fe-gtk/servlistgui.c:2118
msgid "Mark or unmark this network as a favorite."
msgstr "Mark or unmark this network as a favorite."
msgstr "Mark or unmark this network as a favourite."

#: src/fe-gtk/servlistgui.c:2142
msgid "C_onnect"
Expand Down Expand Up @@ -5075,15 +5077,15 @@ msgstr "Nick completion sorted:"

#: src/fe-gtk/setup.c:222
msgid "Nick completion amount:"
msgstr ""
msgstr "Nick completion amount:"

#: src/fe-gtk/setup.c:222
msgid "Threshold of nicks to start listing instead of completing"
msgstr ""
msgstr "Threshold of nicks to start listing instead of completing"

#: src/fe-gtk/setup.c:222
msgid "nicks."
msgstr ""
msgstr "nicks."

#: src/fe-gtk/setup.c:225
msgid "Input Box Codes"
Expand Down Expand Up @@ -5436,15 +5438,15 @@ msgstr "Omit alerts while the window is focused"

#: src/fe-gtk/setup.c:435
msgid "Tray Behavior"
msgstr "Tray Behavior"
msgstr "Tray Behaviour"

#: src/fe-gtk/setup.c:437 src/fe-gtk/setup.c:439
msgid "Enable system tray icon"
msgstr "Enable system tray icon"

#: src/fe-gtk/setup.c:441
msgid "Minimize to tray"
msgstr "Minimize to tray"
msgstr "Minimise to tray"

#: src/fe-gtk/setup.c:442
msgid "Close to tray"
Expand Down Expand Up @@ -5551,23 +5553,23 @@ msgstr "Hide channel join/part messages by default."

#: src/fe-gtk/setup.c:503
msgid "*!*@*.host"
msgstr ""
msgstr "*!*@*.host"

#: src/fe-gtk/setup.c:504
msgid "*!*@domain"
msgstr ""
msgstr "*!*@domain"

#: src/fe-gtk/setup.c:505
msgid "*!*user@*.host"
msgstr ""
msgstr "*!*user@*.host"

#: src/fe-gtk/setup.c:506
msgid "*!*user@domain"
msgstr ""
msgstr "*!*user@domain"

#: src/fe-gtk/setup.c:512
msgid "Auto Copy Behavior"
msgstr "Auto Copy Behavior"
msgstr "Auto Copy Behaviour"

#: src/fe-gtk/setup.c:513
msgid "Automatically copy selected text"
Expand Down Expand Up @@ -5609,7 +5611,7 @@ msgstr "Alternative fonts:"

#: src/fe-gtk/setup.c:528
msgid "Separate multiple entries with commas without spaces before or after."
msgstr ""
msgstr "Separate multiple entries with commas without spaces before or after."

#: src/fe-gtk/setup.c:530
msgid "Display lists in compact mode"
Expand All @@ -5621,13 +5623,13 @@ msgstr "Use less spacing between user list/channel tree rows."

#: src/fe-gtk/setup.c:531
msgid "Use server time if supported"
msgstr ""
msgstr "Use server time if supported"

#: src/fe-gtk/setup.c:531
msgid ""
"Display timestamps obtained from server if it supports the time-server "
"extension."
msgstr ""
msgstr "Display timestamps obtained from server if it supports the time-server extension."

#: src/fe-gtk/setup.c:532
msgid "Automatically reconnect to servers on disconnect"
Expand All @@ -5643,13 +5645,13 @@ msgstr "Auto join delay:"

#: src/fe-gtk/setup.c:535
msgid "Ban Type:"
msgstr ""
msgstr "Ban Type:"

#: src/fe-gtk/setup.c:535
msgid ""
"Attempt to use this banmask when banning or quieting. (requires "
"irc_who_join)"
msgstr ""
msgstr "Attempt to use this banmask when banning or quieting. (requires irc_who_join)"

#: src/fe-gtk/setup.c:542 src/fe-gtk/setup.c:1853
msgid "Logging"
Expand Down
2 changes: 1 addition & 1 deletion po/es.po
Expand Up @@ -10,7 +10,7 @@ msgstr ""
"Project-Id-Version: HexChat\n"
"Report-Msgid-Bugs-To: www.hexchat.org\n"
"POT-Creation-Date: 2013-09-08 01:16-0400\n"
"PO-Revision-Date: 2013-09-08 18:10+0000\n"
"PO-Revision-Date: 2013-11-20 09:21+0000\n"
"Last-Translator: VegaDark <vegadark89@gmail.com>\n"
"Language-Team: Spanish (http://www.transifex.com/projects/p/hexchat/language/es/)\n"
"MIME-Version: 1.0\n"
Expand Down
3,363 changes: 1,693 additions & 1,670 deletions po/et.po

Large diffs are not rendered by default.

3,351 changes: 1,687 additions & 1,664 deletions po/eu.po

Large diffs are not rendered by default.

3,365 changes: 1,694 additions & 1,671 deletions po/fi.po

Large diffs are not rendered by default.

179 changes: 90 additions & 89 deletions po/fr.po

Large diffs are not rendered by default.

3,363 changes: 1,693 additions & 1,670 deletions po/gl.po

Large diffs are not rendered by default.

3,357 changes: 1,690 additions & 1,667 deletions po/gu.po

Large diffs are not rendered by default.

6,080 changes: 0 additions & 6,080 deletions po/hexchat.pot

This file was deleted.

3,357 changes: 1,690 additions & 1,667 deletions po/hi.po

Large diffs are not rendered by default.

3,367 changes: 1,695 additions & 1,672 deletions po/hu.po

Large diffs are not rendered by default.

3,367 changes: 1,695 additions & 1,672 deletions po/id.po

Large diffs are not rendered by default.

75 changes: 38 additions & 37 deletions po/it.po
Expand Up @@ -4,13 +4,14 @@
# Translators:
# Claudio Arseni <claudio.arseni@gmail.com>, 2013
# Eros Palberti - Fabio Viola : How-Tux Team <admin@how-tux.com>, 2006
# Random_R, 2013
msgid ""
msgstr ""
"Project-Id-Version: HexChat\n"
"Report-Msgid-Bugs-To: www.hexchat.org\n"
"POT-Creation-Date: 2013-09-08 01:16-0400\n"
"PO-Revision-Date: 2013-09-09 07:00+0000\n"
"Last-Translator: Claudio Arseni <claudio.arseni@gmail.com>\n"
"PO-Revision-Date: 2013-11-20 09:21+0000\n"
"Last-Translator: Random_R\n"
"Language-Team: Italian (http://www.transifex.com/projects/p/hexchat/language/it/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
Expand Down Expand Up @@ -239,7 +240,7 @@ msgstr " %-20s non in linea\n"

#: src/common/outbound.c:72
msgid "No channel joined. Try /join #<channel>\n"
msgstr "Alcun canale aperto. Provare /join #<canale>\n"
msgstr "Nessun canale aperto. Provare /join #<canale>\n"

#: src/common/outbound.c:78
msgid "Not connected. Try /server <host> [<port>]\n"
Expand Down Expand Up @@ -352,11 +353,11 @@ msgstr "CHARSET [<codifica>], rileva o imposta la codifica usata per la connessi
msgid ""
"CLEAR [ALL|HISTORY|[-]<amount>], Clears the current text window or command "
"history"
msgstr ""
msgstr "CLEAR [ALL|HISTORY|[-]<quantità>], pulisce la finestra di testo corrente o la cronologia dei comandi"

#: src/common/outbound.c:3819
msgid "CLOSE [-m], Closes the current window/tab or all queries"
msgstr ""
msgstr "CLOSE [-m], chiude l'attuale finestra/scheda o tutte quelle private"

#: src/common/outbound.c:3822
msgid "COUNTRY [-s] <code|wildcard>, finds a country code, eg: au = australia"
Expand Down Expand Up @@ -543,7 +544,7 @@ msgstr "MOP, rende operatori tutti gli utenti nel canale attuale (bisogna essere
msgid ""
"MSG <nick> <message>, sends a private message, message \".\" to send to last"
" nick or prefix with \"=\" for dcc chat"
msgstr ""
msgstr "MSG <soprannome> <messaggio>, invia un messaggio privato, messaggio \".\" per inviarlo all'ultimo soprannome contattato o con il prefisso \"=\" per avviare una chat DCC"

#: src/common/outbound.c:3922
msgid "NAMES, Lists the nicks on the current channel"
Expand Down Expand Up @@ -624,7 +625,7 @@ msgstr "RECV <testo>, invia dati in forma grezza a HexChat, come se venissero ri

#: src/common/outbound.c:3954
msgid "RELOAD <name>, reloads a plugin or script"
msgstr ""
msgstr "RELOAD <nome>, ricarica un plugin o uno script"

#: src/common/outbound.c:3956
msgid "SAY <text>, sends the text to the object in the current window"
Expand Down Expand Up @@ -899,7 +900,7 @@ msgstr "%C22*%O$t%C26$1%O ha rimosso il quiet su %C18$2%O"

#: src/common/textevents.h:108
msgid "%C22*%O$tChannel %C22$1%O url: %C24$2"
msgstr ""
msgstr "%C22*%O$tCanale %C22$1%O url: %C24$2"

#: src/common/textevents.h:111
msgid "%C22*%O$t%C26$1%O gives voice to %C18$2%O"
Expand Down Expand Up @@ -1096,7 +1097,7 @@ msgstr "%C24*%O$tHai ricevuto un invito per %C22$1%O da %C18$2%O (%C29$3%O)"
#: src/common/textevents.h:252
#, c-format
msgid "%C23*$t$1 ($3%C23) has joined"
msgstr ""
msgstr "%C23*$t$1 ($3%C23) è entrato"

#: src/common/textevents.h:255
msgid "%C20*%O$tCannot join %C22$1%C (%C20Requires keyword%O)"
Expand Down Expand Up @@ -1167,12 +1168,12 @@ msgstr "%C23*%O$tNotifica: %C18$1%C è in linea (%C29$3%O)"
#: src/common/textevents.h:318
#, c-format
msgid "%C24*$t$1 ($2%C24) has left"
msgstr ""
msgstr "%C24*$t$1 ($2%C24) abbandona"

#: src/common/textevents.h:321
#, c-format
msgid "%C24*$t$1 ($2%C24) has left ($4)"
msgstr ""
msgstr "%C24*$t$1 ($2%C24) ha abbandonato ($4)"

#: src/common/textevents.h:324
msgid "%C24*%O$tPing reply from %C18$1%C: %C24$2%O second(s)"
Expand Down Expand Up @@ -1205,7 +1206,7 @@ msgstr "%C24*%O$tRicerca dell'indirizzo IP per %C18$1%O..."

#: src/common/textevents.h:357
msgid "%C23*%O$tAuthenticating via SASL as %C18$1%O (%C24$2%O)"
msgstr ""
msgstr "%C23*%O$tAutenticazione SASL come %C18$1%O (%C24$2%O)"

#: src/common/textevents.h:363
msgid "%C29*%O$tConnected."
Expand Down Expand Up @@ -1665,7 +1666,7 @@ msgstr "Nome del canale"

#: src/common/text.c:1301
msgid "Mechanism"
msgstr ""
msgstr "Meccanismo"

#: src/common/text.c:1306 src/common/text.c:1314
msgid "Raw Numeric or Identifier"
Expand Down Expand Up @@ -3120,7 +3121,7 @@ msgstr "Mostra solo:"

#: src/fe-gtk/chanlist.c:828
msgid "channels with"
msgstr "canali con"
msgstr "canali con, da"

#: src/fe-gtk/chanlist.c:841
msgid "to"
Expand Down Expand Up @@ -3402,7 +3403,7 @@ msgstr "La funzione Insert in Buffer inserirà il contenuto di «Dati 1» nella
msgid ""
"The Scroll Page command scrolls the text widget up or down one page or one"
" line. Set Data 1 to either Top, Bottom, Up, Down, +1 or -1."
msgstr ""
msgstr "Il comando Scroll Page scorre l'oggetto testo su o giù di una pagina o di una riga. Impostare Data 1 a Top, Bottom, Up, Down, +1 o -1."

#: src/fe-gtk/fkeys.c:153
msgid ""
Expand Down Expand Up @@ -3643,23 +3644,23 @@ msgstr "_Niente, verrà selezionato successivamente un canale."

#: src/fe-gtk/joind.c:187
msgid "_Join this channel:"
msgstr "_Entra in questo canale:"
msgstr "_Entrare in questo canale:"

#: src/fe-gtk/joind.c:199
msgid "If you know the name of the channel you want to join, enter it here."
msgstr "Se si conosce il nome del canale nel quale si vuole entrare, digitarlo qui."

#: src/fe-gtk/joind.c:206
msgid "O_pen the Channel-List window."
msgstr "A_pri la finestra elenco canali"
msgstr "A_prire la finestra elenco canali"

#: src/fe-gtk/joind.c:213
msgid "Retrieving the Channel-List may take a minute or two."
msgstr "Il recupero dell'elenco dei canali potrebbe richiedere un minuto o due."

#: src/fe-gtk/joind.c:220
msgid "_Always show this dialog after connecting."
msgstr "_Mostr_a sempre questo dialogo dopo la connessione"
msgstr "Mostr_are sempre questo dialogo dopo la connessione"

#: src/fe-gtk/maingui.c:437
msgid "Dialog with"
Expand Down Expand Up @@ -3692,7 +3693,7 @@ msgstr "Non chiedere la prossima volta."
#: src/fe-gtk/maingui.c:1258
#, c-format
msgid "You are connected to %i IRC networks."
msgstr "Connesso a %i reti IRC."
msgstr "Reti IRC connesse %i."

#: src/fe-gtk/maingui.c:1260
msgid "Are you sure you want to quit?"
Expand Down Expand Up @@ -3910,7 +3911,7 @@ msgstr "_Accesso automatico"

#: src/fe-gtk/menu.c:1054
msgid "Autojoin Channel"
msgstr ""
msgstr "Accesso automatico al canale"

#: src/fe-gtk/menu.c:1088 src/fe-gtk/menu.c:1092
msgid "_Auto-Connect"
Expand Down Expand Up @@ -4140,15 +4141,15 @@ msgstr "_Riconnetti"

#: src/fe-gtk/menu.c:1751
msgid "_Join a Channel..."
msgstr ""
msgstr "E_tra in un canale..."

#: src/fe-gtk/menu.c:1752
msgid "_List of Channels..."
msgstr ""
msgstr "E_lenco dei canali..."

#: src/fe-gtk/menu.c:1755
msgid "Marked _Away"
msgstr ""
msgstr "Contrassegna come _Assente"

#: src/fe-gtk/menu.c:1757
msgid "_Usermenu"
Expand Down Expand Up @@ -4204,7 +4205,7 @@ msgstr "_Finestra"

#: src/fe-gtk/menu.c:1773
msgid "_Ban List..."
msgstr ""
msgstr "Elenco dei _ban..."

#: src/fe-gtk/menu.c:1774
msgid "Character Chart..."
Expand All @@ -4216,7 +4217,7 @@ msgstr "Chat diretta..."

#: src/fe-gtk/menu.c:1776
msgid "File _Transfers..."
msgstr ""
msgstr "_Trasferimenti di file..."

#: src/fe-gtk/menu.c:1777
msgid "Friends List..."
Expand All @@ -4228,19 +4229,19 @@ msgstr "Elenco utenti ignorati..."

#: src/fe-gtk/menu.c:1779
msgid "_Plugins and Scripts..."
msgstr ""
msgstr "_Plugin e script..."

#: src/fe-gtk/menu.c:1780
msgid "_Raw Log..."
msgstr ""
msgstr "Regist_ro grezzo..."

#: src/fe-gtk/menu.c:1781
msgid "URL Grabber..."
msgstr "URL collezionati..."

#: src/fe-gtk/menu.c:1783
msgid "Reset Marker Line"
msgstr "Azzera linea di demrcazione"
msgstr "Azzera linea di demarcazione"

#: src/fe-gtk/menu.c:1784
msgid "_Copy Selection"
Expand Down Expand Up @@ -4468,11 +4469,11 @@ msgstr "_Carica..."

#: src/fe-gtk/plugingui.c:270
msgid "_Unload"
msgstr ""
msgstr "_Disattiva"

#: src/fe-gtk/plugingui.c:273
msgid "_Reload"
msgstr ""
msgstr "_Ricarica"

#: src/fe-gtk/rawlog.c:80 src/fe-gtk/rawlog.c:146 src/fe-gtk/textgui.c:428
#: src/fe-gtk/urlgrab.c:216
Expand Down Expand Up @@ -4542,7 +4543,7 @@ msgstr "Chiude questa finestra, ma continua a cercare nuove righe."

#: src/fe-gtk/search.c:237
msgid "Close and _Reset"
msgstr "Chiudi e azzera"
msgstr "Chiudi e azze_ra"

#: src/fe-gtk/search.c:238
msgid ""
Expand Down Expand Up @@ -5072,11 +5073,11 @@ msgstr "Ordinare i soprannomi completati:"

#: src/fe-gtk/setup.c:222
msgid "Nick completion amount:"
msgstr ""
msgstr "Numero di soprannomi completati:"

#: src/fe-gtk/setup.c:222
msgid "Threshold of nicks to start listing instead of completing"
msgstr ""
msgstr "Soglia di soprannomi da iniziare a elencare invece di completarli"

#: src/fe-gtk/setup.c:222
msgid "nicks."
Expand Down Expand Up @@ -5606,7 +5607,7 @@ msgstr "Caratteri alternativi:"

#: src/fe-gtk/setup.c:528
msgid "Separate multiple entries with commas without spaces before or after."
msgstr ""
msgstr "Separare le voci con virgole, senza spazi né prima né dopo."

#: src/fe-gtk/setup.c:530
msgid "Display lists in compact mode"
Expand All @@ -5618,13 +5619,13 @@ msgstr "Usa una spaziatura inferiore tra l'elenco utenti e l'albero dei canali"

#: src/fe-gtk/setup.c:531
msgid "Use server time if supported"
msgstr ""
msgstr "Usare l'ora del server se supportata"

#: src/fe-gtk/setup.c:531
msgid ""
"Display timestamps obtained from server if it supports the time-server "
"extension."
msgstr ""
msgstr "Mostra l'orario ottenuto dal server se è supportata l'estensione \"time-server\"."

#: src/fe-gtk/setup.c:532
msgid "Automatically reconnect to servers on disconnect"
Expand All @@ -5646,7 +5647,7 @@ msgstr "Tipo di ban:"
msgid ""
"Attempt to use this banmask when banning or quieting. (requires "
"irc_who_join)"
msgstr ""
msgstr "Tenta di usare questa maschera per i ban e i quite. (È richiesto irc_who_join)"

#: src/fe-gtk/setup.c:542 src/fe-gtk/setup.c:1853
msgid "Logging"
Expand Down
3,933 changes: 1,883 additions & 2,050 deletions po/ja.po → po/ja_JP.po

Large diffs are not rendered by default.

3,365 changes: 1,694 additions & 1,671 deletions po/kn.po

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion po/ko.po
Expand Up @@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: HexChat\n"
"Report-Msgid-Bugs-To: www.hexchat.org\n"
"POT-Creation-Date: 2013-09-08 01:16-0400\n"
"PO-Revision-Date: 2013-09-08 05:21+0000\n"
"PO-Revision-Date: 2013-11-20 09:21+0000\n"
"Last-Translator: TingPing <tingping@tingping.se>\n"
"Language-Team: Korean (http://www.transifex.com/projects/p/hexchat/language/ko/)\n"
"MIME-Version: 1.0\n"
Expand Down
3,341 changes: 1,682 additions & 1,659 deletions po/lt.po

Large diffs are not rendered by default.

3,353 changes: 1,688 additions & 1,665 deletions po/lv.po

Large diffs are not rendered by default.

3,365 changes: 1,694 additions & 1,671 deletions po/mk.po

Large diffs are not rendered by default.

3,336 changes: 1,680 additions & 1,656 deletions po/ml.po

Large diffs are not rendered by default.

3,345 changes: 1,684 additions & 1,661 deletions po/ms.po

Large diffs are not rendered by default.

3,602 changes: 1,813 additions & 1,789 deletions po/nb.po

Large diffs are not rendered by default.

3,359 changes: 1,691 additions & 1,668 deletions po/nl.po

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion po/no.po
Expand Up @@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: HexChat\n"
"Report-Msgid-Bugs-To: www.hexchat.org\n"
"POT-Creation-Date: 2013-09-08 01:16-0400\n"
"PO-Revision-Date: 2013-09-08 05:21+0000\n"
"PO-Revision-Date: 2013-11-20 09:21+0000\n"
"Last-Translator: TingPing <tingping@tingping.se>\n"
"Language-Team: Norwegian (http://www.transifex.com/projects/p/hexchat/language/no/)\n"
"MIME-Version: 1.0\n"
Expand Down
3,357 changes: 1,690 additions & 1,667 deletions po/pa.po

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion po/pl.po
Expand Up @@ -11,7 +11,7 @@ msgstr ""
"Project-Id-Version: HexChat\n"
"Report-Msgid-Bugs-To: www.hexchat.org\n"
"POT-Creation-Date: 2013-09-08 01:16-0400\n"
"PO-Revision-Date: 2013-09-08 10:20+0000\n"
"PO-Revision-Date: 2013-11-20 09:21+0000\n"
"Last-Translator: Eustachy_Kapusta <eustachy.kapusta@gmail.com>\n"
"Language-Team: Polish (http://www.transifex.com/projects/p/hexchat/language/pl/)\n"
"MIME-Version: 1.0\n"
Expand Down
3,653 changes: 1,838 additions & 1,815 deletions po/pt.po

Large diffs are not rendered by default.

3,348 changes: 1,686 additions & 1,662 deletions po/pt_BR.po

Large diffs are not rendered by default.

3,367 changes: 1,695 additions & 1,672 deletions po/ru.po

Large diffs are not rendered by default.

3,333 changes: 1,678 additions & 1,655 deletions po/rw.po

Large diffs are not rendered by default.

3,357 changes: 1,690 additions & 1,667 deletions po/sk.po

Large diffs are not rendered by default.

3,357 changes: 1,690 additions & 1,667 deletions po/sl.po

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion po/sq.po
Expand Up @@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: HexChat\n"
"Report-Msgid-Bugs-To: www.hexchat.org\n"
"POT-Creation-Date: 2013-09-08 01:16-0400\n"
"PO-Revision-Date: 2013-09-08 05:21+0000\n"
"PO-Revision-Date: 2013-11-20 09:21+0000\n"
"Last-Translator: TingPing <tingping@tingping.se>\n"
"Language-Team: Albanian (http://www.transifex.com/projects/p/hexchat/language/sq/)\n"
"MIME-Version: 1.0\n"
Expand Down