changeset 20976:216fdae447a9

merge of 'e33c17e58da161b8cffaf13e9d79e9bb4b9ce4ce' and 'e9c14932998e8737c0abb9815f8792ca8219759b'
author Etan Reisner <pidgin@unreliablesource.net>
date Wed, 17 Oct 2007 03:37:12 +0000
parents 6b9c49ae774c (diff) 59c9c04879af (current diff)
children 72edbc003dd5
files
diffstat 58 files changed, 3225 insertions(+), 2331 deletions(-) [+]
line wrap: on
line diff
--- a/COPYRIGHT	Wed Oct 17 03:36:54 2007 +0000
+++ b/COPYRIGHT	Wed Oct 17 03:37:12 2007 +0000
@@ -196,6 +196,7 @@
 Akuke Kok
 Konstantin Korikov
 Cole Kowalski
+Matt Kramer
 Gary Kramlich
 Jan Kratochvil
 Andrej Krivulčík
--- a/ChangeLog	Wed Oct 17 03:36:54 2007 +0000
+++ b/ChangeLog	Wed Oct 17 03:37:12 2007 +0000
@@ -31,6 +31,8 @@
 	* Pidgin's display is now saved with the command line for session
 	  restoration.  (David Mohr)
 	* ICQ Birthday notifications are shown as buddy list emblems.
+	* Plugin actions are now available from the docklet context menu
+	  in addition to the Tool menu of the buddy list.
 
 version 2.2.1 (09/29/2007):
 	http://developer.pidgin.im/query?status=closed&milestone=2.2.1
--- a/ChangeLog.API	Wed Oct 17 03:36:54 2007 +0000
+++ b/ChangeLog.API	Wed Oct 17 03:37:12 2007 +0000
@@ -6,6 +6,10 @@
 		* The size parameter of purple_util_write_data_to_file_absolute
 		  has been changed to gssize instead of a size_t to correctly
 		  indicate that -1 can be used for a nul-delimited string.
+		* The documentation for purple_savedstatuses_get_popular used to
+		  incorrectly claim that the active status is excluded from the
+		  returned list. The documentation has been corrected. Also, the
+		  function now returns a correct list when called with a value of 0.
 
 version 2.2.0 (09/13/2007):
 	libpurple:
--- a/Doxyfile.in	Wed Oct 17 03:36:54 2007 +0000
+++ b/Doxyfile.in	Wed Oct 17 03:37:12 2007 +0000
@@ -169,7 +169,8 @@
                          "endsignalproto=@endcode" \
                          "signaldesc=@par Description:" \
                          "signals=@b Signals:" \
-                         "endsignals="
+                         "endsignals=" \
+                         "constreturn=@note The return value of this function must not be modified or freed. @return"
 
 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources 
 # only. Doxygen will then generate output that is more tailored for C. 
@@ -457,7 +458,8 @@
 # excluded from the INPUT source files. This way you can easily exclude a 
 # subdirectory from a directory tree whose root is specified with the INPUT tag.
 
-EXCLUDE                = 
+EXCLUDE                = libpurple/purple-client.h \
+                         libpurple/purple-client-bindings.h
 
 # The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories 
 # that are symbolic links (a Unix filesystem feature) are excluded from the input.
@@ -857,7 +859,7 @@
 # feature is still experimental and incomplete at the 
 # moment.
 
-GENERATE_XML           = NO
+GENERATE_XML           = YES
 
 # The XML_OUTPUT tag is used to specify where the XML pages will be put. 
 # If a relative path is entered the value of OUTPUT_DIRECTORY will be 
@@ -1160,7 +1162,7 @@
 # not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). 
 # If 0 is used for the depth value (the default), the graph is not depth-constrained.
 
-MAX_DOT_GRAPH_DEPTH    = 0
+MAX_DOT_GRAPH_DEPTH    = 2
 
 # Set the DOT_TRANSPARENT tag to YES to generate images with a transparent 
 # background. This is disabled by default, which results in a white background. 
--- a/Makefile.am	Wed Oct 17 03:36:54 2007 +0000
+++ b/Makefile.am	Wed Oct 17 03:37:12 2007 +0000
@@ -48,6 +48,13 @@
 if HAVE_DOXYGEN
 	@echo "Running doxygen..."
 	@doxygen
+if HAVE_XSLTPROC
+	@echo "Generating devhelp index..."
+	@xsltproc doxy2devhelp.xsl doc/xml/index.xml > doc/html/pidgin.devhelp
+	@echo "(Symlink doc/html to ~/.local/share/gtk-doc/html/pidgin to make devhelp see the documentation)"
+else
+	@echo "Not generating devhelp index: xsltproc was not found by configure"
+endif
 else
 	@echo "doxygen was not found during configure.  Aborting."
 	@echo;
--- a/configure.ac	Wed Oct 17 03:36:54 2007 +0000
+++ b/configure.ac	Wed Oct 17 03:37:12 2007 +0000
@@ -2101,6 +2101,10 @@
 	[AC_HELP_STRING([--enable-dot],
 		[enable graphs in doxygen via 'dot'])],
 	enable_dot="$enableval", enable_dot="yes")
+AC_ARG_ENABLE(devhelp,
+	[AC_HELP_STRING([--enable-devhelp],
+		[enable building index for devhelp documentation browser])],
+	enable_devhelp="$enableval", enable_devhelp="yes")
 
 if test "x$enable_doxygen" = xyes; then
 	AC_CHECK_PROG(DOXYGEN, doxygen, true, false)
@@ -2120,14 +2124,28 @@
 				AC_DEFINE_UNQUOTED(HAVE_DOT, 1, [whether or not we have dot])
 			fi
 		fi
+
+		if test "x$enable_devhelp" = "xyes"; then
+			AC_CHECK_PROG(XSLTPROC, xsltproc, true, false)
+
+			if test $XSLTPROC = false; then
+				enable_devhelp="no";
+				AC_MSG_WARN([*** xsltproc not found; devhelp index will not be created])
+			else
+				AC_DEFINE_UNQUOTED(HAVE_XSLTPROC, 1, [whether or not we have xsltproc for devhelp index])
+			fi
+		fi
 	fi
 else
 	enable_dot="no"
+	enable_devhelp="no"
 fi
 
 AC_SUBST(enable_doxygen)
 AC_SUBST(enable_dot)
+AC_SUBST(enable_devhelp)
 AM_CONDITIONAL(HAVE_DOXYGEN, test "x$enable_doxygen" = "xyes")
+AM_CONDITIONAL(HAVE_XSLTPROC, test "x$enable_devhelp" = "xyes")
 
 AC_ARG_ENABLE(debug, [AC_HELP_STRING([--enable-debug],
 	[compile with debugging support])], , enable_debug=no)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/doxy2devhelp.xsl	Wed Oct 17 03:37:12 2007 +0000
@@ -0,0 +1,98 @@
+<xsl:stylesheet
+    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    xmlns:fo="http://www.w3.org/1999/XSL/Format"
+    version="1.0">
+
+<!-- Based on http://bur.st/~eleusis/devhelp/doxy2devhelp.xsl
+             (http://bur.st/~eleusis/devhelp/README)
+     which is based on http://bugzilla.gnome.org/show_bug.cgi?id=122450
+-->
+
+<xsl:output method="xml" version="1.0" indent="yes"/>
+
+<xsl:param name="reference_prefix"></xsl:param>
+
+<xsl:template match="/">
+  <book title="Pidgin Documentation"
+        name="pidgin"
+        link="{$reference_prefix}main.html">
+  <chapters>
+    <sub name="Modules" link="{$reference_prefix}modules.html">
+      <xsl:apply-templates select="doxygenindex/compound[@kind='group']">
+        <xsl:sort select="."/>
+      </xsl:apply-templates>
+    </sub>
+    <!-- annotated.html has the short descriptions beside each struct.  is
+         that more useful than being grouped alphabetically?
+      -->
+    <sub name="Structs" link="{$reference_prefix}classes.html">
+      <xsl:apply-templates select="doxygenindex/compound[@kind='struct']">
+        <xsl:sort select="."/>
+      </xsl:apply-templates>
+    </sub>
+    <!-- This is redundant given Modules -->
+    <!--
+    <sub name="Directories" link="{$reference_prefix}dirs.html">
+      <xsl:apply-templates select="doxygenindex/compound[@kind='dir']">
+        <xsl:sort select="."/>
+      </xsl:apply-templates>
+    </sub>
+    -->
+    <!-- FIXME: Some files show up here but are broken links; mostly
+                files that are under pages...
+      -->
+    <sub name="Files" link="{$reference_prefix}files.html">
+      <xsl:apply-templates select="doxygenindex/compound[@kind='file']">
+        <xsl:sort select="."/>
+      </xsl:apply-templates>
+    </sub>
+    <sub name="Signals, HOWTOs, Other" link="{$reference_prefix}pages.html">
+      <xsl:apply-templates select="doxygenindex/compound[@kind='page']">
+        <xsl:sort select="."/>
+      </xsl:apply-templates>
+    </sub>
+  </chapters>
+
+  <functions>
+    <!-- @todo: maybe select only the real functions, ie those with kind=="function"? -->
+    <xsl:apply-templates select="doxygenindex/compound/member" mode="as-function"/>
+  </functions>
+  </book>
+</xsl:template>
+
+<xsl:template match="compound">
+  <xsl:param name="name"><xsl:value-of select="name"/></xsl:param>
+  <xsl:param name="link"><xsl:value-of select="@refid"/>.html</xsl:param>
+  <sub name="{$name}" link="{$reference_prefix}{$link}">
+  <xsl:apply-templates select="member" mode="as-sub">
+    <xsl:sort select="."/>
+  </xsl:apply-templates>
+  </sub>
+</xsl:template>
+
+<xsl:template match="member" mode="as-function">
+  <!--
+  <function name="atk_set_value" link="atk-atkvalue.html#ATK-SET-VALUE"/>
+  -->
+  <xsl:param name="name"><xsl:value-of select="name"/></xsl:param>
+  <!-- Link is refid attribute of parent element + "#" + diff between refid of parent and own refid -->
+  <xsl:param name="refid_parent"><xsl:value-of select="parent::node()/@refid"/></xsl:param>
+  <xsl:param name="own_refid"><xsl:value-of select="@refid"/></xsl:param>
+  <xsl:param name="offset"><xsl:value-of select="string-length($refid_parent) + 3"/></xsl:param>
+  <xsl:param name="ref_diff"><xsl:value-of select="substring($own_refid, $offset, 33)"/></xsl:param>
+  <xsl:param name="link"><xsl:value-of select="$refid_parent"/>.html#<xsl:value-of select="$ref_diff"/></xsl:param>
+  <function name="{$name}" link="{$reference_prefix}{$link}"/>
+</xsl:template>
+
+<xsl:template match="member" mode="as-sub">
+  <xsl:param name="name"><xsl:value-of select="name"/></xsl:param>
+  <!-- Link is refid attribute of parent element + "#" + diff between refid of parent and own refid -->
+  <xsl:param name="refid_parent"><xsl:value-of select="parent::node()/@refid"/></xsl:param>
+  <xsl:param name="own_refid"><xsl:value-of select="@refid"/></xsl:param>
+  <xsl:param name="offset"><xsl:value-of select="string-length($refid_parent) + 3"/></xsl:param>
+  <xsl:param name="ref_diff"><xsl:value-of select="substring($own_refid, $offset, 33)"/></xsl:param>
+  <xsl:param name="link"><xsl:value-of select="$refid_parent"/>.html#<xsl:value-of select="$ref_diff"/></xsl:param>
+  <sub name="{$name}" link="{$reference_prefix}{$link}"/>
+</xsl:template>
+
+</xsl:stylesheet>
--- a/finch/gntnotify.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/finch/gntnotify.c	Wed Oct 17 03:37:12 2007 +0000
@@ -194,6 +194,7 @@
 	PurpleAccount *account = purple_connection_get_account(gc);
 	GString *message = g_string_new(NULL);
 	void *ret;
+	static int key = 0;
 
 	if (!detailed)
 	{
@@ -212,7 +213,7 @@
 
 		to = g_strdup_printf("%s (%s)", tos ? *tos : purple_account_get_username(account),
 					purple_account_get_protocol_name(account));
-		gnt_tree_add_row_after(GNT_TREE(emaildialog.tree), GINT_TO_POINTER(time(NULL)),
+		gnt_tree_add_row_after(GNT_TREE(emaildialog.tree), GINT_TO_POINTER(++key),
 				gnt_tree_create_row(GNT_TREE(emaildialog.tree), to,
 					froms ? *froms : "[Unknown sender]",
 					*subjects),
@@ -360,7 +361,8 @@
 	i = 0;
 	for (iter = results->columns; iter; iter = iter->next)
 	{
-		gnt_tree_set_column_title(GNT_TREE(tree), i, iter->data);
+		PurpleNotifySearchColumn *column = iter->data;
+		gnt_tree_set_column_title(GNT_TREE(tree), i, column->title);
 		i++;
 	}
 
--- a/finch/libgnt/gntfilesel.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/finch/libgnt/gntfilesel.c	Wed Oct 17 03:37:12 2007 +0000
@@ -265,6 +265,7 @@
 		}
 		g_free(fp);
 	}
+	g_dir_close(dir);
 
 	*files = g_list_reverse(*files);
 	return TRUE;
--- a/libpurple/account.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/account.c	Wed Oct 17 03:37:12 2007 +0000
@@ -52,7 +52,7 @@
 	{
 		int integer;
 		char *string;
-		gboolean bool;
+		gboolean boolean;
 
 	} value;
 
@@ -104,7 +104,7 @@
 	}
 	else if (setting->type == PURPLE_PREF_BOOLEAN) {
 		xmlnode_set_attrib(child, "type", "bool");
-		snprintf(buf, sizeof(buf), "%d", setting->value.bool);
+		snprintf(buf, sizeof(buf), "%d", setting->value.boolean);
 		xmlnode_insert_data(child, buf, -1);
 	}
 }
@@ -1578,7 +1578,7 @@
 	setting = g_new0(PurpleAccountSetting, 1);
 
 	setting->type       = PURPLE_PREF_BOOLEAN;
-	setting->value.bool = value;
+	setting->value.boolean = value;
 
 	g_hash_table_insert(account->settings, g_strdup(name), setting);
 
@@ -1664,7 +1664,7 @@
 
 	setting->type       = PURPLE_PREF_BOOLEAN;
 	setting->ui         = g_strdup(ui);
-	setting->value.bool = value;
+	setting->value.boolean = value;
 
 	table = get_ui_settings_table(account, ui);
 
@@ -1939,7 +1939,7 @@
 
 	g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value);
 
-	return setting->value.bool;
+	return setting->value.boolean;
 }
 
 int
@@ -2005,7 +2005,7 @@
 
 	g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value);
 
-	return setting->value.bool;
+	return setting->value.boolean;
 }
 
 PurpleLog *
--- a/libpurple/buddyicon.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/buddyicon.c	Wed Oct 17 03:37:12 2007 +0000
@@ -505,37 +505,33 @@
 		purple_buddy_icon_set_data(icon, icon_data, icon_len, checksum);
 	else if (icon_data && icon_len > 0)
 	{
-		if (icon_data != NULL && icon_len > 0)
-		{
-			PurpleBuddyIcon *icon = purple_buddy_icon_new(account, username, icon_data, icon_len, checksum);
+		PurpleBuddyIcon *icon = purple_buddy_icon_new(account, username, icon_data, icon_len, checksum);
 
-			/* purple_buddy_icon_new() calls
-			 * purple_buddy_icon_set_data(), which calls
-			 * purple_buddy_icon_update(), which has the buddy list
-			 * and conversations take references as appropriate.
-			 * This function doesn't return icon, so we can't
-			 * leave a reference dangling. */
-			purple_buddy_icon_unref(icon);
-		}
-		else
+		/* purple_buddy_icon_new() calls
+		 * purple_buddy_icon_set_data(), which calls
+		 * purple_buddy_icon_update(), which has the buddy list
+		 * and conversations take references as appropriate.
+		 * This function doesn't return icon, so we can't
+		 * leave a reference dangling. */
+		purple_buddy_icon_unref(icon);
+	}
+	else
+	{
+		/* If the buddy list or a conversation was holding a
+		 * reference, we'd have found the icon in the cache.
+		 * Since we know we're deleting the icon, we only
+		 * need a subset of purple_buddy_icon_update(). */
+
+		GSList *buddies = purple_find_buddies(account, username);
+		while (buddies != NULL)
 		{
-			/* If the buddy list or a conversation was holding a
-			 * reference, we'd have found the icon in the cache.
-			 * Since we know we're deleting the icon, we only
-			 * need a subset of purple_buddy_icon_update(). */
+			PurpleBuddy *buddy = (PurpleBuddy *)buddies->data;
 
-			GSList *buddies = purple_find_buddies(account, username);
-			while (buddies != NULL)
-			{
-				PurpleBuddy *buddy = (PurpleBuddy *)buddies->data;
+			unref_filename(purple_blist_node_get_string((PurpleBlistNode *)buddy, "buddy_icon"));
+			purple_blist_node_remove_setting((PurpleBlistNode *)buddy, "buddy_icon");
+			purple_blist_node_remove_setting((PurpleBlistNode *)buddy, "icon_checksum");
 
-				unref_filename(purple_blist_node_get_string((PurpleBlistNode *)buddy, "buddy_icon"));
-				purple_blist_node_remove_setting((PurpleBlistNode *)buddy, "buddy_icon");
-				purple_blist_node_remove_setting((PurpleBlistNode *)buddy, "icon_checksum");
-
-				buddies = g_slist_delete_link(buddies, buddies);
-			}
-
+			buddies = g_slist_delete_link(buddies, buddies);
 		}
 	}
 }
--- a/libpurple/certificate.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/certificate.h	Wed Oct 17 03:37:12 2007 +0000
@@ -435,7 +435,7 @@
  *
  * @return TRUE if 'crt' has a valid signature made by 'issuer',
  *         otherwise FALSE
- * @TODO Find a way to give the reason (bad signature, not the issuer, etc.) 
+ * @todo Find a way to give the reason (bad signature, not the issuer, etc.) 
  */
 gboolean
 purple_certificate_signed_by(PurpleCertificate *crt, PurpleCertificate *issuer);
@@ -450,7 +450,7 @@
  * @param chain      List of PurpleCertificate instances comprising the chain,
  *                   in the order certificate, issuer, issuer's issuer, etc.
  * @return TRUE if the chain is valid. See description.
- * @TODO Specify which certificate in the chain caused a failure
+ * @todo Specify which certificate in the chain caused a failure
  */
 gboolean
 purple_certificate_check_signature_chain(GList *chain);
@@ -781,7 +781,7 @@
  * Displays a window showing X.509 certificate information
  *
  * @param crt    Certificate under an "x509" Scheme
- * @TODO Will break on CA certs, as they have no Common Name
+ * @todo Will break on CA certs, as they have no Common Name
  */
 void
 purple_certificate_display_x509(PurpleCertificate *crt);
--- a/libpurple/dbus-server.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/dbus-server.c	Wed Oct 17 03:37:12 2007 +0000
@@ -674,6 +674,8 @@
 		int id;
 		gint xint;
 		guint xuint;
+		gint64 xint64;
+		guint64 xuint64;
 		gboolean xboolean;
 		gpointer ptr = NULL;
 		gpointer val;
@@ -694,6 +696,14 @@
 			xuint = my_arg(guint);
 			dbus_message_iter_append_basic(iter, DBUS_TYPE_UINT32, &xuint);
 			break;
+		case PURPLE_TYPE_INT64:
+			xint = my_arg(gint64);
+			dbus_message_iter_append_basic(iter, DBUS_TYPE_INT64, &xint);
+			break;
+		case PURPLE_TYPE_UINT64:
+			xuint = my_arg(guint64);
+			dbus_message_iter_append_basic(iter, DBUS_TYPE_UINT64, &xuint);
+			break;
 		case PURPLE_TYPE_BOOLEAN:
 			xboolean = my_arg(gboolean);
 			dbus_message_iter_append_basic(iter, DBUS_TYPE_BOOLEAN, &xboolean);
--- a/libpurple/dnsquery.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/dnsquery.h	Wed Oct 17 03:37:12 2007 +0000
@@ -59,7 +59,7 @@
 	                         PurpleDnsQueryFailedCallback failed_cb);
 
 	/** Called just before @a query_data is freed; this should cancel any
-	 *  further use of @q query_data the UI would make. Unneeded if
+	 *  further use of @a query_data the UI would make. Unneeded if
 	 *  #resolve_host is not implemented.
 	 */
 	void (*destroy)(PurpleDnsQueryData *query_data);
--- a/libpurple/network.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/network.c	Wed Oct 17 03:37:12 2007 +0000
@@ -263,6 +263,7 @@
 purple_network_do_listen(unsigned short port, int socket_type, PurpleNetworkListenCallback cb, gpointer cb_data)
 {
 	int listenfd = -1;
+	int flags;
 	const int on = 1;
 	PurpleNetworkListenData *listen_data;
 	unsigned short actual_port;
@@ -340,7 +341,8 @@
 		close(listenfd);
 		return NULL;
 	}
-	fcntl(listenfd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(listenfd, F_GETFL);
+	fcntl(listenfd, F_SETFL, flags | O_NONBLOCK);
 
 	actual_port = purple_network_get_port_from_fd(listenfd);
 
--- a/libpurple/notify.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/notify.c	Wed Oct 17 03:37:12 2007 +0000
@@ -688,8 +688,11 @@
 void
 purple_notify_user_info_remove_last_item(PurpleNotifyUserInfo *user_info)
 {
-	user_info->user_info_entries = g_list_remove(user_info->user_info_entries,
-												 g_list_last(user_info->user_info_entries)->data);
+	GList *last = g_list_last(user_info->user_info_entries);
+	if (last) {
+		purple_notify_user_info_entry_destroy(last->data);
+		user_info->user_info_entries = g_list_remove_link(user_info->user_info_entries, last);
+	}
 }
 
 void *
--- a/libpurple/notify.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/notify.h	Wed Oct 17 03:37:12 2007 +0000
@@ -539,7 +539,7 @@
 void purple_notify_user_info_prepend_pair(PurpleNotifyUserInfo *user_info, const char *label, const char *value);
 
 /**
- * Remove a PurpleNotifyUserInfoEntry from a PurpleNotifyUserInfo object
+ * Remove a PurpleNotifyUserInfoEntry from a PurpleNotifyUserInfo object without freeing the entry.
  *
  * @param user_info          The PurpleNotifyUserInfo
  * @param user_info_entry    The PurpleNotifyUserInfoEntry
--- a/libpurple/plugins/log_reader.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/plugins/log_reader.c	Wed Oct 17 03:37:12 2007 +0000
@@ -28,6 +28,19 @@
 	NAME_GUESS_THEM
 };
 
+/* Some common functions. */
+static int get_month(const char *month)
+{
+	int iter;
+	const char *months[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun",
+		"Jul", "Aug", "Sep", "Oct", "Nov", "Dec", NULL};
+	for (iter = 0; months[iter]; iter++) {
+		if (strcmp(month, months[iter]) == 0)
+			break;
+	}
+	return iter;
+}
+
 
 /*****************************************************************************
  * Adium Logger                                                              *
@@ -103,9 +116,10 @@
 				} else {
 					char *filename = g_build_filename(path, file, NULL);
 					FILE *handle = g_fopen(filename, "rb");
-					char *contents;
+					char contents[57];   /* XXX: This is really inflexible. */
 					char *contents2;
 					struct adium_logger_data *data;
+					size_t rd;
 					PurpleLog *log;
 
 					if (!handle) {
@@ -113,11 +127,9 @@
 						continue;
 					}
 
-					/* XXX: This is really inflexible. */
-					contents = g_malloc(57);
-					fread(contents, 56, 1, handle);
+					rd = fread(contents, 1, 56, handle) == 0;
 					fclose(handle);
-					contents[56] = '\0';
+					contents[rd] = '\0';
 
 					/* XXX: This is fairly inflexible. */
 					contents2 = contents;
@@ -135,11 +147,9 @@
 
 						purple_debug_error("Adium log parse",
 						                   "Contents timestamp parsing error\n");
-						g_free(contents);
 						g_free(filename);
 						continue;
 					}
-					g_free(contents);
 
 					data = g_new0(struct adium_logger_data, 1);
 					data->path = filename;
@@ -168,21 +178,20 @@
 				} else {
 					char *filename = g_build_filename(path, file, NULL);
 					FILE *handle = g_fopen(filename, "rb");
-					char *contents;
+					char contents[14];   /* XXX: This is really inflexible. */
 					char *contents2;
 					struct adium_logger_data *data;
 					PurpleLog *log;
+					size_t rd;
 
 					if (!handle) {
 						g_free(filename);
 						continue;
 					}
 
-					/* XXX: This is really inflexible. */
-					contents = g_malloc(14);
-					fread(contents, 13, 1, handle);
+					rd = fread(contents, 1, 13, handle);
 					fclose(handle);
-					contents[13] = '\0';
+					contents[rd] = '\0';
 
 					contents2 = contents;
 					while (*contents2 && *contents2 != '(')
@@ -195,13 +204,10 @@
 
 						purple_debug_error("Adium log parse",
 						                   "Contents timestamp parsing error\n");
-						g_free(contents);
 						g_free(filename);
 						continue;
 					}
 
-					g_free(contents);
-
 					tm.tm_year -= 1900;
 					tm.tm_mon  -= 1;
 
@@ -1355,36 +1361,7 @@
 						 * daylight savings time.
 						 */
 						tm.tm_isdst = -1;
-
-						/* Ugly hack, in case current locale
-						 * is not English. This code is taken
-						 * from log.c.
-						 */
-						if (strcmp(month, "Jan") == 0) {
-							tm.tm_mon= 0;
-						} else if (strcmp(month, "Feb") == 0) {
-							tm.tm_mon = 1;
-						} else if (strcmp(month, "Mar") == 0) {
-							tm.tm_mon = 2;
-						} else if (strcmp(month, "Apr") == 0) {
-							tm.tm_mon = 3;
-						} else if (strcmp(month, "May") == 0) {
-							tm.tm_mon = 4;
-						} else if (strcmp(month, "Jun") == 0) {
-							tm.tm_mon = 5;
-						} else if (strcmp(month, "Jul") == 0) {
-							tm.tm_mon = 6;
-						} else if (strcmp(month, "Aug") == 0) {
-							tm.tm_mon = 7;
-						} else if (strcmp(month, "Sep") == 0) {
-							tm.tm_mon = 8;
-						} else if (strcmp(month, "Oct") == 0) {
-							tm.tm_mon = 9;
-						} else if (strcmp(month, "Nov") == 0) {
-							tm.tm_mon = 10;
-						} else if (strcmp(month, "Dec") == 0) {
-							tm.tm_mon = 11;
-						}
+						tm.tm_mon = get_month(month);
 
 						data = g_new0(
 							struct trillian_logger_data, 1);
@@ -1446,7 +1423,7 @@
 
 	file = g_fopen(data->path, "rb");
 	fseek(file, data->offset, SEEK_SET);
-	fread(read, data->length, 1, file);
+	data->length = fread(read, 1, data->length, file);
 	fclose(file);
 
 	if (read[data->length-1] == '\n') {
@@ -1945,7 +1922,7 @@
 	contents = g_malloc(data->length + 2);
 
 	fseek(file, data->offset, SEEK_SET);
-	fread(contents, data->length, 1, file);
+	data->length = fread(contents, 1, data->length, file);
 	fclose(file);
 
 	contents[data->length] = '\n';
@@ -2098,6 +2075,347 @@
 	g_free(data);
 }
 
+/*************************************************************************
+ * aMSN Logger                                                           *
+ *************************************************************************/
+
+/* The aMSN logger doesn't write logs, only reads them.  This is to include
+ * aMSN logs in the log viewer transparently.
+ */
+
+static PurpleLogLogger *amsn_logger;
+
+struct amsn_logger_data {
+	char *path;
+	int offset;
+	int length;
+};
+
+#define AMSN_LOG_CONV_START "|\"LRED[Conversation started on "
+#define AMSN_LOG_CONV_END "|\"LRED[You have closed the window on "
+#define AMSN_LOG_CONV_EXTRA "01 Aug 2001 00:00:00]"
+
+static GList *amsn_logger_parse_file(char *filename, const char *sn, PurpleAccount *account)
+{
+	GList *list = NULL;
+	GError *error;
+	char *contents;
+	struct amsn_logger_data *data;
+	PurpleLog *log;
+
+	purple_debug_info("aMSN logger", "Reading %s\n", filename);
+	error = NULL;
+	if (!g_file_get_contents(filename, &contents, NULL, &error)) {
+		purple_debug_error("aMSN logger",
+		                   "Couldn't read file %s: %s \n", filename,
+		                   (error && error->message) ?
+		                    error->message : "Unknown error");
+		if (error)
+			g_error_free(error);
+	} else {
+		char *c = contents;
+		gboolean found_start = FALSE;
+		char *start_log = c;
+		int offset = 0;
+		struct tm tm;
+		while (c && *c) {
+			if (purple_str_has_prefix(c, AMSN_LOG_CONV_START)) {
+				char month[4];
+				if (sscanf(c + strlen(AMSN_LOG_CONV_START),
+				           "%u %3s %u %u:%u:%u",
+				           &tm.tm_mday, (char*)&month, &tm.tm_year,
+				           &tm.tm_hour, &tm.tm_min, &tm.tm_sec) != 6) {
+					found_start = FALSE;
+					purple_debug_error("aMSN logger",
+					                   "Error parsing start date for %s\n",
+					                   filename);
+				} else {
+					tm.tm_year -= 1900;
+
+					/* Let the C library deal with
+					 * daylight savings time.
+					 */
+					tm.tm_isdst = -1;
+					tm.tm_mon = get_month(month);
+
+					found_start = TRUE;
+					offset = c - contents;
+					start_log = c;
+				}
+			} else if (purple_str_has_prefix(c, AMSN_LOG_CONV_END) && found_start) {
+				data = g_new0(struct amsn_logger_data, 1);
+				data->path = g_strdup(filename);
+				data->offset = offset;
+				data->length = c - start_log
+					             + strlen(AMSN_LOG_CONV_END)
+					             + strlen(AMSN_LOG_CONV_EXTRA);
+				log = purple_log_new(PURPLE_LOG_IM, sn, account, NULL, mktime(&tm), NULL);
+				log->logger = amsn_logger;
+				log->logger_data = data;
+				list = g_list_prepend(list, log);
+				found_start = FALSE;
+
+				purple_debug_info("aMSN logger",
+				                  "Found log for %s:"
+				                  " path = (%s),"
+				                  " offset = (%d),"
+				                  " length = (%d)\n",
+				                  sn, data->path, data->offset, data->length);
+			}
+			c = strstr(c, "\n");
+			c++;
+		}
+
+		/* I've seen the file end without the AMSN_LOG_CONV_END bit */
+		if (found_start) {
+			data = g_new0(struct amsn_logger_data, 1);
+			data->path = g_strdup(filename);
+			data->offset = offset;
+			data->length = c - start_log
+				             + strlen(AMSN_LOG_CONV_END)
+				             + strlen(AMSN_LOG_CONV_EXTRA);
+			log = purple_log_new(PURPLE_LOG_IM, sn, account, NULL, mktime(&tm), NULL);
+			log->logger = amsn_logger;
+			log->logger_data = data;
+			list = g_list_prepend(list, log);
+			found_start = FALSE;
+
+			purple_debug_info("aMSN logger",
+			                  "Found log for %s:"
+			                  " path = (%s),"
+			                  " offset = (%d),"
+			                  " length = (%d)\n",
+			                  sn, data->path, data->offset, data->length);
+		}
+		g_free(contents);
+	}
+
+	return list;
+}
+
+/* `log_dir`/username@hotmail.com/logs/buddyname@hotmail.com.log */
+/* `log_dir`/username@hotmail.com/logs/Month Year/buddyname@hotmail.com.log */
+static GList *amsn_logger_list(PurpleLogType type, const char *sn, PurpleAccount *account)
+{
+	GList *list = NULL;
+	const char *logdir;
+	char *username;
+	char *log_path;
+	char *buddy_log;
+	char *filename;
+	GDir *dir;
+	const char *name;
+
+	logdir = purple_prefs_get_string("/plugins/core/log_reader/amsn/log_directory");
+
+	/* By clearing the log directory path, this logger can be (effectively) disabled. */
+	if (!logdir || !*logdir)
+		return NULL;
+
+	/* aMSN only works with MSN/WLM */
+	if (strcmp(account->protocol_id, "prpl-msn"))
+		return NULL;
+
+	username = g_strdup(purple_normalize(account, account->username));
+	buddy_log = g_strdup_printf("%s.log", purple_normalize(account, sn));
+	log_path = g_build_filename(logdir, username, "logs", NULL);
+
+	/* First check in the top-level */
+	filename = g_build_filename(log_path, buddy_log, NULL);
+	if (g_file_test(filename, G_FILE_TEST_EXISTS))
+		list = amsn_logger_parse_file(filename, sn, account);
+	else
+		g_free(filename);
+
+	/* Check in previous months */
+	dir = g_dir_open(log_path, 0, NULL);
+	if (dir) {
+		while ((name = g_dir_read_name(dir)) != NULL) {
+			filename = g_build_filename(log_path, name, buddy_log, NULL);
+			if (g_file_test(filename, G_FILE_TEST_EXISTS))
+				list = g_list_concat(list, amsn_logger_parse_file(filename, sn, account));
+			g_free(filename);
+		}
+		g_dir_close(dir);
+	}
+
+	g_free(log_path);
+
+	/* New versions use 'friendlier' directory names */
+	purple_util_chrreplace(username, '@', '_');
+	purple_util_chrreplace(username, '.', '_');
+
+	log_path = g_build_filename(logdir, username, "logs", NULL);
+
+	/* First check in the top-level */
+	filename = g_build_filename(log_path, buddy_log, NULL);
+	if (g_file_test(filename, G_FILE_TEST_EXISTS))
+		list = g_list_concat(list, amsn_logger_parse_file(filename, sn, account));
+	g_free(filename);
+
+	/* Check in previous months */
+	dir = g_dir_open(log_path, 0, NULL);
+	if (dir) {
+		while ((name = g_dir_read_name(dir)) != NULL) {
+			filename = g_build_filename(log_path, name, buddy_log, NULL);
+			if (g_file_test(filename, G_FILE_TEST_EXISTS))
+				list = g_list_concat(list, amsn_logger_parse_file(filename, sn, account));
+			g_free(filename);
+		}
+		g_dir_close(dir);
+	}
+
+	g_free(log_path);
+	g_free(username);
+	g_free(buddy_log);
+
+	return list;
+}
+
+/* Really it's |"L, but the string's been escaped */
+#define AMSN_LOG_FORMAT_TAG "|&quot;L"
+
+static char *amsn_logger_read(PurpleLog *log, PurpleLogReadFlags *flags)
+{
+	struct amsn_logger_data *data;
+	FILE *file;
+	char *contents;
+	char *escaped;
+	GString *formatted;
+	char *start;
+	gboolean in_span = FALSE;
+
+	if (flags != NULL)
+		*flags = PURPLE_LOG_READ_NO_NEWLINE;
+
+	g_return_val_if_fail(log != NULL, g_strdup(""));
+
+	data = log->logger_data;
+
+	g_return_val_if_fail(data->path != NULL, g_strdup(""));
+	g_return_val_if_fail(data->length > 0, g_strdup(""));
+
+	contents = g_malloc(data->length + 2);
+
+	file = g_fopen(data->path, "rb");
+	g_return_val_if_fail(file != NULL, g_strdup(""));
+	
+	fseek(file, data->offset, SEEK_SET);
+	data->length = fread(contents, 1, data->length, file);
+	fclose(file);
+
+	contents[data->length] = '\n';
+	contents[data->length + 1] = '\0';
+
+	escaped = g_markup_escape_text(contents, -1);
+	g_free(contents);
+	contents = escaped;
+
+	formatted = g_string_sized_new(data->length + 2);
+
+	start = contents;
+	while (start && *start) {
+		char *end;
+		char *old_tag;
+		char *tag;
+		end = strstr(start, "\n");
+		if (!end)
+			break;
+		*end = '\0';
+		if (purple_str_has_prefix(start, AMSN_LOG_FORMAT_TAG) && in_span) {
+			/* New format for this line */
+			g_string_append(formatted, "</span><br>");
+			in_span = FALSE;
+		} else if (start != contents) {
+			/* Continue format from previous line */
+			g_string_append(formatted, "<br>");
+		}
+		old_tag = start;
+		tag = strstr(start, AMSN_LOG_FORMAT_TAG);
+		while (tag) {
+			g_string_append_len(formatted, old_tag, tag - old_tag);
+			tag += strlen(AMSN_LOG_FORMAT_TAG);
+			if (in_span) {
+				g_string_append(formatted, "</span>");
+				in_span = FALSE;
+			}
+			if (*tag == 'C') {
+				/* |"LCxxxxxx is a hex colour */
+				char colour[7];
+				strncpy(colour, tag + 1, 6);
+				colour[6] = '\0';
+				g_string_append_printf(formatted, "<span style=\"color: #%s;\">", colour);
+				/* This doesn't appear to work? */
+				/* g_string_append_printf(formatted, "<span style=\"color: #%6s;\">", tag + 1); */
+				in_span = TRUE;
+				old_tag = tag + 7; /* C + xxxxxx */
+			} else {
+				/* |"Lxxx is a 3-digit colour code */
+				if (purple_str_has_prefix(tag, "RED")) {
+					g_string_append(formatted, "<span style=\"color: red;\">");
+					in_span = TRUE;
+				} else if (purple_str_has_prefix(tag, "GRA")) {
+					g_string_append(formatted, "<span style=\"color: gray;\">");
+					in_span = TRUE;
+				} else if (purple_str_has_prefix(tag, "NOR")) {
+					g_string_append(formatted, "<span style=\"color: black;\">");
+					in_span = TRUE;
+				} else if (purple_str_has_prefix(tag, "ITA")) {
+					g_string_append(formatted, "<span style=\"color: blue;\">");
+					in_span = TRUE;
+				} else if (purple_str_has_prefix(tag, "GRE")) {
+					g_string_append(formatted, "<span style=\"color: darkgreen;\">");
+					in_span = TRUE;
+				} else {
+					purple_debug_info("aMSN logger", "Unknown colour format: %3s\n", tag);
+				}
+				old_tag = tag + 3;
+			}
+			tag = strstr(tag, AMSN_LOG_FORMAT_TAG);
+		}
+		g_string_append(formatted, old_tag);
+		start = end + 1;
+	}
+	if (in_span)
+		g_string_append(formatted, "</span>");
+
+	g_free(contents);
+
+	return g_string_free(formatted, FALSE);
+}
+
+static int amsn_logger_size(PurpleLog *log)
+{
+	struct amsn_logger_data *data;
+	char *text;
+	int size;
+
+	g_return_val_if_fail(log != NULL, 0);
+
+	data = log->logger_data;
+	
+	if (purple_prefs_get_bool("/plugins/core/log_reader/fast_sizes")) {
+		return data ? data->length : 0;
+	}
+
+	text = amsn_logger_read(log, NULL);
+	size = strlen(text);
+	g_free(text);
+
+	return size;
+}
+
+static void amsn_logger_finalize(PurpleLog *log)
+{
+	struct amsn_logger_data *data;
+
+	g_return_if_fail(log != NULL);
+
+	data = log->logger_data;
+	g_free(data->path);
+	g_free(data);
+}
+
 /*****************************************************************************
  * Plugin Code                                                               *
  *****************************************************************************/
@@ -2105,14 +2423,16 @@
 static void
 init_plugin(PurplePlugin *plugin)
 {
+
+}
+
+static void log_reader_init_prefs() {
 	char *path;
 #ifdef _WIN32
 	char *folder;
 	gboolean found = FALSE;
 #endif
 
-	g_return_if_fail(plugin != NULL);
-
 	purple_prefs_add_none("/plugins/core/log_reader");
 
 
@@ -2347,6 +2667,23 @@
 #endif
 	purple_prefs_add_string("/plugins/core/log_reader/qip/log_directory", path ? path : "");
 	g_free(path);
+
+	/* Add aMSN Messenger log directory preference. */
+	purple_prefs_add_none("/plugins/core/log_reader/amsn");
+
+	/* Calculate default aMSN log directory. */
+#ifdef _WIN32
+	path = NULL;
+	folder = wpurple_get_special_folder(CSIDL_PROFILE); /* Silly aMSN, not using CSIDL_APPDATA */
+	if (folder) {
+		path = g_build_filename(folder, "amsn", NULL);
+		g_free(folder);
+	}
+#else
+	path = g_build_filename(purple_home_dir(), ".amsn", NULL);
+#endif
+	purple_prefs_add_string("/plugins/core/log_reader/amsn/log_directory", path ? path : "");
+	g_free(path);
 }
 
 static gboolean
@@ -2354,6 +2691,8 @@
 {
 	g_return_val_if_fail(plugin != NULL, FALSE);
 
+	log_reader_init_prefs();
+
 	/* The names of IM clients are marked for translation at the request of
 	   translators who wanted to transliterate them.  Many translators
 	   choose to leave them alone.  Choose what's best for your language. */
@@ -2429,6 +2768,18 @@
 										  trillian_logger_size);
 	purple_log_logger_add(trillian_logger);
 
+	/* The names of IM clients are marked for translation at the request of
+	   translators who wanted to transliterate them.  Many translators
+	   choose to leave them alone.  Choose what's best for your language. */
+	amsn_logger = purple_log_logger_new("amsn", _("aMSN"), 6,
+									   NULL,
+									   NULL,
+									   amsn_logger_finalize,
+									   amsn_logger_list,
+									   amsn_logger_read,
+									   amsn_logger_size);
+	purple_log_logger_add(amsn_logger);
+
 	return TRUE;
 }
 
@@ -2445,6 +2796,7 @@
 	purple_log_logger_remove(msn_logger);
 	purple_log_logger_remove(trillian_logger);
 	purple_log_logger_remove(qip_logger);
+	purple_log_logger_remove(amsn_logger);
 
 	return TRUE;
 }
@@ -2505,6 +2857,10 @@
 		"/plugins/core/log_reader/trillian/log_directory", _("Trillian"));
 	purple_plugin_pref_frame_add(frame, ppref);
 
+	ppref = purple_plugin_pref_new_with_name_and_label(
+		"/plugins/core/log_reader/amsn/log_directory", _("aMSN"));
+	purple_plugin_pref_frame_add(frame, ppref);
+
 	return frame;
 }
 
--- a/libpurple/prefs.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/prefs.c	Wed Oct 17 03:37:12 2007 +0000
@@ -297,6 +297,7 @@
 						g_filename_from_utf8(pref_value, -1, NULL, NULL, NULL));
 			}
 		}
+		g_string_free(pref_name_full, TRUE);
 	} else {
 		char *decoded;
 
--- a/libpurple/protocols/bonjour/Makefile.mingw	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/bonjour/Makefile.mingw	Wed Oct 17 03:37:12 2007 +0000
@@ -36,7 +36,6 @@
 			-I$(PIDGIN_TREE_TOP)
 
 LIB_PATHS +=		-L$(GTK_TOP)/lib \
-			-L$(BONJOUR_TOP)/lib/win32 \
 			-L$(LIBXML2_TOP)/lib \
 			-L$(PURPLE_TOP)
 
@@ -66,6 +65,7 @@
 
 ifeq ($(LINK_DNS_SD_DIRECTLY), 1)
 	CFLAGS += -DLINK_DNS_SD_DIRECTLY
+	LIB_PATHS += -L$(BONJOUR_TOP)/lib/win32 -L$(BONJOUR_TOP)/lib
 	LIBS += -ldnssd
 endif
 
--- a/libpurple/protocols/bonjour/buddy.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/bonjour/buddy.c	Wed Oct 17 03:37:12 2007 +0000
@@ -62,9 +62,11 @@
 }
 
 void
-set_bonjour_buddy_value(BonjourBuddy* buddy, const char *record_key, const char *value, uint32_t len){
+set_bonjour_buddy_value(BonjourBuddy* buddy, const char *record_key, const char *value, guint32 len){
 	gchar **fld = NULL;
 
+	g_return_if_fail(record_key != NULL);
+
 	if (!strcmp(record_key, "1st"))
 		fld = &buddy->first;
 	else if(!strcmp(record_key, "email"))
--- a/libpurple/protocols/bonjour/buddy.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/bonjour/buddy.h	Wed Oct 17 03:37:12 2007 +0000
@@ -83,7 +83,7 @@
 /**
  * Sets a value in the BonjourBuddy struct, destroying the old value
  */
-void set_bonjour_buddy_value(BonjourBuddy *buddy, const char *record_key, const char *value, uint32_t len);
+void set_bonjour_buddy_value(BonjourBuddy *buddy, const char *record_key, const char *value, guint32 len);
 
 /**
  * Check if all the compulsory buddy data is present.
--- a/libpurple/protocols/bonjour/jabber.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/bonjour/jabber.c	Wed Oct 17 03:37:12 2007 +0000
@@ -521,6 +521,7 @@
 	struct sockaddr_in their_addr; /* connector's address information */
 	socklen_t sin_size = sizeof(struct sockaddr);
 	int client_socket;
+	int flags;
 	BonjourBuddy *bb;
 	char *address_text = NULL;
 	PurpleBuddyList *bl = purple_get_blist();
@@ -533,7 +534,8 @@
 	if ((client_socket = accept(server_socket, (struct sockaddr *)&their_addr, &sin_size)) == -1)
 		return;
 
-	fcntl(client_socket, F_SETFL, O_NONBLOCK);
+	flags = fcntl(client_socket, F_GETFL);
+	fcntl(client_socket, F_SETFL, flags | O_NONBLOCK);
 
 	/* Look for the buddy that has opened the conversation and fill information */
 	address_text = inet_ntoa(their_addr.sin_addr);
--- a/libpurple/protocols/msn/directconn.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/directconn.c	Wed Oct 17 03:37:12 2007 +0000
@@ -80,6 +80,7 @@
 create_listener(int port)
 {
 	int fd;
+	int flags;
 	const int on = 1;
 
 #if 0
@@ -155,7 +156,8 @@
 		return -1;
 	}
 
-	fcntl(fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(fd, F_GETFL);
+	fcntl(fd, F_SETFL, flags | O_NONBLOCK);
 
 	return fd;
 }
--- a/libpurple/protocols/msn/httpconn.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/httpconn.c	Wed Oct 17 03:37:12 2007 +0000
@@ -169,7 +169,7 @@
 	/* Now we should be able to process the data. */
 	if ((s = purple_strcasestr(header, "X-MSN-Messenger: ")) != NULL)
 	{
-		char *full_session_id, *gw_ip, *session_action;
+		gchar *full_session_id = NULL, *gw_ip = NULL, *session_action = NULL;
 		char *t, *session_id;
 		char **elems, **cur, **tokens;
 
@@ -196,13 +196,16 @@
 		{
 			tokens = g_strsplit(*cur, "=", 2);
 
-			if (strcmp(tokens[0], "SessionID") == 0)
+			if (strcmp(tokens[0], "SessionID") == 0) {
+				g_free(full_session_id);
 				full_session_id = tokens[1];
-			else if (strcmp(tokens[0], "GW-IP") == 0)
+			} else if (strcmp(tokens[0], "GW-IP") == 0) {
+				g_free(gw_ip);
 				gw_ip = tokens[1];
-			else if (strcmp(tokens[0], "Session") == 0)
+			} else if (strcmp(tokens[0], "Session") == 0) {
+				g_free(session_action);
 				session_action = tokens[1];
-			else
+			} else
 				g_free(tokens[1]);
 
 			g_free(tokens[0]);
@@ -684,6 +687,17 @@
 
 	g_free(httpconn->host);
 
+	while (httpconn->queue != NULL) {
+		MsnHttpQueueData *queue_data;
+
+		queue_data = (MsnHttpQueueData *) httpconn->queue->data;
+
+		httpconn->queue = g_list_remove_link(httpconn->queue, httpconn->queue);
+
+		g_free(queue_data->body);
+		g_free(queue_data);
+	}
+
 	purple_circ_buffer_destroy(httpconn->tx_buf);
 	if (httpconn->tx_handler > 0)
 		purple_input_remove(httpconn->tx_handler);
--- a/libpurple/protocols/msn/msg.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/msg.c	Wed Oct 17 03:37:12 2007 +0000
@@ -664,10 +664,11 @@
 
 		tokens = g_strsplit(*cur, ": ", 2);
 
-		if (tokens[0] != NULL && tokens[1] != NULL)
+		if (tokens[0] != NULL && tokens[1] != NULL) {
 			g_hash_table_insert(table, tokens[0], tokens[1]);
-
-		g_free(tokens);
+			g_free(tokens);
+		} else
+			g_strfreev(tokens);
 	}
 
 	g_strfreev(elems);
--- a/libpurple/protocols/msn/msn.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/msn.c	Wed Oct 17 03:37:12 2007 +0000
@@ -552,7 +552,7 @@
 	status = purple_presence_get_active_status(presence);
 
 	msg = purple_status_get_attr_string(status, "message");
-	cmedia = purple_status_get_attr_string(status, "currentmedia");
+	cmedia = purple_status_get_attr_string(status, PURPLE_TUNE_FULL);
 
 	if (cmedia)
 		return g_markup_escape_text(cmedia, -1);
@@ -577,7 +577,7 @@
 		char *tmp;
 
 		psm = purple_status_get_attr_string(status, "message");
-		currentmedia = purple_status_get_attr_string(status, "currentmedia");
+		currentmedia = purple_status_get_attr_string(status, PURPLE_TUNE_FULL);
 
 		if (!purple_presence_is_available(presence)) {
 			name = purple_status_get_name(status);
@@ -632,40 +632,40 @@
 	status = purple_status_type_new_with_attrs(
 				PURPLE_STATUS_AVAILABLE, NULL, NULL, TRUE, TRUE, FALSE,
 				"message", _("Message"), purple_value_new(PURPLE_TYPE_STRING),
-				"currentmedia", _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
+				PURPLE_TUNE_FULL, _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
 				NULL);
 	types = g_list_append(types, status);
 
 	status = purple_status_type_new_with_attrs(
 			PURPLE_STATUS_AWAY, NULL, NULL, TRUE, TRUE, FALSE,
 			"message", _("Message"), purple_value_new(PURPLE_TYPE_STRING),
-			"currentmedia", _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
+			PURPLE_TUNE_FULL, _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
 			NULL);
 	types = g_list_append(types, status);
 
 	status = purple_status_type_new_with_attrs(
 			PURPLE_STATUS_AWAY, "brb", _("Be Right Back"), TRUE, TRUE, FALSE,
 			"message", _("Message"), purple_value_new(PURPLE_TYPE_STRING),
-			"currentmedia", _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
+			PURPLE_TUNE_FULL, _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
 			NULL);
 	types = g_list_append(types, status);
 
 	status = purple_status_type_new_with_attrs(
 			PURPLE_STATUS_UNAVAILABLE, "busy", _("Busy"), TRUE, TRUE, FALSE,
 			"message", _("Message"), purple_value_new(PURPLE_TYPE_STRING),
-			"currentmedia", _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
+			PURPLE_TUNE_FULL, _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
 			NULL);
 	types = g_list_append(types, status);
 	status = purple_status_type_new_with_attrs(
 			PURPLE_STATUS_UNAVAILABLE, "phone", _("On the Phone"), TRUE, TRUE, FALSE,
 			"message", _("Message"), purple_value_new(PURPLE_TYPE_STRING),
-			"currentmedia", _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
+			PURPLE_TUNE_FULL, _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
 			NULL);
 	types = g_list_append(types, status);
 	status = purple_status_type_new_with_attrs(
 			PURPLE_STATUS_AWAY, "lunch", _("Out to Lunch"), TRUE, TRUE, FALSE,
 			"message", _("Message"), purple_value_new(PURPLE_TYPE_STRING),
-			"currentmedia", _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
+			PURPLE_TUNE_FULL, _("Current media"), purple_value_new(PURPLE_TYPE_STRING),
 			NULL);
 	types = g_list_append(types, status);
 
@@ -1594,7 +1594,6 @@
 	gboolean sect_info = FALSE;
 	gboolean has_contact_info = FALSE;
 	char *url_buffer;
-	GString *s, *s2;
 	int stripped_len;
 #if PHOTO_SUPPORT
 	char *photo_url_text = NULL;
@@ -1679,11 +1678,6 @@
 	purple_debug_misc("msn", "stripped = %p\n", stripped);
 	purple_debug_misc("msn", "url_buffer = %p\n", url_buffer);
 
-	/* Gonna re-use the memory we've already got for url_buffer */
-	/* No we're not. */
-	s = g_string_sized_new(strlen(url_buffer));
-	s2 = g_string_sized_new(strlen(url_buffer));
-
 	/* General section header */
 	if (has_tooltip_text)
 		purple_notify_user_info_add_section_break(user_info);
@@ -2030,7 +2024,7 @@
 		purple_debug_warning("msn", "invalid connection. ignoring buddy photo info.\n");
 		g_free(stripped);
 		g_free(url_buffer);
-		g_free(user_info);
+		purple_notify_user_info_destroy(user_info);
 		g_free(info_data->name);
 		g_free(info_data);
 		g_free(photo_url_text);
--- a/libpurple/protocols/msn/notification.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/notification.c	Wed Oct 17 03:37:12 2007 +0000
@@ -262,14 +262,15 @@
 		for (cur = elems; *cur != NULL; cur++)
 		{
 			tokens = g_strsplit(*cur, "=", 2);
-			if(tokens[0]&&tokens[1])
+			if(tokens[0] && tokens[1])
 			{
 				purple_debug_info("MSNP14","challenge %p,key:%s,value:%s\n",
 									session->nexus->challenge_data,tokens[0],tokens[1]);
 				g_hash_table_insert(session->nexus->challenge_data, tokens[0], tokens[1]);
-			}
-			/* Don't free each of the tokens, only the array. */
-			g_free(tokens);
+				/* Don't free each of the tokens, only the array. */
+				g_free(tokens);
+			} else
+				g_strfreev(tokens);
 		}
 
 		g_strfreev(elems);
@@ -735,7 +736,7 @@
 	msn_cmdproc_send_trans(cmdproc, trans);
 
 	g_free(payload);
-	g_free(tokens);
+	g_strfreev(tokens);
 }
 
 static void
--- a/libpurple/protocols/msn/servconn.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/servconn.c	Wed Oct 17 03:37:12 2007 +0000
@@ -480,6 +480,7 @@
 create_listener(int port)
 {
 	int fd;
+	int flags;
 	const int on = 1;
 
 #if 0
@@ -555,7 +556,8 @@
 		return -1;
 	}
 
-	fcntl(fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(fd, F_GETFL);
+	fcntl(fd, F_SETFL, flags | O_NONBLOCK);
 
 	return fd;
 }
--- a/libpurple/protocols/msn/slplink.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/slplink.c	Wed Oct 17 03:37:12 2007 +0000
@@ -120,6 +120,8 @@
 	while (slplink->slp_calls != NULL)
 		msn_slp_call_destroy(slplink->slp_calls->data);
 
+	g_queue_free(slplink->slp_msg_queue);
+
 	session->slplinks =
 		g_list_remove(session->slplinks, slplink);
 
--- a/libpurple/protocols/msn/switchboard.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/switchboard.c	Wed Oct 17 03:37:12 2007 +0000
@@ -108,8 +108,8 @@
 	g_free(swboard->auth_key);
 	g_free(swboard->session_id);
 
-	for (l = swboard->users; l != NULL; l = l->next)
-		g_free(l->data);
+	for (; swboard->users; swboard->users = g_list_remove_link(swboard->users, swboard->users))
+		g_free(swboard->users->data);
 
 	session = swboard->session;
 	session->switches = g_list_remove(session->switches, swboard);
--- a/libpurple/protocols/msn/user.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/msn/user.c	Wed Oct 17 03:37:12 2007 +0000
@@ -94,9 +94,9 @@
 	if (user->statusline != NULL && user->currentmedia != NULL) {
 		purple_prpl_got_user_status(account, user->passport, user->status,
 		                          "message", user->statusline,
-		                          "currentmedia", user->currentmedia, NULL);
+		                          PURPLE_TUNE_FULL, user->currentmedia, NULL);
 	} else if (user->currentmedia != NULL) {
-		purple_prpl_got_user_status(account, user->passport, user->status, "currentmedia",
+		purple_prpl_got_user_status(account, user->passport, user->status, PURPLE_TUNE_FULL,
 		                          user->currentmedia, NULL);
 	} else if (user->statusline != NULL) {
 		//char *status = g_strdup_printf("%s - %s", user->status, user->statusline);
--- a/libpurple/protocols/oscar/oscar.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/oscar/oscar.c	Wed Oct 17 03:37:12 2007 +0000
@@ -1263,6 +1263,7 @@
 		gc->wants_to_die = TRUE;
 		purple_connection_error(gc, buf);
 		g_free(buf);
+		return;
 	}
 
 	if (aim_snvalid_icq((purple_account_get_username(account)))) {
@@ -1801,7 +1802,7 @@
 
 	if (have_status_message)
 	{
-		if ((status_id == OSCAR_STATUS_ID_AVAILABLE) && (info->itmsurl != NULL))
+		if ((!strcmp(status_id, OSCAR_STATUS_ID_AVAILABLE)) && (info->itmsurl != NULL))
 		{
 			char *itmsurl;
 			itmsurl = oscar_encoding_to_utf8(account, info->itmsurl_encoding,
@@ -5006,6 +5007,7 @@
 					g = purple_group_new(gname_utf8);
 					purple_blist_add_group(g, NULL);
 				}
+				g_free(gname_utf8);
 			} break;
 
 			case 0x0002: { /* Permit buddy */
--- a/libpurple/protocols/oscar/peer.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/oscar/peer.c	Wed Oct 17 03:37:12 2007 +0000
@@ -607,6 +607,7 @@
 	PurpleConnection *gc;
 	struct sockaddr addr;
 	socklen_t addrlen = sizeof(addr);
+	int flags;
 
 	conn = data;
 	od = conn->od;
@@ -633,7 +634,8 @@
 		return;
 	}
 
-	fcntl(conn->fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(conn->fd, F_GETFL);
+	fcntl(conn->fd, F_SETFL, flags | O_NONBLOCK);
 	purple_input_remove(conn->watcher_incoming);
 
 	peer_connection_finalize_connection(conn);
--- a/libpurple/protocols/oscar/util.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/oscar/util.c	Wed Oct 17 03:37:12 2007 +0000
@@ -156,9 +156,7 @@
 		return FALSE;
 
 	for (i = 0; sn[i] != '\0'; i++) {
-		if (!isalnum(sn[i]) && (sn[i] != ' ') &&
-			(sn[i] != '.') &&
-			(sn[i] != '_') && (sn[i] != '-'))
+		if (!isalnum(sn[i]) && (sn[i] != ' '))
 			return FALSE;
 	}
 
--- a/libpurple/protocols/qq/qq_proxy.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/qq/qq_proxy.c	Wed Oct 17 03:37:12 2007 +0000
@@ -258,6 +258,7 @@
 static gint _qq_proxy_none(struct PHB *phb, struct sockaddr *addr, socklen_t addrlen)
 {
 	gint fd = -1;
+	int flags;
 
 	purple_debug(PURPLE_DEBUG_INFO, "QQ", "Using UDP without proxy\n");
 	fd = socket(PF_INET, SOCK_DGRAM, 0);
@@ -269,7 +270,8 @@
 	}
 
 	/* we use non-blocking mode to speed up connection */
-	fcntl(fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(fd, F_GETFL);
+	fcntl(fd, F_SETFL, flags | O_NONBLOCK);
 
 	/* From Unix-socket-FAQ: http://www.faqs.org/faqs/unix-faq/socket/
 	 *
@@ -301,7 +303,8 @@
 		}		/* if errno */
 	} else {		/* connect returns 0 */
 		purple_debug(PURPLE_DEBUG_INFO, "QQ", "Connected.\n");
-		fcntl(fd, F_SETFL, 0);
+		flags = fcntl(fd, F_GETFL);
+		fcntl(fd, F_SETFL, flags & ~O_NONBLOCK);
 		phb->func(phb->data, fd, NULL);
 	}
 
--- a/libpurple/protocols/qq/udp_proxy_s5.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/qq/udp_proxy_s5.c	Wed Oct 17 03:37:12 2007 +0000
@@ -33,6 +33,7 @@
 	struct sockaddr_in sin;
 	int len, error;
 	socklen_t errlen;
+	int flags;
 
 	purple_input_remove(phb->inpa);
 	purple_debug(PURPLE_DEBUG_INFO, "socks5 proxy", "Able to read again.\n");
@@ -89,7 +90,8 @@
 		close(phb->udpsock);
 		return;
 	}
-	fcntl(phb->udpsock, F_SETFL, 0);
+	flags = fcntl(phb->udpsock, F_GETFL);
+	fcntl(phb->udpsock, F_SETFL, flags & ~O_NONBLOCK);
 
 	if (phb->account == NULL || purple_account_get_connection(phb->account) != NULL) {
 		phb->func(phb->data, phb->udpsock, NULL);
@@ -106,6 +108,7 @@
 	struct sockaddr_in sin, ctlsin;
 	int port; 
 	socklen_t ctllen;
+	int flags;
 
 	purple_debug(PURPLE_DEBUG_INFO, "s5_sendconnect", "remote host is %s:%d\n", phb->host, phb->port);
 
@@ -133,7 +136,8 @@
 		return;
 	}
 
-	fcntl(phb->udpsock, F_SETFL, O_NONBLOCK);
+	flags = fcntl(phb->udpsock, F_GETFL);
+	fcntl(phb->udpsock, F_SETFL, flags | O_NONBLOCK);
 
 	port = g_ntohs(ctlsin.sin_port) + 1;
 	while (1) {
@@ -287,6 +291,7 @@
 	struct PHB *phb = data;
 	socklen_t len;
 	int error = ETIMEDOUT;
+	int flags;
 
 	purple_debug(PURPLE_DEBUG_INFO, "socks5 proxy", "Connected.\n");
 
@@ -306,7 +311,8 @@
 		g_free(phb);
 		return;
 	}
-	fcntl(source, F_SETFL, 0);
+	flags = fcntl(source, F_GETFL);
+	fcntl(source, F_SETFL, flags & ~O_NONBLOCK);
 
 	i = 0;
 	buf[0] = 0x05;		/* SOCKS version 5 */
@@ -343,6 +349,8 @@
 gint qq_proxy_socks5(struct PHB *phb, struct sockaddr *addr, socklen_t addrlen)
 {
 	gint fd;
+	int flags;
+
 	purple_debug(PURPLE_DEBUG_INFO, "QQ",
 		   "Connecting to %s:%d via %s:%d using SOCKS5\n",
 		   phb->host, phb->port, purple_proxy_info_get_host(phb->gpi), purple_proxy_info_get_port(phb->gpi));
@@ -352,7 +360,8 @@
 
 	purple_debug(PURPLE_DEBUG_INFO, "QQ", "proxy_sock5 return fd=%d\n", fd);
 
-	fcntl(fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(fd, F_GETFL);
+	fcntl(fd, F_SETFL, flags | O_NONBLOCK);
 	if (connect(fd, addr, addrlen) < 0) {
 		if ((errno == EINPROGRESS) || (errno == EINTR)) {
 			purple_debug(PURPLE_DEBUG_WARNING, "QQ", "Connect in asynchronous mode.\n");
@@ -363,7 +372,8 @@
 		}
 	} else {
 		purple_debug(PURPLE_DEBUG_MISC, "QQ", "Connect in blocking mode.\n");
-		fcntl(fd, F_SETFL, 0);
+		flags = fcntl(fd, F_GETFL);
+		fcntl(fd, F_SETFL, flags & ~O_NONBLOCK);
 		_qq_s5_canwrite(phb, fd, PURPLE_INPUT_WRITE);
 	}
 
--- a/libpurple/protocols/simple/simple.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/protocols/simple/simple.c	Wed Oct 17 03:37:12 2007 +0000
@@ -80,14 +80,15 @@
 static gboolean process_register_response(struct simple_account_data *sip, struct sipmsg *msg, struct transaction *tc);
 static void send_notify(struct simple_account_data *sip, struct simple_watcher *);
 
-static void send_publish(struct simple_account_data *sip);
+static void send_open_publish(struct simple_account_data *sip);
+static void send_closed_publish(struct simple_account_data *sip);
 
 static void do_notifies(struct simple_account_data *sip) {
 	GSList *tmp = sip->watcher;
 	purple_debug_info("simple", "do_notifies()\n");
 	if((sip->republish != -1) || sip->republish < time(NULL)) {
 		if(purple_account_get_bool(sip->account, "dopublish", TRUE)) {
-			send_publish(sip);
+			send_open_publish(sip);
 		}
 	}
 
@@ -1020,7 +1021,7 @@
 		case 200:
 			if(sip->registerstatus < SIMPLE_REGISTER_COMPLETE) { /* registered */
 				if(purple_account_get_bool(sip->account, "dopublish", TRUE)) {
-					send_publish(sip);
+					send_open_publish(sip);
 				}
 			}
 			sip->registerstatus = SIMPLE_REGISTER_COMPLETE;
@@ -1072,7 +1073,7 @@
 static void process_incoming_notify(struct simple_account_data *sip, struct sipmsg *msg) {
 	gchar *from;
 	gchar *fromhdr;
-	gchar *tmp2;
+	gchar *basicstatus_data;
 	xmlnode *pidf;
 	xmlnode *basicstatus = NULL, *tuple, *status;
 	gboolean isonline = FALSE;
@@ -1085,8 +1086,9 @@
 
 	if(!pidf) {
 		purple_debug_info("simple", "process_incoming_notify: no parseable pidf\n");
+		purple_prpl_got_user_status(sip->account, from, "offline", NULL);
+		send_sip_response(sip->gc, msg, 200, "OK", NULL);
 		g_free(from);
-		send_sip_response(sip->gc, msg, 200, "OK", NULL);
 		return;
 	}
 
@@ -1101,27 +1103,28 @@
 		return;
 	}
 
-	tmp2 = xmlnode_get_data(basicstatus);
+	basicstatus_data = xmlnode_get_data(basicstatus);
 
-	if(!tmp2) {
+	if(!basicstatus_data) {
 		purple_debug_info("simple", "process_incoming_notify: no basic data found\n");
 		xmlnode_free(pidf);
 		g_free(from);
 		return;
 	}
 
-	if(strstr(tmp2, "open")) {
+	if(strstr(basicstatus_data, "open"))
 		isonline = TRUE;
-	}
+
 
-	g_free(tmp2);
-
-	if(isonline) purple_prpl_got_user_status(sip->account, from, "available", NULL);
-	else purple_prpl_got_user_status(sip->account, from, "offline", NULL);
+	if(isonline) 
+		purple_prpl_got_user_status(sip->account, from, "available", NULL);
+	else 
+		purple_prpl_got_user_status(sip->account, from, "offline", NULL);
 
 	xmlnode_free(pidf);
+	g_free(from);
+	g_free(basicstatus_data);
 
-	g_free(from);
 	send_sip_response(sip->gc, msg, 200, "OK", NULL);
 }
 
@@ -1188,28 +1191,27 @@
 	return doc;
 }
 
-
-
-static gchar* gen_pidf(struct simple_account_data *sip) {
+static gchar* gen_pidf(struct simple_account_data *sip, gboolean open) {
 	gchar *doc = g_strdup_printf("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
 			"<presence xmlns=\"urn:ietf:params:xml:ns:pidf\"\n"
 			"xmlns:im=\"urn:ietf:params:xml:ns:pidf:im\"\n"
 			"entity=\"sip:%s@%s\">\n"
 			"<tuple id=\"bs35r9f\">\n"
 			"<status>\n"
-			"<basic>open</basic>\n"
+			"<basic>%s</basic>\n"
 			"</status>\n"
 			"<note>%s</note>\n"
 			"</tuple>\n"
 			"</presence>",
 			sip->username,
 			sip->servername,
-			sip->status);
+			(open == TRUE) ? "open" : "closed",
+			(open == TRUE) ? sip->status : "");
 	return doc;
 }
 
 static void send_notify(struct simple_account_data *sip, struct simple_watcher *watcher) {
-	gchar *doc = watcher->needsxpidf ? gen_xpidf(sip) : gen_pidf(sip);
+	gchar *doc = watcher->needsxpidf ? gen_xpidf(sip) : gen_pidf(sip, TRUE);
 	gchar *hdr = watcher->needsxpidf ? "Event: presence\r\nContent-Type: application/xpidf+xml\r\n" : "Event: presence\r\nContent-Type: application/pidf+xml\r\n";
 	send_sip_request(sip->gc, "NOTIFY", watcher->name, watcher->name, hdr, doc, &watcher->dialog, NULL);
 	g_free(doc);
@@ -1223,9 +1225,9 @@
 	return TRUE;
 }
 
-static void send_publish(struct simple_account_data *sip) {
+static void send_open_publish(struct simple_account_data *sip) {
 	gchar *uri = g_strdup_printf("sip:%s@%s", sip->username, sip->servername);
-	gchar *doc = gen_pidf(sip);
+	gchar *doc = gen_pidf(sip, TRUE);
 	send_sip_request(sip->gc, "PUBLISH", uri, uri,
 		"Expires: 600\r\nEvent: presence\r\n"
 		"Content-Type: application/pidf+xml\r\n",
@@ -1235,6 +1237,18 @@
 	g_free(doc);
 }
 
+static void send_closed_publish(struct simple_account_data *sip) {
+	gchar *uri = g_strdup_printf("sip:%s@%s", sip->username, sip->servername);
+	gchar *doc = gen_pidf(sip, FALSE);
+	send_sip_request(sip->gc, "PUBLISH", uri, uri,
+		"Expires: 600\r\nEvent: presence\r\n"
+		"Content-Type: application/pidf+xml\r\n",
+		doc, NULL, process_publish_response);
+	/*sip->republish = time(NULL) + 500;*/
+	g_free(uri);
+	g_free(doc);
+}
+
 static void process_incoming_subscribe(struct simple_account_data *sip, struct sipmsg *msg) {
 	const char *from_hdr = sipmsg_find_header(msg, "From");
 	gchar *from = parse_from(from_hdr);
@@ -1738,7 +1752,14 @@
 	if(sip) {
 		/* unregister */
 		if (sip->registerstatus == SIMPLE_REGISTER_COMPLETE)
+		{
+			if(purple_account_get_bool(sip->account, 
+				"dopublish", 
+				TRUE))
+				send_closed_publish(sip);
+			
 			do_register_exp(sip, 0);
+		}
 		connection_free_all(sip);
 
 		if (sip->query_data != NULL)
--- a/libpurple/proxy.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/proxy.c	Wed Oct 17 03:37:12 2007 +0000
@@ -449,6 +449,8 @@
 static void
 proxy_connect_none(PurpleProxyConnectData *connect_data, struct sockaddr *addr, socklen_t addrlen)
 {
+	int flags;
+
 	purple_debug_info("proxy", "Connecting to %s:%d with no proxy\n",
 			connect_data->host, connect_data->port);
 
@@ -460,7 +462,8 @@
 		return;
 	}
 
-	fcntl(connect_data->fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(connect_data->fd, F_GETFL);
+	fcntl(connect_data->fd, F_SETFL, flags | O_NONBLOCK);
 #ifndef _WIN32
 	fcntl(connect_data->fd, F_SETFD, FD_CLOEXEC);
 #endif
@@ -881,6 +884,8 @@
 static void
 proxy_connect_http(PurpleProxyConnectData *connect_data, struct sockaddr *addr, socklen_t addrlen)
 {
+	int flags;
+
 	purple_debug_info("proxy",
 			   "Connecting to %s:%d via %s:%d using HTTP\n",
 			   connect_data->host, connect_data->port,
@@ -895,14 +900,16 @@
 		return;
 	}
 
-	fcntl(connect_data->fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(connect_data->fd, F_GETFL);
+	fcntl(connect_data->fd, F_SETFL, flags | O_NONBLOCK);
 #ifndef _WIN32
 	fcntl(connect_data->fd, F_SETFD, FD_CLOEXEC);
 #endif
 
 	if (connect(connect_data->fd, addr, addrlen) != 0)
 	{
-		if ((errno == EINPROGRESS) || (errno == EINTR)) {
+		if ((errno == EINPROGRESS) || (errno == EINTR))
+		{
 			purple_debug_info("proxy", "Connection in progress\n");
 
 			if (connect_data->port != 80)
@@ -1036,6 +1043,8 @@
 static void
 proxy_connect_socks4(PurpleProxyConnectData *connect_data, struct sockaddr *addr, socklen_t addrlen)
 {
+	int flags;
+
 	purple_debug_info("proxy",
 			   "Connecting to %s:%d via %s:%d using SOCKS4\n",
 			   connect_data->host, connect_data->port,
@@ -1050,7 +1059,8 @@
 		return;
 	}
 
-	fcntl(connect_data->fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(connect_data->fd, F_GETFL);
+	fcntl(connect_data->fd, F_SETFL, flags | O_NONBLOCK);
 #ifndef _WIN32
 	fcntl(connect_data->fd, F_SETFD, FD_CLOEXEC);
 #endif
@@ -1604,6 +1614,8 @@
 static void
 proxy_connect_socks5(PurpleProxyConnectData *connect_data, struct sockaddr *addr, socklen_t addrlen)
 {
+	int flags;
+
 	purple_debug_info("proxy",
 			   "Connecting to %s:%d via %s:%d using SOCKS5\n",
 			   connect_data->host, connect_data->port,
@@ -1618,7 +1630,8 @@
 		return;
 	}
 
-	fcntl(connect_data->fd, F_SETFL, O_NONBLOCK);
+	flags = fcntl(connect_data->fd, F_GETFL);
+	fcntl(connect_data->fd, F_SETFL, flags | O_NONBLOCK);
 #ifndef _WIN32
 	fcntl(connect_data->fd, F_SETFD, FD_CLOEXEC);
 #endif
--- a/libpurple/prpl.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/prpl.h	Wed Oct 17 03:37:12 2007 +0000
@@ -226,11 +226,17 @@
 	void (*tooltip_text)(PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full);
 
 	/**
-	 * This must be implemented, and must add at least the offline
-	 * and online states.
+	 * Returns a list of #PurpleStatusType which exist for this account;
+	 * this must be implemented, and must add at least the offline and
+	 * online states.
 	 */
 	GList *(*status_types)(PurpleAccount *account);
 
+	/**
+	 * Returns a list of #PurpleMenuAction structs, which represent extra
+	 * actions to be shown in (for example) the right-click menu for @a
+	 * node.
+	 */
 	GList *(*blist_node_menu)(PurpleBlistNode *node);
 	GList *(*chat_info)(PurpleConnection *);
 	GHashTable *(*chat_info_defaults)(PurpleConnection *, const char *chat_name);
@@ -258,6 +264,10 @@
 
 	void (*set_info)(PurpleConnection *, const char *info);
 	unsigned int (*send_typing)(PurpleConnection *, const char *name, PurpleTypingState state);
+	/**
+	 * Should arrange for purple_notify_userinfo() to be called with
+	 * @a who's user info.
+	 */
 	void (*get_info)(PurpleConnection *, const char *who);
 	void (*set_status)(PurpleAccount *account, PurpleStatus *status);
 
@@ -287,8 +297,14 @@
 	/** new user registration */
 	void (*register_user)(PurpleAccount *);
 
-	/* get "chat buddy" info and away message */
+	/**
+	 * @deprecated Use #PurplePluginProtocolInfo.get_info instead.
+	 */
 	void (*get_cb_info)(PurpleConnection *, int, const char *who);
+	/**
+	 * @deprecated Use #PurplePluginProtocolInfo.get_cb_real_name and
+	 *             #PurplePluginProtocolInfo.status_text instead.
+	 */
 	void (*get_cb_away)(PurpleConnection *, int, const char *who);
 
 	/** save/store buddy's alias on server list/roster */
@@ -348,9 +364,12 @@
 	/* room list serialize */
 	char *(*roomlist_room_serialize)(PurpleRoomlistRoom *room);
 
-	/* Remove the user from the server. (This is only at the bottom to keep binary compatibility.)
-	 * The account can either be connected or disconnected. After the removal is finished,
-	 * the connection will stay open and has to be closed!
+	/** Remove the user from the server.  The account can either be
+	 * connected or disconnected. After the removal is finished, the
+	 * connection will stay open and has to be closed!
+	 */
+	/* This is here rather than next to register_user for API compatibility
+	 * reasons.
 	 */
 	void (*unregister_user)(PurpleAccount *, PurpleAccountUnregistrationCb cb, void *user_data);
 	
--- a/libpurple/savedstatuses.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/savedstatuses.c	Wed Oct 17 03:37:12 2007 +0000
@@ -761,10 +761,13 @@
 {
 	GList *popular = NULL;
 	GList *cur;
-	int i;
+	unsigned int i;
 	PurpleSavedStatus *next;
 
-	/* Copy 'how_many' elements to a new list */
+	/* Copy 'how_many' elements to a new list. If 'how_many' is 0, then copy all of 'em. */
+	if (how_many == 0)
+		how_many = (unsigned int) -1;
+
 	i = 0;
 	cur = saved_statuses;
 	while ((i < how_many) && (cur != NULL))
@@ -773,7 +776,7 @@
 		if ((!purple_savedstatus_is_transient(next)
 			|| purple_savedstatus_get_message(next) != NULL))
 		{
-			popular = g_list_prepend(popular, cur->data);
+			popular = g_list_prepend(popular, next);
 			i++;
 		}
 		cur = cur->next;
--- a/libpurple/savedstatuses.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/savedstatuses.h	Wed Oct 17 03:37:12 2007 +0000
@@ -170,11 +170,8 @@
 /**
  * Returns the n most popular saved statuses.  "Popularity" is
  * determined by when the last time a saved_status was used and
- * how many times it has been used.  If the current status would
- * normally show up in this list, then it is omited and instead
- * the "how_many+1" saved status will appear in the list.  Also
- * transient statuses without messages are not included in the
- * list.
+ * how many times it has been used. Transient statuses without
+ * messages are not included in the list.
  *
  * @param how_many The maximum number of saved statuses
  *                 to return, or '0' to get all saved
--- a/libpurple/status.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/status.h	Wed Oct 17 03:37:12 2007 +0000
@@ -121,7 +121,8 @@
 #define PURPLE_TUNE_TRACK	"tune_track"
 #define PURPLE_TUNE_TIME	"tune_time"
 #define PURPLE_TUNE_YEAR	"tune_year"
-#define PURPLE_TUNE_URL	"tune_url"
+#define PURPLE_TUNE_URL		"tune_url"
+#define PURPLE_TUNE_FULL	"tune_full"
 
 #ifdef __cplusplus
 extern "C" {
--- a/libpurple/util.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/util.c	Wed Oct 17 03:37:12 2007 +0000
@@ -1515,8 +1515,8 @@
 							plain = g_string_append(plain, alt->str);
 						if(!src && xhtml)
 							xhtml = g_string_append(xhtml, alt->str);
+						g_string_free(alt, TRUE);
 					}
-					g_string_free(alt, TRUE);
 					g_string_free(src, TRUE);
 					continue;
 				}
@@ -2565,6 +2565,8 @@
 	purple_debug_info("util", "Writing file %s\n",
 					filename_full);
 
+	g_return_val_if_fail((size >= -1), FALSE);
+
 	filename_temp = g_strdup_printf("%s.save", filename_full);
 
 	/* Remove an old temporary file, if one exists */
@@ -2590,7 +2592,7 @@
 	}
 
 	/* Write to file */
-	real_size = (size == -1) ? strlen(data) : size;
+	real_size = (size == -1) ? strlen(data) : (size_t) size;
 	byteswritten = fwrite(data, 1, real_size, file);
 
 	/* Close file */
@@ -3491,7 +3493,7 @@
 	gboolean full;
 	int len;
 
-	if ((s = g_strstr_len(data, data_len, "Location: ")) == NULL)
+	if ((s = g_strstr_len(data, data_len, "\nLocation: ")) == NULL)
 		/* We're not being redirected */
 		return FALSE;
 
--- a/libpurple/win32/global.mak	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/win32/global.mak	Wed Oct 17 03:37:12 2007 +0000
@@ -11,7 +11,7 @@
 # Locations of our various dependencies
 WIN32_DEV_TOP ?= $(PIDGIN_TREE_TOP)/../win32-dev
 ASPELL_TOP ?= $(WIN32_DEV_TOP)/aspell-dev-0-50-3-3
-GTKSPELL_TOP ?= $(WIN32_DEV_TOP)/gtkspell-2.0.11
+GTKSPELL_TOP ?= $(WIN32_DEV_TOP)/gtkspell-2.0.11-daa1
 GTK_TOP ?= $(WIN32_DEV_TOP)/gtk_2_0
 GTK_BIN ?= $(GTK_TOP)/bin
 BONJOUR_TOP ?= $(WIN32_DEV_TOP)/Bonjour_SDK
@@ -22,6 +22,7 @@
 PERL_LIB_TOP ?= $(WIN32_DEV_TOP)/perl58
 SILC_TOOLKIT ?= $(WIN32_DEV_TOP)/silc-toolkit-1.1.2
 TCL_LIB_TOP ?= $(WIN32_DEV_TOP)/tcl-8.4.5
+GSTREAMER_TOP ?= $(WIN32_DEV_TOP)/gstreamer-0.10.13
 
 # Where we installing this stuff to?
 PIDGIN_INSTALL_DIR := $(PIDGIN_TREE_TOP)/win32-install-dir
--- a/libpurple/win32/libc_interface.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/win32/libc_interface.c	Wed Oct 17 03:37:12 2007 +0000
@@ -138,12 +138,22 @@
 
 /* fcntl.h */
 /* This is not a full implementation of fcntl. Update as needed.. */
-int wpurple_fcntl(int socket, int command, int val) {
+int wpurple_fcntl(int socket, int command, ...) {
+
 	switch( command ) {
+	case F_GETFL:
+		return 0;
+
 	case F_SETFL:
 	{
+		va_list args;
+		int val;
 		int ret=0;
 
+		va_start(args, command);
+		val = va_arg(args, int);
+		va_end(args);
+
 		switch( val ) {
 		case O_NONBLOCK:
 		{
@@ -152,7 +162,7 @@
 			break;
 		}
 		case 0:
-	        {
+		{
 			u_long imode=0;
 			ret = ioctlsocket(socket, FIONBIO, &imode);
 			break;
--- a/libpurple/win32/libc_interface.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/win32/libc_interface.h	Wed Oct 17 03:37:12 2007 +0000
@@ -75,8 +75,8 @@
 wpurple_ioctl( fd, command, val )
 
 /* fcntl.h */
-#define fcntl( fd, command, val ) \
-wpurple_fcntl( fd, command, val )
+#define fcntl( fd, command, ... ) \
+wpurple_fcntl( fd, command, ##__VA_ARGS__ )
 
 /* arpa/inet.h */
 #define inet_aton( name, addr ) \
--- a/libpurple/win32/libc_internal.h	Wed Oct 17 03:36:54 2007 +0000
+++ b/libpurple/win32/libc_internal.h	Wed Oct 17 03:37:12 2007 +0000
@@ -49,9 +49,10 @@
 char* wpurple_strerror( int errornum );
 
 /* fcntl.h */
-int wpurple_fcntl(int socket, int command, int val);
-#define F_SETFL 1
-#define O_NONBLOCK 1
+int wpurple_fcntl(int socket, int command, ...);
+#define F_GETFL 3
+#define F_SETFL 4
+#define O_NONBLOCK 04000
 
 /* sys/ioctl.h */
 #define SIOCGIFCONF 0x8912 /* get iface list */
--- a/pidgin/gtkblist.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/pidgin/gtkblist.c	Wed Oct 17 03:37:12 2007 +0000
@@ -3877,13 +3877,26 @@
 {
 	static GtkWidget *menu = NULL;
 	GList *convs = NULL;
+	GList *chats, *ims;
 
 	if (menu) {
 		gtk_widget_destroy(menu);
 		menu = NULL;
 	}
 
-	convs = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_ANY, PIDGIN_UNSEEN_TEXT, TRUE, 0);
+	ims = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_IM,
+				PIDGIN_UNSEEN_TEXT, FALSE, 0);
+
+	chats = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_CHAT,
+				PIDGIN_UNSEEN_NICK, FALSE, 0);
+
+	if(ims && chats)
+		convs = g_list_concat(ims, chats);
+	else if(ims && !chats)
+		convs = ims;
+	else if(!ims && chats)
+		convs = chats;
+
 	if (!convs)
 		/* no conversations added, don't show the menu */
 		return;
@@ -3905,9 +3918,13 @@
 	switch (event->button) {
 		case 1:
 			convs = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_IM,
-															PIDGIN_UNSEEN_TEXT, TRUE, 1);
+							PIDGIN_UNSEEN_TEXT, FALSE, 1);
+
+			if(!convs)
+				convs = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_CHAT,
+								PIDGIN_UNSEEN_NICK, FALSE, 1);
 			if (convs) {
-				purple_conversation_present((PurpleConversation*)convs->data);
+				pidgin_conv_present_conversation((PurpleConversation*)convs->data);
 				g_list_free(convs);
 			}
 			break;
@@ -3923,6 +3940,7 @@
                         PidginBuddyList *gtkblist)
 {
 	GList *convs = NULL;
+	GList *ims, *chats;
 	GList *l = NULL;
 
 	if (type != PURPLE_CONV_UPDATE_UNSEEN)
@@ -3939,7 +3957,19 @@
 		gtkblist->menutrayicon = NULL;
 	}
 
-	convs = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_ANY, PIDGIN_UNSEEN_TEXT, TRUE, 0);
+	ims = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_IM,
+				PIDGIN_UNSEEN_TEXT, FALSE, 0);
+
+	chats = pidgin_conversations_find_unseen_list(PURPLE_CONV_TYPE_CHAT,
+				PIDGIN_UNSEEN_NICK, FALSE, 0);
+
+	if(ims && chats)
+		convs = g_list_concat(ims, chats);
+	else if(ims && !chats)
+		convs = ims;
+	else if(!ims && chats)
+		convs = chats;
+
 	if (convs) {
 		GtkWidget *img = NULL;
 		GString *tooltip_text = NULL;
@@ -3947,7 +3977,14 @@
 		tooltip_text = g_string_new("");
 		l = convs;
 		while (l != NULL) {
-			int count = GPOINTER_TO_INT(purple_conversation_get_data(l->data, "unseen-count"));
+			int count = 0;
+			PidginConversation *gtkconv = PIDGIN_CONVERSATION((PurpleConversation *)l->data);
+
+			if(gtkconv)
+				count = gtkconv->unseen_count;
+			else if(purple_conversation_get_data(l->data, "unseen-count"))
+				count = GPOINTER_TO_INT(purple_conversation_get_data(l->data, "unseen-count"));
+
 			g_string_append_printf(tooltip_text,
 					ngettext("%d unread message from %s\n", "%d unread messages from %s\n", count),
 					count, purple_conversation_get_name(l->data));
--- a/pidgin/gtkconv.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/pidgin/gtkconv.c	Wed Oct 17 03:37:12 2007 +0000
@@ -148,6 +148,7 @@
 static void add_chat_buddy_common(PurpleConversation *conv, PurpleConvChatBuddy *cb, const char *old_name);
 static gboolean tab_complete(PurpleConversation *conv);
 static void pidgin_conv_updated(PurpleConversation *conv, PurpleConvUpdateType type);
+static void conv_set_unseen(PurpleConversation *gtkconv, PidginUnseenState state);
 static void gtkconv_set_unseen(PidginConversation *gtkconv, PidginUnseenState state);
 static void update_typing_icon(PidginConversation *gtkconv);
 static const char *item_factory_translate_func (const char *path, gpointer func_data);
@@ -2853,8 +2854,9 @@
 		if (gtkconv != NULL && gtkconv->active_conv != conv)
 			continue;
 		if (gtkconv == NULL) {
-			if (!hidden_only ||
-					!purple_conversation_get_data(conv, "unseen-count"))
+			if (!purple_conversation_get_data(conv, "unseen-count") ||
+				!purple_conversation_get_data(conv, "unseen-state") ||
+				GPOINTER_TO_INT(purple_conversation_get_data(conv, "unseen-state"))<min_state)
 				continue;
 			r = g_list_prepend(r, conv);
 			c++;
@@ -3524,6 +3526,7 @@
 
 		if (b == item_buddy) {
 			gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(item), TRUE);
+			g_list_free(child);
 			break;
 		}
 	}
@@ -5162,6 +5165,8 @@
 			conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, sender);
 			purple_conversation_set_ui_ops(conv, NULL);
 			ui_ops->create_conversation = pidgin_conv_new;
+		} else {
+			/* TODO: update the unseen_state data on the conv here */
 		}
 	} else {
 		/* new message for an IM */
@@ -6519,6 +6524,7 @@
 		AtkObject *accessibility_obj;
 		/* I think this is a little longer than it needs to be but I'm lazy. */
 		char *style;
+		gboolean bold = FALSE;
 
 		if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM)
 			im = PURPLE_CONV_IM(conv);
@@ -6552,7 +6558,7 @@
 		gtk_list_store_set(gtkconv->infopane_model, &(gtkconv->infopane_iter),
 				CONV_TEXT_COLUMN, markup, -1);
 	        /* XXX seanegan Why do I have to do this? */
-        	gtk_widget_queue_draw(gtkconv->infopane);
+		gtk_widget_queue_draw(gtkconv->infopane);
 	
 		if (title != markup)
 			g_free(markup);
@@ -6571,31 +6577,41 @@
 			style = "color=\"#c4a000\"";
 		} else if (gtkconv->unseen_state == PIDGIN_UNSEEN_NICK)	{
 			atk_object_set_description(accessibility_obj, _("Nick Said"));
-			style = "color=\"#204a87\" weight=\"bold\"";
+			style = "color=\"#cc0000\"";
 		} else if (gtkconv->unseen_state == PIDGIN_UNSEEN_TEXT)	{
 			atk_object_set_description(accessibility_obj, _("Unread Messages"));
-			style = "color=\"#cc0000\" weight=\"bold\"";
+			if (gtkconv->active_conv->type == PURPLE_CONV_TYPE_CHAT)
+				style = "color=\"#204a87\"";
+			else
+				style = "color=\"#cc0000\"";
 		} else if (gtkconv->unseen_state == PIDGIN_UNSEEN_EVENT) {
 			atk_object_set_description(accessibility_obj, _("New Event"));
-			style = "color=\"#888a85\" weight=\"bold\"";
+			style = "color=\"#888a85\"";
 		} else {
-			style = "";
+			style = NULL;
 		}
-		
-		if (*style != '\0')
+
+		if (gtkconv->unseen_state == PIDGIN_UNSEEN_TEXT ||
+				gtkconv->unseen_state == PIDGIN_UNSEEN_NICK ||
+				gtkconv->unseen_state == PIDGIN_UNSEEN_EVENT)
+			bold = TRUE;
+
+		if (style || bold)
 		{
 			char *html_title,*label;
 
 			html_title = g_markup_escape_text(title, -1);
-			label = g_strdup_printf("<span %s>%s</span>",
-			                        style, html_title);
+			label = g_strdup_printf("<span %s %s>%s</span>",
+			                        style ? style : "",
+			                        bold ? "weight=\"bold\"" : "",
+			                        html_title);
 			g_free(html_title);
 			gtk_label_set_markup(GTK_LABEL(gtkconv->tab_label), label);
 			g_free(label);
 		}
 		else
 			gtk_label_set_text(GTK_LABEL(gtkconv->tab_label), title);
-		
+
 		if (pidgin_conv_window_is_active_conversation(conv))
 			update_typing_icon(gtkconv);
 
@@ -6657,13 +6673,24 @@
 
 static void
 wrote_msg_update_unseen_cb(PurpleAccount *account, const char *who, const char *message,
-		PurpleConversation *conv, PurpleMessageFlags flag, gpointer null)
+		PurpleConversation *conv, PurpleMessageFlags flags, gpointer null)
 {
 	if (conv == NULL || PIDGIN_IS_PIDGIN_CONVERSATION(conv))
 		return;
-	if (flag & (PURPLE_MESSAGE_SEND | PURPLE_MESSAGE_RECV)) {
-		purple_conversation_set_data(conv, "unseen-count",
-				GINT_TO_POINTER(GPOINTER_TO_INT(purple_conversation_get_data(conv, "unseen-count")) + 1));
+	if (flags & (PURPLE_MESSAGE_SEND | PURPLE_MESSAGE_RECV)) {
+		PidginUnseenState unseen = PIDGIN_UNSEEN_NONE;
+
+		if ((flags & PURPLE_MESSAGE_NICK) == PURPLE_MESSAGE_NICK)
+			unseen = PIDGIN_UNSEEN_NICK;
+		else if (((flags & PURPLE_MESSAGE_SYSTEM) == PURPLE_MESSAGE_SYSTEM) ||
+			  ((flags & PURPLE_MESSAGE_ERROR) == PURPLE_MESSAGE_ERROR))
+			unseen = PIDGIN_UNSEEN_EVENT;
+		else if ((flags & PURPLE_MESSAGE_NO_LOG) == PURPLE_MESSAGE_NO_LOG)
+			unseen = PIDGIN_UNSEEN_NO_LOG;
+		else
+			unseen = PIDGIN_UNSEEN_TEXT;
+
+		conv_set_unseen(conv, unseen);
 		purple_conversation_update(conv, PURPLE_CONV_UPDATE_UNSEEN);
 	}
 }
@@ -7438,6 +7465,7 @@
 		return FALSE;
 
 	purple_conversation_set_data(conv, "unseen-count", NULL);
+	purple_conversation_set_data(conv, "unseen-state", NULL);
 	purple_conversation_set_ui_ops(conv, pidgin_conversations_get_conv_ui_ops());
 	private_gtkconv_new(conv, FALSE);
 	gtkconv = PIDGIN_CONVERSATION(conv);
@@ -7907,6 +7935,38 @@
 }
 
 static void
+conv_set_unseen(PurpleConversation *conv, PidginUnseenState state)
+{
+	int unseen_count = 0;
+	PidginUnseenState unseen_state = PIDGIN_UNSEEN_NONE;
+
+	if(purple_conversation_get_data(conv, "unseen-count"))
+		unseen_count = GPOINTER_TO_INT(purple_conversation_get_data(conv, "unseen-count"));
+
+	if(purple_conversation_get_data(conv, "unseen-state"))
+		unseen_state = GPOINTER_TO_INT(purple_conversation_get_data(conv, "unseen-state"));
+
+	if (state == PIDGIN_UNSEEN_NONE)
+	{
+		unseen_count = 0;
+		unseen_state = PIDGIN_UNSEEN_NONE;
+	}
+	else
+	{
+		if (state >= PIDGIN_UNSEEN_TEXT)
+			unseen_count++;
+
+		if (state > unseen_state)
+			unseen_state = state;
+	}
+
+	purple_conversation_set_data(conv, "unseen-count", GINT_TO_POINTER(unseen_count));
+	purple_conversation_set_data(conv, "unseen-state", GINT_TO_POINTER(unseen_state));
+
+	purple_conversation_update(conv, PURPLE_CONV_UPDATE_UNSEEN);
+}
+
+static void
 gtkconv_set_unseen(PidginConversation *gtkconv, PidginUnseenState state)
 {
 	if (state == PIDGIN_UNSEEN_NONE)
--- a/pidgin/gtkdocklet.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/pidgin/gtkdocklet.c	Wed Oct 17 03:37:12 2007 +0000
@@ -38,6 +38,7 @@
 #include "gtkprefs.h"
 #include "gtksavedstatuses.h"
 #include "gtksound.h"
+#include "gtkstatusbox.h"
 #include "gtkutils.h"
 #include "pidginstock.h"
 #include "gtkdocklet.h"
@@ -144,15 +145,22 @@
 		if (ui_ops->set_tooltip) {
 			GString *tooltip_text = g_string_new("");
 			for (l = convs, count = 0 ; l != NULL ; l = l->next, count++) {
-				if (PIDGIN_IS_PIDGIN_CONVERSATION(l->data)) {
-					PidginConversation *gtkconv = PIDGIN_CONVERSATION((PurpleConversation *)l->data);
-					if (count == DOCKLET_TOOLTIP_LINE_LIMIT - 1)
-						g_string_append(tooltip_text, _("Right-click for more unread messages...\n"));
-					else
-						g_string_append_printf(tooltip_text,
-							ngettext("%d unread message from %s\n", "%d unread messages from %s\n", gtkconv->unseen_count),
-							gtkconv->unseen_count,
-							gtk_label_get_text(GTK_LABEL(gtkconv->tab_label)));
+				PurpleConversation *conv = (PurpleConversation *)l->data;
+				PidginConversation *gtkconv = PIDGIN_CONVERSATION(conv);
+
+				if (count == DOCKLET_TOOLTIP_LINE_LIMIT - 1) {
+					g_string_append(tooltip_text, _("Right-click for more unread messages...\n"));
+				} else if(gtkconv) {
+					g_string_append_printf(tooltip_text,
+						ngettext("%d unread message from %s\n", "%d unread messages from %s\n", gtkconv->unseen_count),
+						gtkconv->unseen_count,
+						gtk_label_get_text(GTK_LABEL(gtkconv->tab_label)));
+				} else {
+					g_string_append_printf(tooltip_text,
+						ngettext("%d unread message from %s\n", "%d unread messages from %s\n",
+						GPOINTER_TO_INT(purple_conversation_get_data(conv, "unseen-count"))),
+						GPOINTER_TO_INT(purple_conversation_get_data(conv, "unseen-count")),
+						purple_conversation_get_name(conv));
 				}
 			}
 
@@ -356,6 +364,10 @@
 }
 #endif
 
+/* There is a lot of code here for handling the status submenu, much of
+ * which is duplicated from the gtkstatusbox. It'd be nice to add API
+ * somewhere to simplify this (either in the statusbox, or in libpurple).
+ */
 static void
 show_custom_status_editor_cb(GtkMenuItem *menuitem, gpointer user_data)
 {
@@ -369,6 +381,70 @@
 		purple_savedstatus_is_transient(saved_status) ? saved_status : NULL);
 }
 
+static PurpleSavedStatus *
+create_transient_status(PurpleStatusPrimitive primitive, PurpleStatusType *status_type)
+{
+	PurpleSavedStatus *saved_status = purple_savedstatus_new(NULL, primitive);
+
+	if(status_type != NULL) {
+		GList *tmp, *active_accts = purple_accounts_get_all_active();
+		for (tmp = active_accts; tmp != NULL; tmp = tmp->next) {
+			purple_savedstatus_set_substatus(saved_status,
+				(PurpleAccount*) tmp->data, status_type, NULL);
+		}
+		g_list_free(active_accts);
+	}
+
+	return saved_status;
+}
+
+static void
+activate_status_account_cb(GtkMenuItem *menuitem, gpointer user_data)
+{
+	PurpleStatusType *status_type;
+	PurpleStatusPrimitive primitive;
+	PurpleSavedStatus *saved_status = NULL;
+	GList *iter = purple_savedstatuses_get_all();
+	GList *tmp, *active_accts = purple_accounts_get_all_active();
+
+	status_type = (PurpleStatusType *)user_data;
+	primitive = purple_status_type_get_primitive(status_type);
+
+	for (; iter != NULL; iter = iter->next) {
+		PurpleSavedStatus *ss = iter->data;
+		if ((purple_savedstatus_get_type(ss) == primitive) && purple_savedstatus_is_transient(ss) &&
+			purple_savedstatus_has_substatuses(ss))
+		{
+			gboolean found = FALSE;
+			/* The currently enabled accounts must have substatuses for all the active accts */
+			for(tmp = active_accts; tmp != NULL; tmp = tmp->next) {
+				PurpleAccount *acct = tmp->data;
+				PurpleSavedStatusSub *sub = purple_savedstatus_get_substatus(ss, acct);
+				if (sub) {
+					const PurpleStatusType *sub_type = purple_savedstatus_substatus_get_type(sub);
+					const char *subtype_status_id = purple_status_type_get_id(sub_type);
+					if (subtype_status_id && !strcmp(subtype_status_id,
+							purple_status_type_get_id(status_type)))
+						found = TRUE;
+				}
+			}
+			if (!found)
+				continue;
+			saved_status = ss;
+			break;
+		}
+	}
+
+	g_list_free(active_accts);
+
+	/* Create a new transient saved status if we weren't able to find one */
+	if (saved_status == NULL)
+		saved_status = create_transient_status(primitive, status_type);
+
+	/* Set the status for each account */
+	purple_savedstatus_activate(saved_status);
+}
+
 static void
 activate_status_primitive_cb(GtkMenuItem *menuitem, gpointer user_data)
 {
@@ -382,7 +458,7 @@
 
 	/* Create a new transient saved status if we weren't able to find one */
 	if (saved_status == NULL)
-		saved_status = purple_savedstatus_new(NULL, primitive);
+		saved_status = create_transient_status(primitive, NULL);
 
 	/* Set the status for each account */
 	purple_savedstatus_activate(saved_status);
@@ -407,7 +483,7 @@
 	GdkPixbuf *pixbuf;
 	GtkWidget *image;
 
-	menuitem = gtk_image_menu_item_new_with_mnemonic(str);
+	menuitem = gtk_image_menu_item_new_with_label(str);
 
 	if (menu)
 		gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
@@ -425,31 +501,67 @@
 	return menuitem;
 }
 
+static void
+add_account_statuses(GtkWidget *menu, PurpleAccount *account)
+{
+	GList *l;
+
+	for (l = purple_account_get_status_types(account); l != NULL; l = l->next) {
+		PurpleStatusType *status_type = (PurpleStatusType *)l->data;
+		PurpleStatusPrimitive prim;
+
+		if (!purple_status_type_is_user_settable(status_type))
+			continue;
+
+		prim = purple_status_type_get_primitive(status_type);
+
+		new_menu_item_with_status_icon(menu,
+			purple_status_type_get_name(status_type),
+			prim, G_CALLBACK(activate_status_account_cb),
+			status_type, 0, 0, NULL);
+	}
+}
+
 static GtkWidget *
 docklet_status_submenu()
 {
 	GtkWidget *submenu, *menuitem;
 	GList *popular_statuses, *cur;
+	PidginStatusBox *statusbox = NULL;
 
 	submenu = gtk_menu_new();
 	menuitem = gtk_menu_item_new_with_label(_("Change Status"));
 	gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), submenu);
 
-	new_menu_item_with_status_icon(submenu, _("Available"),
-		PURPLE_STATUS_AVAILABLE, G_CALLBACK(activate_status_primitive_cb),
-		GINT_TO_POINTER(PURPLE_STATUS_AVAILABLE), 0, 0, NULL);
+	if(pidgin_blist_get_default_gtk_blist() != NULL) {
+		statusbox = PIDGIN_STATUS_BOX(pidgin_blist_get_default_gtk_blist()->statusbox);
+	}
 
-	new_menu_item_with_status_icon(submenu, _("Away"),
-		PURPLE_STATUS_AWAY, G_CALLBACK(activate_status_primitive_cb),
-		GINT_TO_POINTER(PURPLE_STATUS_AWAY), 0, 0, NULL);
+	if(statusbox && statusbox->account != NULL) {
+		add_account_statuses(submenu, statusbox->account);
+	} else if(statusbox && statusbox->token_status_account != NULL) {
+		add_account_statuses(submenu, statusbox->token_status_account);
+	} else {
+		new_menu_item_with_status_icon(submenu, _("Available"),
+			PURPLE_STATUS_AVAILABLE, G_CALLBACK(activate_status_primitive_cb),
+			GINT_TO_POINTER(PURPLE_STATUS_AVAILABLE), 0, 0, NULL);
 
-	new_menu_item_with_status_icon(submenu, _("Invisible"),
-		PURPLE_STATUS_INVISIBLE, G_CALLBACK(activate_status_primitive_cb),
-		GINT_TO_POINTER(PURPLE_STATUS_INVISIBLE), 0, 0, NULL);
+		new_menu_item_with_status_icon(submenu, _("Away"),
+			PURPLE_STATUS_AWAY, G_CALLBACK(activate_status_primitive_cb),
+			GINT_TO_POINTER(PURPLE_STATUS_AWAY), 0, 0, NULL);
+
+		new_menu_item_with_status_icon(submenu, _("Do not disturb"),
+			PURPLE_STATUS_UNAVAILABLE, G_CALLBACK(activate_status_primitive_cb),
+			GINT_TO_POINTER(PURPLE_STATUS_UNAVAILABLE), 0, 0, NULL);
 
-	new_menu_item_with_status_icon(submenu, _("Offline"),
-		PURPLE_STATUS_OFFLINE, G_CALLBACK(activate_status_primitive_cb),
-		GINT_TO_POINTER(PURPLE_STATUS_OFFLINE), 0, 0, NULL);
+		new_menu_item_with_status_icon(submenu, _("Invisible"),
+			PURPLE_STATUS_INVISIBLE, G_CALLBACK(activate_status_primitive_cb),
+			GINT_TO_POINTER(PURPLE_STATUS_INVISIBLE), 0, 0, NULL);
+
+		new_menu_item_with_status_icon(submenu, _("Offline"),
+			PURPLE_STATUS_OFFLINE, G_CALLBACK(activate_status_primitive_cb),
+			GINT_TO_POINTER(PURPLE_STATUS_OFFLINE), 0, 0, NULL);
+	}
 
 	popular_statuses = purple_savedstatuses_get_popular(6);
 	if (popular_statuses != NULL)
@@ -474,6 +586,7 @@
 }
 
 
+
 static void
 plugin_act(GtkObject *obj, PurplePluginAction *pam)
 {
@@ -553,7 +666,6 @@
 		pidgin_separator(menu);
 }
 
-
 static void
 docklet_menu() {
 	static GtkWidget *menu = NULL;
@@ -653,7 +765,7 @@
 			if (pending) {
 				GList *l = get_pending_list(1);
 				if (l != NULL) {
-					purple_conversation_present((PurpleConversation *)l->data);
+					pidgin_conv_present_conversation((PurpleConversation *)l->data);
 					g_list_free(l);
 				}
 			} else {
--- a/pidgin/gtkft.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/pidgin/gtkft.c	Wed Oct 17 03:37:12 2007 +0000
@@ -912,7 +912,7 @@
 
 		gtk_widget_show(tmp->window);
 	} else {
-		gtk_widget_show(dialog->window);
+		gtk_window_present(GTK_WINDOW(dialog->window));
 	}
 }
 
--- a/pidgin/gtknotify.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/pidgin/gtknotify.c	Wed Oct 17 03:37:12 2007 +0000
@@ -740,7 +740,7 @@
 	GtkListStore *model;
 	GtkCellRenderer *renderer;
 	guint col_num;
-	GList *column;
+	GList *columniter;
 	guint i;
 
 	GtkWidget *vbox;
@@ -824,11 +824,12 @@
 					-1, "", renderer, "pixbuf", 0, NULL);
 
 	i = 1;
-	for (column = results->columns; column != NULL; column = column->next) {
+	for (columniter = results->columns; columniter != NULL; columniter = columniter->next) {
+		PurpleNotifySearchColumn *column = columniter->data;
 		renderer = gtk_cell_renderer_text_new();
 
 		gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview), -1,
-				column->data, renderer, "text", i, NULL);
+				column->title, renderer, "text", i, NULL);
 		i++;
 	}
 
--- a/pidgin/gtksound.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/pidgin/gtksound.c	Wed Oct 17 03:37:12 2007 +0000
@@ -118,12 +118,9 @@
 	if (conv != NULL && PIDGIN_IS_PIDGIN_CONVERSATION(conv))
 	{
 		PidginConversation *gtkconv;
-		PidginWindow *win;
 		gboolean has_focus;
 
 		gtkconv = PIDGIN_CONVERSATION(conv);
-		win = gtkconv->win;
-
 		has_focus = purple_conversation_has_focus(conv);
 
 		if (!gtkconv->make_sound ||
--- a/pidgin/gtkutils.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/pidgin/gtkutils.c	Wed Oct 17 03:37:12 2007 +0000
@@ -850,16 +850,14 @@
 gboolean
 pidgin_check_if_dir(const char *path, GtkFileSelection *filesel)
 {
-	char *dirname;
+	char *dirname = NULL;
 
 	if (g_file_test(path, G_FILE_TEST_IS_DIR)) {
 		/* append a / if needed */
 		if (path[strlen(path) - 1] != G_DIR_SEPARATOR) {
 			dirname = g_strconcat(path, G_DIR_SEPARATOR_S, NULL);
-		} else {
-			dirname = g_strdup(path);
 		}
-		gtk_file_selection_set_filename(filesel, dirname);
+		gtk_file_selection_set_filename(filesel, (dirname != NULL) ? dirname : path);
 		g_free(dirname);
 		return TRUE;
 	}
@@ -1178,14 +1176,15 @@
 	label = gtk_widget_get_accessible (l);
 
 	/* Make sure mnemonics work */
-        gtk_label_set_mnemonic_widget(GTK_LABEL(l), w);
-	
+	gtk_label_set_mnemonic_widget(GTK_LABEL(l), w);
+
 	/* Create the labeled-by relation */
 	set = atk_object_ref_relation_set (acc);
 	rel_obj[0] = label;
 	relation = atk_relation_new (rel_obj, 1, ATK_RELATION_LABELLED_BY);
 	atk_relation_set_add (set, relation);
 	g_object_unref (relation);
+	g_object_unref(set);
 
 	/* Create the label-for relation */
 	set = atk_object_ref_relation_set (label);
@@ -1193,6 +1192,7 @@
 	relation = atk_relation_new (rel_obj, 1, ATK_RELATION_LABEL_FOR);
 	atk_relation_set_add (set, relation);
 	g_object_unref (relation);
+	g_object_unref(set);
 }
 
 void
@@ -1526,6 +1526,8 @@
 
 			if (prpl_info && prpl_info->can_receive_file)
 				ft = prpl_info->can_receive_file(gc, who);
+			else if (prpl_info && prpl_info->send_file)
+				ft = TRUE;
 
 			if (im && ft)
 				purple_request_choice(NULL, NULL,
@@ -1559,6 +1561,7 @@
 						    _("Set as buddy icon"), DND_BUDDY_ICON,
 						    (ft ? _("Send image file") : _("Insert in message")), (ft ? DND_FILE_TRANSFER : DND_IM_IMAGE),
 							NULL);
+			gdk_pixbuf_unref(pb);
 			return;
 		}
 
--- a/pidgin/plugins/history.c	Wed Oct 17 03:36:54 2007 +0000
+++ b/pidgin/plugins/history.c	Wed Oct 17 03:37:12 2007 +0000
@@ -42,6 +42,7 @@
 	GtkIMHtmlOptions options = GTK_IMHTML_NO_COLOURS;
 	char *header;
 	char *protocol;
+	char *escaped_alias;
 
 	convtype = purple_conversation_get_type(c);
 	gtkconv = PIDGIN_CONVERSATION(c);
@@ -120,10 +121,12 @@
 	if (gtk_text_buffer_get_char_count(gtk_text_view_get_buffer(GTK_TEXT_VIEW(gtkconv->imhtml))))
 		gtk_imhtml_append_text(GTK_IMHTML(gtkconv->imhtml), "<BR>", options);
 
-	header = g_strdup_printf(_("<b>Conversation with %s on %s:</b><br>"), alias,
+	escaped_alias = g_markup_escape_text(alias, -1);
+	header = g_strdup_printf(_("<b>Conversation with %s on %s:</b><br>"), escaped_alias,
 							 purple_date_format_full(localtime(&((PurpleLog *)logs->data)->time)));
 	gtk_imhtml_append_text(GTK_IMHTML(gtkconv->imhtml), header, options);
 	g_free(header);
+	g_free(escaped_alias);
 
 	g_strchomp(history);
 	gtk_imhtml_append_text(GTK_IMHTML(gtkconv->imhtml), history, options);
--- a/po/ChangeLog	Wed Oct 17 03:36:54 2007 +0000
+++ b/po/ChangeLog	Wed Oct 17 03:37:12 2007 +0000
@@ -2,6 +2,7 @@
 
 version 2.2.2
 	* German translation updated (Bjoern Voigt)
+	* Korean translation updated (Sushizang)
 	* Slovak translation updated (loptosko)
 
 version 2.2.1
--- a/po/ko.po	Wed Oct 17 03:36:54 2007 +0000
+++ b/po/ko.po	Wed Oct 17 03:37:12 2007 +0000
@@ -10,8 +10,8 @@
 msgstr ""
 "Project-Id-Version: gaim 2.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-09-28 15:32-0500\n"
-"PO-Revision-Date: 2007-06-28 10:48+0900\n"
+"POT-Creation-Date: 2007-10-16 00:55-0700\n"
+"PO-Revision-Date: 2007-10-01 16:15+0900\n"
 "Last-Translator: sushizang <sushizang@empal.com>\n"
 "Language-Team: GTP Korean <gnome-kr-translation@gnome.or.kr>\n"
 "MIME-Version: 1.0\n"
@@ -53,7 +53,7 @@
 "  -n, --nologin       자동으로 로그인 하지 않음\n"
 "  -v, --version       현재 버전을 표시하고 종료\n"
 
-#: ../finch/finch.c:328 ../pidgin/gtkmain.c:711
+#: ../finch/finch.c:328 ../pidgin/gtkmain.c:718
 #, c-format
 msgid ""
 "%s encountered errors migrating your settings from %s to %s. Please "
@@ -62,11 +62,11 @@
 msgstr ""
 
 #: ../finch/gntaccount.c:124 ../finch/gntaccount.c:484 ../finch/gntblist.c:300
-#: ../finch/gntblist.c:433 ../finch/gntblist.c:446 ../finch/gntplugin.c:186
-#: ../finch/gntplugin.c:234 ../finch/gntstatus.c:301 ../finch/gntstatus.c:310
+#: ../finch/gntblist.c:433 ../finch/gntblist.c:446 ../finch/gntplugin.c:187
+#: ../finch/gntplugin.c:235 ../finch/gntstatus.c:301 ../finch/gntstatus.c:310
 #: ../finch/plugins/gntclipboard.c:115 ../finch/plugins/gntclipboard.c:121
 #: ../finch/plugins/gntclipboard.c:128
-#: ../libpurple/protocols/jabber/buddy.c:2029
+#: ../libpurple/protocols/jabber/buddy.c:2032
 #: ../libpurple/protocols/jabber/chat.c:677
 #: ../libpurple/protocols/jabber/chat.c:688
 #: ../libpurple/protocols/jabber/jabber.c:1515
@@ -101,8 +101,8 @@
 msgid "(You probably forgot to 'make install'.)"
 msgstr ""
 
-#: ../finch/gntaccount.c:496 ../finch/gntconn.c:136
-#: ../pidgin/gtkaccount.c:1473 ../pidgin/gtkblist.c:4040
+#: ../finch/gntaccount.c:496 ../finch/gntconn.c:137
+#: ../pidgin/gtkaccount.c:1474 ../pidgin/gtkblist.c:4367
 msgid "Modify Account"
 msgstr "계정 편집"
 
@@ -132,32 +132,32 @@
 #: ../finch/gntaccount.c:575 ../finch/gntaccount.c:638
 #: ../finch/gntaccount.c:889 ../finch/gntblist.c:344 ../finch/gntblist.c:421
 #: ../finch/gntblist.c:456 ../finch/gntblist.c:803 ../finch/gntblist.c:1005
-#: ../finch/gntblist.c:1101 ../finch/gntblist.c:2222 ../finch/gntcertmgr.c:91
-#: ../finch/gntplugin.c:379 ../finch/gntpounce.c:459 ../finch/gntpounce.c:667
-#: ../finch/gntprefs.c:265 ../finch/gntsound.c:1058 ../finch/gntstatus.c:145
-#: ../finch/gntstatus.c:485 ../finch/gntstatus.c:610
+#: ../finch/gntblist.c:1101 ../finch/gntblist.c:2224 ../finch/gntblist.c:2287
+#: ../finch/gntcertmgr.c:91 ../finch/gntplugin.c:472 ../finch/gntpounce.c:459
+#: ../finch/gntpounce.c:667 ../finch/gntprefs.c:265 ../finch/gntsound.c:1058
+#: ../finch/gntstatus.c:145 ../finch/gntstatus.c:485 ../finch/gntstatus.c:610
 #: ../libpurple/account.c:1013 ../libpurple/account.c:1263
 #: ../libpurple/account.c:1298 ../libpurple/conversation.c:1215
 #: ../libpurple/plugins/buddynote.c:51 ../libpurple/protocols/gg/gg.c:507
 #: ../libpurple/protocols/gg/gg.c:666 ../libpurple/protocols/gg/gg.c:803
 #: ../libpurple/protocols/gg/gg.c:884
 #: ../libpurple/protocols/jabber/buddy.c:728
-#: ../libpurple/protocols/jabber/buddy.c:2413
-#: ../libpurple/protocols/jabber/buddy.c:2449
+#: ../libpurple/protocols/jabber/buddy.c:2416
+#: ../libpurple/protocols/jabber/buddy.c:2452
 #: ../libpurple/protocols/jabber/chat.c:786
 #: ../libpurple/protocols/jabber/jabber.c:1008
 #: ../libpurple/protocols/jabber/jabber.c:1017
 #: ../libpurple/protocols/jabber/jabber.c:1737
 #: ../libpurple/protocols/jabber/si.c:874
-#: ../libpurple/protocols/jabber/usermood.c:184
+#: ../libpurple/protocols/jabber/usermood.c:202
 #: ../libpurple/protocols/jabber/usernick.c:78
 #: ../libpurple/protocols/jabber/xdata.c:400
-#: ../libpurple/protocols/msn/msn.c:287 ../libpurple/protocols/msn/msn.c:304
-#: ../libpurple/protocols/msn/msn.c:321 ../libpurple/protocols/msn/msn.c:338
-#: ../libpurple/protocols/msn/msn.c:359
-#: ../libpurple/protocols/oscar/oscar.c:6094
-#: ../libpurple/protocols/oscar/peer.c:1046
-#: ../libpurple/protocols/qq/buddy_info.c:484
+#: ../libpurple/protocols/msn/msn.c:290 ../libpurple/protocols/msn/msn.c:307
+#: ../libpurple/protocols/msn/msn.c:324 ../libpurple/protocols/msn/msn.c:341
+#: ../libpurple/protocols/msn/msn.c:362
+#: ../libpurple/protocols/oscar/oscar.c:6148
+#: ../libpurple/protocols/oscar/peer.c:1048
+#: ../libpurple/protocols/qq/buddy_info.c:525
 #: ../libpurple/protocols/qq/buddy_opt.c:214
 #: ../libpurple/protocols/qq/buddy_opt.c:411
 #: ../libpurple/protocols/qq/group.c:124
@@ -190,10 +190,10 @@
 #: ../libpurple/protocols/silc10/ops.c:1904
 #: ../libpurple/protocols/silc10/silc.c:736
 #: ../libpurple/protocols/silc10/silc.c:942
-#: ../libpurple/protocols/yahoo/yahoo.c:1032
-#: ../libpurple/protocols/yahoo/yahoo.c:3498
-#: ../libpurple/protocols/yahoo/yahoo.c:3509 ../pidgin/gtkaccount.c:1908
-#: ../pidgin/gtkaccount.c:2495 ../pidgin/gtkblist.c:5967
+#: ../libpurple/protocols/yahoo/yahoo.c:1034
+#: ../libpurple/protocols/yahoo/yahoo.c:3500
+#: ../libpurple/protocols/yahoo/yahoo.c:3511 ../pidgin/gtkaccount.c:1909
+#: ../pidgin/gtkaccount.c:2496 ../pidgin/gtkblist.c:6321
 #: ../pidgin/gtkcertmgr.c:197 ../pidgin/gtkdialogs.c:773
 #: ../pidgin/gtkdialogs.c:912 ../pidgin/gtkdialogs.c:1004
 #: ../pidgin/gtkdialogs.c:1024 ../pidgin/gtkdialogs.c:1048
@@ -201,18 +201,18 @@
 #: ../pidgin/gtkdialogs.c:1159 ../pidgin/gtkdialogs.c:1215
 #: ../pidgin/gtkdialogs.c:1254 ../pidgin/gtkdialogs.c:1281
 #: ../pidgin/gtkimhtmltoolbar.c:435 ../pidgin/gtklog.c:328
-#: ../pidgin/gtkplugin.c:289 ../pidgin/gtkpounce.c:1101
+#: ../pidgin/gtkplugin.c:289 ../pidgin/gtkpounce.c:1108
 #: ../pidgin/gtkprivacy.c:563 ../pidgin/gtkprivacy.c:579
 #: ../pidgin/gtkprivacy.c:604 ../pidgin/gtkprivacy.c:618
 #: ../pidgin/gtkrequest.c:271 ../pidgin/gtksavedstatuses.c:345
-#: ../pidgin/gtkstatusbox.c:1574
+#: ../pidgin/gtkstatusbox.c:1593
 msgid "Cancel"
 msgstr "취소"
 
 #. Save button
 #. Save
-#: ../finch/gntaccount.c:579 ../finch/gntcertmgr.c:311
-#: ../finch/gntplugin.c:379 ../finch/gntpounce.c:465 ../finch/gntprefs.c:265
+#: ../finch/gntaccount.c:579 ../finch/gntcertmgr.c:311 ../finch/gntdebug.c:297
+#: ../finch/gntplugin.c:472 ../finch/gntpounce.c:465 ../finch/gntprefs.c:265
 #: ../finch/gntsound.c:1055 ../finch/gntstatus.c:488 ../finch/gntstatus.c:598
 #: ../libpurple/account.c:1297 ../libpurple/plugins/buddynote.c:50
 #: ../libpurple/protocols/jabber/buddy.c:727 ../pidgin/gtkdebug.c:749
@@ -220,8 +220,8 @@
 msgid "Save"
 msgstr "저장"
 
-#: ../finch/gntaccount.c:632 ../pidgin/gtkaccount.c:1900
-#: ../pidgin/gtksavedstatuses.c:333 ../pidgin/gtkstatusbox.c:1568
+#: ../finch/gntaccount.c:632 ../pidgin/gtkaccount.c:1901
+#: ../pidgin/gtksavedstatuses.c:333 ../pidgin/gtkstatusbox.c:1587
 #, c-format
 msgid "Are you sure you want to delete %s?"
 msgstr "정말 %s 을(를) 삭제하시겠습니까?"
@@ -234,14 +234,14 @@
 #: ../finch/gntaccount.c:637 ../finch/gntaccount.c:707
 #: ../finch/gntcertmgr.c:319 ../finch/gntpounce.c:666 ../finch/gntpounce.c:729
 #: ../finch/gntstatus.c:144 ../finch/gntstatus.c:210
-#: ../pidgin/gtkaccount.c:1907 ../pidgin/gtklog.c:327
-#: ../pidgin/gtkpounce.c:1100 ../pidgin/gtkrequest.c:274
-#: ../pidgin/gtksavedstatuses.c:344 ../pidgin/gtkstatusbox.c:1573
+#: ../pidgin/gtkaccount.c:1908 ../pidgin/gtklog.c:327
+#: ../pidgin/gtkpounce.c:1107 ../pidgin/gtkrequest.c:274
+#: ../pidgin/gtksavedstatuses.c:344 ../pidgin/gtkstatusbox.c:1592
 msgid "Delete"
 msgstr "삭제"
 
-#: ../finch/gntaccount.c:669 ../finch/gntblist.c:2119 ../finch/gntui.c:82
-#: ../pidgin/gtkaccount.c:2325 ../pidgin/gtkdocklet.c:522
+#: ../finch/gntaccount.c:669 ../finch/gntblist.c:2121 ../finch/gntui.c:82
+#: ../pidgin/gtkaccount.c:2326 ../pidgin/gtkdocklet.c:715
 msgid "Accounts"
 msgstr "계정"
 
@@ -251,15 +251,16 @@
 
 #. Add button
 #: ../finch/gntaccount.c:698 ../finch/gntaccount.c:888 ../finch/gntblist.c:343
-#: ../finch/gntblist.c:421 ../finch/gntblist.c:456 ../finch/gntcertmgr.c:306
-#: ../finch/gntnotify.c:380 ../finch/gntpounce.c:713 ../finch/gntstatus.c:199
-#: ../libpurple/protocols/gg/gg.c:883 ../libpurple/protocols/qq/sys_msg.c:114
+#: ../finch/gntblist.c:421 ../finch/gntblist.c:456 ../finch/gntblist.c:2372
+#: ../finch/gntcertmgr.c:306 ../finch/gntnotify.c:385 ../finch/gntpounce.c:713
+#: ../finch/gntstatus.c:199 ../libpurple/protocols/gg/gg.c:883
+#: ../libpurple/protocols/qq/sys_msg.c:114
 #: ../libpurple/protocols/qq/sys_msg.c:173
 #: ../libpurple/protocols/qq/sys_msg.c:267
 #: ../libpurple/protocols/sametime/sametime.c:5486
 #: ../libpurple/protocols/silc/chat.c:615
-#: ../libpurple/protocols/silc10/chat.c:599 ../pidgin/gtkaccount.c:2494
-#: ../pidgin/gtkblist.c:5966 ../pidgin/gtkconv.c:1659
+#: ../libpurple/protocols/silc10/chat.c:599 ../pidgin/gtkaccount.c:2495
+#: ../pidgin/gtkblist.c:6320 ../pidgin/gtkconv.c:1713
 #: ../pidgin/gtkrequest.c:275
 msgid "Add"
 msgstr "추가"
@@ -269,33 +270,33 @@
 msgid "Modify"
 msgstr "변경"
 
-#: ../finch/gntaccount.c:811 ../pidgin/gtkaccount.c:2441
+#: ../finch/gntaccount.c:811 ../pidgin/gtkaccount.c:2442
 #, c-format
 msgid "%s%s%s%s has made %s his or her buddy%s%s"
 msgstr "%s%s%s%s 님이 %s 님을 친구로 설정했습니다%s%s"
 
-#: ../finch/gntaccount.c:884 ../pidgin/gtkaccount.c:2493
+#: ../finch/gntaccount.c:884 ../pidgin/gtkaccount.c:2494
 msgid "Add buddy to your list?"
 msgstr "친구 목록에 추가하시겠습니까?"
 
-#: ../finch/gntaccount.c:944 ../pidgin/gtkaccount.c:2551
+#: ../finch/gntaccount.c:944 ../pidgin/gtkaccount.c:2552
 #, c-format
 msgid "%s%s%s%s wants to add %s to his or her buddy list%s%s"
 msgstr "%s%s%s%s 님이 %s 님을 친구 목록 %s%s에 추가하고 싶어 합니다."
 
 #: ../finch/gntaccount.c:969 ../finch/gntaccount.c:972
-#: ../finch/gntaccount.c:999 ../pidgin/gtkaccount.c:2574
-#: ../pidgin/gtkaccount.c:2580
+#: ../finch/gntaccount.c:999 ../pidgin/gtkaccount.c:2575
+#: ../pidgin/gtkaccount.c:2581
 msgid "Authorize buddy?"
 msgstr "친구로서 승인하시겠습니까?"
 
 #: ../finch/gntaccount.c:976 ../finch/gntaccount.c:1003
-#: ../pidgin/gtkaccount.c:2575 ../pidgin/gtkaccount.c:2581
+#: ../pidgin/gtkaccount.c:2576 ../pidgin/gtkaccount.c:2582
 msgid "Authorize"
 msgstr "승인"
 
 #: ../finch/gntaccount.c:977 ../finch/gntaccount.c:1004
-#: ../pidgin/gtkaccount.c:2576 ../pidgin/gtkaccount.c:2582
+#: ../pidgin/gtkaccount.c:2577 ../pidgin/gtkaccount.c:2583
 msgid "Deny"
 msgstr "거부"
 
@@ -319,13 +320,13 @@
 msgid "Error adding buddy"
 msgstr "친구를 추가하는 중 오류"
 
-#: ../finch/gntblist.c:325 ../libpurple/protocols/oscar/oscar.c:2888
-#: ../pidgin/gtkaccount.c:1981 ../pidgin/gtksavedstatuses.c:980
+#: ../finch/gntblist.c:325 ../libpurple/protocols/oscar/oscar.c:2903
+#: ../pidgin/gtkaccount.c:1982 ../pidgin/gtksavedstatuses.c:980
 msgid "Screen Name"
 msgstr "아이디"
 
 #: ../finch/gntblist.c:328 ../finch/gntblist.c:410 ../finch/gntblist.c:1250
-#: ../libpurple/protocols/msn/msn.c:1395
+#: ../libpurple/protocols/msn/msn.c:1507
 #: ../libpurple/protocols/silc/chat.c:606
 #: ../libpurple/protocols/silc10/chat.c:590
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:704
@@ -341,10 +342,11 @@
 msgstr "그룹"
 
 #: ../finch/gntblist.c:335 ../finch/gntblist.c:401 ../finch/gntblist.c:1305
-#: ../finch/gntnotify.c:174 ../finch/gntstatus.c:576
-#: ../libpurple/plugins/idle.c:153 ../libpurple/plugins/idle.c:190
-#: ../pidgin/gtkblist.c:3008 ../pidgin/gtknotify.c:506
-#: ../pidgin/gtkpounce.c:1268 ../pidgin/plugins/gevolution/gevolution.c:445
+#: ../finch/gntblist.c:2210 ../finch/gntblist.c:2274 ../finch/gntnotify.c:174
+#: ../finch/gntstatus.c:576 ../libpurple/plugins/idle.c:153
+#: ../libpurple/plugins/idle.c:190 ../pidgin/gtkblist.c:3206
+#: ../pidgin/gtknotify.c:511 ../pidgin/gtkpounce.c:1275
+#: ../pidgin/plugins/gevolution/gevolution.c:445
 msgid "Account"
 msgstr "계정"
 
@@ -357,7 +359,7 @@
 #: ../libpurple/protocols/silc10/buddy.c:1033
 #: ../libpurple/protocols/silc10/buddy.c:1080
 #: ../libpurple/protocols/silc10/buddy.c:1180
-#: ../libpurple/protocols/yahoo/yahoo.c:3343 ../pidgin/gtkblist.c:5483
+#: ../libpurple/protocols/yahoo/yahoo.c:3345 ../pidgin/gtkblist.c:5826
 #: ../pidgin/plugins/gevolution/add_buddy_dialog.c:445
 msgid "Add Buddy"
 msgstr "친구 추가"
@@ -366,15 +368,16 @@
 msgid "Please enter buddy information."
 msgstr "친구의 정보를 입력해 주십시오."
 
-#: ../finch/gntblist.c:370 ../libpurple/blist.c:1209
+#: ../finch/gntblist.c:370 ../libpurple/blist.c:1210
 msgid "Chats"
 msgstr "대화"
 
 #. Extract their Name and put it in
-#: ../finch/gntblist.c:407 ../libpurple/protocols/jabber/jabber.c:924
+#: ../finch/gntblist.c:407 ../finch/gntblist.c:2205
+#: ../libpurple/protocols/jabber/jabber.c:924
 #: ../libpurple/protocols/jabber/jabber.c:927
-#: ../libpurple/protocols/msn/msn.c:1584 ../libpurple/protocols/msn/msn.c:1649
-#: ../libpurple/protocols/msn/msn.c:1676
+#: ../libpurple/protocols/msn/msn.c:1688 ../libpurple/protocols/msn/msn.c:1753
+#: ../libpurple/protocols/msn/msn.c:1780
 #: ../libpurple/protocols/qq/buddy_info.c:44 ../pidgin/gtkplugin.c:582
 #: ../pidgin/gtkroomlist.c:618
 #: ../pidgin/plugins/gevolution/add_buddy_dialog.c:132
@@ -386,7 +389,7 @@
 msgid "Auto-join"
 msgstr "자동 참가"
 
-#: ../finch/gntblist.c:419 ../finch/gntblist.c:854 ../pidgin/gtkblist.c:5859
+#: ../finch/gntblist.c:419 ../finch/gntblist.c:854 ../pidgin/gtkblist.c:6208
 msgid "Add Chat"
 msgstr "대화 추가"
 
@@ -408,7 +411,7 @@
 
 #: ../finch/gntblist.c:454 ../finch/gntblist.c:856
 #: ../libpurple/protocols/sametime/sametime.c:5396
-#: ../libpurple/protocols/sametime/sametime.c:5484 ../pidgin/gtkblist.c:5963
+#: ../libpurple/protocols/sametime/sametime.c:5484 ../pidgin/gtkblist.c:6317
 msgid "Add Group"
 msgstr "그룹 추가"
 
@@ -432,17 +435,17 @@
 msgid "Edit Settings"
 msgstr "설정 편집"
 
-#: ../finch/gntblist.c:864 ../pidgin/gtkutils.c:931
+#: ../finch/gntblist.c:864 ../pidgin/gtkutils.c:930
 #, fuzzy
 msgid "Information"
 msgstr "직업"
 
-#: ../finch/gntblist.c:864 ../pidgin/gtkutils.c:931
+#: ../finch/gntblist.c:864 ../pidgin/gtkutils.c:930
 #, fuzzy
 msgid "Retrieving..."
 msgstr "사용자가 무언가를 입력하고 있습니다..."
 
-#: ../finch/gntblist.c:904 ../finch/gntconv.c:507
+#: ../finch/gntblist.c:904 ../finch/gntconv.c:534
 #: ../libpurple/protocols/silc/chat.c:899
 #: ../libpurple/protocols/silc10/chat.c:883
 msgid "Get Info"
@@ -453,10 +456,10 @@
 msgstr "친구 알림 추가"
 
 #. if (q_bud && is_online(q_bud->status)) {
-#: ../finch/gntblist.c:915 ../finch/gntconv.c:519
+#: ../finch/gntblist.c:915 ../finch/gntconv.c:546
 #: ../libpurple/protocols/jabber/si.c:874
 #: ../libpurple/protocols/oscar/oscar.c:654 ../libpurple/protocols/qq/qq.c:587
-#: ../pidgin/gtkconv.c:1607
+#: ../pidgin/gtkconv.c:1661
 msgid "Send File"
 msgstr "파일 전송"
 
@@ -501,14 +504,14 @@
 msgstr "삭제 확인"
 
 #: ../finch/gntblist.c:1100 ../finch/gntblist.c:1252 ../finch/gntft.c:227
-#: ../pidgin/gtkconv.c:1656 ../pidgin/gtkrequest.c:276
+#: ../pidgin/gtkconv.c:1710 ../pidgin/gtkrequest.c:276
 #: ../pidgin/gtkstatusbox.c:264
 msgid "Remove"
 msgstr "삭제"
 
 #. Buddy List
-#: ../finch/gntblist.c:1226 ../finch/gntblist.c:2307 ../finch/gntprefs.c:258
-#: ../finch/gntui.c:83 ../pidgin/gtkblist.c:2688 ../pidgin/gtkblist.c:4284
+#: ../finch/gntblist.c:1226 ../finch/gntblist.c:2422 ../finch/gntprefs.c:258
+#: ../finch/gntui.c:83 ../pidgin/gtkblist.c:2886 ../pidgin/gtkblist.c:4610
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:326
 msgid "Buddy List"
 msgstr "친구 목록"
@@ -527,15 +530,15 @@
 #: ../libpurple/protocols/gg/gg.c:2207
 #: ../libpurple/protocols/jabber/buddy.c:286
 #: ../libpurple/protocols/jabber/buddy.c:1247
-#: ../libpurple/protocols/jabber/buddy.c:2214
-#: ../libpurple/protocols/jabber/buddy.c:2396
+#: ../libpurple/protocols/jabber/buddy.c:2217
+#: ../libpurple/protocols/jabber/buddy.c:2399
 #: ../libpurple/protocols/jabber/jabber.c:937
 #: ../libpurple/protocols/jabber/jabber.c:1544
 #: ../libpurple/protocols/jabber/jabber.c:1567
 #: ../libpurple/protocols/jabber/jabber.c:1590
 #: ../libpurple/protocols/jabber/jabber.c:1613
 #: ../libpurple/protocols/jabber/jabber.c:1636
-#: ../libpurple/protocols/msn/msn.c:1403 ../libpurple/protocols/msn/msn.c:1587
+#: ../libpurple/protocols/msn/msn.c:1515 ../libpurple/protocols/msn/msn.c:1691
 #: ../libpurple/protocols/qq/buddy_info.c:43
 #: ../libpurple/protocols/silc/buddy.c:1535
 #: ../libpurple/protocols/silc/ops.c:1002
@@ -545,21 +548,21 @@
 #: ../libpurple/protocols/silc10/ops.c:1036
 #: ../libpurple/protocols/silc10/ops.c:1179
 #: ../libpurple/protocols/silc10/ops.c:1328
-#: ../libpurple/protocols/yahoo/yahoo_profile.c:1066 ../pidgin/gtkblist.c:3032
+#: ../libpurple/protocols/yahoo/yahoo_profile.c:1066 ../pidgin/gtkblist.c:3230
 msgid "Nickname"
 msgstr "별명"
 
 #. Idle stuff
 #: ../finch/gntblist.c:1320 ../finch/gntprefs.c:261
-#: ../libpurple/protocols/bonjour/bonjour.c:340
+#: ../libpurple/protocols/bonjour/bonjour.c:354
 #: ../libpurple/protocols/jabber/buddy.c:787
 #: ../libpurple/protocols/jabber/buddy.c:951
-#: ../libpurple/protocols/msn/msn.c:544 ../libpurple/protocols/msn/state.c:32
-#: ../libpurple/protocols/novell/novell.c:2825
-#: ../libpurple/protocols/oscar/oscar.c:2912
-#: ../libpurple/protocols/yahoo/yahoo.c:3097
-#: ../libpurple/protocols/yahoo/yahoo_profile.c:710 ../pidgin/gtkblist.c:3060
-#: ../pidgin/gtkblist.c:3460 ../pidgin/gtkprefs.c:1925
+#: ../libpurple/protocols/msn/state.c:32
+#: ../libpurple/protocols/novell/novell.c:2830
+#: ../libpurple/protocols/oscar/oscar.c:2927
+#: ../libpurple/protocols/yahoo/yahoo.c:3099
+#: ../libpurple/protocols/yahoo/yahoo_profile.c:710 ../pidgin/gtkblist.c:3258
+#: ../pidgin/gtkblist.c:3664 ../pidgin/gtkprefs.c:1927
 msgid "Idle"
 msgstr "대기 상태"
 
@@ -591,36 +594,26 @@
 "\n"
 "마지막 만남: %s 전"
 
-#: ../finch/gntblist.c:1702 ../pidgin/gtkdocklet.c:470
+#: ../finch/gntblist.c:1704 ../pidgin/gtkdocklet.c:582
 #: ../pidgin/gtkstatusbox.c:1072
 msgid "New..."
 msgstr "상태 추가..."
 
-#: ../finch/gntblist.c:1709 ../pidgin/gtkdocklet.c:471
+#: ../finch/gntblist.c:1711 ../pidgin/gtkdocklet.c:583
 #: ../pidgin/gtkstatusbox.c:1073
 msgid "Saved..."
 msgstr "다른 상태..."
 
-#: ../finch/gntblist.c:2087 ../finch/gntplugin.c:255 ../finch/gntui.c:88
-#: ../pidgin/gtkdocklet.c:523 ../pidgin/gtkplugin.c:531
+#: ../finch/gntblist.c:2089 ../finch/gntplugin.c:343 ../finch/gntui.c:88
+#: ../pidgin/gtkdocklet.c:716 ../pidgin/gtkplugin.c:531
 msgid "Plugins"
 msgstr "플러그인"
 
-#: ../finch/gntblist.c:2203 ../pidgin/gtkdialogs.c:754
-#: ../pidgin/gtkdialogs.c:893 ../pidgin/gtkdialogs.c:974
-msgid "_Name"
-msgstr "이름(_N)"
-
-#: ../finch/gntblist.c:2208 ../pidgin/gtkdialogs.c:759
-#: ../pidgin/gtkdialogs.c:898 ../pidgin/gtkdialogs.c:979
-msgid "_Account"
-msgstr "계정(_A)"
-
-#: ../finch/gntblist.c:2216 ../pidgin/gtkdialogs.c:767
+#: ../finch/gntblist.c:2218 ../pidgin/gtkdialogs.c:767
 msgid "New Instant Message"
 msgstr "새 인스턴트 메시지"
 
-#: ../finch/gntblist.c:2218 ../pidgin/gtkdialogs.c:769
+#: ../finch/gntblist.c:2220 ../pidgin/gtkdialogs.c:769
 msgid ""
 "Please enter the screen name or alias of the person you would like to IM."
 msgstr "메시지로 대화할 상대의 아이디 또는 별칭을 입력해 주십시오."
@@ -628,15 +621,15 @@
 #. Not multiline
 #. Not masked?
 #. No hints?
-#: ../finch/gntblist.c:2221 ../finch/gntcertmgr.c:90 ../finch/gntconn.c:135
+#: ../finch/gntblist.c:2223 ../finch/gntcertmgr.c:90 ../finch/gntconn.c:136
 #: ../finch/gntnotify.c:80 ../libpurple/account.c:1012
 #: ../libpurple/account.c:1262 ../libpurple/protocols/gg/gg.c:506
 #: ../libpurple/protocols/gg/gg.c:665 ../libpurple/protocols/gg/gg.c:802
 #: ../libpurple/protocols/jabber/jabber.c:1736
 #: ../libpurple/protocols/jabber/xdata.c:399
-#: ../libpurple/protocols/msn/msn.c:286 ../libpurple/protocols/msn/msn.c:303
-#: ../libpurple/protocols/msn/msn.c:320 ../libpurple/protocols/msn/msn.c:337
-#: ../libpurple/protocols/oscar/oscar.c:6093
+#: ../libpurple/protocols/msn/msn.c:289 ../libpurple/protocols/msn/msn.c:306
+#: ../libpurple/protocols/msn/msn.c:323 ../libpurple/protocols/msn/msn.c:340
+#: ../libpurple/protocols/oscar/oscar.c:6147
 #: ../libpurple/protocols/silc/buddy.c:454
 #: ../libpurple/protocols/silc/buddy.c:1190
 #: ../libpurple/protocols/silc/chat.c:447
@@ -653,50 +646,83 @@
 #: ../libpurple/protocols/silc10/ops.c:1297
 #: ../libpurple/protocols/silc10/ops.c:1903
 #: ../libpurple/protocols/silc10/silc.c:735
-#: ../libpurple/protocols/yahoo/yahoo.c:1031
-#: ../libpurple/protocols/yahoo/yahoo.c:3497
-#: ../libpurple/protocols/yahoo/yahoo.c:3508 ../pidgin/gtkblist.c:4039
+#: ../libpurple/protocols/yahoo/yahoo.c:1033
+#: ../libpurple/protocols/yahoo/yahoo.c:3499
+#: ../libpurple/protocols/yahoo/yahoo.c:3510 ../pidgin/gtkblist.c:4366
 #: ../pidgin/gtkcertmgr.c:195 ../pidgin/gtkdialogs.c:772
 #: ../pidgin/gtkdialogs.c:911 ../pidgin/gtkdialogs.c:1003
 #: ../pidgin/gtkrequest.c:270
 msgid "OK"
 msgstr "확인"
 
+#: ../finch/gntblist.c:2270
+#, fuzzy
+msgid "Channel"
+msgstr "채널(_C):"
+
+#: ../finch/gntblist.c:2282 ../pidgin/gtkblist.c:924
+msgid "Join a Chat"
+msgstr "대화 참가"
+
+#: ../finch/gntblist.c:2284
+#, fuzzy
+msgid "Please enter the name of the chat you want to join."
+msgstr "삽입할 링크의 URL을 입력해 주십시오."
+
+#: ../finch/gntblist.c:2286 ../finch/gntnotify.c:394
+msgid "Join"
+msgstr "참가"
+
 #. Create the "Options" frame.
-#: ../finch/gntblist.c:2241 ../finch/gntpounce.c:447 ../pidgin/gtkpounce.c:790
+#: ../finch/gntblist.c:2324 ../finch/gntpounce.c:447 ../pidgin/gtkpounce.c:797
 msgid "Options"
 msgstr "설정"
 
-#: ../finch/gntblist.c:2247
+#: ../finch/gntblist.c:2330
 msgid "Send IM..."
 msgstr "메시지 보내기..."
 
-#: ../finch/gntblist.c:2251
-#, fuzzy
-msgid "Show empty groups"
+#: ../finch/gntblist.c:2334
+#, fuzzy
+msgid "Join Chat..."
+msgstr "대화에 참가"
+
+#: ../finch/gntblist.c:2338
+msgid "Show"
+msgstr ""
+
+#: ../finch/gntblist.c:2343
+#, fuzzy
+msgid "Empty groups"
 msgstr "그룹마다 공유"
 
-#: ../finch/gntblist.c:2257
-#, fuzzy
-msgid "Show offline buddies"
+#: ../finch/gntblist.c:2349
+#, fuzzy
+msgid "Offline buddies"
 msgstr "오프라인 친구 표시"
 
-#: ../finch/gntblist.c:2263
-msgid "Sort by status"
+#: ../finch/gntblist.c:2355
+#, fuzzy
+msgid "Sort"
+msgstr "포트 번호"
+
+#: ../finch/gntblist.c:2360
+#, fuzzy
+msgid "By Status"
 msgstr "상태순"
 
-#: ../finch/gntblist.c:2267
-msgid "Sort alphabetically"
+#: ../finch/gntblist.c:2364 ../pidgin/gtkblist.c:4151
+msgid "Alphabetically"
 msgstr "알파벳순"
 
-#: ../finch/gntblist.c:2271
-msgid "Sort by log size"
+#: ../finch/gntblist.c:2368
+#, fuzzy
+msgid "By Log Size"
 msgstr "로그 크기순"
 
 #: ../finch/gntcertmgr.c:86 ../pidgin/gtkcertmgr.c:188
-#, fuzzy
 msgid "Certificate Import"
-msgstr "접속할 포트 번호"
+msgstr "인증 가져오기"
 
 #: ../finch/gntcertmgr.c:87 ../pidgin/gtkcertmgr.c:189
 msgid "Specify a hostname"
@@ -704,7 +730,7 @@
 
 #: ../finch/gntcertmgr.c:88 ../pidgin/gtkcertmgr.c:190
 msgid "Type the host name this certificate is for."
-msgstr ""
+msgstr "이 인증을 위한 호스트명을 입력하십시오."
 
 #: ../finch/gntcertmgr.c:97 ../pidgin/gtkcertmgr.c:210
 #, c-format
@@ -715,16 +741,15 @@
 
 #: ../finch/gntcertmgr.c:99 ../pidgin/gtkcertmgr.c:212
 msgid "Certificate Import Error"
-msgstr ""
+msgstr "인증 가져오기 오류"
 
 #: ../finch/gntcertmgr.c:100 ../pidgin/gtkcertmgr.c:213
 msgid "X.509 certificate import failed"
-msgstr ""
+msgstr "X.509 인증 가져오기 실패"
 
 #: ../finch/gntcertmgr.c:110 ../pidgin/gtkcertmgr.c:224
-#, fuzzy
 msgid "Select a PEM certificate"
-msgstr "파일 선택"
+msgstr "PEM 인증 선택"
 
 #: ../finch/gntcertmgr.c:127 ../pidgin/gtkcertmgr.c:245
 #, c-format
@@ -732,23 +757,25 @@
 "Export to file %s failed.\n"
 "Check that you have write permission to the target path\n"
 msgstr ""
+"%s 파일로 내보내기 실패함.\n"
+"목적 경로에 쓰기 권한이 있는지 확인하십시오.\n"
 
 #: ../finch/gntcertmgr.c:129 ../pidgin/gtkcertmgr.c:247
 msgid "Certificate Export Error"
-msgstr ""
+msgstr "인증 내보내기 오류"
 
 #: ../finch/gntcertmgr.c:130 ../pidgin/gtkcertmgr.c:248
 msgid "X.509 certificate export failed"
-msgstr ""
+msgstr "X.509 인증 내보내기 실패"
 
 #: ../finch/gntcertmgr.c:159 ../pidgin/gtkcertmgr.c:299
 msgid "PEM X.509 Certificate Export"
-msgstr ""
+msgstr "PEM X.509 인증 내보내기"
 
 #: ../finch/gntcertmgr.c:188
-#, fuzzy, c-format
+#, c-format
 msgid "Certificate for %s"
-msgstr "%s 의 상태"
+msgstr "%s 인증"
 
 #: ../finch/gntcertmgr.c:195
 #, c-format
@@ -761,55 +788,55 @@
 
 #: ../finch/gntcertmgr.c:198
 msgid "SSL Host Certificate"
-msgstr ""
+msgstr "SSL 호스트 인증"
 
 #: ../finch/gntcertmgr.c:233 ../pidgin/gtkcertmgr.c:372
 #, c-format
 msgid "Really delete certificate for %s?"
-msgstr ""
+msgstr "정말 %s 인증을 삭제하시겠습니까?"
 
 #: ../finch/gntcertmgr.c:236 ../pidgin/gtkcertmgr.c:374
 msgid "Confirm certificate delete"
-msgstr ""
+msgstr "인증 삭제 확인"
 
 #: ../finch/gntcertmgr.c:293 ../pidgin/gtkcertmgr.c:602
 msgid "Certificate Manager"
-msgstr ""
+msgstr "인증 관리자"
 
 #. Creating the user splits
-#: ../finch/gntcertmgr.c:298 ../libpurple/protocols/bonjour/bonjour.c:652
+#: ../finch/gntcertmgr.c:298 ../libpurple/protocols/bonjour/bonjour.c:666
 #: ../libpurple/protocols/silc/silc.c:1007
 #: ../libpurple/protocols/silc10/silc.c:918
 msgid "Hostname"
 msgstr "호스트명"
 
-#: ../finch/gntcertmgr.c:315 ../finch/gntnotify.c:383 ../pidgin/gtkconv.c:1635
+#: ../finch/gntcertmgr.c:315 ../finch/gntnotify.c:388 ../pidgin/gtkconv.c:1689
 #: ../pidgin/gtkdebug.c:835
 msgid "Info"
 msgstr "정보"
 
 #. Close button
 #: ../finch/gntcertmgr.c:324 ../finch/gntft.c:237 ../finch/gntnotify.c:182
-#: ../finch/gntplugin.c:210 ../finch/gntplugin.c:310 ../finch/gntpounce.c:738
-#: ../finch/gntstatus.c:216 ../libpurple/protocols/msn/msn.c:403
+#: ../finch/gntplugin.c:211 ../finch/gntplugin.c:403 ../finch/gntpounce.c:738
+#: ../finch/gntstatus.c:216 ../libpurple/protocols/msn/msn.c:406
 #: ../libpurple/protocols/silc/util.c:382
-#: ../libpurple/protocols/silc10/util.c:377 ../pidgin/gtkaccount.c:2468
+#: ../libpurple/protocols/silc10/util.c:377 ../pidgin/gtkaccount.c:2469
 #: ../pidgin/gtkrequest.c:273
 msgid "Close"
 msgstr "닫기"
 
-#: ../finch/gntconn.c:124
+#: ../finch/gntconn.c:125
 #, c-format
 msgid "%s (%s)"
 msgstr "%s (%s)"
 
-#: ../finch/gntconn.c:127
+#: ../finch/gntconn.c:128
 #, c-format
 msgid "%s disconnected."
 msgstr "%s 님은 접속을 끊었습니다."
 
-#: ../finch/gntconn.c:128
-#, fuzzy, c-format
+#: ../finch/gntconn.c:129
+#, c-format
 msgid ""
 "%s\n"
 "\n"
@@ -818,10 +845,10 @@
 msgstr ""
 "%s\n"
 "\n"
-"오류를 해결하고 계정을 다시 사용할 수 있을 때까지 Pidgin이 재접속하지 않습니"
+"오류를 해결하고 계정을 다시 사용할 수 있을 때까지 방울새가 재접속하지 않습니"
 "다."
 
-#: ../finch/gntconn.c:137 ../pidgin/gtkblist.c:4041
+#: ../finch/gntconn.c:138 ../pidgin/gtkblist.c:4368
 msgid "Re-enable Account"
 msgstr "계정 재사용"
 
@@ -829,23 +856,23 @@
 msgid "No such command."
 msgstr "그런 명령은 없습니다."
 
-#: ../finch/gntconv.c:143 ../pidgin/gtkconv.c:489
+#: ../finch/gntconv.c:143 ../pidgin/gtkconv.c:531
 msgid "Syntax Error:  You typed the wrong number of arguments to that command."
 msgstr "문법 오류: 그 명령에 대한 인수의 수가 잘못되었습니다."
 
-#: ../finch/gntconv.c:148 ../pidgin/gtkconv.c:495
+#: ../finch/gntconv.c:148 ../pidgin/gtkconv.c:537
 msgid "Your command failed for an unknown reason."
 msgstr "알 수 없는 이유로 명령 적용에 실패했습니다."
 
-#: ../finch/gntconv.c:153 ../pidgin/gtkconv.c:502
+#: ../finch/gntconv.c:153 ../pidgin/gtkconv.c:544
 msgid "That command only works in chats, not IMs."
 msgstr "그 명령은 메시지가 아닌, 대화에서만 동작합니다."
 
-#: ../finch/gntconv.c:156 ../pidgin/gtkconv.c:505
+#: ../finch/gntconv.c:156 ../pidgin/gtkconv.c:547
 msgid "That command only works in IMs, not chats."
 msgstr "그 명령은 대화가 아닌, 메시지에서만 동작합니다."
 
-#: ../finch/gntconv.c:160 ../pidgin/gtkconv.c:510
+#: ../finch/gntconv.c:160 ../pidgin/gtkconv.c:552
 msgid "That command doesn't work on this protocol."
 msgstr "그 명령은 이 프로토콜에서는 동작하지 않습니다."
 
@@ -864,7 +891,7 @@
 msgid "%s [%s]"
 msgstr "%s [%s]"
 
-#: ../finch/gntconv.c:279 ../finch/gntconv.c:773
+#: ../finch/gntconv.c:279 ../finch/gntconv.c:801
 #, c-format
 msgid ""
 "\n"
@@ -878,67 +905,67 @@
 msgid "You have left this chat."
 msgstr "대화로 이야기했습니다."
 
-#: ../finch/gntconv.c:387 ../pidgin/gtkconv.c:1362
+#: ../finch/gntconv.c:414 ../pidgin/gtkconv.c:1416
 msgid "Logging started. Future messages in this conversation will be logged."
 msgstr "로그 기록이 시작되었습니다. 지금부터 대화가 로그에 기록됩니다."
 
-#: ../finch/gntconv.c:393 ../pidgin/gtkconv.c:1370
+#: ../finch/gntconv.c:420 ../pidgin/gtkconv.c:1424
 msgid ""
 "Logging stopped. Future messages in this conversation will not be logged."
 msgstr "로그 기록이 중지되었습니다. 지금부터 대화가 로그에 기록되지 않습니다."
 
-#: ../finch/gntconv.c:442
+#: ../finch/gntconv.c:469
 #, fuzzy
 msgid "Send To"
 msgstr "받을 사람(_S)"
 
-#: ../finch/gntconv.c:486
+#: ../finch/gntconv.c:513
 #, fuzzy
 msgid "Conversation"
 msgstr "대화 창"
 
-#: ../finch/gntconv.c:492
+#: ../finch/gntconv.c:519
 #, fuzzy
 msgid "Clear Scrollback"
 msgstr "/대화/화면 비우기(_R)"
 
-#: ../finch/gntconv.c:496 ../finch/gntprefs.c:191
+#: ../finch/gntconv.c:523 ../finch/gntprefs.c:191
 msgid "Show Timestamps"
 msgstr "타임스탬프 표시"
 
-#: ../finch/gntconv.c:512
+#: ../finch/gntconv.c:539
 #, fuzzy
 msgid "Add Buddy Pounce..."
 msgstr "친구 알림 추가"
 
-#: ../finch/gntconv.c:527
+#: ../finch/gntconv.c:554
 #, fuzzy
 msgid "Enable Logging"
 msgstr "/설정/로그 기록"
 
-#: ../finch/gntconv.c:533
+#: ../finch/gntconv.c:560
 #, fuzzy
 msgid "Enable Sounds"
 msgstr "소리를 재생할 때:"
 
-#: ../finch/gntconv.c:739
+#: ../finch/gntconv.c:766
 msgid "<AUTO-REPLY> "
 msgstr "<AUTO-REPLY> "
 
 #. Print the list of users in the room
-#: ../finch/gntconv.c:861
+#: ../finch/gntconv.c:889
 msgid "List of users:\n"
 msgstr "사용자 목록\n"
 
-#: ../finch/gntconv.c:1023 ../pidgin/gtkconv.c:331
+#: ../finch/gntconv.c:1051 ../pidgin/gtkconv.c:371
 msgid "Supported debug options are:  version"
 msgstr "지원하는 디버그 옵션은:  버전"
 
-#: ../finch/gntconv.c:1059 ../pidgin/gtkconv.c:381
+#: ../finch/gntconv.c:1087 ../pidgin/gtkconv.c:423
 msgid "No such command (in this context)."
 msgstr "(이 오른쪽 클릭 메뉴에서는) 그런 명령은 없습니다."
 
-#: ../finch/gntconv.c:1062 ../pidgin/gtkconv.c:384
+#: ../finch/gntconv.c:1090 ../pidgin/gtkconv.c:426
 msgid ""
 "Use \"/help &lt;command&gt;\" for help on a specific command.\n"
 "The following commands are available in this context:\n"
@@ -947,62 +974,67 @@
 "\"/help &lt;명령&gt;\" 를 이용해 주십시오.\n"
 "이 오른쪽 클릭 메뉴에서는 다음의 명령을 이용할 수 있습니다:\n"
 
-#: ../finch/gntconv.c:1120 ../pidgin/gtkconv.c:7560
+#: ../finch/gntconv.c:1148 ../pidgin/gtkconv.c:7688
 msgid ""
 "say &lt;message&gt;:  Send a message normally as if you weren't using a "
 "command."
 msgstr ""
 "say &lt;메시지&gt;:  명령을 이용하지 않는 경우에도 메시지를 전송합니다."
 
-#: ../finch/gntconv.c:1123 ../pidgin/gtkconv.c:7563
+#: ../finch/gntconv.c:1151 ../pidgin/gtkconv.c:7691
 msgid "me &lt;action&gt;:  Send an IRC style action to a buddy or chat."
 msgstr "me &lt;동작&gt;:  친구 또는 대화에 IRC 형식의 동작을 전송합니다."
 
-#: ../finch/gntconv.c:1126 ../pidgin/gtkconv.c:7566
+#: ../finch/gntconv.c:1154 ../pidgin/gtkconv.c:7694
 msgid ""
 "debug &lt;option&gt;:  Send various debug information to the current "
 "conversation."
 msgstr ""
 "debug &lt;옵션&gt;:  이용 중인 대화 창에 다양한 디버그 정보를 전송합니다."
 
-#: ../finch/gntconv.c:1129 ../pidgin/gtkconv.c:7569
+#: ../finch/gntconv.c:1157 ../pidgin/gtkconv.c:7697
 msgid "clear: Clears the conversation scrollback."
 msgstr "비우기: 대화 창에 있는 이전의 메시지를 삭제합니다."
 
-#: ../finch/gntconv.c:1132 ../pidgin/gtkconv.c:7575
+#: ../finch/gntconv.c:1160 ../pidgin/gtkconv.c:7703
 msgid "help &lt;command&gt;:  Help on a specific command."
 msgstr "help &lt;명령&gt;:  특정 명령에 대한 도움말을 표시합니다."
 
-#: ../finch/gntconv.c:1135
+#: ../finch/gntconv.c:1163
 #, fuzzy
 msgid "users:  Show the list of users in the chat."
 msgstr "statuses: 저장 상태 창을 표시합니다."
 
-#: ../finch/gntconv.c:1140
+#: ../finch/gntconv.c:1168
 msgid "plugins: Show the plugins window."
 msgstr "plugins: 플러그인 창을 표시합니다."
 
-#: ../finch/gntconv.c:1143
+#: ../finch/gntconv.c:1171
 msgid "buddylist: Show the buddylist."
 msgstr "buddylist: 친구 목록을 표시합니다."
 
-#: ../finch/gntconv.c:1146
+#: ../finch/gntconv.c:1174
 msgid "accounts: Show the accounts window."
 msgstr "accounts: 계정 창을 표시합니다."
 
-#: ../finch/gntconv.c:1149
+#: ../finch/gntconv.c:1177
 msgid "debugwin: Show the debug window."
 msgstr "debugwin: 디버그 창을 표시합니다."
 
-#: ../finch/gntconv.c:1152
+#: ../finch/gntconv.c:1180
 msgid "prefs: Show the preference window."
 msgstr "prefs: 설정 창을 표시"
 
-#: ../finch/gntconv.c:1155
+#: ../finch/gntconv.c:1183
 msgid "statuses: Show the savedstatuses window."
 msgstr "statuses: 저장 상태 창을 표시합니다."
 
-#: ../finch/gntdebug.c:235 ../finch/gntui.c:86 ../pidgin/gtkdebug.c:695
+#: ../finch/gntdebug.c:231 ../pidgin/gtkconv.c:989 ../pidgin/gtkconv.c:2663
+#: ../pidgin/gtkdebug.c:219 ../pidgin/gtkft.c:543
+msgid "Unable to open file."
+msgstr "파일을 열 수 없습니다."
+
+#: ../finch/gntdebug.c:271 ../finch/gntui.c:86 ../pidgin/gtkdebug.c:695
 msgid "Debug Window"
 msgstr "디버그 창"
 
@@ -1010,16 +1042,16 @@
 #. * it's necessary to make the width of the debug window resizable ... like I said,
 #. * it doesn't make sense. The bug is likely in the packing in gntbox.c.
 #.
-#: ../finch/gntdebug.c:256 ../pidgin/gtkdebug.c:754
+#: ../finch/gntdebug.c:292 ../pidgin/gtkdebug.c:754
 msgid "Clear"
 msgstr "비우기"
 
-#: ../finch/gntdebug.c:262
-#, fuzzy
-msgid "Filter: "
+#: ../finch/gntdebug.c:303
+#, fuzzy
+msgid "Filter:"
 msgstr "필터"
 
-#: ../finch/gntdebug.c:266 ../pidgin/gtkdebug.c:763
+#: ../finch/gntdebug.c:309 ../pidgin/gtkdebug.c:763
 msgid "Pause"
 msgstr "일시정지"
 
@@ -1057,24 +1089,24 @@
 
 #. XXX: Use of ggp_str_to_uin() is an ugly hack!
 #: ../finch/gntft.c:201 ../finch/gntstatus.c:547 ../finch/gntstatus.c:576
-#: ../libpurple/protocols/bonjour/bonjour.c:344
+#: ../libpurple/protocols/bonjour/bonjour.c:358
 #: ../libpurple/protocols/gg/gg.c:1039 ../libpurple/protocols/gg/gg.c:1576
 #: ../libpurple/protocols/gg/gg.c:1584
 #: ../libpurple/protocols/jabber/buddy.c:778
 #: ../libpurple/protocols/jabber/buddy.c:782
 #: ../libpurple/protocols/jabber/buddy.c:941
 #: ../libpurple/protocols/jabber/jabber.c:1500
-#: ../libpurple/protocols/msn/msn.c:543
-#: ../libpurple/protocols/novell/novell.c:2835
+#: ../libpurple/protocols/msn/msn.c:596 ../libpurple/protocols/msn/msn.c:603
+#: ../libpurple/protocols/novell/novell.c:2840
 #: ../libpurple/protocols/oscar/oscar.c:821
 #: ../libpurple/protocols/oscar/oscar.c:826
 #: ../libpurple/protocols/oscar/oscar.c:828
-#: ../libpurple/protocols/oscar/oscar.c:2700
-#: ../libpurple/protocols/oscar/oscar.c:3780
+#: ../libpurple/protocols/oscar/oscar.c:2715
+#: ../libpurple/protocols/oscar/oscar.c:3795
 #: ../libpurple/protocols/sametime/sametime.c:3263
 #: ../libpurple/protocols/sametime/sametime.c:4150
-#: ../libpurple/protocols/yahoo/yahoo.c:3248 ../pidgin/gtkblist.c:3104
-#: ../pidgin/gtkblist.c:3118 ../pidgin/gtkblist.c:3120
+#: ../libpurple/protocols/yahoo/yahoo.c:3250 ../pidgin/gtkblist.c:3302
+#: ../pidgin/gtkblist.c:3316 ../pidgin/gtkblist.c:3318
 #: ../pidgin/gtksavedstatuses.c:999 ../pidgin/gtksavedstatuses.c:1144
 msgid "Status"
 msgstr "상태"
@@ -1121,7 +1153,7 @@
 msgid "Finished"
 msgstr "완료되었습니다."
 
-#: ../finch/gntft.c:437 ../libpurple/protocols/msn/session.c:347
+#: ../finch/gntft.c:437 ../libpurple/protocols/msn/session.c:388
 msgid "Transferring"
 msgstr "전송 중 입니다."
 
@@ -1129,73 +1161,69 @@
 msgid "Emails"
 msgstr "이메일"
 
-#: ../finch/gntnotify.c:171 ../finch/gntnotify.c:225
+#: ../finch/gntnotify.c:171 ../finch/gntnotify.c:226
 msgid "You have mail!"
 msgstr "새로운 메일이 도착했습니다!"
 
-#: ../finch/gntnotify.c:174 ../pidgin/gtknotify.c:513
+#: ../finch/gntnotify.c:174 ../pidgin/gtknotify.c:518
 msgid "Sender"
 msgstr "보낸 사람"
 
-#: ../finch/gntnotify.c:174 ../pidgin/gtknotify.c:520
+#: ../finch/gntnotify.c:174 ../pidgin/gtknotify.c:525
 msgid "Subject"
 msgstr "제목"
 
-#: ../finch/gntnotify.c:201
+#: ../finch/gntnotify.c:202
 #, c-format
 msgid "%s (%s) has %d new message."
 msgid_plural "%s (%s) has %d new messages."
 msgstr[0] "%s (%s) 에는 %d 개의 새 메일이 있습니다."
 msgstr[1] "%s (%s) 에는 %d 개의 새 메일이 있습니다."
 
-#: ../finch/gntnotify.c:225 ../pidgin/gtknotify.c:341
+#: ../finch/gntnotify.c:226 ../pidgin/gtknotify.c:341
 msgid "New Mail"
 msgstr "새로운 메일"
 
-#: ../finch/gntnotify.c:290 ../pidgin/gtknotify.c:940
+#: ../finch/gntnotify.c:291 ../pidgin/gtknotify.c:948
 #, c-format
 msgid "Info for %s"
 msgstr "%s 님의 정보"
 
-#: ../finch/gntnotify.c:291 ../libpurple/protocols/toc/toc.c:476
-#: ../pidgin/gtknotify.c:941
+#: ../finch/gntnotify.c:292 ../libpurple/protocols/toc/toc.c:476
+#: ../pidgin/gtknotify.c:949
 msgid "Buddy Information"
 msgstr "친구 정보"
 
-#: ../finch/gntnotify.c:377 ../libpurple/protocols/qq/group_join.c:367
+#: ../finch/gntnotify.c:382 ../libpurple/protocols/qq/group_join.c:367
 msgid "Continue"
 msgstr "계속"
 
-#: ../finch/gntnotify.c:386 ../pidgin/gtkconv.c:1596
+#: ../finch/gntnotify.c:391 ../pidgin/gtkconv.c:1650
 msgid "IM"
 msgstr "인스턴트 메시지"
 
-#: ../finch/gntnotify.c:389
-msgid "Join"
-msgstr "참가"
-
-#: ../finch/gntnotify.c:392 ../libpurple/protocols/sametime/sametime.c:3473
+#: ../finch/gntnotify.c:397 ../libpurple/protocols/sametime/sametime.c:3473
 msgid "Invite"
 msgstr "초대"
 
-#: ../finch/gntnotify.c:395
+#: ../finch/gntnotify.c:400
 msgid "(none)"
 msgstr "(없음)"
 
-#: ../finch/gntplugin.c:75 ../finch/gntplugin.c:84
+#: ../finch/gntplugin.c:76 ../finch/gntplugin.c:85
 msgid "ERROR"
 msgstr ""
 
-#: ../finch/gntplugin.c:75
+#: ../finch/gntplugin.c:76
 #, fuzzy
 msgid "loading plugin failed"
 msgstr "Ping 에 실패했습니다."
 
-#: ../finch/gntplugin.c:84
+#: ../finch/gntplugin.c:85
 msgid "unloading plugin failed"
 msgstr ""
 
-#: ../finch/gntplugin.c:129
+#: ../finch/gntplugin.c:130
 #, c-format
 msgid ""
 "Name: %s\n"
@@ -1212,19 +1240,41 @@
 "웹사이트: %s\n"
 "파일명: %s\n"
 
-#: ../finch/gntplugin.c:187
+#: ../finch/gntplugin.c:188
 msgid "Plugin need to be loaded before you can configure it."
 msgstr "그것을 설정하기 전에 적절한 플러그인을 로드해 주십시오."
 
-#: ../finch/gntplugin.c:235
+#: ../finch/gntplugin.c:236
 msgid "No configuration options for this plugin."
 msgstr "이 플러그인에 대한 옵션이 설정되어 있지 않습니다."
 
-#: ../finch/gntplugin.c:260
+#: ../finch/gntplugin.c:257
+#, fuzzy
+msgid "Error loading plugin"
+msgstr "플러그인을 읽어 들이는 중 오류가 발생했습니다."
+
+#: ../finch/gntplugin.c:258
+msgid "The selected file is not a valid plugin."
+msgstr ""
+
+#: ../finch/gntplugin.c:259
+msgid ""
+"Please open the debug window and try again to see the exact error message."
+msgstr ""
+
+#: ../finch/gntplugin.c:322
+msgid "Select plugin to install"
+msgstr ""
+
+#: ../finch/gntplugin.c:348
 msgid "You can (un)load plugins from the following list."
 msgstr "다음의 목록에 있는 플러그인을 로드하거나 해제할 수 있습니다."
 
-#: ../finch/gntplugin.c:315
+#: ../finch/gntplugin.c:399
+msgid "Install Plugin..."
+msgstr ""
+
+#: ../finch/gntplugin.c:408
 msgid "Configure Plugin"
 msgstr "플러그인 설정"
 
@@ -1233,8 +1283,8 @@
 #. (that should have been "effect," right?)
 #. Back to instant-apply! I win!  BU-HAHAHA!
 #. Create the window
-#: ../finch/gntplugin.c:371 ../finch/gntplugin.c:378 ../finch/gntprefs.c:264
-#: ../finch/gntui.c:90 ../pidgin/gtkdocklet.c:524 ../pidgin/gtkprefs.c:2067
+#: ../finch/gntplugin.c:464 ../finch/gntplugin.c:471 ../finch/gntprefs.c:264
+#: ../finch/gntui.c:90 ../pidgin/gtkdocklet.c:717 ../pidgin/gtkprefs.c:2069
 msgid "Preferences"
 msgstr "설정"
 
@@ -1242,11 +1292,11 @@
 msgid "Please enter a buddy to pounce."
 msgstr "알림을 받을 친구를 입력해 주십시오."
 
-#: ../finch/gntpounce.c:328 ../pidgin/gtkpounce.c:517
+#: ../finch/gntpounce.c:328 ../pidgin/gtkpounce.c:524
 msgid "New Buddy Pounce"
 msgstr "새 친구 알림"
 
-#: ../finch/gntpounce.c:328 ../pidgin/gtkpounce.c:517
+#: ../finch/gntpounce.c:328 ../pidgin/gtkpounce.c:524
 msgid "Edit Buddy Pounce"
 msgstr "친구 알림 편집"
 
@@ -1266,7 +1316,7 @@
 msgstr "친구 이름(_B):"
 
 #. Create the "Pounce When Buddy..." frame.
-#: ../finch/gntpounce.c:374 ../pidgin/gtkpounce.c:585
+#: ../finch/gntpounce.c:374 ../pidgin/gtkpounce.c:592
 msgid "Pounce When Buddy..."
 msgstr "친구로부터 알림을 받을 때..."
 
@@ -1321,7 +1371,7 @@
 msgstr "메시지 전송 시(_M)"
 
 #. Create the "Action" frame.
-#: ../finch/gntpounce.c:414 ../pidgin/gtkpounce.c:646
+#: ../finch/gntpounce.c:414 ../pidgin/gtkpounce.c:653
 msgid "Action"
 msgstr "알림을 받은 후 동작"
 
@@ -1355,7 +1405,7 @@
 msgid "Pounce only when my status is not available"
 msgstr "자신의 상태를 지정할 수 없을 때에만 알림을 받음(_O)"
 
-#: ../finch/gntpounce.c:450 ../pidgin/gtkpounce.c:1281
+#: ../finch/gntpounce.c:450 ../pidgin/gtkpounce.c:1288
 msgid "Recurring"
 msgstr "반복"
 
@@ -1373,66 +1423,66 @@
 msgid "You must create an account first before you can create a pounce."
 msgstr ""
 
-#: ../finch/gntpounce.c:662 ../pidgin/gtkpounce.c:1096
+#: ../finch/gntpounce.c:662 ../pidgin/gtkpounce.c:1103
 #, c-format
 msgid "Are you sure you want to delete the pounce on %s for %s?"
 msgstr "정말 %2$s 님을 %1$s (으)로의 알림 설정을 삭제하시겠습니까?"
 
-#: ../finch/gntpounce.c:696 ../finch/gntui.c:84 ../pidgin/gtkpounce.c:1325
+#: ../finch/gntpounce.c:696 ../finch/gntui.c:84 ../pidgin/gtkpounce.c:1332
 msgid "Buddy Pounces"
 msgstr "친구 알림"
 
-#: ../finch/gntpounce.c:810 ../pidgin/gtkpounce.c:1452
+#: ../finch/gntpounce.c:810 ../pidgin/gtkpounce.c:1459
 #, c-format
 msgid "%s has started typing to you (%s)"
 msgstr "%s 님이 입력을 시작했습니다. (%s)"
 
-#: ../finch/gntpounce.c:812 ../pidgin/gtkpounce.c:1454
+#: ../finch/gntpounce.c:812 ../pidgin/gtkpounce.c:1461
 #, c-format
 msgid "%s has paused while typing to you (%s)"
 msgstr "%s 님이 입력을 일시정지했습니다. (%s)"
 
-#: ../finch/gntpounce.c:814 ../pidgin/gtkpounce.c:1456
+#: ../finch/gntpounce.c:814 ../pidgin/gtkpounce.c:1463
 #, c-format
 msgid "%s has signed on (%s)"
 msgstr "%s 님이 접속했습니다. (%s)"
 
-#: ../finch/gntpounce.c:816 ../pidgin/gtkpounce.c:1458
+#: ../finch/gntpounce.c:816 ../pidgin/gtkpounce.c:1465
 #, c-format
 msgid "%s has returned from being idle (%s)"
 msgstr "%s 대기로부터 복귀했습니다. (%s)"
 
-#: ../finch/gntpounce.c:818 ../pidgin/gtkpounce.c:1460
+#: ../finch/gntpounce.c:818 ../pidgin/gtkpounce.c:1467
 #, c-format
 msgid "%s has returned from being away (%s)"
 msgstr "%s 님이 자리 비움으로부터 복귀했습니다. (%s)"
 
-#: ../finch/gntpounce.c:820 ../pidgin/gtkpounce.c:1462
+#: ../finch/gntpounce.c:820 ../pidgin/gtkpounce.c:1469
 #, c-format
 msgid "%s has stopped typing to you (%s)"
 msgstr "%s 님이 입력을 멈추었습니다. (%s)"
 
-#: ../finch/gntpounce.c:822 ../pidgin/gtkpounce.c:1464
+#: ../finch/gntpounce.c:822 ../pidgin/gtkpounce.c:1471
 #, c-format
 msgid "%s has signed off (%s)"
 msgstr "%s 님이 접속을 해제했습니다. (%s)"
 
-#: ../finch/gntpounce.c:824 ../pidgin/gtkpounce.c:1466
+#: ../finch/gntpounce.c:824 ../pidgin/gtkpounce.c:1473
 #, c-format
 msgid "%s has become idle (%s)"
 msgstr "%s 님이 대기 상태로 되었습니다. (%s)"
 
-#: ../finch/gntpounce.c:826 ../pidgin/gtkpounce.c:1468
+#: ../finch/gntpounce.c:826 ../pidgin/gtkpounce.c:1475
 #, c-format
 msgid "%s has gone away. (%s)"
 msgstr "%s 님이 자리 비움 상태로 되었습니다. (%s)"
 
-#: ../finch/gntpounce.c:828 ../pidgin/gtkpounce.c:1470
+#: ../finch/gntpounce.c:828 ../pidgin/gtkpounce.c:1477
 #, c-format
 msgid "%s has sent you a message. (%s)"
 msgstr "%s 님이 나에게 메시지를 보냈습니다. (%s)"
 
-#: ../finch/gntpounce.c:829 ../pidgin/gtkpounce.c:1471
+#: ../finch/gntpounce.c:829 ../pidgin/gtkpounce.c:1478
 #, c-format
 msgid "Unknown pounce event. Please report this!"
 msgstr "알 수 없는 \"알림\" 이벤트입니다. 꼭 보고해 주십시오!"
@@ -1442,12 +1492,12 @@
 msgid "Based on keyboard use"
 msgstr "키보드나 마우스 조작을 시작했을 때"
 
-#: ../finch/gntprefs.c:94 ../pidgin/gtkprefs.c:1930
+#: ../finch/gntprefs.c:94 ../pidgin/gtkprefs.c:1932
 msgid "From last sent message"
 msgstr "마지막에 메시지를 보냈을 때"
 
 #: ../finch/gntprefs.c:96 ../pidgin/gtkprefs.c:898 ../pidgin/gtkprefs.c:907
-#: ../pidgin/gtkprefs.c:1929 ../pidgin/gtkprefs.c:1943
+#: ../pidgin/gtkprefs.c:1931 ../pidgin/gtkprefs.c:1945
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:333
 msgid "Never"
 msgstr "안 함"
@@ -1501,25 +1551,25 @@
 msgstr "다음 상태로 변경(_S):"
 
 #. Conversations
-#: ../finch/gntprefs.c:259 ../pidgin/gtkprefs.c:993 ../pidgin/gtkprefs.c:2033
+#: ../finch/gntprefs.c:259 ../pidgin/gtkprefs.c:993 ../pidgin/gtkprefs.c:2035
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:340
 msgid "Conversations"
 msgstr "대화 창"
 
-#: ../finch/gntprefs.c:260 ../pidgin/gtkprefs.c:1467 ../pidgin/gtkprefs.c:2044
+#: ../finch/gntprefs.c:260 ../pidgin/gtkprefs.c:1469 ../pidgin/gtkprefs.c:2046
 msgid "Logging"
 msgstr "로그 기록"
 
-#: ../finch/gntrequest.c:583
+#: ../finch/gntrequest.c:585
 msgid "Not implemented yet."
 msgstr "아직 실행되지 않았습니다."
 
-#: ../finch/gntrequest.c:659 ../pidgin/gtkrequest.c:1555
+#: ../finch/gntrequest.c:661 ../pidgin/gtkrequest.c:1555
 #: ../pidgin/gtkrequest.c:1601
 msgid "Save File..."
 msgstr "파일 저장..."
 
-#: ../finch/gntrequest.c:659 ../pidgin/gtkrequest.c:1556
+#: ../finch/gntrequest.c:661 ../pidgin/gtkrequest.c:1556
 #: ../pidgin/gtkrequest.c:1602
 msgid "Open File..."
 msgstr "파일 열기"
@@ -1564,16 +1614,16 @@
 msgid "Someone says your screen name in chat"
 msgstr "대화로 누군가가 나를 호출했습니다."
 
-#: ../finch/gntsound.c:361 ../pidgin/gtksound.c:311
+#: ../finch/gntsound.c:361 ../pidgin/gtksound.c:308
 msgid "GStreamer Failure"
 msgstr "GStreamer 오류"
 
-#: ../finch/gntsound.c:362 ../pidgin/gtksound.c:312
+#: ../finch/gntsound.c:362 ../pidgin/gtksound.c:309
 msgid "GStreamer failed to initialize."
 msgstr "GStreamer 초기화에 실패했습니다."
 
-#: ../finch/gntsound.c:716 ../finch/gntsound.c:802 ../pidgin/gtkprefs.c:1587
-#: ../pidgin/gtkprefs.c:1676 ../pidgin/gtkprefs.c:1872
+#: ../finch/gntsound.c:716 ../finch/gntsound.c:802 ../pidgin/gtkprefs.c:1589
+#: ../pidgin/gtkprefs.c:1678 ../pidgin/gtkprefs.c:1874
 msgid "(default)"
 msgstr ""
 
@@ -1592,7 +1642,7 @@
 msgid "Profiles"
 msgstr "프로파일"
 
-#: ../finch/gntsound.c:954 ../pidgin/gtkprefs.c:1717
+#: ../finch/gntsound.c:954 ../pidgin/gtkprefs.c:1719
 msgid "Automatic"
 msgstr "자동 선택"
 
@@ -1601,7 +1651,7 @@
 msgid "Console Beep"
 msgstr "비프음"
 
-#: ../finch/gntsound.c:958 ../pidgin/gtkprefs.c:1721
+#: ../finch/gntsound.c:958 ../pidgin/gtkprefs.c:1723
 msgid "Command"
 msgstr "명령 지정"
 
@@ -1610,7 +1660,7 @@
 msgid "No Sound"
 msgstr "소리 없음"
 
-#: ../finch/gntsound.c:961 ../pidgin/gtkprefs.c:1712
+#: ../finch/gntsound.c:961 ../pidgin/gtkprefs.c:1714
 msgid "Sound Method"
 msgstr "소리 출력 방식"
 
@@ -1629,7 +1679,7 @@
 "(파일명은 %s (으)로 지정)"
 
 #. Sound options
-#: ../finch/gntsound.c:981 ../pidgin/gtkprefs.c:1756
+#: ../finch/gntsound.c:981 ../pidgin/gtkprefs.c:1758
 msgid "Sound Options"
 msgstr "소리 설정"
 
@@ -1639,17 +1689,17 @@
 msgstr "대화 창이 활성되면 소리 재생(_F)"
 
 #: ../finch/gntsound.c:990 ../pidgin/gtkprefs.c:897 ../pidgin/gtkprefs.c:909
-#: ../pidgin/gtkprefs.c:1763 ../pidgin/plugins/timestamp_format.c:42
+#: ../pidgin/gtkprefs.c:1765 ../pidgin/plugins/timestamp_format.c:42
 #: ../pidgin/plugins/timestamp_format.c:51
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:334
 msgid "Always"
 msgstr "항상"
 
-#: ../finch/gntsound.c:991 ../pidgin/gtkprefs.c:1761
+#: ../finch/gntsound.c:991 ../pidgin/gtkprefs.c:1763
 msgid "Only when available"
 msgstr "자리에 있을 때에만"
 
-#: ../finch/gntsound.c:992 ../pidgin/gtkprefs.c:1762
+#: ../finch/gntsound.c:992 ../pidgin/gtkprefs.c:1764
 msgid "Only when not available"
 msgstr "자리에 없을 때에만"
 
@@ -1659,11 +1709,11 @@
 msgstr "음량:"
 
 #. Sound events
-#: ../finch/gntsound.c:1018 ../pidgin/gtkprefs.c:1798
+#: ../finch/gntsound.c:1018 ../pidgin/gtkprefs.c:1800
 msgid "Sound Events"
 msgstr "이벤트마다 소리 재생"
 
-#: ../finch/gntsound.c:1020 ../pidgin/gtkprefs.c:1857
+#: ../finch/gntsound.c:1020 ../pidgin/gtkprefs.c:1859
 msgid "Event"
 msgstr "이벤트"
 
@@ -1672,15 +1722,15 @@
 msgid "File"
 msgstr "필터"
 
-#: ../finch/gntsound.c:1039 ../pidgin/gtkprefs.c:1876
+#: ../finch/gntsound.c:1039 ../pidgin/gtkprefs.c:1878
 msgid "Test"
 msgstr "미리 듣기"
 
-#: ../finch/gntsound.c:1042 ../pidgin/gtkprefs.c:1880
+#: ../finch/gntsound.c:1042 ../pidgin/gtkprefs.c:1882
 msgid "Reset"
 msgstr "초기화"
 
-#: ../finch/gntsound.c:1045 ../pidgin/gtkprefs.c:1884
+#: ../finch/gntsound.c:1045 ../pidgin/gtkprefs.c:1886
 msgid "Choose..."
 msgstr "선택..."
 
@@ -1700,7 +1750,7 @@
 #: ../finch/gntstatus.c:183 ../finch/gntstatus.c:539
 #: ../libpurple/protocols/jabber/buddy.c:298
 #: ../libpurple/protocols/jabber/buddy.c:1359
-#: ../libpurple/protocols/novell/novell.c:1484
+#: ../libpurple/protocols/novell/novell.c:1486
 #: ../pidgin/gtksavedstatuses.c:500
 msgid "Title"
 msgstr "제목"
@@ -1718,9 +1768,9 @@
 #. not independent
 #. Attributes - each status can have a message.
 #: ../finch/gntstatus.c:183 ../finch/gntstatus.c:564 ../finch/gntstatus.c:576
-#: ../libpurple/protocols/bonjour/bonjour.c:256
-#: ../libpurple/protocols/bonjour/bonjour.c:263
-#: ../libpurple/protocols/bonjour/bonjour.c:346
+#: ../libpurple/protocols/bonjour/bonjour.c:270
+#: ../libpurple/protocols/bonjour/bonjour.c:277
+#: ../libpurple/protocols/bonjour/bonjour.c:360
 #: ../libpurple/protocols/gg/gg.c:1077 ../libpurple/protocols/gg/gg.c:1579
 #: ../libpurple/protocols/gg/gg.c:1597 ../libpurple/protocols/gg/gg.c:1607
 #: ../libpurple/protocols/gg/gg.c:1613 ../libpurple/protocols/gg/gg.c:1622
@@ -1731,26 +1781,29 @@
 #: ../libpurple/protocols/jabber/jabber.c:1601
 #: ../libpurple/protocols/jabber/jabber.c:1624
 #: ../libpurple/protocols/jabber/jabber.c:1649
+#: ../libpurple/protocols/msn/msn.c:634 ../libpurple/protocols/msn/msn.c:641
+#: ../libpurple/protocols/msn/msn.c:648 ../libpurple/protocols/msn/msn.c:655
+#: ../libpurple/protocols/msn/msn.c:661 ../libpurple/protocols/msn/msn.c:667
 #: ../libpurple/protocols/myspace/myspace.c:148
-#: ../libpurple/protocols/novell/novell.c:2838
-#: ../libpurple/protocols/novell/novell.c:2941
-#: ../libpurple/protocols/novell/novell.c:2947
-#: ../libpurple/protocols/novell/novell.c:2953
-#: ../libpurple/protocols/oscar/oscar.c:5554
-#: ../libpurple/protocols/oscar/oscar.c:5772
-#: ../libpurple/protocols/oscar/oscar.c:5786
-#: ../libpurple/protocols/oscar/oscar.c:5802
-#: ../libpurple/protocols/oscar/oscar.c:5809
-#: ../libpurple/protocols/oscar/oscar.c:5816
+#: ../libpurple/protocols/novell/novell.c:2843
+#: ../libpurple/protocols/novell/novell.c:2946
+#: ../libpurple/protocols/novell/novell.c:2952
+#: ../libpurple/protocols/novell/novell.c:2958
+#: ../libpurple/protocols/oscar/oscar.c:5608
+#: ../libpurple/protocols/oscar/oscar.c:5826
+#: ../libpurple/protocols/oscar/oscar.c:5840
+#: ../libpurple/protocols/oscar/oscar.c:5856
+#: ../libpurple/protocols/oscar/oscar.c:5863
+#: ../libpurple/protocols/oscar/oscar.c:5870
 #: ../libpurple/protocols/sametime/sametime.c:3286
 #: ../libpurple/protocols/sametime/sametime.c:3292
 #: ../libpurple/protocols/sametime/sametime.c:3298
 #: ../libpurple/protocols/sametime/sametime.c:3377
 #: ../libpurple/protocols/silc/buddy.c:1551
 #: ../libpurple/protocols/silc10/buddy.c:1551
-#: ../libpurple/protocols/simple/simple.c:246
-#: ../libpurple/protocols/yahoo/yahoo.c:3751
-#: ../libpurple/protocols/yahoo/yahoo.c:3757
+#: ../libpurple/protocols/simple/simple.c:247
+#: ../libpurple/protocols/yahoo/yahoo.c:3753
+#: ../libpurple/protocols/yahoo/yahoo.c:3759
 #: ../libpurple/protocols/zephyr/zephyr.c:2337
 #: ../pidgin/gtksavedstatuses.c:526 ../pidgin/gtksavedstatuses.c:1010
 msgid "Message"
@@ -1804,9 +1857,9 @@
 
 #: ../finch/gntui.c:85
 msgid "Certificates"
-msgstr ""
-
-#: ../finch/gntui.c:89 ../pidgin/gtkprefs.c:2035
+msgstr "인증"
+
+#: ../finch/gntui.c:89 ../pidgin/gtkprefs.c:2037
 msgid "Sounds"
 msgstr "소리"
 
@@ -1816,7 +1869,6 @@
 
 #: ../finch/plugins/gntclipboard.c:115 ../finch/plugins/gntclipboard.c:121
 #: ../finch/plugins/gntclipboard.c:128
-#, fuzzy
 msgid "Error loading the plugin."
 msgstr "플러그인을 읽어 들이는 중 오류가 발생했습니다."
 
@@ -1841,7 +1893,7 @@
 #: ../finch/plugins/gntclipboard.c:160
 #, fuzzy
 msgid "Clipboard plugin"
-msgstr "플러그인 해제"
+msgstr "Toaster 플러그인"
 
 #: ../finch/plugins/gntclipboard.c:161
 msgid ""
@@ -1907,20 +1959,19 @@
 msgstr "GntGf"
 
 #: ../finch/plugins/gntgf.c:379 ../finch/plugins/gntgf.c:380
-#, fuzzy
 msgid "Toaster plugin"
-msgstr "Pidgin (터미널 버전)의 Toaster 플러그인"
-
-#: ../finch/plugins/gnthistory.c:116 ../pidgin/plugins/history.c:120
+msgstr "Toaster 플러그인"
+
+#: ../finch/plugins/gnthistory.c:116 ../pidgin/plugins/history.c:125
 #, c-format
 msgid "<b>Conversation with %s on %s:</b><br>"
 msgstr "<b>%s 님과 %s 의 대화</b><br>"
 
-#: ../finch/plugins/gnthistory.c:138 ../pidgin/plugins/history.c:147
+#: ../finch/plugins/gnthistory.c:138 ../pidgin/plugins/history.c:153
 msgid "History Plugin Requires Logging"
 msgstr "로그 기능은 히스토리 플러그인이 필요합니다."
 
-#: ../finch/plugins/gnthistory.c:139 ../pidgin/plugins/history.c:148
+#: ../finch/plugins/gnthistory.c:139 ../pidgin/plugins/history.c:154
 msgid ""
 "Logging can be enabled from Tools -> Preferences -> Logging.\n"
 "\n"
@@ -1936,11 +1987,11 @@
 msgid "GntHistory"
 msgstr "GntHistory"
 
-#: ../finch/plugins/gnthistory.c:181 ../pidgin/plugins/history.c:190
+#: ../finch/plugins/gnthistory.c:181 ../pidgin/plugins/history.c:197
 msgid "Shows recently logged conversations in new conversations."
 msgstr "새로운 대화를 시작할 때 최근 로그에 기록된 대화를 삽입합니다."
 
-#: ../finch/plugins/gnthistory.c:182 ../pidgin/plugins/history.c:191
+#: ../finch/plugins/gnthistory.c:182 ../pidgin/plugins/history.c:198
 msgid ""
 "When a new conversation is opened this plugin will insert the last "
 "conversation into the current conversation."
@@ -1963,7 +2014,7 @@
 #: ../finch/plugins/lastlog.c:124 ../finch/plugins/lastlog.c:125
 #, fuzzy
 msgid "Lastlog plugin."
-msgstr "Pidgin (터미널 버전)의 마지막 로그 플러그인입니다."
+msgstr "Lastlog 플러그인입니다."
 
 #: ../libpurple/account.c:791
 msgid "accounts"
@@ -1993,7 +2044,7 @@
 msgstr "프로토콜 %s 의 플러그인이 없습니다."
 
 #: ../libpurple/account.c:1041 ../libpurple/connection.c:108
-#: ../pidgin/gtkblist.c:4036
+#: ../pidgin/gtkblist.c:4363
 msgid "Connection Error"
 msgstr "접속 오류"
 
@@ -2038,16 +2089,16 @@
 
 #: ../libpurple/account.c:1764 ../libpurple/protocols/gg/gg.c:1017
 #: ../libpurple/protocols/jabber/buddy.c:782
-#: ../libpurple/protocols/jabber/buddy.c:2027
-#: ../libpurple/protocols/jabber/buddy.c:2044
-#: ../libpurple/protocols/novell/novell.c:2831
+#: ../libpurple/protocols/jabber/buddy.c:2030
+#: ../libpurple/protocols/jabber/buddy.c:2047
+#: ../libpurple/protocols/novell/novell.c:2836
 #: ../libpurple/protocols/qq/qq.c:232 ../pidgin/gtkft.c:160
 msgid "Unknown"
 msgstr "알 수 없음"
 
-#: ../libpurple/blist.c:521 ../libpurple/blist.c:1320
-#: ../libpurple/blist.c:1552 ../libpurple/protocols/jabber/roster.c:69
-#: ../libpurple/protocols/myspace/myspace.c:3244 ../pidgin/gtkblist.c:5373
+#: ../libpurple/blist.c:521 ../libpurple/blist.c:1321
+#: ../libpurple/blist.c:1531 ../libpurple/protocols/jabber/roster.c:69
+#: ../libpurple/protocols/myspace/myspace.c:3246 ../pidgin/gtkblist.c:5716
 #: ../pidgin/plugins/gevolution/gevo-util.c:67
 #: ../pidgin/plugins/gevolution/gevolution.c:96
 msgid "Buddies"
@@ -2057,17 +2108,17 @@
 msgid "buddy list"
 msgstr "친구 목록"
 
-#: ../libpurple/certificate.c:545
+#: ../libpurple/certificate.c:558
 msgid "(DOES NOT MATCH)"
 msgstr ""
 
 #. Make messages
-#: ../libpurple/certificate.c:549
+#: ../libpurple/certificate.c:562
 #, c-format
 msgid "%s has presented the following certificate for just-this-once use:"
 msgstr ""
 
-#: ../libpurple/certificate.c:550
+#: ../libpurple/certificate.c:563
 #, c-format
 msgid ""
 "Common name: %s %s\n"
@@ -2075,40 +2126,43 @@
 msgstr ""
 
 #. TODO: Find what the handle ought to be
-#: ../libpurple/certificate.c:555
+#: ../libpurple/certificate.c:568
 msgid "Single-use Certificate Verification"
 msgstr ""
 
 #. Scheme name
 #. Pool name
-#: ../libpurple/certificate.c:872
+#: ../libpurple/certificate.c:885
+#, fuzzy
 msgid "Certificate Authorities"
-msgstr ""
+msgstr "인증 가져오기"
 
 #. Scheme name
 #. Pool name
-#: ../libpurple/certificate.c:1040
+#: ../libpurple/certificate.c:1053
+#, fuzzy
 msgid "SSL Peers Cache"
-msgstr ""
+msgstr "SSL 서버"
 
 #. Make messages
-#: ../libpurple/certificate.c:1171
+#: ../libpurple/certificate.c:1184
 #, fuzzy, c-format
 msgid "Accept certificate for %s?"
-msgstr "대화실로의 초대를 수락하시겠습니까?"
+msgstr "%s 인증"
 
 #. TODO: Find what the handle ought to be
-#: ../libpurple/certificate.c:1177
+#: ../libpurple/certificate.c:1190
+#, fuzzy
 msgid "SSL Certificate Verification"
-msgstr ""
+msgstr "SSL 호스트 인증"
 
 #. Number of actions
-#: ../libpurple/certificate.c:1186
+#: ../libpurple/certificate.c:1199
 #, fuzzy
 msgid "Accept"
 msgstr "허가(_A)"
 
-#: ../libpurple/certificate.c:1187 ../libpurple/protocols/qq/buddy_opt.c:214
+#: ../libpurple/certificate.c:1200 ../libpurple/protocols/qq/buddy_opt.c:214
 #: ../libpurple/protocols/qq/group_im.c:144
 #: ../libpurple/protocols/qq/group_opt.c:127
 #: ../libpurple/protocols/qq/sys_msg.c:90
@@ -2116,15 +2170,16 @@
 msgid "Reject"
 msgstr "거부"
 
-#: ../libpurple/certificate.c:1188
+#: ../libpurple/certificate.c:1201
+#, fuzzy
 msgid "_View Certificate..."
-msgstr ""
+msgstr "인증"
 
 #. Prompt the user to authenticate the certificate
 #. TODO: Provide the user with more guidance about why he is
 #. being prompted
 #. vrq will be completed by user_auth
-#: ../libpurple/certificate.c:1288
+#: ../libpurple/certificate.c:1301
 #, c-format
 msgid ""
 "The certificate presented by \"%s\" claims to be from \"%s\" instead.  This "
@@ -2133,14 +2188,14 @@
 
 #. Prompt the user to authenticate the certificate
 #. vrq will be completed by user_auth
-#: ../libpurple/certificate.c:1313
+#: ../libpurple/certificate.c:1326
 #, c-format
 msgid ""
 "The certificate presented by \"%s\" is self-signed. It cannot be "
 "automatically checked."
 msgstr ""
 
-#: ../libpurple/certificate.c:1331
+#: ../libpurple/certificate.c:1344
 #, c-format
 msgid "The certificate chain presented for %s is not valid."
 msgstr ""
@@ -2150,30 +2205,30 @@
 #. stifle it.
 #. TODO: Probably wrong.
 #. TODO: Probably wrong
-#: ../libpurple/certificate.c:1339 ../libpurple/certificate.c:1416
+#: ../libpurple/certificate.c:1352 ../libpurple/certificate.c:1421
 #, fuzzy
 msgid "SSL Certificate Error"
-msgstr "쓰기 오류"
-
-#: ../libpurple/certificate.c:1340
+msgstr "인증 가져오기 오류"
+
+#: ../libpurple/certificate.c:1353
 #, fuzzy
 msgid "Invalid certificate chain"
 msgstr "잘못된 제목입니다."
 
 #. vrq will be completed by user_auth
-#: ../libpurple/certificate.c:1360
+#: ../libpurple/certificate.c:1373
 msgid ""
 "You have no database of root certificates, so this certificate cannot be "
 "validated."
-msgstr ""
+msgstr "루트 인증 데이터베이스가 없습니다.이 인증은 유효화 되지 못했습니다."
 
 #. vrq will be completed by user_auth
-#: ../libpurple/certificate.c:1382
+#: ../libpurple/certificate.c:1396
 msgid ""
 "The root certificate this one claims to be issued by is unknown to Pidgin."
 msgstr ""
 
-#: ../libpurple/certificate.c:1408
+#: ../libpurple/certificate.c:1413
 #, c-format
 msgid ""
 "The certificate chain presented by %s does not have a valid digital "
@@ -2181,12 +2236,12 @@
 "signature."
 msgstr ""
 
-#: ../libpurple/certificate.c:1417
+#: ../libpurple/certificate.c:1422
 msgid "Invalid certificate authority signature"
 msgstr ""
 
 #. Make messages
-#: ../libpurple/certificate.c:1881
+#: ../libpurple/certificate.c:1886
 #, c-format
 msgid ""
 "Common name: %s\n"
@@ -2198,10 +2253,10 @@
 msgstr ""
 
 #. TODO: Find what the handle ought to be
-#: ../libpurple/certificate.c:1890
+#: ../libpurple/certificate.c:1895
 #, fuzzy
 msgid "Certificate Information"
-msgstr "서버 정보"
+msgstr "인증 가져오기"
 
 #: ../libpurple/connection.c:107
 msgid "Registration Error"
@@ -2223,9 +2278,9 @@
 msgstr "+++ %s 님이 접속을 끊었습니다."
 
 #: ../libpurple/connection.c:497 ../libpurple/plugin.c:282
-#: ../libpurple/protocols/jabber/buddy.c:2337
+#: ../libpurple/protocols/jabber/buddy.c:2340
 #: ../libpurple/protocols/msn/servconn.c:141
-#: ../libpurple/protocols/msn/session.c:322
+#: ../libpurple/protocols/msn/session.c:363
 msgid "Unknown error"
 msgstr "알 수 없는 오류"
 
@@ -2300,7 +2355,7 @@
 msgid "Failed to get serv name: %s"
 msgstr "서버명 가져오기에 실패했습니다: %s"
 
-#: ../libpurple/dbus-server.h:85
+#: ../libpurple/dbus-server.h:84
 msgid "Purple's D-BUS server is not running for the reason listed below"
 msgstr ""
 
@@ -2316,7 +2371,7 @@
 msgid "Unable to send request to resolver process\n"
 msgstr "resolver 프로세스에 요구를 보낼 수 없습니다.\n"
 
-#: ../libpurple/dnsquery.c:549 ../libpurple/dnsquery.c:697
+#: ../libpurple/dnsquery.c:549 ../libpurple/dnsquery.c:698
 #, c-format
 msgid ""
 "Error resolving %s:\n"
@@ -2325,8 +2380,8 @@
 "%s 해석 중 오류:\n"
 "%s"
 
-#: ../libpurple/dnsquery.c:552 ../libpurple/dnsquery.c:711
-#: ../libpurple/dnsquery.c:831
+#: ../libpurple/dnsquery.c:552 ../libpurple/dnsquery.c:712
+#: ../libpurple/dnsquery.c:830
 #, c-format
 msgid "Error resolving %s: %d"
 msgstr "%s 해석 중 오류: %d"
@@ -2345,12 +2400,12 @@
 msgid "EOF while reading from resolver process"
 msgstr "resolver 프로세스로부터 읽는 중 EOF"
 
-#: ../libpurple/dnsquery.c:761
+#: ../libpurple/dnsquery.c:762
 #, c-format
 msgid "Thread creation failure: %s"
 msgstr "스레드 생성에 실패했습니다: %s"
 
-#: ../libpurple/dnsquery.c:762
+#: ../libpurple/dnsquery.c:763
 msgid "Unknown reason"
 msgstr "이유를 알 수 없습니다."
 
@@ -2751,7 +2806,6 @@
 msgstr "요구하는 플러그인 %s 을(를) 읽을 수 없었습니다."
 
 #: ../libpurple/plugin.c:578
-#, fuzzy
 msgid "Unable to load your plugin."
 msgstr "플러그인을 읽을 수 없었습니다."
 
@@ -2761,7 +2815,6 @@
 msgstr "의존성이 있는 플러그인 %s 해제에 실패했습니다"
 
 #: ../libpurple/plugin.c:681
-#, fuzzy
 msgid "There were errors unloading the plugin."
 msgstr "플러그인을 해제하는 동안에 오류가 발생했습니다."
 
@@ -2797,14 +2850,14 @@
 
 #: ../libpurple/plugins/autoaccept.c:165 ../libpurple/plugins/idle.c:170
 #: ../libpurple/plugins/idle.c:204 ../libpurple/plugins/idle.c:230
-#: ../libpurple/protocols/oscar/oscar.c:1453
-#: ../libpurple/protocols/oscar/oscar.c:2233
-#: ../libpurple/protocols/oscar/oscar.c:2282
-#: ../libpurple/protocols/oscar/oscar.c:5886
-#: ../libpurple/protocols/oscar/oscar.c:5941
-#: ../libpurple/protocols/oscar/oscar.c:6167
-#: ../libpurple/protocols/oscar/oscar.c:6237 ../libpurple/request.h:1388
-#: ../libpurple/request.h:1398
+#: ../libpurple/protocols/oscar/oscar.c:1456
+#: ../libpurple/protocols/oscar/oscar.c:2248
+#: ../libpurple/protocols/oscar/oscar.c:2297
+#: ../libpurple/protocols/oscar/oscar.c:5940
+#: ../libpurple/protocols/oscar/oscar.c:5995
+#: ../libpurple/protocols/oscar/oscar.c:6221
+#: ../libpurple/protocols/oscar/oscar.c:6291 ../libpurple/request.h:1388
+#: ../libpurple/request.h:1398 ../pidgin/gtkblist.c:527
 msgid "_Cancel"
 msgstr "취소(_C)"
 
@@ -2845,8 +2898,8 @@
 "자동 수락에 의한 파일이 전송을 완료하면 팝업으로 알림\n"
 "(파일을 전송한 상대와 대화가 없는 경우에만)"
 
-#: ../libpurple/plugins/buddynote.c:46 ../libpurple/protocols/msn/msn.c:1660
-#: ../libpurple/protocols/msn/msn.c:1690
+#: ../libpurple/plugins/buddynote.c:46 ../libpurple/protocols/msn/msn.c:1764
+#: ../libpurple/protocols/msn/msn.c:1794
 msgid "Notes"
 msgstr "메모"
 
@@ -2896,7 +2949,6 @@
 #. *  summary
 #. *  description
 #: ../libpurple/plugins/ciphertest.c:267 ../libpurple/plugins/ciphertest.c:269
-#, fuzzy
 msgid "Tests the ciphers that ship with libpurple."
 msgstr "암호화 기능이 함께 제공되어 있는지 확인합니다."
 
@@ -2926,18 +2978,16 @@
 #. *< priority
 #. *< id
 #: ../libpurple/plugins/filectl.c:248
-#, fuzzy
 msgid "File Control"
-msgstr "Pidgin 파일 제어"
+msgstr "파일 제어"
 
 #. *< name
 #. *< version
 #. *  summary
 #. *  description
 #: ../libpurple/plugins/filectl.c:251 ../libpurple/plugins/filectl.c:253
-#, fuzzy
 msgid "Allows control by entering commands in a file."
-msgstr "Pidgin 명령을 파일에 기술해 둠으로써 Pidgin 자신을 제어할 수 있습니다."
+msgstr "명령을 파일에 기술하여 제어할 수 있습니다."
 
 #: ../libpurple/plugins/idle.c:158 ../libpurple/plugins/idle.c:218
 msgid "Minutes"
@@ -3033,9 +3083,8 @@
 "다."
 
 #: ../libpurple/plugins/joinpart.c:229
-#, fuzzy
 msgid "Join/Part Hiding Configuration"
-msgstr "통계 설정"
+msgstr "Join/Part Hiding 설정"
 
 #: ../libpurple/plugins/joinpart.c:233
 msgid "Minimum Room Size"
@@ -3053,14 +3102,14 @@
 #. *< id
 #: ../libpurple/plugins/joinpart.c:270
 msgid "Join/Part Hiding"
-msgstr ""
+msgstr "Join/Part Hiding"
 
 #. *< name
 #. *< version
 #. *  summary
 #: ../libpurple/plugins/joinpart.c:273
 msgid "Hides extraneous join/part messages."
-msgstr ""
+msgstr "외부 참가/부분 메시지를 안 보입니다."
 
 #. *  description
 #: ../libpurple/plugins/joinpart.c:275
@@ -3068,116 +3117,126 @@
 "This plugin hides join/part messages in large rooms, except for those users "
 "actively taking part in a conversation."
 msgstr ""
+"큰 대화방에서 활성적으로 대화에 참여하고 있는 사람들을 제외한 사람들의 참가/"
+"부분 메시지를 안 보이게 합니다."
 
 #. This is used in the place of a timezone abbreviation if the
 #. * offset is way off.  The user should never really see it, but
 #. * it's here just in case.  The parens are to make it clear it's
 #. * not a real timezone.
-#: ../libpurple/plugins/log_reader.c:493
+#: ../libpurple/plugins/log_reader.c:499
 msgid "(UTC)"
 msgstr "(UTC)"
 
-#: ../libpurple/plugins/log_reader.c:1577
+#: ../libpurple/plugins/log_reader.c:1554
 msgid "User is offline."
 msgstr "사용자는 오프라인입니다."
 
-#: ../libpurple/plugins/log_reader.c:1583
+#: ../libpurple/plugins/log_reader.c:1560
 msgid "Auto-response sent:"
 msgstr "자동 응답 전송:"
 
-#: ../libpurple/plugins/log_reader.c:1593
-#: ../libpurple/plugins/log_reader.c:1596
+#: ../libpurple/plugins/log_reader.c:1570
+#: ../libpurple/plugins/log_reader.c:1573
 #: ../libpurple/plugins/statenotify.c:80
 #, c-format
 msgid "%s has signed off."
 msgstr "%s 님이 접속을 끊었습니다."
 
-#: ../libpurple/plugins/log_reader.c:1610
+#: ../libpurple/plugins/log_reader.c:1587
 msgid "One or more messages may have been undeliverable."
 msgstr "하나 이상의 메시지가 전송 불가능한 상태로 되어 있습니다."
 
-#: ../libpurple/plugins/log_reader.c:1620
+#: ../libpurple/plugins/log_reader.c:1597
 msgid "You were disconnected from the server."
 msgstr "서버가 접속을 끊었습니다."
 
-#: ../libpurple/plugins/log_reader.c:1628
+#: ../libpurple/plugins/log_reader.c:1605
 msgid ""
 "You are currently disconnected. Messages will not be received unless you are "
 "logged in."
 msgstr ""
 "현재 접속되어 있지 않습니다. 로그인 할 때까지 메시지를 받을 수 없습니다."
 
-#: ../libpurple/plugins/log_reader.c:1643
+#: ../libpurple/plugins/log_reader.c:1620
 msgid "Message could not be sent because the maximum length was exceeded."
 msgstr "메시지의 최대 크기를 초과하였기 때문에 전송할 수 없었습니다."
 
-#: ../libpurple/plugins/log_reader.c:1648
+#: ../libpurple/plugins/log_reader.c:1625
 msgid "Message could not be sent."
 msgstr "메시지를 전송할 수 없었습니다."
 
 #. The names of IM clients are marked for translation at the request of
 #. translators who wanted to transliterate them.  Many translators
 #. choose to leave them alone.  Choose what's best for your language.
-#: ../libpurple/plugins/log_reader.c:2349
-#: ../libpurple/plugins/log_reader.c:2472
+#: ../libpurple/plugins/log_reader.c:2699
+#: ../libpurple/plugins/log_reader.c:2835
 msgid "Adium"
 msgstr "Adium"
 
 #. The names of IM clients are marked for translation at the request of
 #. translators who wanted to transliterate them.  Many translators
 #. choose to leave them alone.  Choose what's best for your language.
-#: ../libpurple/plugins/log_reader.c:2362
-#: ../libpurple/plugins/log_reader.c:2477
+#: ../libpurple/plugins/log_reader.c:2712
+#: ../libpurple/plugins/log_reader.c:2840
 msgid "Fire"
 msgstr "Fire"
 
 #. The names of IM clients are marked for translation at the request of
 #. translators who wanted to transliterate them.  Many translators
 #. choose to leave them alone.  Choose what's best for your language.
-#: ../libpurple/plugins/log_reader.c:2374
-#: ../libpurple/plugins/log_reader.c:2481
+#: ../libpurple/plugins/log_reader.c:2724
+#: ../libpurple/plugins/log_reader.c:2844
 msgid "Messenger Plus!"
 msgstr "Messenger Plus!"
 
 #. The names of IM clients are marked for translation at the request of
 #. translators who wanted to transliterate them.  Many translators
 #. choose to leave them alone.  Choose what's best for your language.
-#: ../libpurple/plugins/log_reader.c:2388
-#: ../libpurple/plugins/log_reader.c:2486
+#: ../libpurple/plugins/log_reader.c:2738
+#: ../libpurple/plugins/log_reader.c:2849
 msgid "QIP"
 msgstr ""
 
 #. The names of IM clients are marked for translation at the request of
 #. translators who wanted to transliterate them.  Many translators
 #. choose to leave them alone.  Choose what's best for your language.
-#: ../libpurple/plugins/log_reader.c:2400
-#: ../libpurple/plugins/log_reader.c:2490
+#: ../libpurple/plugins/log_reader.c:2750
+#: ../libpurple/plugins/log_reader.c:2853
 msgid "MSN Messenger"
 msgstr "MSN Messenger"
 
 #. The names of IM clients are marked for translation at the request of
 #. translators who wanted to transliterate them.  Many translators
 #. choose to leave them alone.  Choose what's best for your language.
-#: ../libpurple/plugins/log_reader.c:2412
-#: ../libpurple/plugins/log_reader.c:2494
+#: ../libpurple/plugins/log_reader.c:2762
+#: ../libpurple/plugins/log_reader.c:2857
 msgid "Trillian"
 msgstr "Trillian"
 
+#. The names of IM clients are marked for translation at the request of
+#. translators who wanted to transliterate them.  Many translators
+#. choose to leave them alone.  Choose what's best for your language.
+#: ../libpurple/plugins/log_reader.c:2774
+#: ../libpurple/plugins/log_reader.c:2861
+msgid "aMSN"
+msgstr ""
+
 #. Add general preferences.
-#: ../libpurple/plugins/log_reader.c:2454
+#: ../libpurple/plugins/log_reader.c:2817
 msgid "General Log Reading Configuration"
 msgstr "일반"
 
-#: ../libpurple/plugins/log_reader.c:2458
+#: ../libpurple/plugins/log_reader.c:2821
 msgid "Fast size calculations"
 msgstr "빠르게 크기 계산"
 
-#: ../libpurple/plugins/log_reader.c:2462
+#: ../libpurple/plugins/log_reader.c:2825
 msgid "Use name heuristics"
 msgstr "이름 형식의 heuristics 사용"
 
 #. Add Log Directory preferences.
-#: ../libpurple/plugins/log_reader.c:2468
+#: ../libpurple/plugins/log_reader.c:2831
 msgid "Log Directory"
 msgstr "로그 기록 폴더"
 
@@ -3187,19 +3246,19 @@
 #. *< dependencies
 #. *< priority
 #. *< id
-#: ../libpurple/plugins/log_reader.c:2523
+#: ../libpurple/plugins/log_reader.c:2890
 msgid "Log Reader"
 msgstr "Log Reader"
 
 #. *< name
 #. *< version
 #. * summary
-#: ../libpurple/plugins/log_reader.c:2527
+#: ../libpurple/plugins/log_reader.c:2894
 msgid "Includes other IM clients' logs in the log viewer."
 msgstr "다른 메시지 클라이언트의 로그를 로그 뷰어로 표시"
 
 #. * description
-#: ../libpurple/plugins/log_reader.c:2531
+#: ../libpurple/plugins/log_reader.c:2898
 msgid ""
 "When viewing logs, this plugin will include logs from other IM clients. "
 "Currently, this includes Adium, MSN Messenger, and Trillian.\n"
@@ -3285,9 +3344,9 @@
 msgstr "\"친구 알림\" 창에서 편집 및 삭제할 수 있습니다."
 
 #: ../libpurple/plugins/offlinemsg.c:165
-#: ../libpurple/protocols/msn/dialog.c:133
-#: ../libpurple/protocols/msn/msn.c:550 ../libpurple/protocols/msn/msn.c:560
-#: ../libpurple/protocols/novell/novell.c:1917
+#: ../libpurple/protocols/msn/dialog.c:141
+#: ../libpurple/protocols/msn/msn.c:622
+#: ../libpurple/protocols/novell/novell.c:1919
 #: ../libpurple/protocols/silc/buddy.c:317
 #: ../libpurple/protocols/silc/pk.c:113 ../libpurple/protocols/silc/wb.c:304
 #: ../libpurple/protocols/silc10/buddy.c:314
@@ -3297,9 +3356,9 @@
 msgstr "예"
 
 #: ../libpurple/plugins/offlinemsg.c:166
-#: ../libpurple/protocols/msn/dialog.c:134
-#: ../libpurple/protocols/msn/msn.c:550 ../libpurple/protocols/msn/msn.c:560
-#: ../libpurple/protocols/novell/novell.c:1918
+#: ../libpurple/protocols/msn/dialog.c:142
+#: ../libpurple/protocols/msn/msn.c:622
+#: ../libpurple/protocols/novell/novell.c:1920
 #: ../libpurple/protocols/silc/buddy.c:318
 #: ../libpurple/protocols/silc/pk.c:114 ../libpurple/protocols/silc/wb.c:305
 #: ../libpurple/protocols/silc10/buddy.c:315
@@ -3408,10 +3467,10 @@
 msgstr "중요한 기능이 동작하고 있는지 시험합니다."
 
 #. Scheme name
-#: ../libpurple/plugins/ssl/ssl-gnutls.c:902
-#: ../libpurple/plugins/ssl/ssl-nss.c:725
+#: ../libpurple/plugins/ssl/ssl-gnutls.c:911
+#: ../libpurple/plugins/ssl/ssl-nss.c:731
 msgid "X.509 Certificates"
-msgstr ""
+msgstr "X.509 인증"
 
 #. *< type
 #. *< ui_requirement
@@ -3419,7 +3478,7 @@
 #. *< dependencies
 #. *< priority
 #. *< id
-#: ../libpurple/plugins/ssl/ssl-gnutls.c:986
+#: ../libpurple/plugins/ssl/ssl-gnutls.c:995
 msgid "GNUTLS"
 msgstr "GNUTLS"
 
@@ -3427,8 +3486,8 @@
 #. *< version
 #. *  summary
 #. *  description
-#: ../libpurple/plugins/ssl/ssl-gnutls.c:989
-#: ../libpurple/plugins/ssl/ssl-gnutls.c:991
+#: ../libpurple/plugins/ssl/ssl-gnutls.c:998
+#: ../libpurple/plugins/ssl/ssl-gnutls.c:1000
 msgid "Provides SSL support through GNUTLS."
 msgstr "GNUTLS를 이용한 SSL 기능을 제공합니다."
 
@@ -3438,7 +3497,7 @@
 #. *< dependencies
 #. *< priority
 #. *< id
-#: ../libpurple/plugins/ssl/ssl-nss.c:810
+#: ../libpurple/plugins/ssl/ssl-nss.c:816
 msgid "NSS"
 msgstr "NSS"
 
@@ -3446,8 +3505,8 @@
 #. *< version
 #. *  summary
 #. *  description
-#: ../libpurple/plugins/ssl/ssl-nss.c:813
-#: ../libpurple/plugins/ssl/ssl-nss.c:815
+#: ../libpurple/plugins/ssl/ssl-nss.c:819
+#: ../libpurple/plugins/ssl/ssl-nss.c:821
 msgid "Provides SSL support through Mozilla NSS."
 msgstr "Mozilla 가 제공하는 NSS 를 이용하여 SSL 기능을 제공합니다."
 
@@ -3533,15 +3592,15 @@
 "대화 상대가 자리 비움이거나, 대기 중에서 복귀 또는 자리에 있을 때 대화 창에 "
 "알립니다."
 
-#: ../libpurple/plugins/tcl/tcl.c:421
+#: ../libpurple/plugins/tcl/tcl.c:423
 msgid "Tcl Plugin Loader"
 msgstr "Tcl 플러그인 로더"
 
-#: ../libpurple/plugins/tcl/tcl.c:423 ../libpurple/plugins/tcl/tcl.c:424
+#: ../libpurple/plugins/tcl/tcl.c:425 ../libpurple/plugins/tcl/tcl.c:426
 msgid "Provides support for loading Tcl plugins"
 msgstr "Tcl 플러그인을 읽어들이는 기능을 제공합니다."
 
-#: ../libpurple/plugins/tcl/tcl.c:507
+#: ../libpurple/plugins/tcl/tcl.c:509
 msgid ""
 "Unable to detect ActiveTCL installation. If you wish to use TCL plugins, "
 "install ActiveTCL from http://www.activestate.com\n"
@@ -3549,12 +3608,19 @@
 "ActiveTCL 이 설치되어 있지 않은 것 같습니다. 이 플러그인을 사용하고자 하면, "
 "http://www.activestate.com 에 있는 ActiveTCL 을 설치해 주십시오.\n"
 
+#: ../libpurple/protocols/bonjour/bonjour.c:107
+msgid ""
+"The Apple Bonjour For Windows toolkit wasn't found, see the FAQ at: http://"
+"developer.pidgin.im/wiki/Using%20Pidgin#CanIusePidginforBonjourLink-"
+"LocalMessaging for more information."
+msgstr ""
+
 #. Send a message about the connection error
-#: ../libpurple/protocols/bonjour/bonjour.c:112
+#: ../libpurple/protocols/bonjour/bonjour.c:124
 msgid "Unable to listen for incoming IM connections\n"
 msgstr "수신한 메시지 접속을 확립할 수 없었습니다.\n"
 
-#: ../libpurple/protocols/bonjour/bonjour.c:137
+#: ../libpurple/protocols/bonjour/bonjour.c:149
 msgid ""
 "Unable to establish connection with the local mDNS server.  Is it running?"
 msgstr ""
@@ -3562,25 +3628,25 @@
 "고 있습니까?"
 
 #. Creating the options for the protocol
-#: ../libpurple/protocols/bonjour/bonjour.c:351
-#: ../libpurple/protocols/bonjour/bonjour.c:656
+#: ../libpurple/protocols/bonjour/bonjour.c:365
+#: ../libpurple/protocols/bonjour/bonjour.c:670
 #: ../libpurple/protocols/gg/gg.c:632
 #: ../libpurple/protocols/jabber/jabber.c:942
 msgid "First name"
 msgstr "이름"
 
-#: ../libpurple/protocols/bonjour/bonjour.c:353
-#: ../libpurple/protocols/bonjour/bonjour.c:659
+#: ../libpurple/protocols/bonjour/bonjour.c:367
+#: ../libpurple/protocols/bonjour/bonjour.c:673
 #: ../libpurple/protocols/gg/gg.c:627
 #: ../libpurple/protocols/jabber/jabber.c:947
 msgid "Last name"
 msgstr "성"
 
-#: ../libpurple/protocols/bonjour/bonjour.c:357
+#: ../libpurple/protocols/bonjour/bonjour.c:371
 #: ../libpurple/protocols/jabber/buddy.c:295
 #: ../libpurple/protocols/jabber/buddy.c:1325
 #: ../libpurple/protocols/jabber/buddy.c:1335
-#: ../libpurple/protocols/jabber/buddy.c:2216
+#: ../libpurple/protocols/jabber/buddy.c:2219
 #: ../libpurple/protocols/silc/ops.c:1041
 #: ../libpurple/protocols/silc/util.c:555
 #: ../libpurple/protocols/silc10/ops.c:1075
@@ -3589,13 +3655,13 @@
 msgid "E-Mail"
 msgstr "이메일"
 
-#: ../libpurple/protocols/bonjour/bonjour.c:360
-#: ../libpurple/protocols/bonjour/bonjour.c:665
+#: ../libpurple/protocols/bonjour/bonjour.c:374
+#: ../libpurple/protocols/bonjour/bonjour.c:679
 msgid "AIM Account"
 msgstr "AIM 계정"
 
-#: ../libpurple/protocols/bonjour/bonjour.c:363
-#: ../libpurple/protocols/bonjour/bonjour.c:668
+#: ../libpurple/protocols/bonjour/bonjour.c:377
+#: ../libpurple/protocols/bonjour/bonjour.c:682
 #, fuzzy
 msgid "XMPP Account"
 msgstr "AIM 계정"
@@ -3610,17 +3676,17 @@
 #. *< version
 #. *  summary
 #. *  description
-#: ../libpurple/protocols/bonjour/bonjour.c:467
-#: ../libpurple/protocols/bonjour/bonjour.c:469
+#: ../libpurple/protocols/bonjour/bonjour.c:481
+#: ../libpurple/protocols/bonjour/bonjour.c:483
 msgid "Bonjour Protocol Plugin"
 msgstr "Bonjour 프로토콜 플러그인"
 
-#: ../libpurple/protocols/bonjour/bonjour.c:610
+#: ../libpurple/protocols/bonjour/bonjour.c:624
 #, fuzzy
 msgid "Purple Person"
 msgstr "새 친구"
 
-#: ../libpurple/protocols/bonjour/bonjour.c:662
+#: ../libpurple/protocols/bonjour/bonjour.c:676
 #: ../libpurple/protocols/gg/gg.c:477
 #: ../libpurple/protocols/jabber/jabber.c:932
 #: ../libpurple/protocols/silc/silc.c:770
@@ -3640,32 +3706,32 @@
 msgstr "%s 님이 대화 계정을 닫았습니다."
 
 #: ../libpurple/protocols/bonjour/jabber.c:437
-#: ../libpurple/protocols/bonjour/jabber.c:660
-#: ../libpurple/protocols/bonjour/jabber.c:678
+#: ../libpurple/protocols/bonjour/jabber.c:662
+#: ../libpurple/protocols/bonjour/jabber.c:680
 msgid "Unable to send the message, the conversation couldn't be started."
 msgstr "메시지를 보낼 수 없습니다. 대화를 시작할 수 없었습니다."
 
-#: ../libpurple/protocols/bonjour/jabber.c:583
+#: ../libpurple/protocols/bonjour/jabber.c:585
 msgid "Cannot open socket"
 msgstr "소켓을 열 수 없습니다."
 
-#: ../libpurple/protocols/bonjour/jabber.c:591
+#: ../libpurple/protocols/bonjour/jabber.c:593
 msgid "Error setting socket options"
 msgstr "소켓 옵션을 설정할 수 없습니다."
 
-#: ../libpurple/protocols/bonjour/jabber.c:615
+#: ../libpurple/protocols/bonjour/jabber.c:617
 msgid "Could not bind socket to port"
 msgstr "포트에 소켓을 할당할 수 없었습니다."
 
-#: ../libpurple/protocols/bonjour/jabber.c:623
+#: ../libpurple/protocols/bonjour/jabber.c:625
 msgid "Could not listen on socket"
 msgstr "소켓을 감시할 수 없었습니다."
 
-#: ../libpurple/protocols/gg/gg.c:76 ../libpurple/proxy.c:1829
+#: ../libpurple/protocols/gg/gg.c:76 ../libpurple/proxy.c:1842
 msgid "Invalid proxy settings"
 msgstr "잘못된 프록시 설정"
 
-#: ../libpurple/protocols/gg/gg.c:77 ../libpurple/proxy.c:1829
+#: ../libpurple/protocols/gg/gg.c:77 ../libpurple/proxy.c:1842
 msgid ""
 "Either the host name or port number specified for your given proxy type is "
 "invalid."
@@ -3763,8 +3829,8 @@
 #: ../libpurple/protocols/gg/gg.c:642 ../libpurple/protocols/gg/gg.c:1054
 #: ../libpurple/protocols/gg/gg.c:1126
 #: ../libpurple/protocols/jabber/jabber.c:957
-#: ../libpurple/protocols/oscar/oscar.c:3789
-#: ../libpurple/protocols/oscar/oscar.c:3802
+#: ../libpurple/protocols/oscar/oscar.c:3804
+#: ../libpurple/protocols/oscar/oscar.c:3817
 #: ../libpurple/protocols/qq/buddy_info.c:49
 msgid "City"
 msgstr "도시"
@@ -3773,9 +3839,9 @@
 msgid "Year of birth"
 msgstr "생년"
 
-#: ../libpurple/protocols/gg/gg.c:650 ../libpurple/protocols/msn/msn.c:1589
-#: ../libpurple/protocols/myspace/user.c:115
-#: ../libpurple/protocols/oscar/oscar.c:3732
+#: ../libpurple/protocols/gg/gg.c:650 ../libpurple/protocols/msn/msn.c:1693
+#: ../libpurple/protocols/myspace/user.c:117
+#: ../libpurple/protocols/oscar/oscar.c:3747
 #: ../libpurple/protocols/qq/buddy_info.c:46
 #: ../libpurple/protocols/qq/qq.c:226 ../libpurple/protocols/qq/qq.c:229
 #: ../libpurple/protocols/qq/qq.c:232 ../libpurple/protocols/qq/qq.c:236
@@ -3788,14 +3854,14 @@
 msgstr "남/여"
 
 #: ../libpurple/protocols/gg/gg.c:652
-#: ../libpurple/protocols/oscar/oscar.c:3732
+#: ../libpurple/protocols/oscar/oscar.c:3747
 #: ../libpurple/protocols/qq/buddy_info.c:83
 #: ../libpurple/protocols/qq/qq.c:226
 msgid "Male"
 msgstr "남"
 
 #: ../libpurple/protocols/gg/gg.c:653
-#: ../libpurple/protocols/oscar/oscar.c:3732
+#: ../libpurple/protocols/oscar/oscar.c:3747
 #: ../libpurple/protocols/qq/buddy_info.c:84
 #: ../libpurple/protocols/qq/qq.c:229
 msgid "Female"
@@ -3855,26 +3921,26 @@
 msgstr "대화 추가..."
 
 #: ../libpurple/protocols/gg/gg.c:1008
-#: ../libpurple/protocols/jabber/buddy.c:2031
-#: ../libpurple/protocols/novell/novell.c:2828
+#: ../libpurple/protocols/jabber/buddy.c:2034
+#: ../libpurple/protocols/novell/novell.c:2833
 #: ../libpurple/protocols/oscar/oscar.c:828
-#: ../libpurple/protocols/oscar/oscar.c:5604
+#: ../libpurple/protocols/oscar/oscar.c:5658
 #: ../libpurple/protocols/qq/qq.c:170 ../libpurple/protocols/qq/qq.c:177
 #: ../libpurple/protocols/qq/qq.c:292
-#: ../libpurple/protocols/yahoo/yahoo.c:3099 ../libpurple/status.c:154
-#: ../pidgin/gtkblist.c:3104 ../pidgin/gtkblist.c:3436
-#: ../pidgin/gtkdocklet.c:450 ../pidgin/gtkstatusbox.c:1061
+#: ../libpurple/protocols/yahoo/yahoo.c:3101 ../libpurple/status.c:154
+#: ../pidgin/gtkblist.c:3302 ../pidgin/gtkblist.c:3640
+#: ../pidgin/gtkdocklet.c:561 ../pidgin/gtkstatusbox.c:1061
 msgid "Offline"
 msgstr "오프라인"
 
 #: ../libpurple/protocols/gg/gg.c:1011
-#: ../libpurple/protocols/jabber/buddy.c:2033
+#: ../libpurple/protocols/jabber/buddy.c:2036
 #: ../libpurple/protocols/msn/state.c:29 ../libpurple/protocols/msn/state.c:30
 #: ../libpurple/protocols/msn/state.c:37 ../libpurple/protocols/msn/state.c:38
-#: ../libpurple/protocols/novell/novell.c:2816
+#: ../libpurple/protocols/novell/novell.c:2821
 #: ../libpurple/protocols/qq/qq.c:280
-#: ../libpurple/protocols/yahoo/yahoo.c:3101 ../libpurple/status.c:155
-#: ../pidgin/gtkdocklet.c:438 ../pidgin/gtkstatusbox.c:1057
+#: ../libpurple/protocols/yahoo/yahoo.c:3103 ../libpurple/status.c:155
+#: ../pidgin/gtkdocklet.c:545 ../pidgin/gtkstatusbox.c:1057
 msgid "Available"
 msgstr "사용 가능"
 
@@ -3883,32 +3949,32 @@
 #. Away stuff
 #: ../libpurple/protocols/gg/gg.c:1014 ../libpurple/protocols/irc/irc.c:528
 #: ../libpurple/protocols/irc/msgs.c:310
-#: ../libpurple/protocols/jabber/buddy.c:2037
-#: ../libpurple/protocols/novell/novell.c:2819
+#: ../libpurple/protocols/jabber/buddy.c:2040
+#: ../libpurple/protocols/novell/novell.c:2824
 #: ../libpurple/protocols/oscar/oscar.c:733
-#: ../libpurple/protocols/oscar/oscar.c:4547
-#: ../libpurple/protocols/oscar/oscar.c:5632
+#: ../libpurple/protocols/oscar/oscar.c:4562
+#: ../libpurple/protocols/oscar/oscar.c:5686
 #: ../libpurple/protocols/qq/qq.c:180 ../libpurple/protocols/qq/qq.c:284
 #: ../libpurple/protocols/silc/buddy.c:1476
 #: ../libpurple/protocols/silc10/buddy.c:1476
-#: ../libpurple/protocols/yahoo/yahoo.c:3653
-#: ../libpurple/protocols/yahoo/yahoo.c:3727 ../libpurple/status.c:158
-#: ../pidgin/gtkdocklet.c:442 ../pidgin/gtkprefs.c:1939
+#: ../libpurple/protocols/yahoo/yahoo.c:3655
+#: ../libpurple/protocols/yahoo/yahoo.c:3729 ../libpurple/status.c:158
+#: ../pidgin/gtkdocklet.c:549 ../pidgin/gtkprefs.c:1941
 #: ../pidgin/gtkstatusbox.c:1058
 #, c-format
 msgid "Away"
 msgstr "자리 비움"
 
 #: ../libpurple/protocols/gg/gg.c:1043 ../libpurple/protocols/gg/gg.c:1117
-#: ../libpurple/protocols/oscar/oscar.c:2699
-#: ../libpurple/protocols/oscar/oscar.c:3699
+#: ../libpurple/protocols/oscar/oscar.c:2714
+#: ../libpurple/protocols/oscar/oscar.c:3714
 msgid "UIN"
 msgstr "UIN"
 
 #: ../libpurple/protocols/gg/gg.c:1046 ../libpurple/protocols/gg/gg.c:1120
-#: ../libpurple/protocols/jabber/buddy.c:2210
-#: ../libpurple/protocols/jabber/buddy.c:2386
-#: ../libpurple/protocols/oscar/oscar.c:3710
+#: ../libpurple/protocols/jabber/buddy.c:2213
+#: ../libpurple/protocols/jabber/buddy.c:2389
+#: ../libpurple/protocols/oscar/oscar.c:3725
 #: ../libpurple/protocols/silc/ops.c:990
 #: ../libpurple/protocols/silc10/ops.c:1024
 msgid "First Name"
@@ -3919,7 +3985,7 @@
 msgstr "생년"
 
 #: ../libpurple/protocols/gg/gg.c:1111 ../libpurple/protocols/gg/gg.c:1180
-#: ../libpurple/protocols/oscar/oscar.c:3911
+#: ../libpurple/protocols/oscar/oscar.c:3926
 msgid "Unable to display the search results."
 msgstr "검색 결과를 표시할 수 없습니다."
 
@@ -3963,7 +4029,7 @@
 msgid "Connection failed."
 msgstr "접속에 실패했습니다."
 
-#: ../libpurple/protocols/gg/gg.c:1621 ../libpurple/protocols/msn/msn.c:559
+#: ../libpurple/protocols/gg/gg.c:1621 ../libpurple/protocols/msn/msn.c:621
 msgid "Blocked"
 msgstr "내가 거부됨"
 
@@ -4079,9 +4145,8 @@
 
 #: ../libpurple/protocols/irc/dcc_send.c:297
 #: ../libpurple/protocols/irc/dcc_send.c:338
-#, fuzzy
 msgid "Could not open a listening port."
-msgstr "Pidgin이 감시 포트를 열 수 없었습니다."
+msgstr "감시 포트를 열 수 없었습니다."
 
 #: ../libpurple/protocols/irc/irc.c:79
 msgid "Error displaying MOTD"
@@ -4102,7 +4167,7 @@
 
 #: ../libpurple/protocols/irc/irc.c:127 ../libpurple/protocols/irc/irc.c:165
 #: ../libpurple/protocols/irc/irc.c:612 ../libpurple/protocols/irc/irc.c:637
-#: ../libpurple/protocols/myspace/myspace.c:2356
+#: ../libpurple/protocols/myspace/myspace.c:2357
 msgid "Server has disconnected"
 msgstr "서버가 접속을 끊었습니다."
 
@@ -4128,14 +4193,14 @@
 #. connect to the server
 #: ../libpurple/protocols/irc/irc.c:319
 #: ../libpurple/protocols/jabber/jabber.c:1280
-#: ../libpurple/protocols/msn/session.c:345
-#: ../libpurple/protocols/myspace/myspace.c:301
-#: ../libpurple/protocols/novell/novell.c:2182
-#: ../libpurple/protocols/oscar/oscar.c:1287
+#: ../libpurple/protocols/msn/session.c:386
+#: ../libpurple/protocols/myspace/myspace.c:302
+#: ../libpurple/protocols/novell/novell.c:2187
+#: ../libpurple/protocols/oscar/oscar.c:1290
 #: ../libpurple/protocols/qq/qq.c:136
 #: ../libpurple/protocols/sametime/sametime.c:3723
-#: ../libpurple/protocols/simple/simple.c:1716
-#: ../libpurple/protocols/yahoo/yahoo.c:2939
+#: ../libpurple/protocols/simple/simple.c:1732
+#: ../libpurple/protocols/yahoo/yahoo.c:2941
 #: ../libpurple/protocols/zephyr/zephyr.c:1621 ../pidgin/gtkstatusbox.c:662
 msgid "Connecting"
 msgstr "접속 중입니다."
@@ -4149,20 +4214,20 @@
 #. TODO: try other ports if in auto mode, then save
 #. * working port and try that first next time.
 #: ../libpurple/protocols/irc/irc.c:338
-#: ../libpurple/protocols/myspace/myspace.c:317
-#: ../libpurple/protocols/simple/simple.c:464
-#: ../libpurple/protocols/simple/simple.c:1631
+#: ../libpurple/protocols/myspace/myspace.c:318
+#: ../libpurple/protocols/simple/simple.c:465
+#: ../libpurple/protocols/simple/simple.c:1647
 msgid "Couldn't create socket"
 msgstr "소켓을 생성하지 못했습니다."
 
 #: ../libpurple/protocols/irc/irc.c:421
-#: ../libpurple/protocols/myspace/myspace.c:2469
-#: ../libpurple/protocols/oscar/oscar.c:1283
+#: ../libpurple/protocols/myspace/myspace.c:2470
+#: ../libpurple/protocols/oscar/oscar.c:1286
 msgid "Couldn't connect to host"
 msgstr "호스트에 접속하지 못했습니다."
 
 #: ../libpurple/protocols/irc/irc.c:609 ../libpurple/protocols/irc/irc.c:634
-#: ../libpurple/protocols/myspace/myspace.c:2352
+#: ../libpurple/protocols/myspace/myspace.c:2353
 msgid "Read error"
 msgstr "읽기 오류입니다."
 
@@ -4202,22 +4267,22 @@
 
 #. host to connect to
 #: ../libpurple/protocols/irc/irc.c:940 ../libpurple/protocols/irc/msgs.c:323
-#: ../libpurple/protocols/msn/msn.c:2185
-#: ../libpurple/protocols/oscar/oscar.c:6671
+#: ../libpurple/protocols/msn/msn.c:2291
+#: ../libpurple/protocols/oscar/oscar.c:6725
 #: ../libpurple/protocols/qq/qq.c:755
 #: ../libpurple/protocols/sametime/sametime.c:5727
 #: ../libpurple/protocols/silc/ops.c:1249
 #: ../libpurple/protocols/silc/ops.c:1341
 #: ../libpurple/protocols/silc10/ops.c:1244
 #: ../libpurple/protocols/silc10/ops.c:1347
-#: ../libpurple/protocols/simple/simple.c:1896
+#: ../libpurple/protocols/simple/simple.c:1919
 #: ../libpurple/protocols/toc/toc.c:2327
 msgid "Server"
 msgstr "서버"
 
 #. port to connect to
-#: ../libpurple/protocols/irc/irc.c:943 ../libpurple/protocols/msn/msn.c:2190
-#: ../libpurple/protocols/oscar/oscar.c:6674
+#: ../libpurple/protocols/irc/irc.c:943 ../libpurple/protocols/msn/msn.c:2296
+#: ../libpurple/protocols/oscar/oscar.c:6728
 #: ../libpurple/protocols/qq/qq.c:758
 #: ../libpurple/protocols/sametime/sametime.c:5732
 #: ../libpurple/protocols/silc/silc.c:1918
@@ -4289,7 +4354,7 @@
 msgstr " <i>(identified)</i>"
 
 #: ../libpurple/protocols/irc/msgs.c:303
-#: ../libpurple/protocols/oscar/oscar.c:3700
+#: ../libpurple/protocols/oscar/oscar.c:3715
 #: ../libpurple/protocols/silc/ops.c:1418
 #: ../libpurple/protocols/silc10/ops.c:1414
 msgid "Nick"
@@ -4342,9 +4407,8 @@
 msgstr "알 수 없는 메시지"
 
 #: ../libpurple/protocols/irc/msgs.c:449
-#, fuzzy
 msgid "The IRC server received a message it did not understand."
-msgstr "Pidgin이 전송한 메시지를 IRC 서버가 이해하지 못했습니다."
+msgstr "IRC 서버가 받은 메시지를 이해하지 못했습니다."
 
 #: ../libpurple/protocols/irc/msgs.c:470
 #, c-format
@@ -4389,28 +4453,28 @@
 msgid "Invitation only"
 msgstr "초대만"
 
-#: ../libpurple/protocols/irc/msgs.c:795
+#: ../libpurple/protocols/irc/msgs.c:798
 #, c-format
 msgid "You have been kicked by %s: (%s)"
 msgstr "%s 에게 차였습니다: (%s)"
 
 #. Remove user from channel
-#: ../libpurple/protocols/irc/msgs.c:800 ../libpurple/protocols/silc/ops.c:699
+#: ../libpurple/protocols/irc/msgs.c:803 ../libpurple/protocols/silc/ops.c:699
 #: ../libpurple/protocols/silc10/ops.c:720
 #, c-format
 msgid "Kicked by %s (%s)"
 msgstr "%s (%s) 에게 차였습니다"
 
-#: ../libpurple/protocols/irc/msgs.c:823
+#: ../libpurple/protocols/irc/msgs.c:826
 #, c-format
 msgid "mode (%s %s) by %s"
 msgstr "모드 (%s %s) by %s"
 
-#: ../libpurple/protocols/irc/msgs.c:908 ../libpurple/protocols/irc/msgs.c:909
+#: ../libpurple/protocols/irc/msgs.c:911 ../libpurple/protocols/irc/msgs.c:912
 msgid "Invalid nickname"
 msgstr "잘못된 별명"
 
-#: ../libpurple/protocols/irc/msgs.c:910
+#: ../libpurple/protocols/irc/msgs.c:913
 msgid ""
 "Your selected nickname was rejected by the server.  It probably contains "
 "invalid characters."
@@ -4418,7 +4482,7 @@
 "지정한 별명이 서버로부터 거부되었습니다. 잘못된 문자가 포함되어 있을 수 있습"
 "니다."
 
-#: ../libpurple/protocols/irc/msgs.c:915
+#: ../libpurple/protocols/irc/msgs.c:918
 msgid ""
 "Your selected account name was rejected by the server.  It probably contains "
 "invalid characters."
@@ -4426,44 +4490,44 @@
 "지정한 계정명이 서버로부터 거부되었습니다. 잘못된 문자가 포함되어 있을 수 있"
 "습니다."
 
-#: ../libpurple/protocols/irc/msgs.c:954
+#: ../libpurple/protocols/irc/msgs.c:957
 msgid "Cannot change nick"
 msgstr "별명을 변경할 수 없습니다."
 
-#: ../libpurple/protocols/irc/msgs.c:954
+#: ../libpurple/protocols/irc/msgs.c:957
 msgid "Could not change nick"
 msgstr "별명을 변경할 수 없었습니다."
 
-#: ../libpurple/protocols/irc/msgs.c:975
+#: ../libpurple/protocols/irc/msgs.c:978
 #, c-format
 msgid "You have parted the channel%s%s"
 msgstr "채널 %s%s (으)로부터 이탈했습니다."
 
-#: ../libpurple/protocols/irc/msgs.c:1017
+#: ../libpurple/protocols/irc/msgs.c:1020
 msgid "Error: invalid PONG from server"
 msgstr "오류: 서버로부터의 잘못된 PONG 입니다."
 
-#: ../libpurple/protocols/irc/msgs.c:1019
+#: ../libpurple/protocols/irc/msgs.c:1022
 #, c-format
 msgid "PING reply -- Lag: %lu seconds"
 msgstr "PING 응답 -- Lag: %lu 초"
 
-#: ../libpurple/protocols/irc/msgs.c:1110
+#: ../libpurple/protocols/irc/msgs.c:1113
 #, fuzzy, c-format
 msgid "Cannot join %s: Registration is required."
 msgstr "등록이 필요합니다."
 
-#: ../libpurple/protocols/irc/msgs.c:1111
+#: ../libpurple/protocols/irc/msgs.c:1114
 #: ../libpurple/protocols/silc/ops.c:1093
 #: ../libpurple/protocols/silc10/ops.c:1128
 msgid "Cannot join channel"
 msgstr "채널에 참가할 수 없습니다."
 
-#: ../libpurple/protocols/irc/msgs.c:1145
+#: ../libpurple/protocols/irc/msgs.c:1148
 msgid "Nick or channel is temporarily unavailable."
 msgstr "일시적으로 별명 또는 채널을 이용할 수 없습니다."
 
-#: ../libpurple/protocols/irc/msgs.c:1157
+#: ../libpurple/protocols/irc/msgs.c:1160
 #, c-format
 msgid "Wallops from %s"
 msgstr "%s 님으로부터의 wallops 입니다."
@@ -4570,7 +4634,7 @@
 msgstr "names [채널]:  채널에 현재 있는 사용자 목록을 표시합니다."
 
 #: ../libpurple/protocols/irc/parse.c:137
-#: ../libpurple/protocols/jabber/jabber.c:2261
+#: ../libpurple/protocols/jabber/jabber.c:2304
 msgid "nick &lt;new nickname&gt;:  Change your nickname."
 msgstr "nick &lt;새 별명&gt;:  별명을 변경합니다."
 
@@ -4679,21 +4743,21 @@
 msgid "whowas &lt;nick&gt;: Get information on a user that has logged off."
 msgstr "whois [서버명] &lt;별명&gt;:  사용자 정보를 가져옵니다."
 
-#: ../libpurple/protocols/irc/parse.c:465
+#: ../libpurple/protocols/irc/parse.c:520
 #, c-format
 msgid "Reply time from %s: %lu seconds"
 msgstr "%s (으)로부터의 응답 시간: %lu 초"
 
-#: ../libpurple/protocols/irc/parse.c:466
+#: ../libpurple/protocols/irc/parse.c:521
 msgid "PONG"
 msgstr "PONG"
 
-#: ../libpurple/protocols/irc/parse.c:466
+#: ../libpurple/protocols/irc/parse.c:521
 msgid "CTCP PING reply"
 msgstr "CTCP PING 응답"
 
-#: ../libpurple/protocols/irc/parse.c:577
-#: ../libpurple/protocols/irc/parse.c:581 ../libpurple/protocols/toc/toc.c:191
+#: ../libpurple/protocols/irc/parse.c:632
+#: ../libpurple/protocols/irc/parse.c:636 ../libpurple/protocols/toc/toc.c:191
 #: ../libpurple/protocols/toc/toc.c:694 ../libpurple/protocols/toc/toc.c:710
 #: ../libpurple/protocols/toc/toc.c:786
 msgid "Disconnected."
@@ -4712,7 +4776,7 @@
 msgid "Ad-Hoc Command Failed"
 msgstr "명령을 사용할 수 없습니다."
 
-#: ../libpurple/protocols/jabber/adhoccommands.c:173
+#: ../libpurple/protocols/jabber/adhoccommands.c:176
 #, fuzzy
 msgid "execute"
 msgstr "예상치 못한 데이터"
@@ -4728,7 +4792,7 @@
 msgstr "암호화 되어 있지 않은 스트림을 통한 문자열은 인증이 필요합니다."
 
 #: ../libpurple/protocols/jabber/auth.c:319
-#: ../libpurple/protocols/jabber/auth.c:508
+#: ../libpurple/protocols/jabber/auth.c:510
 #, fuzzy, c-format
 msgid ""
 "%s requires plaintext authentication over an unencrypted connection.  Allow "
@@ -4739,31 +4803,31 @@
 
 #: ../libpurple/protocols/jabber/auth.c:321
 #: ../libpurple/protocols/jabber/auth.c:322
-#: ../libpurple/protocols/jabber/auth.c:510
-#: ../libpurple/protocols/jabber/auth.c:511
-#: ../libpurple/protocols/jabber/auth.c:598
-#: ../libpurple/protocols/jabber/auth.c:599
+#: ../libpurple/protocols/jabber/auth.c:512
+#: ../libpurple/protocols/jabber/auth.c:513
+#: ../libpurple/protocols/jabber/auth.c:610
+#: ../libpurple/protocols/jabber/auth.c:611
 msgid "Plaintext Authentication"
 msgstr "문자열 인증"
 
 #: ../libpurple/protocols/jabber/auth.c:334
-#: ../libpurple/protocols/jabber/auth.c:523
-#: ../libpurple/protocols/jabber/auth.c:610
+#: ../libpurple/protocols/jabber/auth.c:535
+#: ../libpurple/protocols/jabber/auth.c:622
 msgid "Server does not use any supported authentication method"
 msgstr "서버는 지원하고 있는 인증 방식을 이용하지 않습니다."
 
 #. This should never happen!
 #: ../libpurple/protocols/jabber/auth.c:462
-#: ../libpurple/protocols/jabber/auth.c:561
-#: ../libpurple/protocols/jabber/auth.c:776
-#: ../libpurple/protocols/jabber/auth.c:917
-#: ../libpurple/protocols/jabber/auth.c:942
-#: ../libpurple/protocols/jabber/auth.c:961
+#: ../libpurple/protocols/jabber/auth.c:573
+#: ../libpurple/protocols/jabber/auth.c:788
+#: ../libpurple/protocols/jabber/auth.c:929
+#: ../libpurple/protocols/jabber/auth.c:954
+#: ../libpurple/protocols/jabber/auth.c:973
 #: ../libpurple/protocols/jabber/jabber.c:123
 msgid "Invalid response from server."
 msgstr "서버로부터의 응답이 잘못되었습니다."
 
-#: ../libpurple/protocols/jabber/auth.c:600
+#: ../libpurple/protocols/jabber/auth.c:612
 msgid ""
 "This server requires plaintext authentication over an unencrypted "
 "connection.  Allow this and continue authentication?"
@@ -4771,12 +4835,12 @@
 "서버가 암호화 되어 있지 않은 스트림을 통한 문자열 인증을 요구하고 있습니다. "
 "이를 허가하고 인증을 계속 하시겠습니까?"
 
-#: ../libpurple/protocols/jabber/auth.c:797
-#: ../libpurple/protocols/jabber/auth.c:820
+#: ../libpurple/protocols/jabber/auth.c:809
+#: ../libpurple/protocols/jabber/auth.c:832
 msgid "Invalid challenge from server"
 msgstr "서버로부터의 잘못된 challenge 입니다."
 
-#: ../libpurple/protocols/jabber/auth.c:892
+#: ../libpurple/protocols/jabber/auth.c:904
 msgid "SASL error"
 msgstr "SASL 오류"
 
@@ -4860,15 +4924,15 @@
 
 #: ../libpurple/protocols/jabber/buddy.c:300
 #: ../libpurple/protocols/jabber/buddy.c:1250
-#: ../libpurple/protocols/msn/msn.c:1658
-#: ../libpurple/protocols/oscar/oscar.c:3749
+#: ../libpurple/protocols/msn/msn.c:1762
+#: ../libpurple/protocols/oscar/oscar.c:3764
 msgid "Birthday"
 msgstr "생일"
 
 #: ../libpurple/protocols/jabber/buddy.c:301
 #: ../libpurple/protocols/jabber/buddy.c:1365
 #: ../libpurple/protocols/jabber/chat.c:775
-#: ../libpurple/protocols/jabber/usermood.c:175 ../pidgin/gtkblist.c:3116
+#: ../libpurple/protocols/jabber/usermood.c:193 ../pidgin/gtkblist.c:3314
 #: ../pidgin/gtkprefs.c:739
 msgid "Description"
 msgstr "설명"
@@ -5181,7 +5245,7 @@
 
 #: ../libpurple/protocols/jabber/buddy.c:921
 #: ../libpurple/protocols/jabber/buddy.c:1081
-#: ../libpurple/protocols/oscar/oscar.c:2906
+#: ../libpurple/protocols/oscar/oscar.c:2921
 msgid "Capabilities"
 msgstr "기능"
 
@@ -5208,8 +5272,8 @@
 
 #: ../libpurple/protocols/jabber/buddy.c:1270
 #: ../libpurple/protocols/jabber/jabber.c:952
-#: ../libpurple/protocols/oscar/oscar.c:3788
-#: ../libpurple/protocols/oscar/oscar.c:3801
+#: ../libpurple/protocols/oscar/oscar.c:3803
+#: ../libpurple/protocols/oscar/oscar.c:3816
 #: ../libpurple/protocols/qq/buddy_info.c:56
 #: ../libpurple/protocols/silc/ops.c:1030
 #: ../libpurple/protocols/silc10/ops.c:1064
@@ -5228,74 +5292,74 @@
 msgid "Logo"
 msgstr "로고"
 
-#: ../libpurple/protocols/jabber/buddy.c:1942
+#: ../libpurple/protocols/jabber/buddy.c:1945
 msgid "Un-hide From"
 msgstr "이곳부터 보이기"
 
-#: ../libpurple/protocols/jabber/buddy.c:1946
+#: ../libpurple/protocols/jabber/buddy.c:1949
 msgid "Temporarily Hide From"
 msgstr "일반적으로 이곳부터 숨김"
 
 #. && NOT ME
-#: ../libpurple/protocols/jabber/buddy.c:1954
+#: ../libpurple/protocols/jabber/buddy.c:1957
 msgid "Cancel Presence Notification"
 msgstr "존재 알림을 멈춤"
 
-#: ../libpurple/protocols/jabber/buddy.c:1961
+#: ../libpurple/protocols/jabber/buddy.c:1964
 msgid "(Re-)Request authorization"
 msgstr "인증 재요구"
 
 #. if(NOT ME)
 #. shouldn't this just happen automatically when the buddy is
 #. removed?
-#: ../libpurple/protocols/jabber/buddy.c:1970
+#: ../libpurple/protocols/jabber/buddy.c:1973
 msgid "Unsubscribe"
 msgstr "구독 취소"
 
-#: ../libpurple/protocols/jabber/buddy.c:1985
+#: ../libpurple/protocols/jabber/buddy.c:1988
 #, fuzzy
 msgid "Log In"
 msgstr "접속 시간"
 
-#: ../libpurple/protocols/jabber/buddy.c:1989
+#: ../libpurple/protocols/jabber/buddy.c:1992
 #, fuzzy
 msgid "Log Out"
 msgstr "대화를 로그에 기록"
 
-#: ../libpurple/protocols/jabber/buddy.c:2035
+#: ../libpurple/protocols/jabber/buddy.c:2038
 #: ../libpurple/protocols/jabber/jabber.c:1553
 msgid "Chatty"
 msgstr "Chatty"
 
-#: ../libpurple/protocols/jabber/buddy.c:2039
+#: ../libpurple/protocols/jabber/buddy.c:2042
 msgid "Extended Away"
-msgstr "멀리 자리 비움"
-
-#: ../libpurple/protocols/jabber/buddy.c:2041
+msgstr "장기 자리 비움"
+
+#: ../libpurple/protocols/jabber/buddy.c:2044
 #: ../libpurple/protocols/jabber/jabber.c:1622
 #: ../libpurple/protocols/oscar/oscar.c:727
-#: ../libpurple/protocols/oscar/oscar.c:5808
+#: ../libpurple/protocols/oscar/oscar.c:5862
 #: ../libpurple/protocols/sametime/sametime.c:3297
 #, c-format
 msgid "Do Not Disturb"
-msgstr "방해하지 말아 주세요."
-
-#: ../libpurple/protocols/jabber/buddy.c:2208
+msgstr "다른 용무 중"
+
+#: ../libpurple/protocols/jabber/buddy.c:2211
 msgid "JID"
 msgstr "JID"
 
-#: ../libpurple/protocols/jabber/buddy.c:2212
-#: ../libpurple/protocols/jabber/buddy.c:2391
-#: ../libpurple/protocols/oscar/oscar.c:3711
+#: ../libpurple/protocols/jabber/buddy.c:2215
+#: ../libpurple/protocols/jabber/buddy.c:2394
+#: ../libpurple/protocols/oscar/oscar.c:3726
 msgid "Last Name"
 msgstr "성"
 
-#: ../libpurple/protocols/jabber/buddy.c:2244
+#: ../libpurple/protocols/jabber/buddy.c:2247
 msgid "The following are the results of your search"
 msgstr "검색 결과입니다."
 
 #. current comment from Jabber User Directory users.jabber.org
-#: ../libpurple/protocols/jabber/buddy.c:2319
+#: ../libpurple/protocols/jabber/buddy.c:2322
 msgid ""
 "Find a contact by entering the search criteria in the given fields. Note: "
 "Each field supports wild card searches (%)"
@@ -5303,41 +5367,41 @@
 "지정한 항목에 대한 검색 조건을 입력하여 연락처를 검색합니다. 주: 각 항목은 와"
 "일드카드를 사용한 검색(%)을 지원합니다."
 
-#: ../libpurple/protocols/jabber/buddy.c:2339
+#: ../libpurple/protocols/jabber/buddy.c:2342
 msgid "Directory Query Failed"
 msgstr "디렉토리 검색에 실패했습니다."
 
-#: ../libpurple/protocols/jabber/buddy.c:2340
+#: ../libpurple/protocols/jabber/buddy.c:2343
 msgid "Could not query the directory server."
 msgstr "디렉토리 서버를 검색하지 못했습니다."
 
 #. Try to translate the message (see static message
 #. list in jabber_user_dir_comments[])
-#: ../libpurple/protocols/jabber/buddy.c:2374
+#: ../libpurple/protocols/jabber/buddy.c:2377
 #, c-format
 msgid "Server Instructions: %s"
 msgstr "서버 정보: %s"
 
-#: ../libpurple/protocols/jabber/buddy.c:2381
+#: ../libpurple/protocols/jabber/buddy.c:2384
 #, fuzzy
 msgid "Fill in one or more fields to search for any matching XMPP users."
 msgstr "Jabber 사용자를 검색하려면 하나 이상의 빈 칸을 입력하십시오."
 
-#: ../libpurple/protocols/jabber/buddy.c:2401
-#: ../libpurple/protocols/novell/novell.c:1488
-#: ../libpurple/protocols/oscar/oscar.c:3714
-#: ../libpurple/protocols/oscar/oscar.c:3723
+#: ../libpurple/protocols/jabber/buddy.c:2404
+#: ../libpurple/protocols/novell/novell.c:1490
+#: ../libpurple/protocols/oscar/oscar.c:3729
+#: ../libpurple/protocols/oscar/oscar.c:3738
 msgid "E-Mail Address"
 msgstr "이메일 주소"
 
-#: ../libpurple/protocols/jabber/buddy.c:2410
-#: ../libpurple/protocols/jabber/buddy.c:2411
+#: ../libpurple/protocols/jabber/buddy.c:2413
+#: ../libpurple/protocols/jabber/buddy.c:2414
 #, fuzzy
 msgid "Search for XMPP users"
 msgstr "사용자 검색"
 
 #. "Search"
-#: ../libpurple/protocols/jabber/buddy.c:2412
+#: ../libpurple/protocols/jabber/buddy.c:2415
 #: ../libpurple/protocols/qq/group.c:123
 #: ../libpurple/protocols/qq/group_im.c:147
 #: ../libpurple/protocols/qq/sys_msg.c:174
@@ -5349,24 +5413,24 @@
 msgid "Search"
 msgstr "검색"
 
-#: ../libpurple/protocols/jabber/buddy.c:2427
+#: ../libpurple/protocols/jabber/buddy.c:2430
 msgid "Invalid Directory"
 msgstr "디렉토리가 잘못되었습니다."
 
-#: ../libpurple/protocols/jabber/buddy.c:2444
+#: ../libpurple/protocols/jabber/buddy.c:2447
 msgid "Enter a User Directory"
 msgstr "사용자 디렉토리를 입력해 주십시오."
 
-#: ../libpurple/protocols/jabber/buddy.c:2445
+#: ../libpurple/protocols/jabber/buddy.c:2448
 msgid "Select a user directory to search"
 msgstr "검색할 사용자 디렉토리 선택"
 
-#: ../libpurple/protocols/jabber/buddy.c:2448
+#: ../libpurple/protocols/jabber/buddy.c:2451
 msgid "Search Directory"
 msgstr "검색할 디렉토리"
 
 #: ../libpurple/protocols/jabber/chat.c:41
-#: ../libpurple/protocols/oscar/oscar.c:5294
+#: ../libpurple/protocols/oscar/oscar.c:5346
 #: ../libpurple/protocols/yahoo/yahoochat.c:1048
 msgid "_Room:"
 msgstr "대화실(_R):"
@@ -5477,9 +5541,9 @@
 msgstr "읽기 오류"
 
 #: ../libpurple/protocols/jabber/jabber.c:482
-#: ../libpurple/protocols/oscar/flap_connection.c:394
-#: ../libpurple/protocols/yahoo/yahoo.c:2558
-#: ../libpurple/protocols/yahoo/yahoo.c:2590
+#: ../libpurple/protocols/oscar/flap_connection.c:396
+#: ../libpurple/protocols/yahoo/yahoo.c:2560
+#: ../libpurple/protocols/yahoo/yahoo.c:2592
 #, c-format
 msgid ""
 "Could not establish a connection with the server:\n"
@@ -5545,8 +5609,8 @@
 msgstr "이미 등록되어 있습니다."
 
 #: ../libpurple/protocols/jabber/jabber.c:962
-#: ../libpurple/protocols/oscar/oscar.c:3790
-#: ../libpurple/protocols/oscar/oscar.c:3803
+#: ../libpurple/protocols/oscar/oscar.c:3805
+#: ../libpurple/protocols/oscar/oscar.c:3818
 msgid "State"
 msgstr "주"
 
@@ -5631,7 +5695,7 @@
 msgstr "스트림 초기화 중"
 
 #: ../libpurple/protocols/jabber/jabber.c:1293
-#: ../libpurple/protocols/msn/session.c:351
+#: ../libpurple/protocols/msn/session.c:392
 msgid "Authenticating"
 msgstr "인증 중"
 
@@ -5644,7 +5708,7 @@
 #: ../libpurple/protocols/jabber/jabber.c:1909
 #: ../libpurple/protocols/jabber/jabber.c:1945
 #: ../libpurple/protocols/oscar/oscar.c:826
-#: ../libpurple/protocols/oscar/oscar.c:5602
+#: ../libpurple/protocols/oscar/oscar.c:5656
 msgid "Not Authorized"
 msgstr "인증되어 있지 않습니다."
 
@@ -5685,7 +5749,7 @@
 #: ../libpurple/protocols/jabber/jabber.c:1579
 #: ../libpurple/protocols/jabber/jabber.c:1602
 #: ../libpurple/protocols/jabber/jabber.c:1625
-#: ../libpurple/protocols/jabber/usermood.c:166
+#: ../libpurple/protocols/jabber/usermood.c:184
 #: ../libpurple/protocols/silc/buddy.c:1557
 #: ../libpurple/protocols/silc/ops.c:1212
 #: ../libpurple/protocols/silc10/buddy.c:1557
@@ -5813,7 +5877,7 @@
 msgstr "새 비밀번호를 입력해 주십시오."
 
 #: ../libpurple/protocols/jabber/jabber.c:1749
-#: ../libpurple/protocols/oscar/oscar.c:6388
+#: ../libpurple/protocols/oscar/oscar.c:6442
 #: ../libpurple/protocols/silc/silc.c:1093
 #: ../libpurple/protocols/silc10/silc.c:1004
 msgid "Set User Info..."
@@ -5821,7 +5885,7 @@
 
 #. if (js->protocol_options & CHANGE_PASSWORD) {
 #: ../libpurple/protocols/jabber/jabber.c:1754
-#: ../libpurple/protocols/oscar/oscar.c:6399
+#: ../libpurple/protocols/oscar/oscar.c:6453
 #: ../libpurple/protocols/silc/silc.c:1089
 #: ../libpurple/protocols/silc10/silc.c:1000
 msgid "Change Password..."
@@ -6067,48 +6131,67 @@
 msgid "Unable to ping user %s"
 msgstr "사용자 %s 님을 차단할 수 없습니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2207
-#: ../libpurple/protocols/jabber/jabber.c:2217
+#: ../libpurple/protocols/jabber/jabber.c:2203
+#: ../libpurple/protocols/jabber/jabber.c:2214
 #, c-format
 msgid "Unable to buzz, because there is nothing known about user %s."
 msgstr ""
 
-#: ../libpurple/protocols/jabber/jabber.c:2213
+#: ../libpurple/protocols/jabber/jabber.c:2209
 #, c-format
 msgid "Unable to buzz, because user %s might be offline."
 msgstr ""
 
-#: ../libpurple/protocols/jabber/jabber.c:2239
+#: ../libpurple/protocols/jabber/jabber.c:2240
 #, fuzzy, c-format
 msgid "Unable to buzz, because the user %s does not support it."
 msgstr ""
 "%s 님에게 파일을 전송하지 못했습니다. 사용자는 파일 전송을 지원하지 않습니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2253
+#: ../libpurple/protocols/jabber/jabber.c:2262
+#: ../libpurple/protocols/yahoo/yahoo.c:4121
+#, fuzzy
+msgid "Buzz"
+msgstr "버저!!"
+
+#: ../libpurple/protocols/jabber/jabber.c:2263
+#: ../libpurple/protocols/jabber/message.c:307
+#: ../libpurple/protocols/yahoo/yahoo.c:4122
+#, fuzzy, c-format
+msgid "%s has buzzed you!"
+msgstr "%s 님이 나 [%s] 을(를) 추가했습니다."
+
+#: ../libpurple/protocols/jabber/jabber.c:2264
+#: ../libpurple/protocols/yahoo/yahoo.c:4123
+#, c-format
+msgid "Buzzing %s..."
+msgstr ""
+
+#: ../libpurple/protocols/jabber/jabber.c:2296
 msgid "config:  Configure a chat room."
 msgstr "config:  대화실을 설정합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2257
+#: ../libpurple/protocols/jabber/jabber.c:2300
 msgid "configure:  Configure a chat room."
 msgstr "configure:  대화실을 설정합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2266
+#: ../libpurple/protocols/jabber/jabber.c:2309
 msgid "part [room]:  Leave the room."
 msgstr "part [대화실]:  대화실로부터 나갑니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2271
+#: ../libpurple/protocols/jabber/jabber.c:2314
 msgid "register:  Register with a chat room."
 msgstr "register:  대화실을 등록합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2277
+#: ../libpurple/protocols/jabber/jabber.c:2320
 msgid "topic [new topic]:  View or change the topic."
 msgstr "topic [새 주제]:  주제를 표시 또는 변경합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2283
+#: ../libpurple/protocols/jabber/jabber.c:2326
 msgid "ban &lt;user&gt; [room]:  Ban a user from the room."
 msgstr "ban &lt;사용자&gt; [대화실]:  지정한 대화실로부터 사용자를 차단합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2289
+#: ../libpurple/protocols/jabber/jabber.c:2332
 msgid ""
 "affiliate &lt;user&gt; &lt;owner|admin|member|outcast|none&gt;: Set a user's "
 "affiliation with the room."
@@ -6116,7 +6199,7 @@
 "affiliate &lt;사용자&gt; &lt;owner|admin|member|outcast|none&gt;: 사용자 관계"
 "를 설정합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2295
+#: ../libpurple/protocols/jabber/jabber.c:2338
 msgid ""
 "role &lt;user&gt; &lt;moderator|participant|visitor|none&gt;: Set a user's "
 "role in the room."
@@ -6124,31 +6207,31 @@
 "role &lt;사용자&gt; &lt;moderator|participant|visitor|none&gt;: 대화실에서 역"
 "할을 설정합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2301
+#: ../libpurple/protocols/jabber/jabber.c:2344
 msgid "invite &lt;user&gt; [message]:  Invite a user to the room."
 msgstr "invite &lt;사용자&gt; [메시지]:  사용자를 대화실로 초대합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2307
+#: ../libpurple/protocols/jabber/jabber.c:2350
 msgid "join: &lt;room&gt; [server]:  Join a chat on this server."
 msgstr "join: &lt;대화실&gt; [서버]:  지정한 서버의 대화에 참가합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2313
+#: ../libpurple/protocols/jabber/jabber.c:2356
 msgid "kick &lt;user&gt; [room]:  Kick a user from the room."
 msgstr "kick &lt;사용자&gt; [대화실]:  지정한 서버를 대화실로부터 차단합니다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2318
+#: ../libpurple/protocols/jabber/jabber.c:2361
 msgid ""
 "msg &lt;user&gt; &lt;message&gt;:  Send a private message to another user."
 msgstr ""
 "msg &lt;사용자&gt; &lt;메시지&gt;:  다른 사용자에게 개인적인 메시지를 보냅니"
 "다."
 
-#: ../libpurple/protocols/jabber/jabber.c:2324
+#: ../libpurple/protocols/jabber/jabber.c:2367
 msgid "ping &lt;jid&gt;:\tPing a user/component/server."
 msgstr ""
 
-#: ../libpurple/protocols/jabber/jabber.c:2329
-#: ../libpurple/protocols/yahoo/yahoo.c:4145
+#: ../libpurple/protocols/jabber/jabber.c:2372
+#: ../libpurple/protocols/yahoo/yahoo.c:4147
 msgid "buzz: Buzz a user to get their attention"
 msgstr "buzz: 사용자에게 부저음 울림"
 
@@ -6187,8 +6270,8 @@
 msgstr "암호화 되어 있지 않은 스트림을 통한 문자열 인증 허가"
 
 #: ../libpurple/protocols/jabber/libxmpp.c:224
-#: ../libpurple/protocols/myspace/myspace.c:3277
-#: ../libpurple/protocols/simple/simple.c:1902
+#: ../libpurple/protocols/myspace/myspace.c:3279
+#: ../libpurple/protocols/simple/simple.c:1925
 msgid "Connect port"
 msgstr "접속할 포트 번호"
 
@@ -6196,7 +6279,7 @@
 #. * able to set the first port to try (like LastConnectedPort in Windows client).
 #. Account options
 #: ../libpurple/protocols/jabber/libxmpp.c:228
-#: ../libpurple/protocols/myspace/myspace.c:3274
+#: ../libpurple/protocols/myspace/myspace.c:3276
 #: ../libpurple/protocols/silc/silc.c:1914
 #: ../libpurple/protocols/silc10/silc.c:1857 ../pidgin/gtkaccount.c:837
 msgid "Connect server"
@@ -6232,12 +6315,6 @@
 msgid "XMPP Message Error"
 msgstr "Jabber 메시지 오류"
 
-#: ../libpurple/protocols/jabber/message.c:307
-#: ../libpurple/protocols/yahoo/yahoo.c:4120
-#, fuzzy, c-format
-msgid "%s has buzzed you!"
-msgstr "%s 님이 나 [%s] 을(를) 추가했습니다."
-
 #: ../libpurple/protocols/jabber/message.c:407
 #, c-format
 msgid " (Code %s)"
@@ -6247,16 +6324,16 @@
 msgid "XML Parse error"
 msgstr "XML 해석 오류"
 
-#: ../libpurple/protocols/jabber/presence.c:427
+#: ../libpurple/protocols/jabber/presence.c:423
 msgid "Unknown Error in presence"
 msgstr "알 수 없는 오류가 발생했습니다."
 
-#: ../libpurple/protocols/jabber/presence.c:508
-#: ../libpurple/protocols/jabber/presence.c:509
+#: ../libpurple/protocols/jabber/presence.c:504
+#: ../libpurple/protocols/jabber/presence.c:505
 msgid "Create New Room"
 msgstr "새 대화실 만들기"
 
-#: ../libpurple/protocols/jabber/presence.c:510
+#: ../libpurple/protocols/jabber/presence.c:506
 msgid ""
 "You are creating a new room.  Would you like to configure it, or accept the "
 "default settings?"
@@ -6264,20 +6341,20 @@
 "새 대화실을 생성합니다. 대화실을 설정하시겠습니까? 아니면 기본값을 적용하시겠"
 "습니까?"
 
-#: ../libpurple/protocols/jabber/presence.c:516
+#: ../libpurple/protocols/jabber/presence.c:512
 msgid "_Configure Room"
 msgstr "대화실 설정(_C)"
 
-#: ../libpurple/protocols/jabber/presence.c:517
+#: ../libpurple/protocols/jabber/presence.c:513
 msgid "_Accept Defaults"
 msgstr "기본값 적용(_A)"
 
-#: ../libpurple/protocols/jabber/presence.c:559
+#: ../libpurple/protocols/jabber/presence.c:555
 #, c-format
 msgid "Error in chat %s"
 msgstr "대화 %s 에서 오류"
 
-#: ../libpurple/protocols/jabber/presence.c:563
+#: ../libpurple/protocols/jabber/presence.c:559
 #, c-format
 msgid "Error joining chat %s"
 msgstr "대화 %s 에 참가하는 중 오류"
@@ -6321,23 +6398,23 @@
 msgid "Select a Resource"
 msgstr "파일 선택"
 
-#: ../libpurple/protocols/jabber/usermood.c:179
-#: ../libpurple/protocols/jabber/usermood.c:180
+#: ../libpurple/protocols/jabber/usermood.c:197
+#: ../libpurple/protocols/jabber/usermood.c:198
 #, fuzzy
 msgid "Edit User Mood"
 msgstr "사용자 모드"
 
-#: ../libpurple/protocols/jabber/usermood.c:181
+#: ../libpurple/protocols/jabber/usermood.c:199
 msgid "Please select your mood from the list."
 msgstr ""
 
-#: ../libpurple/protocols/jabber/usermood.c:183
+#: ../libpurple/protocols/jabber/usermood.c:201
 #: ../libpurple/protocols/jabber/usernick.c:78
 #, fuzzy
 msgid "Set"
 msgstr "설정(_S)"
 
-#: ../libpurple/protocols/jabber/usermood.c:191
+#: ../libpurple/protocols/jabber/usermood.c:209
 #, fuzzy
 msgid "Set Mood..."
 msgstr "메시지 보내기..."
@@ -6358,7 +6435,7 @@
 "something appropriate."
 msgstr ""
 
-#: ../libpurple/protocols/jabber/usernick.c:99
+#: ../libpurple/protocols/jabber/usernick.c:100
 #, fuzzy
 msgid "Set Nickname..."
 msgstr "별명"
@@ -6373,12 +6450,22 @@
 msgid "Select an action"
 msgstr "파일 선택"
 
-#: ../libpurple/protocols/msn/dialog.c:110
+#: ../libpurple/protocols/msn/contact.c:188
+#, fuzzy
+msgid "Unable to connect to contact server"
+msgstr "서버에 접속할 수 없습니다."
+
+#: ../libpurple/protocols/msn/contact.c:948
+#, fuzzy
+msgid "Unable to retrieve MSN Address Book"
+msgstr "Notes 주소록 선택"
+
+#: ../libpurple/protocols/msn/dialog.c:118
 #, c-format
 msgid "Buddy list synchronization issue in %s (%s)"
 msgstr "%s (%s) 에서 친구 목록의 동기가 발생했습니다."
 
-#: ../libpurple/protocols/msn/dialog.c:116
+#: ../libpurple/protocols/msn/dialog.c:124
 #, c-format
 msgid ""
 "%s on the local list is inside the group \"%s\" but not on the server list. "
@@ -6388,7 +6475,7 @@
 "상의 목록에서는 그렇게 되어 있지 않습니다. 서버 상의 목록에 그 친구를 추가하"
 "시겠습니까?"
 
-#: ../libpurple/protocols/msn/dialog.c:124
+#: ../libpurple/protocols/msn/dialog.c:132
 #, c-format
 msgid ""
 "%s is on the local list but not on the server list. Do you want this buddy "
@@ -6403,9 +6490,9 @@
 msgstr "메시지를 해독할 수 없습니다."
 
 #: ../libpurple/protocols/msn/error.c:41
-#, fuzzy, c-format
+#, c-format
 msgid "Syntax Error (probably a client bug)"
-msgstr "문법 오류 (아마도 Pidgin의 버그일 수 있습니다.)"
+msgstr "문법 오류 (아마 클라이언트의 버그일 수 있습니다.)"
 
 #: ../libpurple/protocols/msn/error.c:46
 #, c-format
@@ -6637,10 +6724,10 @@
 msgstr "서버가 너무 바쁩니다."
 
 #: ../libpurple/protocols/msn/error.c:222
-#: ../libpurple/protocols/oscar/oscar.c:1380
+#: ../libpurple/protocols/oscar/oscar.c:1383
 #: ../libpurple/protocols/silc/silc.c:233
 #: ../libpurple/protocols/silc10/ops.c:1709
-#: ../libpurple/protocols/toc/toc.c:728 ../libpurple/proxy.c:1380
+#: ../libpurple/protocols/toc/toc.c:728 ../libpurple/proxy.c:1390
 #, c-format
 msgid "Authentication failed"
 msgstr "인증에 실패했습니다."
@@ -6698,31 +6785,31 @@
 msgid "Your new MSN friendly name is too long."
 msgstr "새 MSN 의 공개명이 너무 깁니다."
 
-#: ../libpurple/protocols/msn/msn.c:282
+#: ../libpurple/protocols/msn/msn.c:285
 msgid "Set your friendly name."
 msgstr "공개명을 설정해 주십시오."
 
-#: ../libpurple/protocols/msn/msn.c:283
+#: ../libpurple/protocols/msn/msn.c:286
 msgid "This is the name that other MSN buddies will see you as."
 msgstr "MSN 의 다른 친구가 나를 볼 때 표시되는 이름입니다."
 
-#: ../libpurple/protocols/msn/msn.c:301
+#: ../libpurple/protocols/msn/msn.c:304
 msgid "Set your home phone number."
 msgstr "자택 전화번호를 설정해 주십시오."
 
-#: ../libpurple/protocols/msn/msn.c:318
+#: ../libpurple/protocols/msn/msn.c:321
 msgid "Set your work phone number."
 msgstr "직장 전화번호를 설정해 주십시오."
 
-#: ../libpurple/protocols/msn/msn.c:335
+#: ../libpurple/protocols/msn/msn.c:338
 msgid "Set your mobile phone number."
 msgstr "휴대 전화번호를 설정해 주십시오."
 
-#: ../libpurple/protocols/msn/msn.c:350
+#: ../libpurple/protocols/msn/msn.c:353
 msgid "Allow MSN Mobile pages?"
 msgstr "MSN 모바일 호출을 허가하시겠습니까?"
 
-#: ../libpurple/protocols/msn/msn.c:351
+#: ../libpurple/protocols/msn/msn.c:354
 msgid ""
 "Do you want to allow or disallow people on your buddy list to send you MSN "
 "Mobile pages to your cell phone or other mobile device?"
@@ -6730,324 +6817,326 @@
 "친구가 휴대 전화 등의 휴대용 기기에 MSN 모바일 호출을 전송하는 것을 허가하시"
 "겠습니까?"
 
-#: ../libpurple/protocols/msn/msn.c:357
+#: ../libpurple/protocols/msn/msn.c:360
 msgid "Allow"
 msgstr "허가"
 
-#: ../libpurple/protocols/msn/msn.c:358
+#: ../libpurple/protocols/msn/msn.c:361
 msgid "Disallow"
 msgstr "허가하지 않음"
 
-#: ../libpurple/protocols/msn/msn.c:374
+#: ../libpurple/protocols/msn/msn.c:377
 msgid "This Hotmail account may not be active."
 msgstr "이 Hotmail 계정은 사용 불가능한 것 같습니다."
 
-#: ../libpurple/protocols/msn/msn.c:400
+#: ../libpurple/protocols/msn/msn.c:403
 msgid "Send a mobile message."
 msgstr "모바일 메시지를 전송합니다."
 
-#: ../libpurple/protocols/msn/msn.c:402
+#: ../libpurple/protocols/msn/msn.c:405
 msgid "Page"
 msgstr "호출"
 
-#: ../libpurple/protocols/msn/msn.c:549
-msgid "Has you"
-msgstr "내가 등록됨"
-
-#: ../libpurple/protocols/msn/msn.c:579 ../libpurple/protocols/msn/state.c:33
-#: ../libpurple/protocols/yahoo/yahoo.c:3077
-#: ../libpurple/protocols/yahoo/yahoo.c:3761
+#: ../libpurple/protocols/msn/msn.c:610 ../libpurple/protocols/msn/msn.c:635
+#: ../libpurple/protocols/msn/msn.c:642 ../libpurple/protocols/msn/msn.c:649
+#: ../libpurple/protocols/msn/msn.c:656 ../libpurple/protocols/msn/msn.c:662
+#: ../libpurple/protocols/msn/msn.c:668
+#, fuzzy
+msgid "Current media"
+msgstr "현재의 토큰"
+
+#: ../libpurple/protocols/msn/msn.c:647 ../libpurple/protocols/msn/state.c:33
+#: ../libpurple/protocols/yahoo/yahoo.c:3079
+#: ../libpurple/protocols/yahoo/yahoo.c:3763
 msgid "Be Right Back"
 msgstr "곧 돌아옵니다."
 
-#: ../libpurple/protocols/msn/msn.c:583 ../libpurple/protocols/msn/state.c:31
-#: ../libpurple/protocols/novell/novell.c:2822
-#: ../libpurple/protocols/novell/novell.c:2952
+#: ../libpurple/protocols/msn/msn.c:654 ../libpurple/protocols/msn/state.c:31
+#: ../libpurple/protocols/novell/novell.c:2827
+#: ../libpurple/protocols/novell/novell.c:2957
 #: ../libpurple/protocols/silc/buddy.c:1480
 #: ../libpurple/protocols/silc/silc.c:56
 #: ../libpurple/protocols/silc10/buddy.c:1480
 #: ../libpurple/protocols/silc10/silc.c:47
-#: ../libpurple/protocols/yahoo/yahoo.c:3079
-#: ../libpurple/protocols/yahoo/yahoo.c:3764
+#: ../libpurple/protocols/yahoo/yahoo.c:3081
+#: ../libpurple/protocols/yahoo/yahoo.c:3766
 msgid "Busy"
 msgstr "다른 용무 중입니다."
 
-#: ../libpurple/protocols/msn/msn.c:587
-#: ../libpurple/protocols/yahoo/yahoo.c:3087
-#: ../libpurple/protocols/yahoo/yahoo.c:3776
+#: ../libpurple/protocols/msn/msn.c:660
+#: ../libpurple/protocols/yahoo/yahoo.c:3089
+#: ../libpurple/protocols/yahoo/yahoo.c:3778
 msgid "On the Phone"
 msgstr "전화 중입니다."
 
-#: ../libpurple/protocols/msn/msn.c:591
-#: ../libpurple/protocols/yahoo/yahoo.c:3091
-#: ../libpurple/protocols/yahoo/yahoo.c:3782
+#: ../libpurple/protocols/msn/msn.c:666
+#: ../libpurple/protocols/yahoo/yahoo.c:3093
+#: ../libpurple/protocols/yahoo/yahoo.c:3784
 msgid "Out to Lunch"
 msgstr "점심 식사 중입니다."
 
-#: ../libpurple/protocols/msn/msn.c:619
+#: ../libpurple/protocols/msn/msn.c:697
 msgid "Set Friendly Name..."
 msgstr "공개명 설정..."
 
-#: ../libpurple/protocols/msn/msn.c:624
+#: ../libpurple/protocols/msn/msn.c:702
 msgid "Set Home Phone Number..."
 msgstr "자택 전화번호 설정..."
 
-#: ../libpurple/protocols/msn/msn.c:628
+#: ../libpurple/protocols/msn/msn.c:706
 msgid "Set Work Phone Number..."
 msgstr "직장 전화번호 설정..."
 
-#: ../libpurple/protocols/msn/msn.c:632
+#: ../libpurple/protocols/msn/msn.c:710
 msgid "Set Mobile Phone Number..."
 msgstr "휴대 전화번호 설정..."
 
-#: ../libpurple/protocols/msn/msn.c:638
+#: ../libpurple/protocols/msn/msn.c:716
 msgid "Enable/Disable Mobile Devices..."
 msgstr "휴대용 기기 사용/사용 안 함..."
 
-#: ../libpurple/protocols/msn/msn.c:643
+#: ../libpurple/protocols/msn/msn.c:721
 msgid "Allow/Disallow Mobile Pages..."
 msgstr "무선 호출 허가/허가 안 함..."
 
-#: ../libpurple/protocols/msn/msn.c:654
+#: ../libpurple/protocols/msn/msn.c:732
 msgid "Open Hotmail Inbox"
 msgstr "Hotmail의 받은 편지함 열기"
 
-#: ../libpurple/protocols/msn/msn.c:678
+#: ../libpurple/protocols/msn/msn.c:756
 msgid "Send to Mobile"
 msgstr "휴대용 기기에 전송"
 
-#: ../libpurple/protocols/msn/msn.c:688
-#: ../libpurple/protocols/novell/novell.c:3408
+#: ../libpurple/protocols/msn/msn.c:766
+#: ../libpurple/protocols/novell/novell.c:3413
 msgid "Initiate _Chat"
 msgstr "대화 시작(_C)"
 
-#: ../libpurple/protocols/msn/msn.c:726
-#, fuzzy
+#: ../libpurple/protocols/msn/msn.c:804
 msgid "SSL support is needed for MSN. Please install a supported SSL library."
 msgstr ""
-"MSN 에서는 SSL 지원이 필요합니다. 지원하는 SSL 라이브러리를 설치해 주십시오. "
-"자세한 정보는 http://pidgin.sf.net/faq-ssl.php 를 참조해 주십시오."
-
-#: ../libpurple/protocols/msn/msn.c:754
+"MSN 에서는 SSL 지원이 필요합니다. 지원하는 SSL 라이브러리를 설치해 주십시오."
+
+#: ../libpurple/protocols/msn/msn.c:832
 msgid "Failed to connect to server."
 msgstr "서버 접속에 실패했습니다."
 
-#: ../libpurple/protocols/msn/msn.c:1510 ../libpurple/protocols/msn/msn.c:1858
+#: ../libpurple/protocols/msn/msn.c:1619 ../libpurple/protocols/msn/msn.c:1962
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:808
 msgid "Error retrieving profile"
 msgstr "프로파일을 가져오는 중 오류"
 
-#: ../libpurple/protocols/msn/msn.c:1581 ../pidgin/plugins/convcolors.c:309
-#: ../pidgin/plugins/pidginrc.c:366
+#: ../libpurple/protocols/msn/msn.c:1685 ../pidgin/plugins/convcolors.c:309
+#: ../pidgin/plugins/pidginrc.c:360
 msgid "General"
 msgstr "일반"
 
-#: ../libpurple/protocols/msn/msn.c:1588
-#: ../libpurple/protocols/myspace/user.c:110
-#: ../libpurple/protocols/oscar/oscar.c:3755
+#: ../libpurple/protocols/msn/msn.c:1692
+#: ../libpurple/protocols/myspace/user.c:113
+#: ../libpurple/protocols/oscar/oscar.c:3770
 #: ../libpurple/protocols/qq/buddy_info.c:45
 #: ../libpurple/protocols/qq/qq.c:221
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:1081
 msgid "Age"
 msgstr "연령"
 
-#: ../libpurple/protocols/msn/msn.c:1590
+#: ../libpurple/protocols/msn/msn.c:1694
 #: ../libpurple/protocols/qq/buddy_info.c:51
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:1096
 msgid "Occupation"
 msgstr "직업"
 
-#: ../libpurple/protocols/msn/msn.c:1591
-#: ../libpurple/protocols/myspace/user.c:119
-#: ../libpurple/protocols/novell/novell.c:1478
+#: ../libpurple/protocols/msn/msn.c:1695
+#: ../libpurple/protocols/myspace/user.c:121
+#: ../libpurple/protocols/novell/novell.c:1480
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:1076
 #: ../libpurple/protocols/zephyr/zephyr.c:798
 #: ../libpurple/protocols/zephyr/zephyr.c:1215
 msgid "Location"
 msgstr "위치"
 
-#: ../libpurple/protocols/msn/msn.c:1596 ../libpurple/protocols/msn/msn.c:1788
-#: ../libpurple/protocols/msn/msn.c:1794 ../libpurple/protocols/msn/msn.c:1801
+#: ../libpurple/protocols/msn/msn.c:1700 ../libpurple/protocols/msn/msn.c:1892
+#: ../libpurple/protocols/msn/msn.c:1898 ../libpurple/protocols/msn/msn.c:1905
 msgid "Hobbies and Interests"
 msgstr "취미와 관심 분야"
 
-#: ../libpurple/protocols/msn/msn.c:1602 ../libpurple/protocols/msn/msn.c:1722
-#: ../libpurple/protocols/msn/msn.c:1728 ../libpurple/protocols/msn/msn.c:1735
-#: ../libpurple/protocols/msn/msn.c:1743 ../libpurple/protocols/msn/msn.c:1750
+#: ../libpurple/protocols/msn/msn.c:1706 ../libpurple/protocols/msn/msn.c:1826
+#: ../libpurple/protocols/msn/msn.c:1832 ../libpurple/protocols/msn/msn.c:1839
+#: ../libpurple/protocols/msn/msn.c:1847 ../libpurple/protocols/msn/msn.c:1854
 msgid "A Little About Me"
 msgstr "간단 소개"
 
-#: ../libpurple/protocols/msn/msn.c:1619
+#: ../libpurple/protocols/msn/msn.c:1723
 msgid "Social"
 msgstr "파티"
 
-#: ../libpurple/protocols/msn/msn.c:1621
+#: ../libpurple/protocols/msn/msn.c:1725
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:1086
 msgid "Marital Status"
 msgstr "기혼/미혼"
 
-#: ../libpurple/protocols/msn/msn.c:1622
+#: ../libpurple/protocols/msn/msn.c:1726
 msgid "Interests"
 msgstr "취미"
 
-#: ../libpurple/protocols/msn/msn.c:1623
+#: ../libpurple/protocols/msn/msn.c:1727
 msgid "Pets"
 msgstr "애완동물"
 
-#: ../libpurple/protocols/msn/msn.c:1624
+#: ../libpurple/protocols/msn/msn.c:1728
 msgid "Hometown"
 msgstr "출신지"
 
-#: ../libpurple/protocols/msn/msn.c:1625
+#: ../libpurple/protocols/msn/msn.c:1729
 msgid "Places Lived"
 msgstr "현주소"
 
-#: ../libpurple/protocols/msn/msn.c:1626
+#: ../libpurple/protocols/msn/msn.c:1730
 msgid "Fashion"
 msgstr "패션"
 
-#: ../libpurple/protocols/msn/msn.c:1627
+#: ../libpurple/protocols/msn/msn.c:1731
 msgid "Humor"
 msgstr "유머"
 
-#: ../libpurple/protocols/msn/msn.c:1628
+#: ../libpurple/protocols/msn/msn.c:1732
 msgid "Music"
 msgstr "음악"
 
-#: ../libpurple/protocols/msn/msn.c:1629 ../libpurple/protocols/msn/msn.c:1810
-#: ../libpurple/protocols/msn/msn.c:1816
+#: ../libpurple/protocols/msn/msn.c:1733 ../libpurple/protocols/msn/msn.c:1914
+#: ../libpurple/protocols/msn/msn.c:1920
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:1138
 msgid "Favorite Quote"
 msgstr "좌우명"
 
-#: ../libpurple/protocols/msn/msn.c:1646
+#: ../libpurple/protocols/msn/msn.c:1750
 msgid "Contact Info"
 msgstr "연락처 정보"
 
-#: ../libpurple/protocols/msn/msn.c:1647
+#: ../libpurple/protocols/msn/msn.c:1751
 msgid "Personal"
 msgstr "개인"
 
-#: ../libpurple/protocols/msn/msn.c:1650
+#: ../libpurple/protocols/msn/msn.c:1754
 msgid "Significant Other"
 msgstr "소중한 사람"
 
-#: ../libpurple/protocols/msn/msn.c:1651
+#: ../libpurple/protocols/msn/msn.c:1755
 msgid "Home Phone"
 msgstr "자택 전화"
 
-#: ../libpurple/protocols/msn/msn.c:1652
+#: ../libpurple/protocols/msn/msn.c:1756
 msgid "Home Phone 2"
 msgstr "자택 전화 2"
 
-#: ../libpurple/protocols/msn/msn.c:1653
-#: ../libpurple/protocols/oscar/oscar.c:3793
+#: ../libpurple/protocols/msn/msn.c:1757
+#: ../libpurple/protocols/oscar/oscar.c:3808
 msgid "Home Address"
 msgstr "자택 주소"
 
-#: ../libpurple/protocols/msn/msn.c:1654
+#: ../libpurple/protocols/msn/msn.c:1758
 msgid "Personal Mobile"
 msgstr "개인 휴대 기기"
 
-#: ../libpurple/protocols/msn/msn.c:1655
+#: ../libpurple/protocols/msn/msn.c:1759
 msgid "Home Fax"
 msgstr "자택 팩스"
 
-#: ../libpurple/protocols/msn/msn.c:1656
+#: ../libpurple/protocols/msn/msn.c:1760
 msgid "Personal E-Mail"
 msgstr "개인 이메일"
 
-#: ../libpurple/protocols/msn/msn.c:1657
+#: ../libpurple/protocols/msn/msn.c:1761
 msgid "Personal IM"
 msgstr "개인 메신저"
 
-#: ../libpurple/protocols/msn/msn.c:1659
+#: ../libpurple/protocols/msn/msn.c:1763
 msgid "Anniversary"
 msgstr "기념일"
 
 #. Business
-#: ../libpurple/protocols/msn/msn.c:1675
+#: ../libpurple/protocols/msn/msn.c:1779
 msgid "Work"
 msgstr "직종"
 
-#: ../libpurple/protocols/msn/msn.c:1677
+#: ../libpurple/protocols/msn/msn.c:1781
 #: ../libpurple/protocols/silc/ops.c:1010
 #: ../libpurple/protocols/silc10/ops.c:1044
 msgid "Job Title"
 msgstr "직위"
 
-#: ../libpurple/protocols/msn/msn.c:1678
-#: ../libpurple/protocols/oscar/oscar.c:3814
+#: ../libpurple/protocols/msn/msn.c:1782
+#: ../libpurple/protocols/oscar/oscar.c:3829
 msgid "Company"
 msgstr "회사"
 
-#: ../libpurple/protocols/msn/msn.c:1679
-#: ../libpurple/protocols/novell/novell.c:1480
+#: ../libpurple/protocols/msn/msn.c:1783
+#: ../libpurple/protocols/novell/novell.c:1482
 msgid "Department"
 msgstr "부서"
 
-#: ../libpurple/protocols/msn/msn.c:1680
+#: ../libpurple/protocols/msn/msn.c:1784
 msgid "Profession"
 msgstr "직업"
 
-#: ../libpurple/protocols/msn/msn.c:1681
+#: ../libpurple/protocols/msn/msn.c:1785
 msgid "Work Phone"
 msgstr "회사 전화"
 
-#: ../libpurple/protocols/msn/msn.c:1682
+#: ../libpurple/protocols/msn/msn.c:1786
 msgid "Work Phone 2"
 msgstr "회사 전화 2"
 
-#: ../libpurple/protocols/msn/msn.c:1683
-#: ../libpurple/protocols/oscar/oscar.c:3806
+#: ../libpurple/protocols/msn/msn.c:1787
+#: ../libpurple/protocols/oscar/oscar.c:3821
 msgid "Work Address"
 msgstr "회사 주소"
 
-#: ../libpurple/protocols/msn/msn.c:1684
+#: ../libpurple/protocols/msn/msn.c:1788
 msgid "Work Mobile"
 msgstr "업무 휴대 기기"
 
-#: ../libpurple/protocols/msn/msn.c:1685
+#: ../libpurple/protocols/msn/msn.c:1789
 msgid "Work Pager"
 msgstr "회사 호출기"
 
-#: ../libpurple/protocols/msn/msn.c:1686
+#: ../libpurple/protocols/msn/msn.c:1790
 msgid "Work Fax"
 msgstr "회사 팩스"
 
-#: ../libpurple/protocols/msn/msn.c:1687
+#: ../libpurple/protocols/msn/msn.c:1791
 msgid "Work E-Mail"
 msgstr "회사 이메일"
 
-#: ../libpurple/protocols/msn/msn.c:1688
+#: ../libpurple/protocols/msn/msn.c:1792
 msgid "Work IM"
 msgstr "회사 메신저"
 
-#: ../libpurple/protocols/msn/msn.c:1689
+#: ../libpurple/protocols/msn/msn.c:1793
 msgid "Start Date"
 msgstr "시작 일자"
 
-#: ../libpurple/protocols/msn/msn.c:1759 ../libpurple/protocols/msn/msn.c:1765
-#: ../libpurple/protocols/msn/msn.c:1772 ../libpurple/protocols/msn/msn.c:1779
+#: ../libpurple/protocols/msn/msn.c:1863 ../libpurple/protocols/msn/msn.c:1869
+#: ../libpurple/protocols/msn/msn.c:1876 ../libpurple/protocols/msn/msn.c:1883
 msgid "Favorite Things"
 msgstr "좋아하는 것"
 
-#: ../libpurple/protocols/msn/msn.c:1824
+#: ../libpurple/protocols/msn/msn.c:1928
 msgid "Last Updated"
 msgstr "마지막 갱신일"
 
-#: ../libpurple/protocols/msn/msn.c:1835
+#: ../libpurple/protocols/msn/msn.c:1939
 #: ../libpurple/protocols/qq/buddy_info.c:60
 #: ../libpurple/protocols/silc/ops.c:1026
 #: ../libpurple/protocols/silc10/ops.c:1060
 msgid "Homepage"
 msgstr "홈페이지"
 
-#: ../libpurple/protocols/msn/msn.c:1859
+#: ../libpurple/protocols/msn/msn.c:1963
 msgid "The user has not created a public profile."
 msgstr "이 사용자는 프로파일을 공개하지 않았습니다."
 
-#: ../libpurple/protocols/msn/msn.c:1860
+#: ../libpurple/protocols/msn/msn.c:1964
 msgid ""
 "MSN reported not being able to find the user's profile. This either means "
 "that the user does not exist, or that the user exists but has not created a "
@@ -7056,16 +7145,15 @@
 "그 사용자의 프로파일을 찾을 수 없다고 MSN 이 보고했습니다. 이것은 그 사용자"
 "가 존재하지 않거나 혹은 공개하지 않았기 때문입니다."
 
-#: ../libpurple/protocols/msn/msn.c:1864
-#, fuzzy
+#: ../libpurple/protocols/msn/msn.c:1968
 msgid ""
 "Could not find any information in the user's profile. The user most likely "
 "does not exist."
 msgstr ""
-"Pidgin이 사용자 프로파일로부터 정보를 가져오지 못했습니다. 그 사용자는 존재하"
-"지 않는 것으로 판단됩니다."
-
-#: ../libpurple/protocols/msn/msn.c:1872
+"사용자 프로파일로부터 정보를 가져오지 못했습니다. 그 사용자는 존재하지 않는 "
+"것 같습니다."
+
+#: ../libpurple/protocols/msn/msn.c:1976
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:1240
 msgid "Profile URL"
 msgstr "프로파일 URL"
@@ -7080,102 +7168,104 @@
 #. *< version
 #. *  summary
 #. *  description
-#: ../libpurple/protocols/msn/msn.c:2158 ../libpurple/protocols/msn/msn.c:2160
-#, fuzzy
-msgid "MSN Protocol Plugin"
-msgstr "AIM 프로토콜 플러그인"
-
-#: ../libpurple/protocols/msn/msn.c:2194
+#: ../libpurple/protocols/msn/msn.c:2263 ../libpurple/protocols/msn/msn.c:2265
+#, fuzzy
+msgid "Windows Live Messenger Protocol Plugin"
+msgstr "Novell GroupWise 메신저 프로토콜 플러그인"
+
+#: ../libpurple/protocols/msn/msn.c:2300
 msgid "Use HTTP Method"
 msgstr "HTTP 방식 이용"
 
-#: ../libpurple/protocols/msn/msn.c:2199
-#, fuzzy
+#: ../libpurple/protocols/msn/msn.c:2305
 msgid "HTTP Method Server"
-msgstr "IPC 시험 서버"
-
-#: ../libpurple/protocols/msn/msn.c:2204
+msgstr "HTTP 방식 서버"
+
+#: ../libpurple/protocols/msn/msn.c:2310
 msgid "Show custom smileys"
 msgstr "사용자 이모티콘 표시"
 
-#: ../libpurple/protocols/msn/msn.c:2212
+#: ../libpurple/protocols/msn/msn.c:2318
 msgid "nudge: nudge a user to get their attention"
 msgstr "신호: 사용자를 향해 경고음 발생"
 
-#: ../libpurple/protocols/msn/nexus.c:146
-#: ../libpurple/protocols/msn/servconn.c:135
-#: ../libpurple/protocols/qq/qq_proxy.c:242
-#: ../libpurple/protocols/qq/qq_proxy.c:321
-#: ../libpurple/protocols/qq/qq_proxy.c:366
-#: ../libpurple/protocols/qq/qq_proxy.c:399
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:63
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:163
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:187
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:200
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:229
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:243
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:268
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:302
-#: ../libpurple/protocols/qq/udp_proxy_s5.c:332
-#: ../libpurple/protocols/yahoo/yahoochat.c:1416
-#: ../libpurple/protocols/yahoo/yahoochat.c:1442
-msgid "Unable to connect"
-msgstr "접속할 수 없습니다."
-
-#: ../libpurple/protocols/msn/notification.c:178
+#: ../libpurple/protocols/msn/nexus.c:137
+msgid "Windows Live ID authentication:Unable to connect"
+msgstr "Windows Live ID 인증: 연결할 수 없음"
+
+#: ../libpurple/protocols/msn/nexus.c:275
+msgid "Windows Live ID authentication Failed"
+msgstr "Windows Live ID 인증 실패"
+
+#: ../libpurple/protocols/msn/notification.c:185
 #, c-format
 msgid "%s is not a valid group."
 msgstr "%s 은(는) 올바은 그룹이 아닙니다."
 
-#: ../libpurple/protocols/msn/notification.c:184
-#: ../libpurple/protocols/msn/notification.c:532
-#: ../libpurple/protocols/msn/session.c:330
+#: ../libpurple/protocols/msn/notification.c:191
+#: ../libpurple/protocols/msn/notification.c:933
+#: ../libpurple/protocols/msn/session.c:371
 msgid "Unknown error."
 msgstr "알 수 없는 오류입니다."
 
-#: ../libpurple/protocols/msn/notification.c:187
+#: ../libpurple/protocols/msn/notification.c:194
 #, c-format
 msgid "%s on %s (%s)"
 msgstr "%2$s (%3$s) 의 %1$s"
 
-#: ../libpurple/protocols/msn/notification.c:498
+#: ../libpurple/protocols/msn/notification.c:511
+#, c-format
+msgid "%s just sent you a Nudge!"
+msgstr "%s 님이 신호를 보내고 싶어 합니다!"
+
+#: ../libpurple/protocols/msn/notification.c:838
+#, fuzzy, c-format
+msgid "Unknown error (%d)"
+msgstr "알 수 없는 오류"
+
+#: ../libpurple/protocols/msn/notification.c:839
+#: ../libpurple/protocols/sametime/sametime.c:4425
+msgid "Unable to add user"
+msgstr "사용자를 추가할 수 없습니다."
+
+#: ../libpurple/protocols/msn/notification.c:899
 #, c-format
 msgid "Unable to add user on %s (%s)"
 msgstr "%s (%s) 사용자를 추가할 수 없습니다."
 
-#: ../libpurple/protocols/msn/notification.c:502
+#: ../libpurple/protocols/msn/notification.c:903
 #, c-format
 msgid "Unable to block user on %s (%s)"
 msgstr "%s (%s) 사용자를 차단할 수 없습니다."
 
-#: ../libpurple/protocols/msn/notification.c:506
+#: ../libpurple/protocols/msn/notification.c:907
 #, c-format
 msgid "Unable to permit user on %s (%s)"
 msgstr "%s (%s) 사용자를 허가할 수 없습니다."
 
-#: ../libpurple/protocols/msn/notification.c:514
+#: ../libpurple/protocols/msn/notification.c:915
 #, c-format
 msgid "%s could not be added because your buddy list is full."
 msgstr "친구 목록이 가득 차서, %s 님을 추가할 수 없었습니다."
 
-#: ../libpurple/protocols/msn/notification.c:523
+#: ../libpurple/protocols/msn/notification.c:924
 #, c-format
 msgid "%s is not a valid passport account."
 msgstr "%s 님의 패스포트 계정이 올바르지 않습니다."
 
-#: ../libpurple/protocols/msn/notification.c:528
+#: ../libpurple/protocols/msn/notification.c:929
 msgid "Service Temporarily Unavailable."
 msgstr "서비스를 일시적으로 이용할 수 없습니다."
 
-#: ../libpurple/protocols/msn/notification.c:851
+#: ../libpurple/protocols/msn/notification.c:1265
 msgid "Unable to rename group"
 msgstr "그룹명을 변경할 수 없습니다."
 
-#: ../libpurple/protocols/msn/notification.c:906
+#: ../libpurple/protocols/msn/notification.c:1320
 msgid "Unable to delete group"
 msgstr "그룹을 삭제할 수 없습니다."
 
-#: ../libpurple/protocols/msn/notification.c:1325
+#: ../libpurple/protocols/msn/notification.c:1934
 #, c-format
 msgid ""
 "The MSN server will shut down for maintenance in %d minute. You will "
@@ -7202,6 +7292,30 @@
 "\n"
 "유지보수가 완료되면 다시 접속이 가능합니다."
 
+#: ../libpurple/protocols/msn/oim.c:141
+#, fuzzy
+msgid "Unable to connect to OIM server"
+msgstr "서버에 접속할 수 없습니다."
+
+#: ../libpurple/protocols/msn/servconn.c:135
+#: ../libpurple/protocols/qq/qq_proxy.c:242
+#: ../libpurple/protocols/qq/qq_proxy.c:324
+#: ../libpurple/protocols/qq/qq_proxy.c:369
+#: ../libpurple/protocols/qq/qq_proxy.c:402
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:64
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:167
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:191
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:204
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:233
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:247
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:272
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:307
+#: ../libpurple/protocols/qq/udp_proxy_s5.c:338
+#: ../libpurple/protocols/yahoo/yahoochat.c:1416
+#: ../libpurple/protocols/yahoo/yahoochat.c:1442
+msgid "Unable to connect"
+msgstr "접속할 수 없습니다."
+
 #: ../libpurple/protocols/msn/servconn.c:137
 msgid "Writing error"
 msgstr "쓰는 중 오류"
@@ -7219,60 +7333,60 @@
 "서버 %s 에서 접속 오류:\n"
 "%s"
 
-#: ../libpurple/protocols/msn/session.c:299
+#: ../libpurple/protocols/msn/session.c:338
 msgid "Our protocol is not supported by the server."
 msgstr "서버는 이 프로토콜을 지원하지 않습니다."
 
-#: ../libpurple/protocols/msn/session.c:303
+#: ../libpurple/protocols/msn/session.c:342
 msgid "Error parsing HTTP."
 msgstr "HTTP 해석 중 오류가 발생했습니다."
 
-#: ../libpurple/protocols/msn/session.c:307
+#: ../libpurple/protocols/msn/session.c:346
 #: ../libpurple/protocols/oscar/flap_connection.c:384
-#: ../libpurple/protocols/yahoo/yahoo.c:205
+#: ../libpurple/protocols/yahoo/yahoo.c:207
 msgid "You have signed on from another location."
 msgstr "다른 장소로부터 접속되어 있습니다."
 
-#: ../libpurple/protocols/msn/session.c:310
+#: ../libpurple/protocols/msn/session.c:351
 msgid "The MSN servers are temporarily unavailable. Please wait and try again."
 msgstr ""
 "MSN 서버가 일시적으로 이용할 수 없게 되었습니다. 잠시 후 다시 시도해 보시기 "
 "바랍니다."
 
-#: ../libpurple/protocols/msn/session.c:315
+#: ../libpurple/protocols/msn/session.c:356
 msgid "The MSN servers are going down temporarily."
 msgstr "MSN 서버가 일시적으로 다운되어 있습니다."
 
-#: ../libpurple/protocols/msn/session.c:320
+#: ../libpurple/protocols/msn/session.c:361
 #, c-format
 msgid "Unable to authenticate: %s"
 msgstr "인증할 수 없습니다: %s"
 
-#: ../libpurple/protocols/msn/session.c:325
+#: ../libpurple/protocols/msn/session.c:366
 msgid ""
 "Your MSN buddy list is temporarily unavailable. Please wait and try again."
 msgstr ""
 "사용 중인 MSN 친구 목록이 일시적으로 사용할수 없게 되었습니다. 잠시 후 다시 "
 "시도해 보시기 바랍니다."
 
-#: ../libpurple/protocols/msn/session.c:346
-#: ../libpurple/protocols/msn/session.c:348
+#: ../libpurple/protocols/msn/session.c:387
+#: ../libpurple/protocols/msn/session.c:389
 msgid "Handshaking"
 msgstr "통신에 접속 중입니다."
 
-#: ../libpurple/protocols/msn/session.c:349
+#: ../libpurple/protocols/msn/session.c:390
 msgid "Starting authentication"
 msgstr "인증 시작 중입니다."
 
-#: ../libpurple/protocols/msn/session.c:350
+#: ../libpurple/protocols/msn/session.c:391
 msgid "Getting cookie"
 msgstr "쿠키를 가져오는 중입니다."
 
-#: ../libpurple/protocols/msn/session.c:352
+#: ../libpurple/protocols/msn/session.c:393
 msgid "Sending cookie"
 msgstr "쿠키를 보내는 중입니다."
 
-#: ../libpurple/protocols/msn/session.c:353
+#: ../libpurple/protocols/msn/session.c:394
 msgid "Retrieving buddy list"
 msgstr "친구 목록을 수신하고 있습니다."
 
@@ -7323,22 +7437,25 @@
 msgid "Message may have not been sent because an unknown error occurred:"
 msgstr "알 수 없는 오류로 인해 메시지를 보내지 못했습니다:"
 
-#: ../libpurple/protocols/msn/userlist.c:252
+#: ../libpurple/protocols/msn/userlist.c:243
 #, c-format
 msgid "%s has added you to his or her buddy list."
 msgstr "%s 님은 나를 친구 목록에 추가했습니다."
 
-#: ../libpurple/protocols/msn/userlist.c:321
+#: ../libpurple/protocols/msn/userlist.c:312
 #, c-format
 msgid "%s has removed you from his or her buddy list."
 msgstr "%s 님은 나를 친구 목록에서 삭제했습니다."
 
-#: ../libpurple/protocols/msn/userlist.c:643
+#. only notify the user about problems adding to the friends list
+#. * maybe we should do something else for other lists, but it probably
+#. * won't cause too many problems if we just ignore it
+#: ../libpurple/protocols/msn/userlist.c:693
 #, c-format
 msgid "Unable to add \"%s\"."
 msgstr "\"%s\" 님을 추가할 수 없습니다."
 
-#: ../libpurple/protocols/msn/userlist.c:645
+#: ../libpurple/protocols/msn/userlist.c:696
 msgid "The screen name specified is invalid."
 msgstr "지정한 아이디가 잘못되었습니다."
 
@@ -7366,217 +7483,216 @@
 
 #. Notify an error message also, because this is important!
 #: ../libpurple/protocols/myspace/myspace.c:292
-#: ../libpurple/protocols/myspace/myspace.c:1801
+#: ../libpurple/protocols/myspace/myspace.c:1806
 msgid "MySpaceIM Error"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:349
+#: ../libpurple/protocols/myspace/myspace.c:350
 #, fuzzy
 msgid "Reading challenge"
 msgstr "읽는 중 오류"
 
-#: ../libpurple/protocols/myspace/myspace.c:355
+#: ../libpurple/protocols/myspace/myspace.c:356
 #, fuzzy
 msgid "Unexpected challenge length from server"
 msgstr "서버로부터의 잘못된 challenge 입니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:359
+#: ../libpurple/protocols/myspace/myspace.c:360
 #, fuzzy
 msgid "Logging in"
 msgstr "로그 기록"
 
-#: ../libpurple/protocols/myspace/myspace.c:1286
+#: ../libpurple/protocols/myspace/myspace.c:1289
 #, c-format
 msgid "Connection to server lost (no data received within %d seconds)"
 msgstr ""
 
 #. Can't write _()'d strings in array initializers. Workaround.
-#: ../libpurple/protocols/myspace/myspace.c:1328
+#: ../libpurple/protocols/myspace/myspace.c:1331
 #, fuzzy
 msgid "New mail messages"
 msgstr "메시지 보내기(_M)"
 
-#: ../libpurple/protocols/myspace/myspace.c:1329
+#: ../libpurple/protocols/myspace/myspace.c:1332
 msgid "New blog comments"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:1330
+#: ../libpurple/protocols/myspace/myspace.c:1333
 msgid "New profile comments"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:1331
+#: ../libpurple/protocols/myspace/myspace.c:1334
 msgid "New friend requests!"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:1332
+#: ../libpurple/protocols/myspace/myspace.c:1335
 msgid "New picture comments"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:1360
+#: ../libpurple/protocols/myspace/myspace.c:1363
 msgid "MySpace"
 msgstr ""
 
 #. The session is now set up, ready to be connected. This emits the
 #. * signedOn signal, so clients can now do anything with msimprpl, and
 #. * we're ready for it (session key, userid, username all setup).
-#: ../libpurple/protocols/myspace/myspace.c:1543
+#: ../libpurple/protocols/myspace/myspace.c:1546
 #: ../libpurple/protocols/sametime/sametime.c:1544
 msgid "Connected"
 msgstr "접속되었습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:1554
-#: ../libpurple/protocols/myspace/myspace.c:1556
+#: ../libpurple/protocols/myspace/myspace.c:1557
+#: ../libpurple/protocols/myspace/myspace.c:1559
 #, fuzzy
 msgid "No username set"
 msgstr "이름 없음"
 
-#: ../libpurple/protocols/myspace/myspace.c:1555
+#: ../libpurple/protocols/myspace/myspace.c:1558
 msgid ""
 "Please go to http://editprofile.myspace.com/index.cfm?fuseaction=profile."
 "username and choose a username and try to login again."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:1782
+#: ../libpurple/protocols/myspace/myspace.c:1785
 #, fuzzy, c-format
 msgid "Protocol error, code %d: %s"
 msgstr "프로세스가 오류 코드 %d 을(를) 반환했습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:1972
-#: ../libpurple/protocols/myspace/myspace.c:2006
+#: ../libpurple/protocols/myspace/myspace.c:1977
+#: ../libpurple/protocols/myspace/myspace.c:2011
 #, fuzzy
 msgid "Failed to add buddy"
 msgstr "대화 중인 친구에게 참가할 수 없습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:1972
+#: ../libpurple/protocols/myspace/myspace.c:1977
 #, fuzzy
 msgid "'addbuddy' command failed."
 msgstr "친구 목록 가져오기..."
 
-#: ../libpurple/protocols/myspace/myspace.c:2006
-#: ../libpurple/protocols/myspace/myspace.c:2247
+#: ../libpurple/protocols/myspace/myspace.c:2011
+#: ../libpurple/protocols/myspace/myspace.c:2248
 #, fuzzy
 msgid "persist command failed"
 msgstr "Switchboard 에 실패했습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:2115
+#: ../libpurple/protocols/myspace/myspace.c:2116
 #, c-format
 msgid "No such user: %s"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:2116
+#: ../libpurple/protocols/myspace/myspace.c:2117
 #, fuzzy
 msgid "User lookup"
 msgstr "사용자실"
 
-#: ../libpurple/protocols/myspace/myspace.c:2228
-#: ../libpurple/protocols/myspace/myspace.c:2247
-#: ../libpurple/protocols/myspace/myspace.c:2269
+#: ../libpurple/protocols/myspace/myspace.c:2229
+#: ../libpurple/protocols/myspace/myspace.c:2248
+#: ../libpurple/protocols/myspace/myspace.c:2270
 #, fuzzy
 msgid "Failed to remove buddy"
 msgstr "대화 중인 친구에게 참가할 수 없습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:2228
+#: ../libpurple/protocols/myspace/myspace.c:2229
 msgid "'delbuddy' command failed"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:2269
+#: ../libpurple/protocols/myspace/myspace.c:2270
 #, fuzzy
 msgid "blocklist command failed"
 msgstr "Switchboard 에 실패했습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:2315
+#: ../libpurple/protocols/myspace/myspace.c:2316
 #, fuzzy
 msgid "Invalid input condition"
 msgstr "최종 접속 조정 중"
 
 #. TODO: g_realloc like msn, yahoo, irc, jabber?
-#: ../libpurple/protocols/myspace/myspace.c:2333
-#: ../libpurple/protocols/myspace/myspace.c:2364
+#: ../libpurple/protocols/myspace/myspace.c:2334
+#: ../libpurple/protocols/myspace/myspace.c:2365
 #, fuzzy
 msgid "Read buffer full"
 msgstr "큐가 다 찼습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:2402
+#: ../libpurple/protocols/myspace/myspace.c:2403
 #, fuzzy
 msgid "Unparseable message"
 msgstr "메시지를 해독할 수 없습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:2471
+#: ../libpurple/protocols/myspace/myspace.c:2472
 #, fuzzy, c-format
 msgid "Couldn't connect to host: %s (%d)"
 msgstr "호스트에 접속하지 못했습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:2642
+#: ../libpurple/protocols/myspace/myspace.c:2643
 #, fuzzy
 msgid "IM Friends"
 msgstr "메시지 창(_I)"
 
-#: ../libpurple/protocols/myspace/myspace.c:2741
+#: ../libpurple/protocols/myspace/myspace.c:2743
 #, c-format
 msgid ""
 "%d buddies were added or updated from the server (including buddies already "
 "on the server-side list)"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:2742
+#: ../libpurple/protocols/myspace/myspace.c:2744
 #, fuzzy
 msgid "Add contacts from server"
 msgstr "서버로부터의 응답이 잘못되었습니다."
 
-#: ../libpurple/protocols/myspace/myspace.c:2794
-#: ../libpurple/protocols/myspace/myspace.c:2859
+#: ../libpurple/protocols/myspace/myspace.c:2796
+#: ../libpurple/protocols/myspace/myspace.c:2861
 msgid "Add friends from MySpace.com"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:2795
+#: ../libpurple/protocols/myspace/myspace.c:2797
 #, fuzzy
 msgid "Importing friends failed"
 msgstr "잘못된 친구 파일"
 
 #. TODO: find out how
-#: ../libpurple/protocols/myspace/myspace.c:2851
+#: ../libpurple/protocols/myspace/myspace.c:2853
 #, fuzzy
 msgid "Find people..."
 msgstr "친구 찾기..."
 
-#: ../libpurple/protocols/myspace/myspace.c:2854
+#: ../libpurple/protocols/myspace/myspace.c:2856
 #, fuzzy
 msgid "Change IM name..."
 msgstr "비밀번호 변경..."
 
-#: ../libpurple/protocols/myspace/myspace.c:3156
+#: ../libpurple/protocols/myspace/myspace.c:3158
 msgid "myim URL handler"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:3157
+#: ../libpurple/protocols/myspace/myspace.c:3159
 msgid "No suitable MySpaceIM account could be found to open this myim URL."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:3158
+#: ../libpurple/protocols/myspace/myspace.c:3160
 msgid "Enable the proper MySpaceIM account and try again."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:3281
+#: ../libpurple/protocols/myspace/myspace.c:3283
 msgid "Show display name in status text"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:3284
+#: ../libpurple/protocols/myspace/myspace.c:3286
 msgid "Show headline in status text"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:3289
+#: ../libpurple/protocols/myspace/myspace.c:3291
 #, fuzzy
 msgid "Send emoticons"
 msgstr "소리 설정"
 
-#: ../libpurple/protocols/myspace/myspace.c:3294
+#: ../libpurple/protocols/myspace/myspace.c:3296
 msgid "Screen resolution (dots per inch)"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/myspace.c:3297
-#, fuzzy
+#: ../libpurple/protocols/myspace/myspace.c:3299
 msgid "Base font size (points)"
-msgstr "글자 크기 크게"
+msgstr ""
 
 #: ../libpurple/protocols/myspace/user.c:95
 #: ../libpurple/protocols/zephyr/zephyr.c:786
@@ -7584,174 +7700,197 @@
 msgid "User"
 msgstr "사용자"
 
-#. TODO: link to username, if available
-#: ../libpurple/protocols/myspace/user.c:102
-#: ../libpurple/protocols/oscar/oscar.c:2964
+#: ../libpurple/protocols/myspace/user.c:104
+#: ../libpurple/protocols/oscar/oscar.c:2979
 msgid "Profile"
 msgstr "프로파일"
 
-#: ../libpurple/protocols/myspace/user.c:124
+#: ../libpurple/protocols/myspace/user.c:126
 #, fuzzy
 msgid "Headline"
 msgstr "핸들(_H):"
 
-#: ../libpurple/protocols/myspace/user.c:129
+#: ../libpurple/protocols/myspace/user.c:131
 #, fuzzy
 msgid "Song"
 msgstr "소리"
 
-#: ../libpurple/protocols/myspace/user.c:134
+#: ../libpurple/protocols/myspace/user.c:139
 msgid "Total Friends"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/user.c:145
-#: ../libpurple/protocols/myspace/user.c:148
-#: ../libpurple/protocols/myspace/user.c:151
+#: ../libpurple/protocols/myspace/user.c:157
 #, fuzzy
 msgid "Client Version"
 msgstr "대화 창을 닫습니다."
 
 #. TODO: icons for each zap
-#: ../libpurple/protocols/myspace/zap.c:44
-#: ../libpurple/protocols/myspace/zap.c:177
+#. Lots of comments for translators:
+#. Zap means "to strike suddenly and forcefully as if with a
+#. * projectile or weapon."  This term often has an electrical
+#. * connotation, for example, "he was zapped by electricity when
+#. * he put a fork in the toaster."
+#: ../libpurple/protocols/myspace/zap.c:51
+#: ../libpurple/protocols/myspace/zap.c:214
 msgid "Zap"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:44
+#: ../libpurple/protocols/myspace/zap.c:51
 #, fuzzy, c-format
 msgid "%s has zapped you!"
 msgstr "%s 님이 나 [%s] 을(를) 추가했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:44
+#: ../libpurple/protocols/myspace/zap.c:51
 #, c-format
 msgid "Zapping %s..."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:45
+#. Whack means "to hit or strike someone with a sharp blow"
+#: ../libpurple/protocols/myspace/zap.c:54
 msgid "Whack"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:45
+#: ../libpurple/protocols/myspace/zap.c:54
 #, fuzzy, c-format
 msgid "%s has whacked you!"
 msgstr "%s 님이 나 [%s] 을(를) 추가했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:45
+#: ../libpurple/protocols/myspace/zap.c:54
 #, c-format
 msgid "Whacking %s..."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:46
+#. Torch means "to set on fire."  Don't worry, this doesn't
+#. * make a whole lot of sense in English, either.  Feel free
+#. * to translate it literally.
+#: ../libpurple/protocols/myspace/zap.c:59
 #, fuzzy
 msgid "Torch"
 msgstr "주제"
 
-#: ../libpurple/protocols/myspace/zap.c:46
+#: ../libpurple/protocols/myspace/zap.c:59
 #, fuzzy, c-format
 msgid "%s has torched you!"
 msgstr "사용자는 나를 차단했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:46
+#: ../libpurple/protocols/myspace/zap.c:59
 #, c-format
 msgid "Torching %s..."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:47
+#. Smooch means "to kiss someone, often enthusiastically"
+#: ../libpurple/protocols/myspace/zap.c:62
 msgid "Smooch"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:47
+#: ../libpurple/protocols/myspace/zap.c:62
 #, fuzzy, c-format
 msgid "%s has smooched you!"
 msgstr "%s 님이 접속했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:47
+#: ../libpurple/protocols/myspace/zap.c:62
 #, c-format
 msgid "Smooching %s..."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:48
+#. A hug is a display of affection; wrapping your arms around someone
+#: ../libpurple/protocols/myspace/zap.c:65
 msgid "Hug"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:48
+#: ../libpurple/protocols/myspace/zap.c:65
 #, fuzzy, c-format
 msgid "%s has hugged you!"
 msgstr "%s 님이 접속했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:48
+#: ../libpurple/protocols/myspace/zap.c:65
 #, c-format
 msgid "Hugging %s..."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:49
+#. Slap means "to hit someone with an open/flat hand"
+#: ../libpurple/protocols/myspace/zap.c:68
 #, fuzzy
 msgid "Slap"
 msgstr "슬로바키아어"
 
-#: ../libpurple/protocols/myspace/zap.c:49
+#: ../libpurple/protocols/myspace/zap.c:68
 #, fuzzy, c-format
 msgid "%s has slapped you!"
 msgstr "%s 님이 나 [%s] 을(를) 추가했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:49
+#: ../libpurple/protocols/myspace/zap.c:68
 #, c-format
 msgid "Slapping %s..."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:50
+#. Goose means "to pinch someone on their butt"
+#: ../libpurple/protocols/myspace/zap.c:71
 #, fuzzy
 msgid "Goose"
 msgstr "다운됨"
 
-#: ../libpurple/protocols/myspace/zap.c:50
+#: ../libpurple/protocols/myspace/zap.c:71
 #, fuzzy, c-format
 msgid "%s has goosed you!"
 msgstr "%s 님이 자리를 비웠습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:50
+#: ../libpurple/protocols/myspace/zap.c:71
 #, fuzzy, c-format
 msgid "Goosing %s..."
 msgstr "%s 검색 중"
 
-#: ../libpurple/protocols/myspace/zap.c:51
+#. A high-five is when two people's hands slap each other
+#. * in the air above their heads.  It is done to celebrate
+#. * something, often a victory, or to congratulate someone.
+#: ../libpurple/protocols/myspace/zap.c:76
 msgid "High-five"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:51
+#: ../libpurple/protocols/myspace/zap.c:76
 #, fuzzy, c-format
 msgid "%s has high-fived you!"
 msgstr "%s 님이 접속했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:51
+#: ../libpurple/protocols/myspace/zap.c:76
 #, c-format
 msgid "High-fiving %s..."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:52
+#. We're not entirely sure what the MySpace people mean by
+#. * this... but we think it's the equivalent of "prank."  Or, for
+#. * someone to perform a mischievous trick or practical joke.
+#: ../libpurple/protocols/myspace/zap.c:81
 msgid "Punk"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:52
+#: ../libpurple/protocols/myspace/zap.c:81
 #, fuzzy, c-format
 msgid "%s has punk'd you!"
 msgstr "%s 님이 접속했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:52
+#: ../libpurple/protocols/myspace/zap.c:81
 #, c-format
 msgid "Punking %s..."
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:53
+#. Raspberry is a slang term for the vibrating sound made
+#. * when you stick your tongue out of your mouth with your
+#. * lips closed and blow.  It is typically done when
+#. * gloating or bragging.  Nowadays it's a pretty silly
+#. * gesture, so it does not carry a harsh negative
+#. * connotation.  It is generally used in a playful tone
+#. * with friends.
+#: ../libpurple/protocols/myspace/zap.c:90
 msgid "Raspberry"
 msgstr ""
 
-#: ../libpurple/protocols/myspace/zap.c:53
+#: ../libpurple/protocols/myspace/zap.c:90
 #, fuzzy, c-format
 msgid "%s has raspberried you!"
 msgstr "%s 님이 접속했습니다."
 
-#: ../libpurple/protocols/myspace/zap.c:53
+#: ../libpurple/protocols/myspace/zap.c:90
 #, c-format
 msgid "Raspberrying %s..."
 msgstr ""
@@ -7887,40 +8026,40 @@
 msgid "Login failed (%s)."
 msgstr "로그인에 실패했습니다. (%s)。"
 
-#: ../libpurple/protocols/novell/novell.c:247
+#: ../libpurple/protocols/novell/novell.c:249
 #, c-format
 msgid "Unable to send message. Could not get details for user (%s)."
 msgstr ""
 "메시지를 보낼 수 없습니다. 사용자의 상세 정보를 가져오지 못했습니다. (%s)。"
 
-#: ../libpurple/protocols/novell/novell.c:396
+#: ../libpurple/protocols/novell/novell.c:398
 #, c-format
 msgid "Unable to add %s to your buddy list (%s)."
 msgstr "%s 님을 친구 목록 (%s) 에 추가할 수 없습니다."
 
 #. TODO: Improve this! message to who or for what conference?
-#: ../libpurple/protocols/novell/novell.c:422
+#: ../libpurple/protocols/novell/novell.c:424
 #, c-format
 msgid "Unable to send message (%s)."
 msgstr "메시지 (%s) 을(를) 보낼 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:493
-#: ../libpurple/protocols/novell/novell.c:985
+#: ../libpurple/protocols/novell/novell.c:495
+#: ../libpurple/protocols/novell/novell.c:987
 #, c-format
 msgid "Unable to invite user (%s)."
 msgstr "사용자 (%s) 을(를) 초대할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:532
+#: ../libpurple/protocols/novell/novell.c:534
 #, c-format
 msgid "Unable to send message to %s. Could not create the conference (%s)."
 msgstr "%s 메시지를 전송할 수 없습니다. 회의 (%s) 을(를) 작성할 수 없었습니다."
 
-#: ../libpurple/protocols/novell/novell.c:537
+#: ../libpurple/protocols/novell/novell.c:539
 #, c-format
 msgid "Unable to send message. Could not create the conference (%s)."
 msgstr "메시지를 전송할 수 없습니다. 회의 (%s) 을(를) 작성할 수 없었습니다."
 
-#: ../libpurple/protocols/novell/novell.c:584
+#: ../libpurple/protocols/novell/novell.c:586
 #, c-format
 msgid ""
 "Unable to move user %s to folder %s in the server side list. Error while "
@@ -7929,7 +8068,7 @@
 "사용자 %s 을(를) 서버쪽 목록에 있는 폴더 %s (으)로 이동할 수 없습니다. 폴더 "
 "생성 오류입니다 (%s)."
 
-#: ../libpurple/protocols/novell/novell.c:632
+#: ../libpurple/protocols/novell/novell.c:634
 #, c-format
 msgid ""
 "Unable to add %s to your buddy list. Error creating folder in server side "
@@ -7938,61 +8077,61 @@
 "%s 을(를) 친구 목록에 추가할 수 없습니다. 서버쪽 목록 (%s) 의 폴더 생성 오류"
 "입니다."
 
-#: ../libpurple/protocols/novell/novell.c:705
+#: ../libpurple/protocols/novell/novell.c:707
 #, c-format
 msgid "Could not get details for user %s (%s)."
 msgstr "사용자 %s (%s) 님의 상세 정보를 가져오지 못했습니다."
 
-#: ../libpurple/protocols/novell/novell.c:751
-#: ../libpurple/protocols/novell/novell.c:897
+#: ../libpurple/protocols/novell/novell.c:753
+#: ../libpurple/protocols/novell/novell.c:899
 #, c-format
 msgid "Unable to add user to privacy list (%s)."
 msgstr "사용자를 친구 목록 (%s) 에 추가할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:798
+#: ../libpurple/protocols/novell/novell.c:800
 #, c-format
 msgid "Unable to add %s to deny list (%s)."
 msgstr "%s 님을 거부 목록 (%s) 에 추가할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:851
+#: ../libpurple/protocols/novell/novell.c:853
 #, c-format
 msgid "Unable to add %s to permit list (%s)."
 msgstr "%s 님을 허가 목록 (%s) 에 추가할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:919
+#: ../libpurple/protocols/novell/novell.c:921
 #, c-format
 msgid "Unable to remove %s from privacy list (%s)."
 msgstr "%s 님을 개인 목록 (%s) (으)로부터 삭제할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:942
-#: ../libpurple/protocols/novell/novell.c:1647
+#: ../libpurple/protocols/novell/novell.c:944
+#: ../libpurple/protocols/novell/novell.c:1649
 #, c-format
 msgid "Unable to change server side privacy settings (%s)."
 msgstr "서버쪽 개인 설정 (%s) 을(를) 변경할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:1012
+#: ../libpurple/protocols/novell/novell.c:1014
 #, c-format
 msgid "Unable to create conference (%s)."
 msgstr "회의 (%s) 을(를) 생성할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:1121
-#: ../libpurple/protocols/novell/novell.c:1692
+#: ../libpurple/protocols/novell/novell.c:1123
+#: ../libpurple/protocols/novell/novell.c:1694
 msgid "Error communicating with server. Closing connection."
 msgstr "서버와의 통신 중 오류입니다. 접속을 끊었습니다."
 
-#: ../libpurple/protocols/novell/novell.c:1476
+#: ../libpurple/protocols/novell/novell.c:1478
 msgid "Telephone Number"
 msgstr "전화번호"
 
-#: ../libpurple/protocols/novell/novell.c:1482
+#: ../libpurple/protocols/novell/novell.c:1484
 msgid "Personal Title"
 msgstr "개인 제목"
 
-#: ../libpurple/protocols/novell/novell.c:1486
+#: ../libpurple/protocols/novell/novell.c:1488
 msgid "Mailstop"
 msgstr "Mailstop"
 
-#: ../libpurple/protocols/novell/novell.c:1502
+#: ../libpurple/protocols/novell/novell.c:1504
 #: ../libpurple/protocols/sametime/sametime.c:4122
 msgid "User ID"
 msgstr "사용자 ID"
@@ -8003,41 +8142,41 @@
 #. purple_notify_user_info_add_pair(user_info, tag, value);
 #. }
 #.
-#: ../libpurple/protocols/novell/novell.c:1515
+#: ../libpurple/protocols/novell/novell.c:1517
 msgid "Full name"
 msgstr "전체 이름"
 
-#: ../libpurple/protocols/novell/novell.c:1637
+#: ../libpurple/protocols/novell/novell.c:1639
 #, c-format
 msgid "GroupWise Conference %d"
 msgstr "GroupWise 회의 %d"
 
-#: ../libpurple/protocols/novell/novell.c:1668
+#: ../libpurple/protocols/novell/novell.c:1670
 msgid "Unable to make SSL connection to server."
 msgstr "서버에 SSL 접속을 할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:1720
+#: ../libpurple/protocols/novell/novell.c:1722
 msgid "Authenticating..."
 msgstr "인증 중..."
 
-#: ../libpurple/protocols/novell/novell.c:1732
+#: ../libpurple/protocols/novell/novell.c:1734
 msgid "Unable to connect to server."
 msgstr "서버에 접속할 수 없습니다."
 
-#: ../libpurple/protocols/novell/novell.c:1735
+#: ../libpurple/protocols/novell/novell.c:1737
 msgid "Waiting for response..."
 msgstr "응답을 기다리고 있습니다..."
 
-#: ../libpurple/protocols/novell/novell.c:1870
+#: ../libpurple/protocols/novell/novell.c:1872
 #, c-format
 msgid "%s has been invited to this conversation."
 msgstr "%s 님이 대화 창으로 초대되어 있습니다."
 
-#: ../libpurple/protocols/novell/novell.c:1898
+#: ../libpurple/protocols/novell/novell.c:1900
 msgid "Invitation to Conversation"
 msgstr "회의 초대"
 
-#: ../libpurple/protocols/novell/novell.c:1899
+#: ../libpurple/protocols/novell/novell.c:1901
 #, c-format
 msgid ""
 "Invitation from: %s\n"
@@ -8048,18 +8187,17 @@
 "\n"
 "연락처: %s"
 
-#: ../libpurple/protocols/novell/novell.c:1901
+#: ../libpurple/protocols/novell/novell.c:1903
 msgid "Would you like to join the conversation?"
 msgstr "회의에 참석하시겠습니까?"
 
-#. we don't want to reconnect in this case
-#: ../libpurple/protocols/novell/novell.c:2012
+#: ../libpurple/protocols/novell/novell.c:2017
 msgid "You have been logged out because you logged in at another workstation."
 msgstr ""
 "다른 워크스테이션으로부터 로그인 되어 있기 때문에, 강제적으로 로그아웃 되었습"
 "니다."
 
-#: ../libpurple/protocols/novell/novell.c:2069
+#: ../libpurple/protocols/novell/novell.c:2074
 #, c-format
 msgid ""
 "%s appears to be offline and did not receive the message that you just sent."
@@ -8069,17 +8207,17 @@
 #. *  purple_request_fields(gc, _("Server Address"),...);
 #.
 #. ...but for now just error out with a nice message.
-#: ../libpurple/protocols/novell/novell.c:2167
+#: ../libpurple/protocols/novell/novell.c:2172
 msgid ""
 "Unable to connect to server. Please enter the address of the server you wish "
 "to connect to."
 msgstr "서버에 접속할 수 없습니다. 접속할 서버의 주소를 입력해 주십시오."
 
-#: ../libpurple/protocols/novell/novell.c:2195
+#: ../libpurple/protocols/novell/novell.c:2200
 msgid "Error. SSL support is not installed."
 msgstr "오류입니다. SSL 지원이 설치되어 있지 않습니다."
 
-#: ../libpurple/protocols/novell/novell.c:2504
+#: ../libpurple/protocols/novell/novell.c:2509
 #, c-format
 msgid "This conference has been closed. No more messages can be sent."
 msgstr "이 회의는 폐회되었습니다. 메시지를 전송할 수 없습니다."
@@ -8094,33 +8232,33 @@
 #. *< version
 #. *  summary
 #. *  description
-#: ../libpurple/protocols/novell/novell.c:3518
-#: ../libpurple/protocols/novell/novell.c:3520
+#: ../libpurple/protocols/novell/novell.c:3523
+#: ../libpurple/protocols/novell/novell.c:3525
 msgid "Novell GroupWise Messenger Protocol Plugin"
 msgstr "Novell GroupWise 메신저 프로토콜 플러그인"
 
-#: ../libpurple/protocols/novell/novell.c:3545
+#: ../libpurple/protocols/novell/novell.c:3550
 msgid "Server address"
 msgstr "서버 주소"
 
-#: ../libpurple/protocols/novell/novell.c:3549
+#: ../libpurple/protocols/novell/novell.c:3554
 msgid "Server port"
 msgstr "서버 포트"
 
-#: ../libpurple/protocols/oscar/flap_connection.c:387
-#: ../libpurple/protocols/yahoo/yahoo.c:2469
-#: ../libpurple/protocols/yahoo/yahoo.c:2636
-#: ../libpurple/protocols/yahoo/ycht.c:481 ../libpurple/proxy.c:581
-#: ../libpurple/proxy.c:1116 ../libpurple/proxy.c:1225
-#: ../libpurple/proxy.c:1325 ../libpurple/proxy.c:1453
+#: ../libpurple/protocols/oscar/flap_connection.c:389
+#: ../libpurple/protocols/yahoo/yahoo.c:2471
+#: ../libpurple/protocols/yahoo/yahoo.c:2638
+#: ../libpurple/protocols/yahoo/ycht.c:481 ../libpurple/proxy.c:584
+#: ../libpurple/proxy.c:1126 ../libpurple/proxy.c:1235
+#: ../libpurple/proxy.c:1335 ../libpurple/proxy.c:1463
 msgid "Server closed the connection."
 msgstr "서버가 접속을 닫았습니다."
 
-#: ../libpurple/protocols/oscar/flap_connection.c:389
-#: ../libpurple/protocols/yahoo/yahoo.c:2463
-#: ../libpurple/protocols/yahoo/yahoo.c:2630 ../libpurple/proxy.c:593
-#: ../libpurple/proxy.c:1128 ../libpurple/proxy.c:1237
-#: ../libpurple/proxy.c:1337 ../libpurple/proxy.c:1465
+#: ../libpurple/protocols/oscar/flap_connection.c:391
+#: ../libpurple/protocols/yahoo/yahoo.c:2465
+#: ../libpurple/protocols/yahoo/yahoo.c:2632 ../libpurple/proxy.c:596
+#: ../libpurple/proxy.c:1138 ../libpurple/proxy.c:1247
+#: ../libpurple/proxy.c:1347 ../libpurple/proxy.c:1475
 #, c-format
 msgid ""
 "Lost connection with server:\n"
@@ -8129,10 +8267,10 @@
 "서버와의 접속에 실패했습니다:\n"
 "%s"
 
-#: ../libpurple/protocols/oscar/flap_connection.c:392
-#: ../libpurple/proxy.c:1145 ../libpurple/proxy.c:1250
-#: ../libpurple/proxy.c:1349 ../libpurple/proxy.c:1421
-#: ../libpurple/proxy.c:1478
+#: ../libpurple/protocols/oscar/flap_connection.c:394
+#: ../libpurple/proxy.c:1155 ../libpurple/proxy.c:1260
+#: ../libpurple/proxy.c:1359 ../libpurple/proxy.c:1431
+#: ../libpurple/proxy.c:1488
 msgid "Received invalid data on connection with server."
 msgstr "서버와 접속하는 동안에 잘못된 데이터를 받았습니다."
 
@@ -8167,36 +8305,43 @@
 msgstr "ICQ 프로토콜 플러그인"
 
 #: ../libpurple/protocols/oscar/libicq.c:147
-#: ../libpurple/protocols/yahoo/yahoo.c:4410
+#: ../libpurple/protocols/yahoo/yahoo.c:4412
 #: ../libpurple/protocols/zephyr/zephyr.c:2997
 msgid "Encoding"
 msgstr "인코딩"
 
-#: ../libpurple/protocols/oscar/odc.c:40
+#: ../libpurple/protocols/oscar/odc.c:42
 msgid "The remote user has closed the connection."
 msgstr "리모트 사용자가 접속을 끊었습니다."
 
-#: ../libpurple/protocols/oscar/odc.c:42
+#: ../libpurple/protocols/oscar/odc.c:44
 msgid "The remote user has declined your request."
 msgstr "리모트 사용자가 내 요구를 거절했습니다."
 
-#: ../libpurple/protocols/oscar/odc.c:44
+#: ../libpurple/protocols/oscar/odc.c:46
 #, c-format
 msgid "Lost connection with the remote user:<br>%s"
 msgstr "리모트 사용자와 접속이 끊어졌습니다:<br>%s"
 
-#: ../libpurple/protocols/oscar/odc.c:47
+#: ../libpurple/protocols/oscar/odc.c:49
 msgid "Received invalid data on connection with remote user."
 msgstr "리모트 사용자의 접속에서 잘못된 데이터를 받았습니다."
 
-#: ../libpurple/protocols/oscar/odc.c:49
+#: ../libpurple/protocols/oscar/odc.c:51
 msgid "Could not establish a connection with the remote user."
 msgstr "리모트 사용자와의 접속을 확립하지 못했습니다."
 
-#: ../libpurple/protocols/oscar/odc.c:560
+#: ../libpurple/protocols/oscar/odc.c:562
 msgid "Direct IM established"
 msgstr "Direct IM 을 확립했습니다."
 
+#: ../libpurple/protocols/oscar/odc.c:600
+#, c-format
+msgid ""
+"%s tried to send you a %s file, but we only allow files up to %s over Direct "
+"IM.  Try using file transfer instead.\n"
+msgstr ""
+
 #: ../libpurple/protocols/oscar/oft.c:656
 #, c-format
 msgid "File %s is %s, which is larger than the maximum size of %s."
@@ -8319,8 +8464,8 @@
 "고 있거나 혹은 %s 님이 비정상 클라이언트를 사용하고 있는 것 같습니다.)"
 
 #. Label
-#: ../libpurple/protocols/oscar/oscar.c:639 ../pidgin/gtkutils.c:2387
-#: ../pidgin/gtkutils.c:2417
+#: ../libpurple/protocols/oscar/oscar.c:639 ../pidgin/gtkutils.c:2391
+#: ../pidgin/gtkutils.c:2421
 #: ../pidgin/plugins/gevolution/new_person_dialog.c:332
 msgid "Buddy Icon"
 msgstr "친구 아이콘"
@@ -8342,7 +8487,7 @@
 msgstr "대화"
 
 #: ../libpurple/protocols/oscar/oscar.c:651
-#: ../libpurple/protocols/oscar/oscar.c:6010
+#: ../libpurple/protocols/oscar/oscar.c:6064
 msgid "Get File"
 msgstr "파일 가져오기"
 
@@ -8415,19 +8560,19 @@
 msgstr "카메라"
 
 #: ../libpurple/protocols/oscar/oscar.c:725
-#: ../libpurple/protocols/oscar/oscar.c:5780
+#: ../libpurple/protocols/oscar/oscar.c:5834
 #, c-format
 msgid "Free For Chat"
 msgstr "대화할 수 있습니다."
 
 #: ../libpurple/protocols/oscar/oscar.c:729
-#: ../libpurple/protocols/oscar/oscar.c:5815
+#: ../libpurple/protocols/oscar/oscar.c:5869
 #, c-format
 msgid "Not Available"
 msgstr "사용 불가"
 
 #: ../libpurple/protocols/oscar/oscar.c:731
-#: ../libpurple/protocols/oscar/oscar.c:5801
+#: ../libpurple/protocols/oscar/oscar.c:5855
 #, c-format
 msgid "Occupied"
 msgstr "사용 중입니다."
@@ -8439,8 +8584,8 @@
 
 #: ../libpurple/protocols/oscar/oscar.c:737 ../libpurple/protocols/qq/qq.c:183
 #: ../libpurple/protocols/qq/qq.c:288
-#: ../libpurple/protocols/yahoo/yahoo.c:3095 ../libpurple/status.c:157
-#: ../pidgin/gtkdocklet.c:446 ../pidgin/gtkstatusbox.c:1060
+#: ../libpurple/protocols/yahoo/yahoo.c:3097 ../libpurple/status.c:157
+#: ../pidgin/gtkdocklet.c:557 ../pidgin/gtkstatusbox.c:1060
 #, c-format
 msgid "Invisible"
 msgstr "숨김 상태"
@@ -8451,13 +8596,13 @@
 msgstr "온라인"
 
 #: ../libpurple/protocols/oscar/oscar.c:838
-#: ../libpurple/protocols/oscar/oscar.c:3707
-#: ../libpurple/protocols/yahoo/yahoo_profile.c:721 ../pidgin/gtkprefs.c:1126
+#: ../libpurple/protocols/oscar/oscar.c:3722
+#: ../libpurple/protocols/yahoo/yahoo_profile.c:721 ../pidgin/gtkprefs.c:1128
 msgid "IP Address"
 msgstr "IP 주소"
 
 #: ../libpurple/protocols/oscar/oscar.c:845
-#: ../libpurple/protocols/oscar/oscar.c:2891
+#: ../libpurple/protocols/oscar/oscar.c:2906
 msgid "Warning Level"
 msgstr "경고 수준"
 
@@ -8496,7 +8641,7 @@
 msgid "Finalizing connection"
 msgstr "최종 접속 조정 중"
 
-#: ../libpurple/protocols/oscar/oscar.c:1260
+#: ../libpurple/protocols/oscar/oscar.c:1262
 #, fuzzy, c-format
 msgid ""
 "Unable to login: Could not sign on as %s because the screen name is "
@@ -8506,29 +8651,29 @@
 "로그인 할 수 없습니다: 아이디가 틀렸기 때문에 %s (으)로서 접속할 수 없었습니"
 "다. 아이디의 앞 부분은 문자, 문자와 숫자와 공백 또는 숫자만이 가능합니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:1345
-#: ../libpurple/protocols/yahoo/yahoo.c:2105
+#: ../libpurple/protocols/oscar/oscar.c:1348
+#: ../libpurple/protocols/yahoo/yahoo.c:2107
 msgid "Invalid screen name."
 msgstr "잘못된 아이디입니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:1352
-#: ../libpurple/protocols/qq/login_logout.c:483
-#: ../libpurple/protocols/simple/simple.c:1045
-#: ../libpurple/protocols/yahoo/yahoo.c:2126
+#: ../libpurple/protocols/oscar/oscar.c:1355
+#: ../libpurple/protocols/qq/login_logout.c:503
+#: ../libpurple/protocols/simple/simple.c:1048
+#: ../libpurple/protocols/yahoo/yahoo.c:2128
 msgid "Incorrect password."
 msgstr "비밀번호가 틀립니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:1357
+#: ../libpurple/protocols/oscar/oscar.c:1360
 msgid "Your account is currently suspended."
 msgstr "사용 중인 계정은 현재 정지 중입니다."
 
 #. service temporarily unavailable
-#: ../libpurple/protocols/oscar/oscar.c:1361
+#: ../libpurple/protocols/oscar/oscar.c:1364
 msgid "The AOL Instant Messenger service is temporarily unavailable."
 msgstr "AOL 인스턴트 메신저 서비스는 일시적으로 이용할 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:1366
-#: ../libpurple/protocols/oscar/oscar.c:1377
+#: ../libpurple/protocols/oscar/oscar.c:1369
+#: ../libpurple/protocols/oscar/oscar.c:1380
 msgid ""
 "You have been connecting and disconnecting too frequently. Wait ten minutes "
 "and try again. If you continue to try, you will need to wait even longer."
@@ -8536,44 +8681,44 @@
 "접속과 해제를 반복 수행했습니다. 10분 정도 후 다시 시도해 보시기 바랍니다. 이"
 "대로 계속하면 더 오래 기다려야 합니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:1371
+#: ../libpurple/protocols/oscar/oscar.c:1374
 #, c-format
 msgid "The client version you are using is too old. Please upgrade at %s"
 msgstr "클라이언트 버전이 너무 오래 되었습니다. %s (으)로 업그레이드 하십시오."
 
-#: ../libpurple/protocols/oscar/oscar.c:1410
+#: ../libpurple/protocols/oscar/oscar.c:1413
 msgid "Could Not Connect"
 msgstr "접속할 수 없었습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:1414
+#: ../libpurple/protocols/oscar/oscar.c:1417
 msgid "Received authorization"
 msgstr "인증을 받았습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:1436
+#: ../libpurple/protocols/oscar/oscar.c:1439
 msgid "The SecurID key entered is invalid."
 msgstr "입력한 보안 ID 키는 잘못되었습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:1449
+#: ../libpurple/protocols/oscar/oscar.c:1452
 msgid "Enter SecurID"
 msgstr "보안 ID 입력"
 
-#: ../libpurple/protocols/oscar/oscar.c:1450
+#: ../libpurple/protocols/oscar/oscar.c:1453
 msgid "Enter the 6 digit number from the digital display."
 msgstr "디지털 표시 방식으로 6자리의 숫자를 입력해 주십시오."
 
 #. *
 #. * A wrapper for purple_request_action() that uses @c OK and @c Cancel buttons.
 #.
-#: ../libpurple/protocols/oscar/oscar.c:1452
-#: ../libpurple/protocols/oscar/oscar.c:2232
-#: ../libpurple/protocols/oscar/oscar.c:2281
-#: ../libpurple/protocols/oscar/oscar.c:5885
-#: ../libpurple/protocols/oscar/oscar.c:6166 ../libpurple/request.h:1388
+#: ../libpurple/protocols/oscar/oscar.c:1455
+#: ../libpurple/protocols/oscar/oscar.c:2247
+#: ../libpurple/protocols/oscar/oscar.c:2296
+#: ../libpurple/protocols/oscar/oscar.c:5939
+#: ../libpurple/protocols/oscar/oscar.c:6220 ../libpurple/request.h:1388
 msgid "_OK"
 msgstr "확인(_O)"
 
-#: ../libpurple/protocols/oscar/oscar.c:1491
-#: ../libpurple/protocols/oscar/oscar.c:1534
+#: ../libpurple/protocols/oscar/oscar.c:1494
+#: ../libpurple/protocols/oscar/oscar.c:1537
 #, c-format
 msgid ""
 "You may be disconnected shortly.  You may want to use TOC until this is "
@@ -8582,55 +8727,53 @@
 "곧 접속이 끊깁니다. 이것이 수정되면 TOC 를 사용합니다. 갱신을 위해 %s 을(를) "
 "선택하십시오."
 
-#: ../libpurple/protocols/oscar/oscar.c:1494
-#: ../libpurple/protocols/oscar/oscar.c:1537
-#, fuzzy
+#: ../libpurple/protocols/oscar/oscar.c:1497
+#: ../libpurple/protocols/oscar/oscar.c:1540
 msgid "Unable to get a valid AIM login hash."
-msgstr "Pidgin이 올바른 AIM 로그인 hash를 가져올 수 없습니다."
-
-#: ../libpurple/protocols/oscar/oscar.c:1622
+msgstr "올바른 AIM 로그인 hash를 가져올 수 없습니다."
+
+#: ../libpurple/protocols/oscar/oscar.c:1625
 #, c-format
 msgid "You may be disconnected shortly.  Check %s for updates."
 msgstr "곧 접속이 끊깁니다. 갱신을 위해 %s 을(를) 선택하십시오."
 
-#: ../libpurple/protocols/oscar/oscar.c:1625
-#, fuzzy
+#: ../libpurple/protocols/oscar/oscar.c:1628
 msgid "Unable to get a valid login hash."
-msgstr "Pidgin이 올바른 로그인 hash를 가져올 수 없습니다."
-
-#: ../libpurple/protocols/oscar/oscar.c:1655
+msgstr "올바른 로그인 hash를 가져올 수 없습니다."
+
+#: ../libpurple/protocols/oscar/oscar.c:1658
 msgid "Password sent"
 msgstr "비밀번호 전송 중"
 
-#: ../libpurple/protocols/oscar/oscar.c:1711
+#: ../libpurple/protocols/oscar/oscar.c:1714
 msgid "Unable to initialize connection"
 msgstr "새로운 접속을 열 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2202
+#: ../libpurple/protocols/oscar/oscar.c:2205
 msgid "Please authorize me so I can add you to my buddy list."
 msgstr "제가 당신을 친구 목록에 추가할 수 있도록 승인해 주십시오."
 
-#: ../libpurple/protocols/oscar/oscar.c:2230
+#: ../libpurple/protocols/oscar/oscar.c:2245
 msgid "Authorization Request Message:"
 msgstr "승인 요구 메시지:"
 
-#: ../libpurple/protocols/oscar/oscar.c:2231
+#: ../libpurple/protocols/oscar/oscar.c:2246
 msgid "Please authorize me!"
 msgstr "저를 승인해 주세요!"
 
-#: ../libpurple/protocols/oscar/oscar.c:2272
-#: ../libpurple/protocols/oscar/oscar.c:2280
-#: ../libpurple/protocols/oscar/oscar.c:2407
-#: ../libpurple/protocols/oscar/oscar.c:5263
-#: ../libpurple/protocols/yahoo/yahoo.c:1030
+#: ../libpurple/protocols/oscar/oscar.c:2287
+#: ../libpurple/protocols/oscar/oscar.c:2295
+#: ../libpurple/protocols/oscar/oscar.c:2422
+#: ../libpurple/protocols/oscar/oscar.c:5315
+#: ../libpurple/protocols/yahoo/yahoo.c:1032
 msgid "No reason given."
 msgstr "이유를 알 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2279
+#: ../libpurple/protocols/oscar/oscar.c:2294
 msgid "Authorization Denied Message:"
 msgstr "승인 거부 메시지:"
 
-#: ../libpurple/protocols/oscar/oscar.c:2407
+#: ../libpurple/protocols/oscar/oscar.c:2422
 #, c-format
 msgid ""
 "The user %u has denied your request to add them to your buddy list for the "
@@ -8640,17 +8783,17 @@
 "사용자 %u 님이 다음 이유로 친구 목록에의 추가 요구를 거부했습니다:\n"
 "%s"
 
-#: ../libpurple/protocols/oscar/oscar.c:2408
+#: ../libpurple/protocols/oscar/oscar.c:2423
 msgid "ICQ authorization denied."
 msgstr "ICQ 인증이 거부되었습니다."
 
 #. Someone has granted you authorization
-#: ../libpurple/protocols/oscar/oscar.c:2415
+#: ../libpurple/protocols/oscar/oscar.c:2430
 #, c-format
 msgid "The user %u has granted your request to add them to your buddy list."
 msgstr "사용자 %u 님이 내 친구 목록에의 추가 요구를 승인했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2423
+#: ../libpurple/protocols/oscar/oscar.c:2438
 #, c-format
 msgid ""
 "You have received a special message\n"
@@ -8663,7 +8806,7 @@
 "보낸 사람: %s [%s]\n"
 "%s"
 
-#: ../libpurple/protocols/oscar/oscar.c:2431
+#: ../libpurple/protocols/oscar/oscar.c:2446
 #, c-format
 msgid ""
 "You have received an ICQ page\n"
@@ -8676,7 +8819,7 @@
 "보낸 사람: %s [%s]\n"
 "%s"
 
-#: ../libpurple/protocols/oscar/oscar.c:2439
+#: ../libpurple/protocols/oscar/oscar.c:2454
 #, c-format
 msgid ""
 "You have received an ICQ e-mail from %s [%s]\n"
@@ -8689,24 +8832,24 @@
 "메시지는:\n"
 "%s"
 
-#: ../libpurple/protocols/oscar/oscar.c:2460
+#: ../libpurple/protocols/oscar/oscar.c:2475
 #, c-format
 msgid "ICQ user %u has sent you a buddy: %s (%s)"
 msgstr "ICQ 사용자 %u 님이 나에게 친구 목록을 보내고 있습니다: %s (%s)"
 
-#: ../libpurple/protocols/oscar/oscar.c:2466
+#: ../libpurple/protocols/oscar/oscar.c:2481
 msgid "Do you want to add this buddy to your buddy list?"
 msgstr "이 상대를 친구 목록에 추가하시겠습니까?"
 
-#: ../libpurple/protocols/oscar/oscar.c:2471 ../pidgin/gtkroomlist.c:309
+#: ../libpurple/protocols/oscar/oscar.c:2486 ../pidgin/gtkroomlist.c:309
 msgid "_Add"
 msgstr "추가(_A)"
 
-#: ../libpurple/protocols/oscar/oscar.c:2472
+#: ../libpurple/protocols/oscar/oscar.c:2487
 msgid "_Decline"
 msgstr "거절(_D)"
 
-#: ../libpurple/protocols/oscar/oscar.c:2596
+#: ../libpurple/protocols/oscar/oscar.c:2611
 #, c-format
 msgid "You missed %hu message from %s because it was invalid."
 msgid_plural "You missed %hu messages from %s because they were invalid."
@@ -8715,14 +8858,14 @@
 msgstr[1] ""
 "%2$s 님으로부터의 %1$hu 개의 메시지는 타당하지 않아 받지 못했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2605
+#: ../libpurple/protocols/oscar/oscar.c:2620
 #, c-format
 msgid "You missed %hu message from %s because it was too large."
 msgid_plural "You missed %hu messages from %s because they were too large."
 msgstr[0] "%2$s 님으로부터의 %1$hu개의 메시지는 너무 커서 받지 못했습니다."
 msgstr[1] "%2$s 님으로부터의 %1$hu개의 메시지는 너무 커서 받지 못했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2614
+#: ../libpurple/protocols/oscar/oscar.c:2629
 #, c-format
 msgid ""
 "You missed %hu message from %s because the rate limit has been exceeded."
@@ -8733,7 +8876,7 @@
 msgstr[1] ""
 "속도 제한을 상회하여, %2$s 님으로부터의 %1$hu개의 메시지를 못했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2623
+#: ../libpurple/protocols/oscar/oscar.c:2638
 #, c-format
 msgid "You missed %hu message from %s because he/she was too evil."
 msgid_plural "You missed %hu messages from %s because he/she was too evil."
@@ -8742,14 +8885,14 @@
 msgstr[1] ""
 "유해한 상대방이어서, %2$s 님으로부터의 %1$hu개의 메시지를 못했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2632
+#: ../libpurple/protocols/oscar/oscar.c:2647
 #, c-format
 msgid "You missed %hu message from %s because you are too evil."
 msgid_plural "You missed %hu messages from %s because you are too evil."
 msgstr[0] "유해한 자신이어서, %2$s 님으로부터의 %1$hu개의 메시지를 못했습니다."
 msgstr[1] "유해한 자신이어서, %2$s 님으로부터의 %1$hu개의 메시지를 못했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2641
+#: ../libpurple/protocols/oscar/oscar.c:2656
 #, c-format
 msgid "You missed %hu message from %s for an unknown reason."
 msgid_plural "You missed %hu messages from %s for an unknown reason."
@@ -8759,47 +8902,47 @@
 "원인은 알 수 없지만, %2$s 님으로부터의 %1$hu개의 메시지를 못했습니다."
 
 #. Data is assumed to be the destination sn
-#: ../libpurple/protocols/oscar/oscar.c:2796
+#: ../libpurple/protocols/oscar/oscar.c:2811
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "메시지를 보낼 수 없습니다: %s"
 
-#: ../libpurple/protocols/oscar/oscar.c:2796
-#: ../libpurple/protocols/oscar/oscar.c:2801
-#: ../libpurple/protocols/oscar/oscar.c:2865
+#: ../libpurple/protocols/oscar/oscar.c:2811
+#: ../libpurple/protocols/oscar/oscar.c:2816
+#: ../libpurple/protocols/oscar/oscar.c:2880
 msgid "Unknown reason."
 msgstr "원인을 알 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2799
+#: ../libpurple/protocols/oscar/oscar.c:2814
 #: ../libpurple/protocols/sametime/sametime.c:2409
 #, c-format
 msgid "Unable to send message to %s:"
 msgstr "%s 님에게 메시지를 보낼 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:2865
+#: ../libpurple/protocols/oscar/oscar.c:2880
 #, c-format
 msgid "User information not available: %s"
 msgstr "사용자 정보를 이용할 수 없습니다: %s"
 
-#: ../libpurple/protocols/oscar/oscar.c:2896
+#: ../libpurple/protocols/oscar/oscar.c:2911
 msgid "Online Since"
 msgstr "접속한 일시"
 
-#: ../libpurple/protocols/oscar/oscar.c:2901
+#: ../libpurple/protocols/oscar/oscar.c:2916
 #: ../libpurple/protocols/yahoo/yahoo_profile.c:1185
 msgid "Member Since"
 msgstr "멤버가 된 일시"
 
-#: ../libpurple/protocols/oscar/oscar.c:2936
+#: ../libpurple/protocols/oscar/oscar.c:2951
 msgid "Available Message"
 msgstr "가능한 메시지"
 
-#: ../libpurple/protocols/oscar/oscar.c:3044
+#: ../libpurple/protocols/oscar/oscar.c:3059
 msgid "Your AIM connection may be lost."
 msgstr "AIM 으로의 접속이 끊어진 것 같습니다."
 
 #. The conversion failed!
-#: ../libpurple/protocols/oscar/oscar.c:3232
+#: ../libpurple/protocols/oscar/oscar.c:3247
 msgid ""
 "[Unable to display a message from this user because it contained invalid "
 "characters.]"
@@ -8807,7 +8950,7 @@
 "[메시지에 잘못된 문자가 포함되어 있기 때문에, 이 사용자로부터의 메시지를 표시"
 "할 수 없습니다.]"
 
-#: ../libpurple/protocols/oscar/oscar.c:3396
+#: ../libpurple/protocols/oscar/oscar.c:3411
 msgid ""
 "The last action you attempted could not be performed because you are over "
 "the rate limit. Please wait 10 seconds and try again."
@@ -8815,101 +8958,101 @@
 "속도 제한을 초과했기 때문에, 마지막 조작은 실행할 수 없었습니다. 10초 정도 후"
 "에 다시 시도해 보시기 바랍니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:3479
+#: ../libpurple/protocols/oscar/oscar.c:3494
 #: ../libpurple/protocols/toc/toc.c:977
 #, c-format
 msgid "You have been disconnected from chat room %s."
 msgstr "대화실 %s (으)로부터 접속이 끊어졌습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:3729
+#: ../libpurple/protocols/oscar/oscar.c:3744
 #: ../libpurple/protocols/silc/util.c:585
 #: ../libpurple/protocols/silc10/util.c:581
 msgid "Mobile Phone"
 msgstr "휴대 전화"
 
-#: ../libpurple/protocols/oscar/oscar.c:3759
+#: ../libpurple/protocols/oscar/oscar.c:3774
 msgid "Personal Web Page"
 msgstr "개인 웹페이지"
 
-#: ../libpurple/protocols/oscar/oscar.c:3783
+#: ../libpurple/protocols/oscar/oscar.c:3798
 #: ../libpurple/protocols/qq/buddy_info.c:40
 msgid "Additional Information"
 msgstr "추가 정보"
 
-#: ../libpurple/protocols/oscar/oscar.c:3791
-#: ../libpurple/protocols/oscar/oscar.c:3804
+#: ../libpurple/protocols/oscar/oscar.c:3806
+#: ../libpurple/protocols/oscar/oscar.c:3819
 msgid "Zip Code"
 msgstr "우편 번호"
 
-#: ../libpurple/protocols/oscar/oscar.c:3815
+#: ../libpurple/protocols/oscar/oscar.c:3830
 msgid "Division"
 msgstr "소속"
 
-#: ../libpurple/protocols/oscar/oscar.c:3816
+#: ../libpurple/protocols/oscar/oscar.c:3831
 msgid "Position"
 msgstr "직위"
 
-#: ../libpurple/protocols/oscar/oscar.c:3818
+#: ../libpurple/protocols/oscar/oscar.c:3833
 msgid "Web Page"
 msgstr "웹페이지"
 
-#: ../libpurple/protocols/oscar/oscar.c:3821
+#: ../libpurple/protocols/oscar/oscar.c:3836
 msgid "Work Information"
 msgstr "직업"
 
-#: ../libpurple/protocols/oscar/oscar.c:3877
+#: ../libpurple/protocols/oscar/oscar.c:3892
 msgid "Pop-Up Message"
 msgstr "팝업 메시지"
 
-#: ../libpurple/protocols/oscar/oscar.c:3917
+#: ../libpurple/protocols/oscar/oscar.c:3932
 #, c-format
 msgid "The following screen name is associated with %s"
 msgid_plural "The following screen names are associated with %s"
 msgstr[0] "다음의 아이디는 %s 에 연관되어 있습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:3922
+#: ../libpurple/protocols/oscar/oscar.c:3937
 msgid "Screen name"
 msgstr "아이디"
 
-#: ../libpurple/protocols/oscar/oscar.c:3948
+#: ../libpurple/protocols/oscar/oscar.c:3963
 #, c-format
 msgid "No results found for e-mail address %s"
 msgstr "이메일 주소 %s 에 대한 결과를 찾을 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:3969
+#: ../libpurple/protocols/oscar/oscar.c:3984
 #, c-format
 msgid "You should receive an e-mail asking to confirm %s."
 msgstr "%s 님을 확인하기 위해 질의 메일을 수신해 주십시오."
 
-#: ../libpurple/protocols/oscar/oscar.c:3971
+#: ../libpurple/protocols/oscar/oscar.c:3986
 msgid "Account Confirmation Requested"
 msgstr "계정 인증을 요구했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4002
+#: ../libpurple/protocols/oscar/oscar.c:4017
 #, c-format
 msgid "Error Changing Account Info"
 msgstr "계정 정보 변경 오류"
 
-#: ../libpurple/protocols/oscar/oscar.c:4005
+#: ../libpurple/protocols/oscar/oscar.c:4020
 #, c-format
 msgid ""
 "Error 0x%04x: Unable to format screen name because the requested screen name "
 "differs from the original."
 msgstr "오류 0x%04x: 요구된 아이디가 원본과 상이하여 조형할 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4008
+#: ../libpurple/protocols/oscar/oscar.c:4023
 #, c-format
 msgid "Error 0x%04x: Unable to format screen name because it is invalid."
 msgstr "오류 0x%04x: 요구된 아이디가 상이하여 조형할 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4011
+#: ../libpurple/protocols/oscar/oscar.c:4026
 #, c-format
 msgid ""
 "Error 0x%04x: Unable to format screen name because the requested screen name "
 "is too long."
 msgstr "오류 0x%04x: 요구된 아이디가 너무 길어 조형할 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4014
+#: ../libpurple/protocols/oscar/oscar.c:4029
 #, c-format
 msgid ""
 "Error 0x%04x: Unable to change e-mail address because there is already a "
@@ -8918,7 +9061,7 @@
 "오류 0x%04x: 이 아이디에 대해 이미 요구가 있었기 때문에 이메일 주소를 변경할 "
 "수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4017
+#: ../libpurple/protocols/oscar/oscar.c:4032
 #, c-format
 msgid ""
 "Error 0x%04x: Unable to change e-mail address because the given address has "
@@ -8927,7 +9070,7 @@
 "오류 0x%04x: 많은 아이디에 할당되어 있기 때문에, 이 이메일 주소로는 변경할 "
 "수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4020
+#: ../libpurple/protocols/oscar/oscar.c:4035
 #, c-format
 msgid ""
 "Error 0x%04x: Unable to change e-mail address because the given address is "
@@ -8936,32 +9079,32 @@
 "오류 0x%04x: 이 주소가 상이하기 때문에, 이 이메일 주소로는 변경할 수 없습니"
 "다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4023
+#: ../libpurple/protocols/oscar/oscar.c:4038
 #, c-format
 msgid "Error 0x%04x: Unknown error."
 msgstr "오류 0x%04x: 원인을 알 수 없는 오류입니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4033
+#: ../libpurple/protocols/oscar/oscar.c:4048
 #, c-format
 msgid "The e-mail address for %s is %s"
 msgstr "%s 님의 이메일 주소는 %s 입니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4035
+#: ../libpurple/protocols/oscar/oscar.c:4050
 msgid "Account Info"
 msgstr "계정 정보"
 
-#: ../libpurple/protocols/oscar/oscar.c:4218
+#: ../libpurple/protocols/oscar/oscar.c:4233
 msgid ""
 "Your IM Image was not sent. You must be Direct Connected to send IM Images."
 msgstr ""
 "IM 이미지가 전송되지 않았습니다. IM 이미지를 전송하려면 직접 연결로 해 주십시"
 "오."
 
-#: ../libpurple/protocols/oscar/oscar.c:4489
+#: ../libpurple/protocols/oscar/oscar.c:4504
 msgid "Unable to set AIM profile."
 msgstr "AIM 프로파일을 설정하지 못했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4490
+#: ../libpurple/protocols/oscar/oscar.c:4505
 msgid ""
 "You have probably requested to set your profile before the login procedure "
 "completed.  Your profile remains unset; try setting it again when you are "
@@ -8971,24 +9114,23 @@
 "내 프로파일은 설정되지 않은 상태로 남아 있습니다. 접속이 완료되면 재시도해 주"
 "십시오."
 
-#: ../libpurple/protocols/oscar/oscar.c:4504
-#, fuzzy, c-format
+#: ../libpurple/protocols/oscar/oscar.c:4519
+#, c-format
 msgid ""
 "The maximum profile length of %d byte has been exceeded.  It has been "
 "truncated for you."
 msgid_plural ""
 "The maximum profile length of %d bytes has been exceeded.  It has been "
 "truncated for you."
-msgstr[0] ""
-"프로파일 길이가 최대값 (%d 바이트) 에 도달하였기 때문에, Pidgin이 이를 종결했"
-"습니다."
-
-#: ../libpurple/protocols/oscar/oscar.c:4509
+msgstr[0] "프로파일 길이가 최대값 %d 바이트를 초과하여 일부가 잘렸습니다."
+msgstr[1] "프로파일 길이가 최대값 %d 바이트를 초과하여 일부가 잘렸습니다."
+
+#: ../libpurple/protocols/oscar/oscar.c:4524
 msgid "Profile too long."
 msgstr "프로파일이 너무 깁니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4554
-#, fuzzy, c-format
+#: ../libpurple/protocols/oscar/oscar.c:4569
+#, c-format
 msgid ""
 "The maximum away message length of %d byte has been exceeded.  It has been "
 "truncated for you."
@@ -8996,14 +9138,15 @@
 "The maximum away message length of %d bytes has been exceeded.  It has been "
 "truncated for you."
 msgstr[0] ""
-"자리 비움 메시지 길이가 최대값 (%d 바이트) 에 도달하였기 때문에, Pidgin이 이"
-"를 종결했습니다."
-
-#: ../libpurple/protocols/oscar/oscar.c:4559
+"자리 비움 메시지 길이가 최대값 %d 바이트를 초과하여 일부가 잘렸습니다."
+msgstr[1] ""
+"자리 비움 메시지 길이가 최대값 %d 바이트를 초과하여 일부가 잘렸습니다."
+
+#: ../libpurple/protocols/oscar/oscar.c:4574
 msgid "Away message too long."
 msgstr "자리 비움 메시지가 너무 깁니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4628
+#: ../libpurple/protocols/oscar/oscar.c:4647
 #, fuzzy, c-format
 msgid ""
 "Could not add the buddy %s because the screen name is invalid.  Screen names "
@@ -9013,35 +9156,33 @@
 "아이디가 상이하기 때문에, 친구 %s 을(를) 추가할 수 없었습니다. 아이디의 앞 부"
 "분은 문자, 문자와 숫자와 공백만 또는 숫자만이 가능합니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4630
-#: ../libpurple/protocols/oscar/oscar.c:5060
-#: ../libpurple/protocols/oscar/oscar.c:5075
+#: ../libpurple/protocols/oscar/oscar.c:4649
+#: ../libpurple/protocols/oscar/oscar.c:5101
+#: ../libpurple/protocols/oscar/oscar.c:5116
 msgid "Unable To Add"
 msgstr "추가할 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4739
+#: ../libpurple/protocols/oscar/oscar.c:4768
 msgid "Unable To Retrieve Buddy List"
 msgstr "친구 목록을 가져올 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:4740
-#, fuzzy
+#: ../libpurple/protocols/oscar/oscar.c:4769
 msgid ""
 "The AIM servers were temporarily unable to send your buddy list.  Your buddy "
 "list is not lost, and will probably become available in a few hours."
 msgstr ""
-"Pidgin이 일시적으로 AIM 서버로부터 친구 목록을 가져올 수 없었습니다. 친구 목"
-"록이 유실된 것은 아닙니다. 아마도 몇 시간 후에는 이용이 가능할 것으로 예상합"
-"니다."
-
-#: ../libpurple/protocols/oscar/oscar.c:4922
-#: ../libpurple/protocols/oscar/oscar.c:4924
-#: ../libpurple/protocols/oscar/oscar.c:5140
-#: ../libpurple/protocols/oscar/oscar.c:5141
-#: ../libpurple/protocols/oscar/oscar.c:5146
+"일시적으로 AIM 서버로부터 친구 목록을 가져올 수 없었습니다. 친구 목록이 유실"
+"된 것은 아닙니다. 아마도 몇 시간 후에는 이용이 가능할 것으로 예상합니다."
+
+#: ../libpurple/protocols/oscar/oscar.c:4951
+#: ../libpurple/protocols/oscar/oscar.c:4953
+#: ../libpurple/protocols/oscar/oscar.c:5181
+#: ../libpurple/protocols/oscar/oscar.c:5182
+#: ../libpurple/protocols/oscar/oscar.c:5187
 msgid "Orphans"
 msgstr "고아"
 
-#: ../libpurple/protocols/oscar/oscar.c:5058
+#: ../libpurple/protocols/oscar/oscar.c:5099
 #, c-format
 msgid ""
 "Could not add the buddy %s because you have too many buddies in your buddy "
@@ -9050,17 +9191,17 @@
 "치구 %s 님을 추가할 수 없었습니다. 친구 수가 너무 많습니다. 한 명을 삭제한 "
 "후, 재시도 해 보시기 바랍니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:5058
-#: ../libpurple/protocols/oscar/oscar.c:5073
+#: ../libpurple/protocols/oscar/oscar.c:5099
+#: ../libpurple/protocols/oscar/oscar.c:5114
 msgid "(no name)"
 msgstr "(이름 없음)"
 
-#: ../libpurple/protocols/oscar/oscar.c:5072
+#: ../libpurple/protocols/oscar/oscar.c:5113
 #, fuzzy, c-format
 msgid "Could not add the buddy %s for an unknown reason."
 msgstr "알 수 없는 이유로 명령 적용에 실패했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:5178
+#: ../libpurple/protocols/oscar/oscar.c:5230
 #, c-format
 msgid ""
 "The user %s has given you permission to add you to their buddy list.  Do you "
@@ -9069,22 +9210,22 @@
 "사용자 %s 님이 나를 친구 목록에 추가하는 것을 허가했습니다. 그들을 추가하시겠"
 "습니까?"
 
-#: ../libpurple/protocols/oscar/oscar.c:5186
+#: ../libpurple/protocols/oscar/oscar.c:5238
 msgid "Authorization Given"
 msgstr "승인을 받았습니다."
 
 #. Granted
-#: ../libpurple/protocols/oscar/oscar.c:5259
+#: ../libpurple/protocols/oscar/oscar.c:5311
 #, c-format
 msgid "The user %s has granted your request to add them to your buddy list."
 msgstr "사용자 %s 님은 친구 목록 추가에 대한 내 요구를 승인했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:5260
+#: ../libpurple/protocols/oscar/oscar.c:5312
 msgid "Authorization Granted"
 msgstr "승인을 받았습니다."
 
 #. Denied
-#: ../libpurple/protocols/oscar/oscar.c:5263
+#: ../libpurple/protocols/oscar/oscar.c:5315
 #, c-format
 msgid ""
 "The user %s has denied your request to add them to your buddy list for the "
@@ -9094,52 +9235,52 @@
 "사용자 %s 님은 다음의 이유로 친구 목록 추가에 대한 내 요구를 거부했습니다.:\n"
 "%s"
 
-#: ../libpurple/protocols/oscar/oscar.c:5264
+#: ../libpurple/protocols/oscar/oscar.c:5316
 msgid "Authorization Denied"
 msgstr "인증이 거부되었습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:5300
+#: ../libpurple/protocols/oscar/oscar.c:5352
 #: ../libpurple/protocols/toc/toc.c:1371
 msgid "_Exchange:"
 msgstr "교환(_E):"
 
-#: ../libpurple/protocols/oscar/oscar.c:5340
+#: ../libpurple/protocols/oscar/oscar.c:5392
 msgid "Invalid chat name specified."
 msgstr "잘못된 대화명이 지정되었습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:5409
+#: ../libpurple/protocols/oscar/oscar.c:5461
 msgid "Your IM Image was not sent. You cannot send IM Images in AIM chats."
 msgstr ""
 "IM 이미지가 전송되지 못했습니다. AIM 대화로는 IM 이미지를 보낼 수 없습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:5569
-#: ../libpurple/protocols/oscar/oscar.c:5574
+#: ../libpurple/protocols/oscar/oscar.c:5623
+#: ../libpurple/protocols/oscar/oscar.c:5628
 msgid "Away Message"
 msgstr "자리 비움 메시지"
 
-#: ../libpurple/protocols/oscar/oscar.c:5574
+#: ../libpurple/protocols/oscar/oscar.c:5628
 msgid "<i>(retrieving)</i>"
 msgstr "<i>(가져오는 중)</i>"
 
-#: ../libpurple/protocols/oscar/oscar.c:5774
+#: ../libpurple/protocols/oscar/oscar.c:5828
 msgid "iTunes Music Store Link"
 msgstr ""
 
-#: ../libpurple/protocols/oscar/oscar.c:5882
+#: ../libpurple/protocols/oscar/oscar.c:5936
 #, c-format
 msgid "Buddy Comment for %s"
 msgstr "%s 님에 대한 친구 코멘트"
 
-#: ../libpurple/protocols/oscar/oscar.c:5883
+#: ../libpurple/protocols/oscar/oscar.c:5937
 msgid "Buddy Comment:"
 msgstr "친구 코멘트:"
 
-#: ../libpurple/protocols/oscar/oscar.c:5930
+#: ../libpurple/protocols/oscar/oscar.c:5984
 #, c-format
 msgid "You have selected to open a Direct IM connection with %s."
 msgstr "%s 을(를) 이용한 Direct IM 접속의 시작을 선택했습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:5934
+#: ../libpurple/protocols/oscar/oscar.c:5988
 msgid ""
 "Because this reveals your IP address, it may be considered a security risk.  "
 "Do you wish to continue?"
@@ -9147,64 +9288,64 @@
 "이유는, 내 IP 주소를 표시하게 되기 때문입니다. 이는 개인 정보에 관한 위험성"
 "이 커집니다. 계속 하시겠습니까?"
 
-#: ../libpurple/protocols/oscar/oscar.c:5940
-#: ../libpurple/protocols/oscar/peer.c:1045
+#: ../libpurple/protocols/oscar/oscar.c:5994
+#: ../libpurple/protocols/oscar/peer.c:1047
 msgid "C_onnect"
 msgstr "접속(_O)"
 
-#: ../libpurple/protocols/oscar/oscar.c:5975
+#: ../libpurple/protocols/oscar/oscar.c:6029
 msgid "Get AIM Info"
 msgstr "AIM 정보 가져오기"
 
-#: ../libpurple/protocols/oscar/oscar.c:5981
+#: ../libpurple/protocols/oscar/oscar.c:6035
 msgid "Edit Buddy Comment"
 msgstr "친구 코멘트 편집"
 
-#: ../libpurple/protocols/oscar/oscar.c:5989
+#: ../libpurple/protocols/oscar/oscar.c:6043
 msgid "Get Status Msg"
 msgstr "상태 메시지 가져오기"
 
-#: ../libpurple/protocols/oscar/oscar.c:6002
+#: ../libpurple/protocols/oscar/oscar.c:6056
 msgid "Direct IM"
 msgstr "Direct IM"
 
-#: ../libpurple/protocols/oscar/oscar.c:6024
+#: ../libpurple/protocols/oscar/oscar.c:6078
 msgid "Re-request Authorization"
 msgstr "승인 재요청"
 
-#: ../libpurple/protocols/oscar/oscar.c:6083
+#: ../libpurple/protocols/oscar/oscar.c:6137
 msgid "Require authorization"
 msgstr "승인이 필요합니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:6086
+#: ../libpurple/protocols/oscar/oscar.c:6140
 msgid "Web aware (enabling this will cause you to receive SPAM!)"
 msgstr "Web aware (이것을 사용하면 스팸을 수신하게 됩니다!)"
 
-#: ../libpurple/protocols/oscar/oscar.c:6091
+#: ../libpurple/protocols/oscar/oscar.c:6145
 msgid "ICQ Privacy Options"
 msgstr "ICQ 개인 설정"
 
-#: ../libpurple/protocols/oscar/oscar.c:6110
+#: ../libpurple/protocols/oscar/oscar.c:6164
 msgid "The new formatting is invalid."
 msgstr "새 서식이 잘못되었습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:6111
+#: ../libpurple/protocols/oscar/oscar.c:6165
 msgid "Screen name formatting can change only capitalization and whitespace."
 msgstr "아이디의 서식은 대문자와 공백 문자만 변경할 수 있습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:6164
+#: ../libpurple/protocols/oscar/oscar.c:6218
 msgid "Change Address To:"
 msgstr "변경할 주소:"
 
-#: ../libpurple/protocols/oscar/oscar.c:6210
+#: ../libpurple/protocols/oscar/oscar.c:6264
 msgid "<i>you are not waiting for authorization</i>"
 msgstr "<i>승인을 기다리고 있지 않습니다.</i>"
 
-#: ../libpurple/protocols/oscar/oscar.c:6213
+#: ../libpurple/protocols/oscar/oscar.c:6267
 msgid "You are awaiting authorization from the following buddies"
 msgstr "다음 친구로부터의 승인을 기다리고 있습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:6214
+#: ../libpurple/protocols/oscar/oscar.c:6268
 msgid ""
 "You can re-request authorization from these buddies by right-clicking on "
 "them and selecting \"Re-request Authorization.\""
@@ -9212,73 +9353,73 @@
 "오른쪽 클릭하여 \"승인 재요청\" 을 선택하면, 이들의 친구로부터 인증을 재요청"
 "할 수 있습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:6231
+#: ../libpurple/protocols/oscar/oscar.c:6285
 msgid "Find Buddy by E-Mail"
 msgstr "이메일로부터 친구 찾기"
 
-#: ../libpurple/protocols/oscar/oscar.c:6232
+#: ../libpurple/protocols/oscar/oscar.c:6286
 msgid "Search for a buddy by e-mail address"
 msgstr "이메일 주소로부터 친구를 찾습니다."
 
-#: ../libpurple/protocols/oscar/oscar.c:6233
+#: ../libpurple/protocols/oscar/oscar.c:6287
 msgid "Type the e-mail address of the buddy you are searching for."
 msgstr "검색할 친구의 이메일 주소를 입력해 주십시오."
 
-#: ../libpurple/protocols/oscar/oscar.c:6236
+#: ../libpurple/protocols/oscar/oscar.c:6290
 msgid "_Search"
 msgstr "검색(_S)"
 
-#: ../libpurple/protocols/oscar/oscar.c:6394
+#: ../libpurple/protocols/oscar/oscar.c:6448
 msgid "Set User Info (URL)..."
 msgstr "사용자 정보 설정(URL)..."
 
-#: ../libpurple/protocols/oscar/oscar.c:6405
+#: ../libpurple/protocols/oscar/oscar.c:6459
 msgid "Change Password (URL)"
 msgstr "비밀번호 변경 (URL)"
 
-#: ../libpurple/protocols/oscar/oscar.c:6409
+#: ../libpurple/protocols/oscar/oscar.c:6463
 msgid "Configure IM Forwarding (URL)"
 msgstr "IM 포워딩 (URL) 설정"
 
 #. ICQ actions
-#: ../libpurple/protocols/oscar/oscar.c:6419
+#: ../libpurple/protocols/oscar/oscar.c:6473
 msgid "Set Privacy Options..."
 msgstr "개인 설정 추가..."
 
 #. AIM actions
-#: ../libpurple/protocols/oscar/oscar.c:6426
+#: ../libpurple/protocols/oscar/oscar.c:6480
 msgid "Confirm Account"
 msgstr "계정 확인"
 
-#: ../libpurple/protocols/oscar/oscar.c:6430
+#: ../libpurple/protocols/oscar/oscar.c:6484
 msgid "Display Currently Registered E-Mail Address"
 msgstr "현재 등록되어 있는 이메일 주소 표시"
 
-#: ../libpurple/protocols/oscar/oscar.c:6434
+#: ../libpurple/protocols/oscar/oscar.c:6488
 msgid "Change Currently Registered E-Mail Address..."
 msgstr "현재 등록되어 있는 이메일 주소 변경..."
 
-#: ../libpurple/protocols/oscar/oscar.c:6441
+#: ../libpurple/protocols/oscar/oscar.c:6495
 msgid "Show Buddies Awaiting Authorization"
 msgstr "승인을 기다리는 친구 표시"
 
-#: ../libpurple/protocols/oscar/oscar.c:6447
+#: ../libpurple/protocols/oscar/oscar.c:6501
 msgid "Search for Buddy by E-Mail Address..."
 msgstr "이메일로 친구 검색..."
 
-#: ../libpurple/protocols/oscar/oscar.c:6452
+#: ../libpurple/protocols/oscar/oscar.c:6506
 msgid "Search for Buddy by Information"
 msgstr "정보로 친구 검색..."
 
-#: ../libpurple/protocols/oscar/oscar.c:6520
+#: ../libpurple/protocols/oscar/oscar.c:6574
 msgid "Use recent buddies group"
 msgstr "현재의 그룹 이용"
 
-#: ../libpurple/protocols/oscar/oscar.c:6523
+#: ../libpurple/protocols/oscar/oscar.c:6577
 msgid "Show how long you have been idle"
 msgstr "대기 중 시간 표시"
 
-#: ../libpurple/protocols/oscar/oscar.c:6678
+#: ../libpurple/protocols/oscar/oscar.c:6732
 msgid ""
 "Always use ICQ proxy server for file transfers\n"
 "(slower, but does not reveal your IP address)"
@@ -9286,27 +9427,27 @@
 "파일 전송은 항상 ICQ 프록시 서버 이용\n"
 "(속도는 느리지만, IP 주소가 노출되지 않습니다.)"
 
-#: ../libpurple/protocols/oscar/peer.c:697
+#: ../libpurple/protocols/oscar/peer.c:699
 #, c-format
 msgid "Asking %s to connect to us at %s:%hu for Direct IM."
 msgstr "Direct IM 으로 %s 은(는) %s:%hu 에게 질의가 들어와 있습니다."
 
-#: ../libpurple/protocols/oscar/peer.c:782
+#: ../libpurple/protocols/oscar/peer.c:784
 #, c-format
 msgid "Attempting to connect to %s:%hu."
 msgstr "%s:%hu (으)로 연락처를 시험하고 있습니다."
 
-#: ../libpurple/protocols/oscar/peer.c:856
+#: ../libpurple/protocols/oscar/peer.c:858
 #, c-format
 msgid "Attempting to connect via proxy server."
 msgstr "프록시 서버를 통해 연락처를 시험하고 있습니다."
 
-#: ../libpurple/protocols/oscar/peer.c:1033
+#: ../libpurple/protocols/oscar/peer.c:1035
 #, c-format
 msgid "%s has just asked to directly connect to %s"
 msgstr "%s 은(는) 직접 %s 에 접속하도록 요구했습니다."
 
-#: ../libpurple/protocols/oscar/peer.c:1037
+#: ../libpurple/protocols/oscar/peer.c:1039
 msgid ""
 "This requires a direct connection between the two computers and is necessary "
 "for IM Images.  Because your IP address will be revealed, this may be "
@@ -9468,30 +9609,30 @@
 msgid "Other"
 msgstr "기타"
 
-#: ../libpurple/protocols/qq/buddy_info.c:481
-#: ../libpurple/protocols/qq/buddy_info.c:482
+#: ../libpurple/protocols/qq/buddy_info.c:522
+#: ../libpurple/protocols/qq/buddy_info.c:523
 msgid "Modify my information"
 msgstr "정보 변경"
 
-#: ../libpurple/protocols/qq/buddy_info.c:483
+#: ../libpurple/protocols/qq/buddy_info.c:524
 msgid "Update my information"
 msgstr "정보 갱신"
 
-#: ../libpurple/protocols/qq/buddy_info.c:507
+#: ../libpurple/protocols/qq/buddy_info.c:548
 msgid "Your information has been updated"
 msgstr "정보를 변경했습니다."
 
-#: ../libpurple/protocols/qq/buddy_info.c:560
-#, fuzzy, c-format
+#: ../libpurple/protocols/qq/buddy_info.c:601
+#, c-format
 msgid ""
 "Setting custom faces is not currently supported. Please choose an image from "
 "%s."
 msgstr ""
-"사용자 이모티콘을 설정하려고 했습니다. Pidgin에서는 현재 표준 이모티콘만을 지"
-"원하고 있습니다. 다음으로부터 이미지를 선택해 주십시오:"
-
-#: ../libpurple/protocols/qq/buddy_info.c:577
-#: ../libpurple/protocols/qq/buddy_info.c:590
+"사용자 이모티콘을 설정은 현재 지원되지 않고 있습니다. 다음으로부터 이미지를 "
+"선택해 주십시오: %s."
+
+#: ../libpurple/protocols/qq/buddy_info.c:618
+#: ../libpurple/protocols/qq/buddy_info.c:631
 msgid "Invalid QQ Face"
 msgstr "잘못된 QQ 이모티콘입니다."
 
@@ -9772,12 +9913,12 @@
 msgid "Keep alive error"
 msgstr "읽는 중 오류"
 
-#: ../libpurple/protocols/qq/login_logout.c:408
+#: ../libpurple/protocols/qq/login_logout.c:426
 #, fuzzy
 msgid "Error requesting login token"
 msgstr "접속 생성 중 오류"
 
-#: ../libpurple/protocols/qq/login_logout.c:486
+#: ../libpurple/protocols/qq/login_logout.c:506
 msgid "Unable to login, check debug log"
 msgstr "로그인 할 수 없습니다. 디버그 로그를 확인해 주십시오."
 
@@ -10158,7 +10299,7 @@
 msgid "Send TEST Announcement"
 msgstr "TEST 공지 전송"
 
-#: ../libpurple/protocols/sametime/sametime.c:3586 ../pidgin/gtkconv.c:4354
+#: ../libpurple/protocols/sametime/sametime.c:3586 ../pidgin/gtkconv.c:4434
 msgid "Topic:"
 msgstr "주제:"
 
@@ -10183,7 +10324,7 @@
 msgid "No Sametime Community Server Specified"
 msgstr "Sametime 커뮤니티 서버를 지정해 주십시오."
 
-#: ../libpurple/protocols/sametime/sametime.c:3644 ../pidgin/gtkblist.c:4041
+#: ../libpurple/protocols/sametime/sametime.c:3644 ../pidgin/gtkblist.c:4368
 msgid "Connect"
 msgstr "접속"
 
@@ -10236,10 +10377,6 @@
 "ID '%s' 에 해당하는 사용자가 Sametime 커뮤니티 안에는 없었습니다. 친구 목록에"
 "서 이 항목을 삭제했습니다."
 
-#: ../libpurple/protocols/sametime/sametime.c:4425
-msgid "Unable to add user"
-msgstr "사용자를 추가할 수 없습니다."
-
 #: ../libpurple/protocols/sametime/sametime.c:5011
 #, c-format
 msgid ""
@@ -10360,7 +10497,7 @@
 "다. 이 사용자들을 친구 목록에 추가하거나 또는 다음의 동작 버튼을 선택하여 그"
 "들에게 메시지를 보내는 것이 좋을 것 같습니다."
 
-#: ../libpurple/protocols/sametime/sametime.c:5538 ../pidgin/gtknotify.c:756
+#: ../libpurple/protocols/sametime/sametime.c:5538 ../pidgin/gtknotify.c:762
 msgid "Search Results"
 msgstr "검색 결과"
 
@@ -11629,7 +11766,7 @@
 msgstr "현재의 기분"
 
 #: ../libpurple/protocols/silc/silc.c:741
-#: ../libpurple/protocols/silc10/silc.c:652 ../pidgin/gtkprefs.c:1641
+#: ../libpurple/protocols/silc10/silc.c:652 ../pidgin/gtkprefs.c:1643
 #, c-format
 msgid "Normal"
 msgstr "표준"
@@ -11838,9 +11975,9 @@
 
 #: ../libpurple/protocols/silc/silc.c:1590
 #: ../libpurple/protocols/silc10/silc.c:1519
-#, fuzzy, c-format
+#, c-format
 msgid "Unknown command: %s, (may be a client bug)"
-msgstr "알 수 없는 명령: %s (아마도 Pidgin의 버그일 수 있습니다.)"
+msgstr "알 수 없는 명령: %s (아마 클라이언트의 버그일 수 있습니다.)"
 
 #: ../libpurple/protocols/silc/silc.c:1653
 #: ../libpurple/protocols/silc10/silc.c:1582
@@ -12029,7 +12166,7 @@
 msgstr "Secure Internet Live Conferencing (SILC) 프로토콜"
 
 #: ../libpurple/protocols/silc/silc.c:1910
-#: ../libpurple/protocols/silc10/silc.c:1853 ../pidgin/gtkprefs.c:2036
+#: ../libpurple/protocols/silc10/silc.c:1853 ../pidgin/gtkprefs.c:2038
 msgid "Network"
 msgstr "네트워크"
 
@@ -12297,36 +12434,36 @@
 msgstr "SILC 의 키 쌍을 읽을 수 없습니다: %s"
 
 #. TODO: do we really want to disconnect on a failure to write?
-#: ../libpurple/protocols/simple/simple.c:416
+#: ../libpurple/protocols/simple/simple.c:417
 msgid "Could not write"
 msgstr "쓸 수 없었습니다."
 
-#: ../libpurple/protocols/simple/simple.c:438
-#: ../libpurple/protocols/simple/simple.c:1529
+#: ../libpurple/protocols/simple/simple.c:439
+#: ../libpurple/protocols/simple/simple.c:1545
 msgid "Could not connect"
 msgstr "접속할 수 없었습니다."
 
-#: ../libpurple/protocols/simple/simple.c:1059
+#: ../libpurple/protocols/simple/simple.c:1062
 #, fuzzy
 msgid "Unknown server response."
 msgstr "원인을 알 수 없습니다."
 
-#: ../libpurple/protocols/simple/simple.c:1563
-#: ../libpurple/protocols/simple/simple.c:1605
-#: ../libpurple/protocols/simple/simple.c:1618
-#: ../libpurple/protocols/simple/simple.c:1669
+#: ../libpurple/protocols/simple/simple.c:1579
+#: ../libpurple/protocols/simple/simple.c:1621
+#: ../libpurple/protocols/simple/simple.c:1634
+#: ../libpurple/protocols/simple/simple.c:1685
 msgid "Could not create listen socket"
 msgstr "감시 소켓을 생성할 수 없었습니다."
 
-#: ../libpurple/protocols/simple/simple.c:1586
+#: ../libpurple/protocols/simple/simple.c:1602
 msgid "Couldn't resolve host"
 msgstr "호스트명을 해석할 수 없었습니다."
 
-#: ../libpurple/protocols/simple/simple.c:1677
+#: ../libpurple/protocols/simple/simple.c:1693
 msgid "Could not resolve hostname"
 msgstr "호스트명을 해석할 수 없었습니다."
 
-#: ../libpurple/protocols/simple/simple.c:1694
+#: ../libpurple/protocols/simple/simple.c:1710
 msgid "SIP screen names may not contain whitespaces or @ symbols"
 msgstr "SIP 의 아이디에 공백 또는 @ 기호가 포함되어 있지 않은 것 같습니다."
 
@@ -12338,36 +12475,36 @@
 #. *< id
 #. *< name
 #. *< version
-#: ../libpurple/protocols/simple/simple.c:1870
+#: ../libpurple/protocols/simple/simple.c:1893
 msgid "SIP/SIMPLE Protocol Plugin"
 msgstr "SIP/SIMPLE 프로토콜 플러그인"
 
 #. *  summary
-#: ../libpurple/protocols/simple/simple.c:1871
+#: ../libpurple/protocols/simple/simple.c:1894
 msgid "The SIP/SIMPLE Protocol Plugin"
 msgstr "SIP/SIMPLE 프로토콜 플러그인"
 
-#: ../libpurple/protocols/simple/simple.c:1899
+#: ../libpurple/protocols/simple/simple.c:1922
 msgid "Publish status (note: everyone may watch you)"
 msgstr "상태를 공개 (주: 다른 사용자가 모두 볼 수 있습니다.)"
 
-#: ../libpurple/protocols/simple/simple.c:1905
+#: ../libpurple/protocols/simple/simple.c:1928
 msgid "Use UDP"
 msgstr "UDP 사용"
 
-#: ../libpurple/protocols/simple/simple.c:1907
+#: ../libpurple/protocols/simple/simple.c:1930
 msgid "Use proxy"
 msgstr "프록시 사용"
 
-#: ../libpurple/protocols/simple/simple.c:1909
+#: ../libpurple/protocols/simple/simple.c:1932
 msgid "Proxy"
 msgstr "프록시"
 
-#: ../libpurple/protocols/simple/simple.c:1911
+#: ../libpurple/protocols/simple/simple.c:1934
 msgid "Auth User"
 msgstr "사용자 인증"
 
-#: ../libpurple/protocols/simple/simple.c:1913
+#: ../libpurple/protocols/simple/simple.c:1936
 msgid "Auth Domain"
 msgstr "도메인 인증"
 
@@ -12540,8 +12677,8 @@
 msgid "Password Change Successful"
 msgstr "비밀번호 변경이 성공적으로 완료되었습니다."
 
-#: ../libpurple/protocols/toc/toc.c:1366 ../pidgin/gtkblist.c:5582
-#: ../pidgin/gtkblist.c:5932
+#: ../libpurple/protocols/toc/toc.c:1366 ../pidgin/gtkblist.c:5925
+#: ../pidgin/gtkblist.c:6281
 msgid "_Group:"
 msgstr "그룹(_G):"
 
@@ -12572,9 +12709,8 @@
 msgstr "파일 헤더를 기록할 수 없습니다. 파일은 전송되지 않습니다."
 
 #: ../libpurple/protocols/toc/toc.c:2175
-#, fuzzy
 msgid "Save As..."
-msgstr "아이콘을 다른 이름으로 저장..."
+msgstr "다른 이름으로 저장..."
 
 #: ../libpurple/protocols/toc/toc.c:2209
 #, c-format
@@ -12602,25 +12738,25 @@
 msgid "TOC Protocol Plugin"
 msgstr "TOC 프로토콜 플러그인"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:782
+#: ../libpurple/protocols/yahoo/yahoo.c:784
 #, c-format
 msgid "%s has sent you a webcam invite, which is not yet supported."
 msgstr ""
 
-#: ../libpurple/protocols/yahoo/yahoo.c:838
+#: ../libpurple/protocols/yahoo/yahoo.c:840
 msgid "Your Yahoo! message did not get sent."
 msgstr "Yahoo! 메시지를 보낼 수 없었습니다."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:960
+#: ../libpurple/protocols/yahoo/yahoo.c:962
 #, c-format
 msgid "Yahoo! system message for %s:"
 msgstr "%s 의 Yahoo! 시스템 메시지"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:1029
+#: ../libpurple/protocols/yahoo/yahoo.c:1031
 msgid "Authorization denied message:"
 msgstr "인증 거부 메시지:"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:1047
+#: ../libpurple/protocols/yahoo/yahoo.c:1049
 #, c-format
 msgid ""
 "%s has (retroactively) denied your request to add them to your list for the "
@@ -12629,18 +12765,18 @@
 "%s 은(는) 다음의 이유로 친구 목록에 추가하려는 내 요구를 (이전으로 거슬러 올"
 "라가) 거부했습니다:\" %s"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:1050
+#: ../libpurple/protocols/yahoo/yahoo.c:1052
 #, c-format
 msgid "%s has (retroactively) denied your request to add them to your list."
 msgstr ""
 "%s 은(는) 친구 목록에 추가하려는 내 요구를 (이전으로 거슬러 올라가) 거부했습"
 "니다."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:1052
+#: ../libpurple/protocols/yahoo/yahoo.c:1054
 msgid "Add buddy rejected"
 msgstr "거부할 친구 추가"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:1994
+#: ../libpurple/protocols/yahoo/yahoo.c:1996
 #, fuzzy, c-format
 msgid ""
 "The Yahoo server has requested the use of an unrecognized authentication "
@@ -12651,11 +12787,11 @@
 "Pidgin은 아마도 Yahoo 에 접속을 할 수 없는 것 같습니다. %s (으)로 업데이트 가"
 "능한 지 확인하십시오."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:1997
+#: ../libpurple/protocols/yahoo/yahoo.c:1999
 msgid "Failed Yahoo! Authentication"
 msgstr "Yahoo! 인증 실패"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2063
+#: ../libpurple/protocols/yahoo/yahoo.c:2065
 #, c-format
 msgid ""
 "You have tried to ignore %s, but the user is on your buddy list.  Clicking "
@@ -12664,52 +12800,52 @@
 "%s 을(를) 무시하려고 했지만, 사용자가 친구 목록에 있습니다. 그 사용자를 친구 "
 "목록에서 삭제하고 무시할 경우에는 \"예\" 를 눌러 주십시오."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2066
+#: ../libpurple/protocols/yahoo/yahoo.c:2068
 msgid "Ignore buddy?"
 msgstr "친구를 무시하시겠습니까?"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2129
+#: ../libpurple/protocols/yahoo/yahoo.c:2131
 msgid "Your account is locked, please log in to the Yahoo! website."
 msgstr "사용 중인 계정이 잠겨 있습니다. Yahoo! 웹사이트로 로그인 하십시오."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2132
+#: ../libpurple/protocols/yahoo/yahoo.c:2134
 #, c-format
 msgid "Unknown error number %d. Logging into the Yahoo! website may fix this."
 msgstr ""
 "알 수 없는 오류 번호 %d 입니다. Yahoo! 웹사이트로 로그인하면 해결될 수도 있습"
 "니다."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2186
+#: ../libpurple/protocols/yahoo/yahoo.c:2188
 #, c-format
 msgid "Could not add buddy %s to group %s to the server list on account %s."
 msgstr ""
 "그룹 %2$s 의 친구 %1$s 을(를) 계정 %3$s (으)로 서버 목록에 추가할 수 없었습니"
 "다."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2189
+#: ../libpurple/protocols/yahoo/yahoo.c:2191
 msgid "Could not add buddy to server list"
 msgstr "친구를 서버 목록에 추가할 수 없었습니다."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2308
+#: ../libpurple/protocols/yahoo/yahoo.c:2310
 #, c-format
 msgid "[ Audible %s/%s/%s.swf ] %s"
 msgstr "[ 재생 가능 %s/%s/%s.swf ] %s"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2651
+#: ../libpurple/protocols/yahoo/yahoo.c:2653
 msgid "Received unexpected HTTP response from server."
 msgstr "서버로부터 예상치 못한 HTTP 응답을 받았습니다."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2675
-#: ../libpurple/protocols/yahoo/yahoo.c:2861
-#: ../libpurple/protocols/yahoo/yahoo.c:2964
-#: ../libpurple/protocols/yahoo/yahoo.c:2974
+#: ../libpurple/protocols/yahoo/yahoo.c:2677
+#: ../libpurple/protocols/yahoo/yahoo.c:2863
+#: ../libpurple/protocols/yahoo/yahoo.c:2966
+#: ../libpurple/protocols/yahoo/yahoo.c:2976
 #: ../libpurple/protocols/yahoo/yahoochat.c:1514
 #: ../libpurple/protocols/yahoo/yahoochat.c:1584
 #: ../libpurple/protocols/yahoo/ycht.c:585
 msgid "Connection problem"
 msgstr "접속 오류"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2701
+#: ../libpurple/protocols/yahoo/yahoo.c:2703
 #, fuzzy, c-format
 msgid ""
 "Lost connection with %s:\n"
@@ -12718,7 +12854,7 @@
 "서버와의 접속에 실패했습니다:\n"
 "%s"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:2726
+#: ../libpurple/protocols/yahoo/yahoo.c:2728
 #, fuzzy, c-format
 msgid ""
 "Could not establish a connection with %s:\n"
@@ -12727,115 +12863,106 @@
 "서버와의 접속을 확립하지 못했습니다:\n"
 "%s"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3081
-#: ../libpurple/protocols/yahoo/yahoo.c:3767
+#: ../libpurple/protocols/yahoo/yahoo.c:3083
+#: ../libpurple/protocols/yahoo/yahoo.c:3769
 msgid "Not at Home"
 msgstr "집에 없음"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3083
-#: ../libpurple/protocols/yahoo/yahoo.c:3770
+#: ../libpurple/protocols/yahoo/yahoo.c:3085
+#: ../libpurple/protocols/yahoo/yahoo.c:3772
 msgid "Not at Desk"
 msgstr "자리에 없음"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3085
-#: ../libpurple/protocols/yahoo/yahoo.c:3773
+#: ../libpurple/protocols/yahoo/yahoo.c:3087
+#: ../libpurple/protocols/yahoo/yahoo.c:3775
 msgid "Not in Office"
 msgstr "사무실에 없음"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3089
-#: ../libpurple/protocols/yahoo/yahoo.c:3779
+#: ../libpurple/protocols/yahoo/yahoo.c:3091
+#: ../libpurple/protocols/yahoo/yahoo.c:3781
 msgid "On Vacation"
 msgstr "휴가 중"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3093
-#: ../libpurple/protocols/yahoo/yahoo.c:3785
+#: ../libpurple/protocols/yahoo/yahoo.c:3095
+#: ../libpurple/protocols/yahoo/yahoo.c:3787
 msgid "Stepped Out"
 msgstr "잠시 외출"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3186
-#: ../libpurple/protocols/yahoo/yahoo.c:3216
+#: ../libpurple/protocols/yahoo/yahoo.c:3188
+#: ../libpurple/protocols/yahoo/yahoo.c:3218
 msgid "Not on server list"
 msgstr "서버 목록에 없습니다."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3233
-#: ../libpurple/protocols/yahoo/yahoo.c:3291
+#: ../libpurple/protocols/yahoo/yahoo.c:3235
+#: ../libpurple/protocols/yahoo/yahoo.c:3293
 msgid "Appear Online"
 msgstr "온라인으로 표시"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3236
-#: ../libpurple/protocols/yahoo/yahoo.c:3312
+#: ../libpurple/protocols/yahoo/yahoo.c:3238
+#: ../libpurple/protocols/yahoo/yahoo.c:3314
 msgid "Appear Permanently Offline"
 msgstr "일시적으로 오프라인으로 표시"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3254
+#: ../libpurple/protocols/yahoo/yahoo.c:3256
 msgid "Presence"
 msgstr "자리에 있음"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3297
+#: ../libpurple/protocols/yahoo/yahoo.c:3299
 msgid "Appear Offline"
 msgstr "오프라인으로 표시"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3306
+#: ../libpurple/protocols/yahoo/yahoo.c:3308
 msgid "Don't Appear Permanently Offline"
 msgstr "일시적으로 오프라인으로 표시 안 함"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3354
+#: ../libpurple/protocols/yahoo/yahoo.c:3356
 msgid "Join in Chat"
 msgstr "대화에 참가"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3360
+#: ../libpurple/protocols/yahoo/yahoo.c:3362
 msgid "Initiate Conference"
 msgstr "회의에 초대"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3388
+#: ../libpurple/protocols/yahoo/yahoo.c:3390
 msgid "Presence Settings"
 msgstr "자리 있음 상태 설정"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3394
+#: ../libpurple/protocols/yahoo/yahoo.c:3396
 msgid "Start Doodling"
 msgstr "낙서 시작"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3495
+#: ../libpurple/protocols/yahoo/yahoo.c:3497
 #, fuzzy
 msgid "Activate which ID?"
 msgstr "어느 ID 를 활성화 하시겠습니까?"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3506
+#: ../libpurple/protocols/yahoo/yahoo.c:3508
+#, fuzzy
 msgid "Join whom in chat?"
 msgstr "어느 대화에 참가하시겠습니까?"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3518
+#: ../libpurple/protocols/yahoo/yahoo.c:3520
 msgid "Activate ID..."
 msgstr "ID 활성화..."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3522
+#: ../libpurple/protocols/yahoo/yahoo.c:3524
 msgid "Join User in Chat..."
 msgstr "대화에 참가..."
 
-#: ../libpurple/protocols/yahoo/yahoo.c:3527
+#: ../libpurple/protocols/yahoo/yahoo.c:3529
 #, fuzzy
 msgid "Open Inbox"
 msgstr "Hotmail의 받은 편지함 열기"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4119
-#, fuzzy
-msgid "Buzz"
-msgstr "버저!!"
-
-#: ../libpurple/protocols/yahoo/yahoo.c:4121
-#, c-format
-msgid "Buzzing %s..."
-msgstr ""
-
-#: ../libpurple/protocols/yahoo/yahoo.c:4136
+#: ../libpurple/protocols/yahoo/yahoo.c:4138
 msgid "join &lt;room&gt;:  Join a chat room on the Yahoo network"
 msgstr "join &lt;대화실&gt;: Yahoo 네트워크 상에 있는 대화에 참가"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4141
+#: ../libpurple/protocols/yahoo/yahoo.c:4143
 msgid "list: List rooms on the Yahoo network"
 msgstr "list: Yahoo 네트워크 상에 있는 대화실 목록 표시"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4149
+#: ../libpurple/protocols/yahoo/yahoo.c:4151
 msgid "doodle: Request user to start a Doodle session"
 msgstr "doodle: 사용자에게 낙서 요구"
 
@@ -12849,56 +12976,56 @@
 #. *< version
 #. *  summary
 #. *  description
-#: ../libpurple/protocols/yahoo/yahoo.c:4358
 #: ../libpurple/protocols/yahoo/yahoo.c:4360
+#: ../libpurple/protocols/yahoo/yahoo.c:4362
 msgid "Yahoo Protocol Plugin"
 msgstr "Yahoo! 프로토콜 플러그인"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4383
+#: ../libpurple/protocols/yahoo/yahoo.c:4385
 msgid "Yahoo Japan"
 msgstr "Yahoo Korea! 에 접속"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4386
+#: ../libpurple/protocols/yahoo/yahoo.c:4388
 msgid "Pager server"
 msgstr "호출기 서버"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4389
+#: ../libpurple/protocols/yahoo/yahoo.c:4391
 msgid "Japan Pager server"
 msgstr "한국 호출기 서버"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4392
+#: ../libpurple/protocols/yahoo/yahoo.c:4394
 msgid "Pager port"
 msgstr "호출기 포트"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4395
+#: ../libpurple/protocols/yahoo/yahoo.c:4397
 msgid "File transfer server"
 msgstr "파일 전송 서버"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4398
+#: ../libpurple/protocols/yahoo/yahoo.c:4400
 msgid "Japan file transfer server"
 msgstr "한국 파일 전송 서버"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4401
+#: ../libpurple/protocols/yahoo/yahoo.c:4403
 msgid "File transfer port"
 msgstr "파일 전송 포트"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4404
+#: ../libpurple/protocols/yahoo/yahoo.c:4406
 msgid "Chat room locale"
 msgstr "대화실 위치"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4407
+#: ../libpurple/protocols/yahoo/yahoo.c:4409
 msgid "Ignore conference and chatroom invitations"
 msgstr "회의 및 대화실 초대 무시"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4415
+#: ../libpurple/protocols/yahoo/yahoo.c:4417
 msgid "Chat room list URL"
 msgstr "대화실 URL 목록"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4418
+#: ../libpurple/protocols/yahoo/yahoo.c:4420
 msgid "Yahoo Chat server"
 msgstr "Yahoo 대화 서버"
 
-#: ../libpurple/protocols/yahoo/yahoo.c:4421
+#: ../libpurple/protocols/yahoo/yahoo.c:4423
 msgid "Yahoo Chat port"
 msgstr "Yahoo 대화 포트 번호"
 
@@ -13258,8 +13385,8 @@
 msgid "Exposure"
 msgstr "노출"
 
-#: ../libpurple/proxy.c:459 ../libpurple/proxy.c:894 ../libpurple/proxy.c:1049
-#: ../libpurple/proxy.c:1617
+#: ../libpurple/proxy.c:461 ../libpurple/proxy.c:899 ../libpurple/proxy.c:1058
+#: ../libpurple/proxy.c:1629
 #, c-format
 msgid ""
 "Unable to create socket:\n"
@@ -13268,30 +13395,30 @@
 "소켓을 생성할 수 없습니다:\n"
 "%s"
 
-#: ../libpurple/proxy.c:659
+#: ../libpurple/proxy.c:662
 #, c-format
 msgid "Unable to parse response from HTTP proxy: %s\n"
 msgstr "HTTP 프록시로부터의 응답을 해석할 수 없습니다: %s\n"
 
-#: ../libpurple/proxy.c:698 ../libpurple/proxy.c:744 ../libpurple/proxy.c:780
-#: ../libpurple/proxy.c:792
+#: ../libpurple/proxy.c:701 ../libpurple/proxy.c:747 ../libpurple/proxy.c:783
+#: ../libpurple/proxy.c:795
 #, c-format
 msgid "HTTP proxy connection error %d"
 msgstr "HTTP 프록시 접속 오류 %d"
 
-#: ../libpurple/proxy.c:788
+#: ../libpurple/proxy.c:791
 #, c-format
 msgid "Access denied: HTTP proxy server forbids port %d tunneling."
 msgstr ""
 "접근이 거부되었습니다: HTTP 프록시 서버가 포트 번호 %d 의 터널링을 거부했습니"
 "다."
 
-#: ../libpurple/proxy.c:1012
+#: ../libpurple/proxy.c:1019
 #, c-format
 msgid "Error resolving %s"
 msgstr "%s 을(를) 해석하는 중 오류"
 
-#: ../libpurple/proxy.c:1714
+#: ../libpurple/proxy.c:1727
 msgid "Could not resolve host name"
 msgstr "호스트명을 해석할 수 없었습니다."
 
@@ -13339,7 +13466,7 @@
 msgid "%s has requested your attention!"
 msgstr ""
 
-#: ../libpurple/server.c:796
+#: ../libpurple/server.c:793
 #, c-format
 msgid ""
 "%s has invited %s to the chat room %s:\n"
@@ -13348,12 +13475,12 @@
 "%s 님이 %s 님을 대화실 %s (으)로 초대하고 있습니다:\n"
 "%s"
 
-#: ../libpurple/server.c:801
+#: ../libpurple/server.c:798
 #, c-format
 msgid "%s has invited %s to the chat room %s\n"
 msgstr "%s 님이 %s 님을 대화실 %s (으)로 초대하고 있습니다:\n"
 
-#: ../libpurple/server.c:805
+#: ../libpurple/server.c:802
 msgid "Accept chat invitation?"
 msgstr "대화실로의 초대를 수락하시겠습니까?"
 
@@ -13379,15 +13506,14 @@
 msgid "Unset"
 msgstr "해제"
 
-#: ../libpurple/status.c:156 ../pidgin/gtkstatusbox.c:1059
-#, fuzzy
+#: ../libpurple/status.c:156 ../pidgin/gtkdocklet.c:553
+#: ../pidgin/gtkstatusbox.c:1059
 msgid "Do not disturb"
-msgstr "방해하지 말아 주세요."
+msgstr "다른 용무 중"
 
 #: ../libpurple/status.c:159
-#, fuzzy
 msgid "Extended away"
-msgstr "멀리 자리 비움"
+msgstr "장기 자리 비움"
 
 #: ../libpurple/status.c:160
 msgid "Mobile"
@@ -13398,47 +13524,62 @@
 msgid "%s changed status from %s to %s"
 msgstr "%s 님이 상태를 %s (으)로부터 %s (으)로 변경했습니다."
 
-#: ../libpurple/status.c:619
+#: ../libpurple/status.c:612
+#, fuzzy, c-format
+msgid "%s (%s) changed status from %s to %s"
+msgstr "%s 님이 상태를 %s (으)로부터 %s (으)로 변경했습니다."
+
+#: ../libpurple/status.c:623
 #, c-format
 msgid "%s is now %s"
 msgstr "%s 님을 %s 님으로 인식했습니다."
 
-#: ../libpurple/status.c:624
+#: ../libpurple/status.c:625
+#, fuzzy, c-format
+msgid "%s (%s) is now %s"
+msgstr "%s 님을 %s 님으로 인식했습니다."
+
+#: ../libpurple/status.c:631
 #, c-format
 msgid "%s is no longer %s"
 msgstr "이제 %s 님은 %s 님이 아닙니다."
 
-#: ../libpurple/status.c:1234
+#: ../libpurple/status.c:633
+#, fuzzy, c-format
+msgid "%s (%s) is no longer %s"
+msgstr "이제 %s 님은 %s 님이 아닙니다."
+
+#: ../libpurple/status.c:1244
 #, c-format
 msgid "%s became idle"
 msgstr "%s 님이 대기 중이 되었습니다."
 
-#: ../libpurple/status.c:1251
+#: ../libpurple/status.c:1261
 #, c-format
 msgid "%s became unidle"
 msgstr "%s 님이 대기 중으로부터 복귀했습니다."
 
-#: ../libpurple/status.c:1314
+#: ../libpurple/status.c:1324
 #, c-format
 msgid "+++ %s became idle"
 msgstr "+++ %s 님이 대기 중이 되었습니다."
 
-#: ../libpurple/status.c:1316
+#: ../libpurple/status.c:1326
 #, c-format
 msgid "+++ %s became unidle"
 msgstr "+++ %s 님이 대기 중으로부터 복귀했습니다."
 
-#: ../libpurple/util.c:718
+#: ../libpurple/util.c:701
 #, c-format
 msgid "%x %X"
 msgstr "%x %X"
 
-#: ../libpurple/util.c:2722
+#: ../libpurple/util.c:2706
 #, c-format
 msgid "Error Reading %s"
 msgstr "%s 을(를) 읽는 중 오류"
 
-#: ../libpurple/util.c:2723
+#: ../libpurple/util.c:2707
 #, c-format
 msgid ""
 "An error was encountered reading your %s.  They have not been loaded, and "
@@ -13447,67 +13588,67 @@
 "%s 을(를) 읽는 중 오류가 발생했습니다. 이 정보는 읽을 수 없습니다. 또한, 오래"
 "된 파일 이름을 \"%s~\" (으)로 변경했습니다."
 
-#: ../libpurple/util.c:3223
+#: ../libpurple/util.c:3207
 msgid "Calculating..."
 msgstr "계산 중..."
 
-#: ../libpurple/util.c:3226
+#: ../libpurple/util.c:3210
 msgid "Unknown."
 msgstr "알 수 없음."
 
-#: ../libpurple/util.c:3252
+#: ../libpurple/util.c:3236
 #, c-format
 msgid "%d second"
 msgid_plural "%d seconds"
 msgstr[0] "%d 초"
 msgstr[1] "%d 초"
 
-#: ../libpurple/util.c:3264
+#: ../libpurple/util.c:3248
 #, c-format
 msgid "%d day"
 msgid_plural "%d days"
 msgstr[0] "%d 일"
 msgstr[1] "%d 일"
 
-#: ../libpurple/util.c:3272
+#: ../libpurple/util.c:3256
 #, c-format
 msgid "%s, %d hour"
 msgid_plural "%s, %d hours"
 msgstr[0] "%s %d 시간"
 msgstr[1] "%s %d 시간"
 
-#: ../libpurple/util.c:3278
+#: ../libpurple/util.c:3262
 #, c-format
 msgid "%d hour"
 msgid_plural "%d hours"
 msgstr[0] "%d 시간"
 msgstr[1] "%d 시간"
 
-#: ../libpurple/util.c:3286
+#: ../libpurple/util.c:3270
 #, c-format
 msgid "%s, %d minute"
 msgid_plural "%s, %d minutes"
 msgstr[0] "%s %d 분"
 msgstr[1] "%s %d 분"
 
-#: ../libpurple/util.c:3292
+#: ../libpurple/util.c:3276
 #, c-format
 msgid "%d minute"
 msgid_plural "%d minutes"
 msgstr[0] "%d 분"
 msgstr[1] "%d 분"
 
-#: ../libpurple/util.c:3552
+#: ../libpurple/util.c:3536
 #, c-format
 msgid "Could not open %s: Redirected too many times"
 msgstr ""
 
-#: ../libpurple/util.c:3589 ../libpurple/util.c:3885
+#: ../libpurple/util.c:3573 ../libpurple/util.c:3869
 #, c-format
 msgid "Unable to connect to %s"
 msgstr "%s (으)로 접속할 수 없습니다."
 
-#: ../libpurple/util.c:3712
+#: ../libpurple/util.c:3696
 #, c-format
 msgid ""
 "Unable to allocate enough memory to hold the contents from %s.  The web "
@@ -13516,17 +13657,17 @@
 "%s (으)로부터 받은 정보를 저장하기 위한 메모리를 확보하지 못했습니다. 웹 서버"
 "로부터 무언가 악의를 가지고 전송하고 있을 가능성이 있습니다."
 
-#: ../libpurple/util.c:3747
+#: ../libpurple/util.c:3731
 #, c-format
 msgid "Error reading from %s: %s"
 msgstr "%s (으)로부터 읽는 중 오류: %s"
 
-#: ../libpurple/util.c:3778
+#: ../libpurple/util.c:3762
 #, c-format
 msgid "Error writing to %s: %s"
 msgstr "%s (으)로 쓰는 중 오류: %s"
 
-#: ../libpurple/util.c:3803
+#: ../libpurple/util.c:3787
 #, c-format
 msgid "Unable to connect to %s: %s"
 msgstr "%s (으)로 접속할 수 없습니다: %s"
@@ -13536,19 +13677,18 @@
 msgstr "인터넷 메신저"
 
 #: ../pidgin.desktop.in.h:2
-#, fuzzy
 msgid "Pidgin Internet Messenger"
-msgstr "인터넷 메신저"
+msgstr "Pidgin 인터넷 메신저"
 
 #: ../pidgin.desktop.in.h:3
 msgid "Send instant messages over multiple protocols"
 msgstr "복수의 프로토콜을 이용하여 인터넷 메시지를 보냅니다."
 
-#: ../pidgin/eggtrayicon.c:129
+#: ../pidgin/eggtrayicon.c:128
 msgid "Orientation"
 msgstr "방향"
 
-#: ../pidgin/eggtrayicon.c:130
+#: ../pidgin/eggtrayicon.c:129
 msgid "The orientation of the tray."
 msgstr "트레이의 방향입니다."
 
@@ -13559,11 +13699,11 @@
 
 #: ../pidgin/gtkaccount.c:428
 msgid "Pro_tocol:"
-msgstr "프로토콜(_t):"
+msgstr "프로토콜(_T):"
 
 #: ../pidgin/gtkaccount.c:439
 msgid "Screen _name:"
-msgstr "아이디(_n):"
+msgstr "아이디(_N):"
 
 #: ../pidgin/gtkaccount.c:529
 msgid "_Local alias:"
@@ -13617,7 +13757,7 @@
 msgid "SOCKS 5"
 msgstr "SOCKS 5"
 
-#: ../pidgin/gtkaccount.c:967 ../pidgin/gtkprefs.c:1211
+#: ../pidgin/gtkaccount.c:967 ../pidgin/gtkprefs.c:1213
 msgid "Use Environmental Settings"
 msgstr "환경 설정 사용"
 
@@ -13639,15 +13779,15 @@
 msgid "Proxy Options"
 msgstr "프록시 설정"
 
-#: ../pidgin/gtkaccount.c:1044 ../pidgin/gtkprefs.c:1205
+#: ../pidgin/gtkaccount.c:1044 ../pidgin/gtkprefs.c:1207
 msgid "Proxy _type:"
 msgstr "프록시 형식(_T):"
 
-#: ../pidgin/gtkaccount.c:1053 ../pidgin/gtkprefs.c:1226
+#: ../pidgin/gtkaccount.c:1053 ../pidgin/gtkprefs.c:1228
 msgid "_Host:"
 msgstr "호스트명(_H):"
 
-#: ../pidgin/gtkaccount.c:1057 ../pidgin/gtkprefs.c:1244
+#: ../pidgin/gtkaccount.c:1057 ../pidgin/gtkprefs.c:1246
 msgid "_Port:"
 msgstr "포트 번호(_P):"
 
@@ -13655,7 +13795,7 @@
 msgid "_Username:"
 msgstr "사용자명(_U):"
 
-#: ../pidgin/gtkaccount.c:1072 ../pidgin/gtkprefs.c:1281
+#: ../pidgin/gtkaccount.c:1072 ../pidgin/gtkprefs.c:1283
 msgid "Pa_ssword:"
 msgstr "비밀번호(_S):"
 
@@ -13668,32 +13808,32 @@
 msgid "An account already exists with the specified criteria."
 msgstr ""
 
-#: ../pidgin/gtkaccount.c:1473
+#: ../pidgin/gtkaccount.c:1474
 msgid "Add Account"
 msgstr "계정 추가"
 
-#: ../pidgin/gtkaccount.c:1492
+#: ../pidgin/gtkaccount.c:1493
 msgid "_Basic"
 msgstr "기본 설정(_B)"
 
-#: ../pidgin/gtkaccount.c:1499
+#: ../pidgin/gtkaccount.c:1500
 msgid "Create this new account on the server"
 msgstr ""
 
-#: ../pidgin/gtkaccount.c:1515
+#: ../pidgin/gtkaccount.c:1516
 msgid "_Advanced"
 msgstr "고급 설정(_A)"
 
-#: ../pidgin/gtkaccount.c:1973 ../pidgin/gtkplugin.c:569
+#: ../pidgin/gtkaccount.c:1974 ../pidgin/gtkplugin.c:569
 msgid "Enabled"
 msgstr "사용"
 
-#: ../pidgin/gtkaccount.c:2001
+#: ../pidgin/gtkaccount.c:2002
 msgid "Protocol"
 msgstr "프로토콜"
 
-#: ../pidgin/gtkaccount.c:2201
-#, fuzzy, c-format
+#: ../pidgin/gtkaccount.c:2202
+#, c-format
 msgid ""
 "<span size='larger' weight='bold'>Welcome to %s!</span>\n"
 "\n"
@@ -13705,260 +13845,289 @@
 "You can come back to this window to add, edit, or remove accounts from "
 "<b>Accounts->Add/Edit</b> in the Buddy List window"
 msgstr ""
-"<span size='larger' weight='bold'>Pidgin에 오신 것을 환영합니다!</span>\n"
-"\n"
-"아직 IM 계정을 설정하지 않았습니다. Pidgin을 사용하여 접속을 시작하는 경우에"
-"는 아래에 있는 <b>추가</b> 버튼을 누른 후, 계정 정보를 입력해 주십시오. "
-"Pidgin을 사용하여 복수의 IM 계정을 접속하는 경우에는, 각 계정마다 <b>추가</"
-"b> 버튼을 눌러 설정해 주십시오.\n"
+"<span size='larger' weight='bold'>%s에 오신 것을 환영합니다!</span>\n"
+"\n"
+"아직 계정이 설정되지 않았습니다. %s을 사용하여 접속을 시작하는 경우에는 아래"
+"에 있는 <b>추가</b> 버튼을 누른 후, 계정 정보를 입력하십시오. %s을 사용하여 "
+"복수의 계정으로 접속하는 경우에는, 각 계정마다 <b>추가</b> 버튼을 눌러 설정하"
+"십시오.\n"
 "\n"
 "친구 목록 창에 있는 <b>계정 -> 추가/편집</b> 메뉴에서도 이 창을 열 수 있습니"
 "다."
 
-#: ../pidgin/gtkblist.c:767
-msgid "Join a Chat"
-msgstr "대화 참가"
-
-#: ../pidgin/gtkblist.c:788
+#: ../pidgin/gtkblist.c:524
+#, c-format
+msgid "You have %d contact named %s. Would you like to merge them?"
+msgid_plural ""
+"You currently have %d contacts named %s. Would you like to merge them?"
+msgstr[0] ""
+
+#: ../pidgin/gtkblist.c:525
+msgid ""
+"Merging these contacts will cause them to share a single entry on the buddy "
+"list and use a single conversation window. You can separate them again by "
+"choosing 'Expand' from the contact's context menu"
+msgstr ""
+
+#: ../pidgin/gtkblist.c:527
+#, fuzzy
+msgid "_Merge"
+msgstr "메시지(_M):"
+
+#: ../pidgin/gtkblist.c:945
 msgid ""
 "Please enter the appropriate information about the chat you would like to "
 "join.\n"
 msgstr "참가할 대화에 대해 적당한 정보를 입력해 주십시오.\n"
 
-#. Set up stuff for the account box
-#: ../pidgin/gtkblist.c:799 ../pidgin/gtkblist.c:5530
-#: ../pidgin/gtkblist.c:5893 ../pidgin/gtkpounce.c:539
-#: ../pidgin/gtkroomlist.c:396
+#: ../pidgin/gtkblist.c:956 ../pidgin/gtkblist.c:6242
+#: ../pidgin/gtkpounce.c:546 ../pidgin/gtkroomlist.c:396
 msgid "_Account:"
 msgstr "계정(_A):"
 
-#: ../pidgin/gtkblist.c:1088 ../pidgin/gtkprivacy.c:603
+#: ../pidgin/gtkblist.c:1245 ../pidgin/gtkprivacy.c:603
 #: ../pidgin/gtkprivacy.c:617
 msgid "_Block"
 msgstr "거부(_B)"
 
-#: ../pidgin/gtkblist.c:1088
+#: ../pidgin/gtkblist.c:1245
 msgid "Un_block"
 msgstr "거부 안 함(_B)"
 
-#: ../pidgin/gtkblist.c:1139
+#: ../pidgin/gtkblist.c:1288
+msgid "Move to"
+msgstr ""
+
+#: ../pidgin/gtkblist.c:1328
 msgid "Get _Info"
 msgstr "정보 가져오기(_I)"
 
-#: ../pidgin/gtkblist.c:1142 ../pidgin/pidginstock.c:90
+#: ../pidgin/gtkblist.c:1331 ../pidgin/pidginstock.c:90
 msgid "I_M"
 msgstr "인스턴트 메시지(_M)"
 
-#: ../pidgin/gtkblist.c:1148
-#, fuzzy
-msgid "_Send File"
-msgstr "파일 전송"
-
-#: ../pidgin/gtkblist.c:1155
-#, fuzzy
-msgid "Add Buddy _Pounce"
-msgstr "친구 알림 추가"
-
-#: ../pidgin/gtkblist.c:1160 ../pidgin/gtkblist.c:1164
-#: ../pidgin/gtkblist.c:1269 ../pidgin/gtkblist.c:1292
+#: ../pidgin/gtkblist.c:1337
+#, fuzzy
+msgid "_Send File..."
+msgstr "파일 전송(_S)"
+
+#: ../pidgin/gtkblist.c:1344
+#, fuzzy
+msgid "Add Buddy _Pounce..."
+msgstr "친구 알림 추가(_P)"
+
+#: ../pidgin/gtkblist.c:1349 ../pidgin/gtkblist.c:1353
+#: ../pidgin/gtkblist.c:1468 ../pidgin/gtkblist.c:1491
 msgid "View _Log"
 msgstr "로그 보기(_L)"
 
-#: ../pidgin/gtkblist.c:1177 ../pidgin/gtkblist.c:1186
-#: ../pidgin/gtkblist.c:1277 ../pidgin/gtkblist.c:1298
+#: ../pidgin/gtkblist.c:1359
+#, fuzzy
+msgid "Hide when offline"
+msgstr "오프라인일 때에는 허가되지 않았습니다."
+
+#: ../pidgin/gtkblist.c:1359
+#, fuzzy
+msgid "Show when offline"
+msgstr "오프라인일 때에는 허가되지 않았습니다."
+
+#: ../pidgin/gtkblist.c:1373 ../pidgin/gtkblist.c:1382
+#: ../pidgin/gtkblist.c:1476 ../pidgin/gtkblist.c:1497
 msgid "_Alias..."
 msgstr "별칭(_A)..."
 
-#: ../pidgin/gtkblist.c:1180 ../pidgin/gtkblist.c:1188
-#: ../pidgin/gtkblist.c:1279 ../pidgin/gtkblist.c:1300
+#: ../pidgin/gtkblist.c:1376 ../pidgin/gtkblist.c:1384
+#: ../pidgin/gtkblist.c:1478 ../pidgin/gtkblist.c:1499
 msgid "_Remove"
 msgstr "삭제(_R)"
 
-#: ../pidgin/gtkblist.c:1238
-msgid "Add a _Buddy"
-msgstr "친구 추가(_B)"
-
-#: ../pidgin/gtkblist.c:1241
-msgid "Add a C_hat"
-msgstr "대화 추가(_H)"
-
-#: ../pidgin/gtkblist.c:1244
+#: ../pidgin/gtkblist.c:1434
+#, fuzzy
+msgid "Add _Buddy..."
+msgstr "친구 추가"
+
+#: ../pidgin/gtkblist.c:1437
+#, fuzzy
+msgid "Add C_hat..."
+msgstr "대화 추가"
+
+#: ../pidgin/gtkblist.c:1440
 msgid "_Delete Group"
 msgstr "그룹 삭제(_D)"
 
-#: ../pidgin/gtkblist.c:1246
+#: ../pidgin/gtkblist.c:1442
 msgid "_Rename"
 msgstr "이름 바꾸기(_R)"
 
 #. join button
-#: ../pidgin/gtkblist.c:1265 ../pidgin/gtkroomlist.c:307
+#: ../pidgin/gtkblist.c:1462 ../pidgin/gtkroomlist.c:307
 #: ../pidgin/gtkroomlist.c:460 ../pidgin/pidginstock.c:88
 msgid "_Join"
 msgstr "참가(_J)"
 
-#: ../pidgin/gtkblist.c:1267
+#: ../pidgin/gtkblist.c:1464
 msgid "Auto-Join"
 msgstr "자동 참가"
 
-#: ../pidgin/gtkblist.c:1305 ../pidgin/gtkblist.c:1329
+#: ../pidgin/gtkblist.c:1466
+#, fuzzy
+msgid "Persistent"
+msgstr "페르시아어"
+
+#: ../pidgin/gtkblist.c:1504 ../pidgin/gtkblist.c:1527
 msgid "_Collapse"
 msgstr "숨기기(_C)"
 
-#: ../pidgin/gtkblist.c:1334
+#: ../pidgin/gtkblist.c:1532
 msgid "_Expand"
 msgstr "보이기(_E)"
 
-#: ../pidgin/gtkblist.c:1585 ../pidgin/gtkblist.c:1597
-#: ../pidgin/gtkblist.c:4603 ../pidgin/gtkblist.c:4616
+#: ../pidgin/gtkblist.c:1783 ../pidgin/gtkblist.c:1795
+#: ../pidgin/gtkblist.c:4929 ../pidgin/gtkblist.c:4942
 msgid "/Tools/Mute Sounds"
 msgstr "/도구/소리 끄기"
 
-#: ../pidgin/gtkblist.c:2057 ../pidgin/gtkconv.c:4840
-#: ../pidgin/gtkpounce.c:430
+#: ../pidgin/gtkblist.c:2255 ../pidgin/gtkconv.c:4919
+#: ../pidgin/gtkpounce.c:437
 msgid ""
 "You are not currently signed on with an account that can add that buddy."
 msgstr "지금 친구 추가가 가능한 계정에 접속되어 있지 않습니다."
 
 #. Buddies menu
-#: ../pidgin/gtkblist.c:2869
+#: ../pidgin/gtkblist.c:3067
 msgid "/_Buddies"
 msgstr "/친구(_B)"
 
-#: ../pidgin/gtkblist.c:2870
+#: ../pidgin/gtkblist.c:3068
 msgid "/Buddies/New Instant _Message..."
 msgstr "/친구/새 인스턴스 메시지(_M)..."
 
-#: ../pidgin/gtkblist.c:2871
+#: ../pidgin/gtkblist.c:3069
 msgid "/Buddies/Join a _Chat..."
 msgstr "/친구/대화 참가(_C)..."
 
-#: ../pidgin/gtkblist.c:2872
+#: ../pidgin/gtkblist.c:3070
 msgid "/Buddies/Get User _Info..."
 msgstr "/친구/사용자 정보 가져오기(_I)..."
 
-#: ../pidgin/gtkblist.c:2873
+#: ../pidgin/gtkblist.c:3071
 msgid "/Buddies/View User _Log..."
 msgstr "/친구/사용자 로그 보기(_L)..."
 
-#: ../pidgin/gtkblist.c:2875
-#, fuzzy
-msgid "/Buddies/Show"
-msgstr "/친구(_B)"
-
-#: ../pidgin/gtkblist.c:2876
-#, fuzzy
+#: ../pidgin/gtkblist.c:3073
+#, fuzzy
+msgid "/Buddies/Sh_ow"
+msgstr "/친구/보기"
+
+#: ../pidgin/gtkblist.c:3074
 msgid "/Buddies/Show/_Offline Buddies"
-msgstr "/친구/오프라인 친구 표시(_O)"
-
-#: ../pidgin/gtkblist.c:2877
-#, fuzzy
+msgstr "/친구/보기/오프라인 친구(_O)"
+
+#: ../pidgin/gtkblist.c:3075
 msgid "/Buddies/Show/_Empty Groups"
-msgstr "/친구/빈 그룹 표시(_E)"
-
-#: ../pidgin/gtkblist.c:2878
-#, fuzzy
+msgstr "/친구/보기/빈 그룹(_E)"
+
+#: ../pidgin/gtkblist.c:3076
 msgid "/Buddies/Show/Buddy _Details"
-msgstr "/친구/친구 상세 표시(_D)"
-
-#: ../pidgin/gtkblist.c:2879
-#, fuzzy
+msgstr "/친구/보기/친구 상세(_D)"
+
+#: ../pidgin/gtkblist.c:3077
 msgid "/Buddies/Show/Idle _Times"
-msgstr "/친구/대기 시간 표시(_T)"
-
-#: ../pidgin/gtkblist.c:2880
-#, fuzzy
+msgstr "/친구/보기/대기 시간(_T)"
+
+#: ../pidgin/gtkblist.c:3078
 msgid "/Buddies/Show/_Protocol Icons"
-msgstr "/친구/빈 그룹 표시(_E)"
-
-#: ../pidgin/gtkblist.c:2881
+msgstr "/친구/보기/프로토콜 아이콘(_P)"
+
+#: ../pidgin/gtkblist.c:3079
 msgid "/Buddies/_Sort Buddies"
 msgstr "/친구/친구 정렬(_S)"
 
-#: ../pidgin/gtkblist.c:2883
+#: ../pidgin/gtkblist.c:3081
 msgid "/Buddies/_Add Buddy..."
 msgstr "/친구/친구 추가(_A)..."
 
-#: ../pidgin/gtkblist.c:2884
+#: ../pidgin/gtkblist.c:3082
 msgid "/Buddies/Add C_hat..."
 msgstr "/친구/대화 추가(_H)..."
 
-#: ../pidgin/gtkblist.c:2885
+#: ../pidgin/gtkblist.c:3083
 msgid "/Buddies/Add _Group..."
 msgstr "/친구/그룹 추가(_G)..."
 
-#: ../pidgin/gtkblist.c:2887
+#: ../pidgin/gtkblist.c:3085
 msgid "/Buddies/_Quit"
 msgstr "/친구/종료(_Q)"
 
 #. Accounts menu
-#: ../pidgin/gtkblist.c:2890
+#: ../pidgin/gtkblist.c:3088
 msgid "/_Accounts"
 msgstr "/계정(_A)"
 
-#: ../pidgin/gtkblist.c:2891 ../pidgin/gtkblist.c:6589
-msgid "/Accounts/Add\\/Edit"
-msgstr "/계정/추가\\/편집"
+#: ../pidgin/gtkblist.c:3089 ../pidgin/gtkblist.c:6943
+#, fuzzy
+msgid "/Accounts/Manage"
+msgstr "/계정"
 
 #. Tools
-#: ../pidgin/gtkblist.c:2894
+#: ../pidgin/gtkblist.c:3092
 msgid "/_Tools"
 msgstr "/도구(_T)"
 
-#: ../pidgin/gtkblist.c:2895
+#: ../pidgin/gtkblist.c:3093
 msgid "/Tools/Buddy _Pounces"
 msgstr "/도구/친구 알림(_P)"
 
-#: ../pidgin/gtkblist.c:2896
-#, fuzzy
+#: ../pidgin/gtkblist.c:3094
 msgid "/Tools/_Certificates"
-msgstr "/도구/설정(_E)"
-
-#: ../pidgin/gtkblist.c:2897
+msgstr "/도구/인증(_C)"
+
+#: ../pidgin/gtkblist.c:3095
 msgid "/Tools/Plu_gins"
 msgstr "/도구/플러그인(_G)"
 
-#: ../pidgin/gtkblist.c:2898
+#: ../pidgin/gtkblist.c:3096
 msgid "/Tools/Pr_eferences"
 msgstr "/도구/설정(_E)"
 
-#: ../pidgin/gtkblist.c:2899
+#: ../pidgin/gtkblist.c:3097
 msgid "/Tools/Pr_ivacy"
 msgstr "/도구/개인 정보(_I)"
 
-#: ../pidgin/gtkblist.c:2901
+#: ../pidgin/gtkblist.c:3099
 msgid "/Tools/_File Transfers"
 msgstr "/도구/파일 전송(_F)"
 
-#: ../pidgin/gtkblist.c:2902
+#: ../pidgin/gtkblist.c:3100
 msgid "/Tools/R_oom List"
 msgstr "/도구/대화실 목록(_O)"
 
-#: ../pidgin/gtkblist.c:2903
+#: ../pidgin/gtkblist.c:3101
 msgid "/Tools/System _Log"
 msgstr "/도구/시스템 로그(_L)"
 
-#: ../pidgin/gtkblist.c:2905
+#: ../pidgin/gtkblist.c:3103
 msgid "/Tools/Mute _Sounds"
 msgstr "/도구/소리 끄기(_S)"
 
 #. Help
-#: ../pidgin/gtkblist.c:2907
+#: ../pidgin/gtkblist.c:3105
 msgid "/_Help"
 msgstr "/도움말(_H)"
 
-#: ../pidgin/gtkblist.c:2908
+#: ../pidgin/gtkblist.c:3106
 msgid "/Help/Online _Help"
 msgstr "/도움말/온라인 도움말(_H)"
 
-#: ../pidgin/gtkblist.c:2909
+#: ../pidgin/gtkblist.c:3107
 msgid "/Help/_Debug Window"
 msgstr "/도움말/디버그 창(_D)"
 
-#: ../pidgin/gtkblist.c:2911 ../pidgin/gtkblist.c:2913
+#: ../pidgin/gtkblist.c:3109 ../pidgin/gtkblist.c:3111
 msgid "/Help/_About"
 msgstr "/도움말/Pidgin 정보(_A)"
 
-#: ../pidgin/gtkblist.c:2942
+#: ../pidgin/gtkblist.c:3140
 #, c-format
 msgid ""
 "\n"
@@ -13967,171 +14136,168 @@
 "\n"
 "<b>계정:</b> %s"
 
-#: ../pidgin/gtkblist.c:3020
+#: ../pidgin/gtkblist.c:3218
 msgid "Buddy Alias"
 msgstr "친구의 별칭"
 
-#: ../pidgin/gtkblist.c:3049
+#: ../pidgin/gtkblist.c:3247
 msgid "Logged In"
 msgstr "접속 시간"
 
-#: ../pidgin/gtkblist.c:3095
+#: ../pidgin/gtkblist.c:3293
 msgid "Last Seen"
 msgstr "마지막에 만난 것은"
 
-#: ../pidgin/gtkblist.c:3116
+#: ../pidgin/gtkblist.c:3314
 msgid "Spooky"
 msgstr "Spooky"
 
-#: ../pidgin/gtkblist.c:3118
+#: ../pidgin/gtkblist.c:3316
 msgid "Awesome"
 msgstr "Awesome"
 
-#: ../pidgin/gtkblist.c:3120
+#: ../pidgin/gtkblist.c:3318
 msgid "Rockin'"
 msgstr "Rockin'"
 
-#: ../pidgin/gtkblist.c:3453
+#: ../pidgin/gtkblist.c:3657
 #, fuzzy, c-format
 msgid "Idle %dd %dh %02dm"
 msgstr "대기 시간: %dh %02dm"
 
-#: ../pidgin/gtkblist.c:3455
+#: ../pidgin/gtkblist.c:3659
 #, c-format
 msgid "Idle %dh %02dm"
 msgstr "대기 시간: %dh %02dm"
 
-#: ../pidgin/gtkblist.c:3457
+#: ../pidgin/gtkblist.c:3661
 #, c-format
 msgid "Idle %dm"
 msgstr "대기 시간: %dm"
 
-#: ../pidgin/gtkblist.c:3602
+#: ../pidgin/gtkblist.c:3814
 msgid "/Buddies/New Instant Message..."
 msgstr "/친구/새 인스턴트 메시지..."
 
-#: ../pidgin/gtkblist.c:3603 ../pidgin/gtkblist.c:3636
+#: ../pidgin/gtkblist.c:3815 ../pidgin/gtkblist.c:3848
 msgid "/Buddies/Join a Chat..."
 msgstr "/친구/대화 참가..."
 
-#: ../pidgin/gtkblist.c:3604
+#: ../pidgin/gtkblist.c:3816
 msgid "/Buddies/Get User Info..."
 msgstr "/친구/사용자 정보 가져오기..."
 
-#: ../pidgin/gtkblist.c:3605
+#: ../pidgin/gtkblist.c:3817
 msgid "/Buddies/Add Buddy..."
 msgstr "/친구/친구 추가..."
 
-#: ../pidgin/gtkblist.c:3606 ../pidgin/gtkblist.c:3639
+#: ../pidgin/gtkblist.c:3818 ../pidgin/gtkblist.c:3851
 msgid "/Buddies/Add Chat..."
 msgstr "/친구/대화 추가..."
 
-#: ../pidgin/gtkblist.c:3607
+#: ../pidgin/gtkblist.c:3819
 msgid "/Buddies/Add Group..."
 msgstr "/친구/그룹 추가..."
 
-#: ../pidgin/gtkblist.c:3642
+#: ../pidgin/gtkblist.c:3854
 msgid "/Tools/Privacy"
 msgstr "/도구/개인 정보"
 
-#: ../pidgin/gtkblist.c:3645
+#: ../pidgin/gtkblist.c:3857
 msgid "/Tools/Room List"
 msgstr "/도구/대화실 목록"
 
-#: ../pidgin/gtkblist.c:3742 ../pidgin/gtkdocklet.c:153
+#: ../pidgin/gtkblist.c:3989 ../pidgin/gtkdocklet.c:155
+#: ../pidgin/gtkdocklet.c:160
 #, c-format
 msgid "%d unread message from %s\n"
 msgid_plural "%d unread messages from %s\n"
 msgstr[0] "%2$s 님으로부터 %1$d개의 읽지 않은 메일이 있습니다.\n"
 msgstr[1] "%2$s さんから %1$d個の未?のメッセ?ジがあります\n"
 
-#: ../pidgin/gtkblist.c:3822
+#: ../pidgin/gtkblist.c:4149
 msgid "Manually"
 msgstr "수동 정렬"
 
-#: ../pidgin/gtkblist.c:3824
-msgid "Alphabetically"
-msgstr "알파벳순"
-
-#: ../pidgin/gtkblist.c:3825
+#: ../pidgin/gtkblist.c:4152
 msgid "By status"
 msgstr "상태순"
 
-#: ../pidgin/gtkblist.c:3826
+#: ../pidgin/gtkblist.c:4153
 msgid "By log size"
 msgstr "로그 크기순"
 
-#: ../pidgin/gtkblist.c:4031 ../pidgin/gtkconn.c:179
+#: ../pidgin/gtkblist.c:4358 ../pidgin/gtkconn.c:180
 #, c-format
 msgid "%s disconnected"
 msgstr "%s 님은 접속을 끊었습니다."
 
-#: ../pidgin/gtkblist.c:4067
+#: ../pidgin/gtkblist.c:4393
 #, c-format
 msgid "<span color=\"red\">%s disconnected: %s</span>"
 msgstr "<span color=\"red\">%s 님은 접속을 끊었습니다: %s</span>"
 
-#: ../pidgin/gtkblist.c:4219
+#: ../pidgin/gtkblist.c:4545
 msgid "<b>Username:</b>"
 msgstr "<b>사용자명</b>:"
 
-#: ../pidgin/gtkblist.c:4226
+#: ../pidgin/gtkblist.c:4552
 msgid "<b>Password:</b>"
 msgstr "<b>비밀번호</b>:"
 
-#: ../pidgin/gtkblist.c:4237
+#: ../pidgin/gtkblist.c:4563
 msgid "_Login"
 msgstr "로그인(_L)"
 
-#: ../pidgin/gtkblist.c:4320
+#: ../pidgin/gtkblist.c:4646
 msgid "/Accounts"
 msgstr "/계정"
 
 #. Translators: Please maintain the use of -> and <- to refer to menu heirarchy
-#: ../pidgin/gtkblist.c:4334
-#, fuzzy, c-format
+#: ../pidgin/gtkblist.c:4660
+#, c-format
 msgid ""
 "<span weight='bold' size='larger'>Welcome to %s!</span>\n"
 "\n"
 "You have no accounts enabled. Enable your IM accounts from the <b>Accounts</"
-"b> window at <b>Accounts->Add/Edit</b>. Once you enable accounts, you'll be "
+"b> window at <b>Accounts->Manage</b>. Once you enable accounts, you'll be "
 "able to sign on, set your status, and talk to your friends."
 msgstr ""
-"<span weight='bold' size='larger'>Pidgin에 오신 것을 환영합니다!</span>\n"
-"\n"
-"아직 계정을 사용할 수 없습니다.<b>계정 -> 추가/편집</b> 메뉴에서 <b>계정</b> "
-"창을 열어 IM 계정을 사용으로 선택해 주십시오. 계정을 사용으로 하면, 접속하여 "
+"<span weight='bold' size='larger'>%s에 오신 것을 환영합니다!</span>\n"
+"\n"
+"아직 사용할 수 있는 계정이 없습니다.<b>계정 -> 추가/편집</b> 메뉴에서 <b>계정"
+"</b> 창을 열어 계정을 사용으로 선택하십시오. 계정 사용을 선택하면, 접속하여 "
 "상태를 설정한 후 친구와 대화할 수 있습니다."
 
 #. set the Show Offline Buddies option. must be done
 #. * after the treeview or faceprint gets mad. -Robot101
 #.
-#: ../pidgin/gtkblist.c:4597
+#: ../pidgin/gtkblist.c:4923
 #, fuzzy
 msgid "/Buddies/Show/Offline Buddies"
-msgstr "/친구/오프라인 친구 표시"
-
-#: ../pidgin/gtkblist.c:4600
+msgstr "/친구/보기/오프라인 친구(_O)"
+
+#: ../pidgin/gtkblist.c:4926
 #, fuzzy
 msgid "/Buddies/Show/Empty Groups"
-msgstr "/친구/빈 그룹 표시"
-
-#: ../pidgin/gtkblist.c:4606
+msgstr "/친구/보기/빈 그룹(_E)"
+
+#: ../pidgin/gtkblist.c:4932
 #, fuzzy
 msgid "/Buddies/Show/Buddy Details"
-msgstr "/친구/친구 상세 표시"
-
-#: ../pidgin/gtkblist.c:4609
+msgstr "/친구/보기/친구 상세(_D)"
+
+#: ../pidgin/gtkblist.c:4935
 #, fuzzy
 msgid "/Buddies/Show/Idle Times"
-msgstr "/친구/대기 시간 표시"
-
-#: ../pidgin/gtkblist.c:4612
+msgstr "/친구/보기/대기 시간(_T)"
+
+#: ../pidgin/gtkblist.c:4938
 #, fuzzy
 msgid "/Buddies/Show/Protocol Icons"
-msgstr "/친구/빈 그룹 표시"
-
-#: ../pidgin/gtkblist.c:5507
+msgstr "/친구/보기/프로토콜 아이콘(_P)"
+
+#: ../pidgin/gtkblist.c:5850
 msgid ""
 "Please enter the screen name of the person you would like to add to your "
 "buddy list. You may optionally enter an alias, or nickname,  for the buddy. "
@@ -14141,80 +14307,93 @@
 "는 별명을 입력할 수 있습니다(선택 사항). 별칭은 가능한 경우 아이디 대신으로 "
 "표시됩니다.\n"
 
+#. Set up stuff for the account box
+#: ../pidgin/gtkblist.c:5873
+#, fuzzy
+msgid "A_ccount:"
+msgstr "계정:"
+
 #. End of account box
-#: ../pidgin/gtkblist.c:5542
+#: ../pidgin/gtkblist.c:5885
 #, fuzzy
 msgid "_Screen name:"
 msgstr "아이디:"
 
-#: ../pidgin/gtkblist.c:5564 ../pidgin/gtkblist.c:5914
+#: ../pidgin/gtkblist.c:5907 ../pidgin/gtkblist.c:6263
 #, fuzzy
 msgid "A_lias:"
 msgstr "별칭:"
 
-#: ../pidgin/gtkblist.c:5826
+#: ../pidgin/gtkblist.c:6175
 msgid "This protocol does not support chat rooms."
 msgstr "이 프로토콜에서는 대화실을 지원하지 않습니다."
 
-#: ../pidgin/gtkblist.c:5842
+#: ../pidgin/gtkblist.c:6191
 msgid ""
 "You are not currently signed on with any protocols that have the ability to "
 "chat."
 msgstr "대화가 가능한 프로토콜로 접속되어 있지 않습니다."
 
-#: ../pidgin/gtkblist.c:5883
+#: ../pidgin/gtkblist.c:6232
 msgid ""
 "Please enter an alias, and the appropriate information about the chat you "
 "would like to add to your buddy list.\n"
 msgstr ""
 "이 대화의 별칭과 친구 목록에 추가할 때의 적당한 정보를 입력해 주십시오.\n"
 
-#: ../pidgin/gtkblist.c:5964
+#: ../pidgin/gtkblist.c:6291
+msgid "Autojoin when account becomes online."
+msgstr ""
+
+#: ../pidgin/gtkblist.c:6292
+msgid "Hide chat when the window is closed."
+msgstr ""
+
+#: ../pidgin/gtkblist.c:6318
 msgid "Please enter the name of the group to be added."
 msgstr "참가할 그룹명을 입력해 주십시오."
 
-#: ../pidgin/gtkblist.c:6609
+#: ../pidgin/gtkblist.c:6963
 #, fuzzy
 msgid "<PurpleMain>/Accounts/"
 msgstr "<PidginMain>/계정/"
 
-#: ../pidgin/gtkblist.c:6633
+#: ../pidgin/gtkblist.c:6987
 msgid "_Edit Account"
 msgstr "계정 편집(_E)"
 
-#: ../pidgin/gtkblist.c:6646 ../pidgin/gtkconv.c:3073
+#: ../pidgin/gtkblist.c:7000 ../pidgin/gtkconv.c:3143
 msgid "No actions available"
 msgstr "이용 가능한 동작이 없습니다."
 
-#: ../pidgin/gtkblist.c:6654
+#: ../pidgin/gtkblist.c:7008
 msgid "_Disable"
 msgstr "사용 안 함(_D)"
 
-#: ../pidgin/gtkblist.c:6666
+#: ../pidgin/gtkblist.c:7020
 msgid "Enable Account"
 msgstr "계정 사용"
 
-#: ../pidgin/gtkblist.c:6672
+#: ../pidgin/gtkblist.c:7026
 #, fuzzy
 msgid "<PurpleMain>/Accounts/Enable Account"
 msgstr "<PidginMain>/계정/계정을 사용합니다."
 
-#: ../pidgin/gtkblist.c:6721
+#: ../pidgin/gtkblist.c:7075
 msgid "/Tools"
 msgstr "/도구"
 
-#: ../pidgin/gtkblist.c:6791
+#: ../pidgin/gtkblist.c:7145
 msgid "/Buddies/Sort Buddies"
 msgstr "/친구/친구 정렬"
 
 #. Widget creation function
 #: ../pidgin/gtkcertmgr.c:530
-#, fuzzy
 msgid "SSL Servers"
-msgstr "서버"
-
-#: ../pidgin/gtkconn.c:180
-#, fuzzy, c-format
+msgstr "SSL 서버"
+
+#: ../pidgin/gtkconn.c:181
+#, c-format
 msgid ""
 "%s\n"
 "\n"
@@ -14223,218 +14402,212 @@
 msgstr ""
 "%s\n"
 "\n"
-"오류를 해결하고 계정을 다시 사용할 수 있을 때까지 Pidgin이 재접속하지 않습니"
-"다."
-
-#: ../pidgin/gtkconv.c:482
+"오류를 해결하고 계정을 다시 사용할 수 있을 때까지 %s이 재접속하지 않습니다."
+
+#: ../pidgin/gtkconv.c:524
 #, fuzzy
 msgid "Unknown command."
 msgstr "알 수 없는 명령입니다."
 
-#: ../pidgin/gtkconv.c:754 ../pidgin/gtkconv.c:780
+#: ../pidgin/gtkconv.c:796 ../pidgin/gtkconv.c:822
 msgid "That buddy is not on the same protocol as this chat."
 msgstr "그 친구는 이 대화의 동일 프로토콜 상에 있지 않습니다."
 
-#: ../pidgin/gtkconv.c:774
+#: ../pidgin/gtkconv.c:816
 msgid ""
 "You are not currently signed on with an account that can invite that buddy."
 msgstr "지금 그 친구를 초대 가능한 계정으로 접속되어 있지 않습니다."
 
-#: ../pidgin/gtkconv.c:827
+#: ../pidgin/gtkconv.c:869
 msgid "Invite Buddy Into Chat Room"
 msgstr "친구를 대화실로 초대"
 
 #. Put our happy label in it.
-#: ../pidgin/gtkconv.c:857
+#: ../pidgin/gtkconv.c:899
 msgid ""
 "Please enter the name of the user you wish to invite, along with an optional "
 "invite message."
 msgstr ""
 "초대하고자 하는 상대의 이름과 초대 메시지(선택 사항)을 입력해 주십시오."
 
-#: ../pidgin/gtkconv.c:878
+#: ../pidgin/gtkconv.c:920
 msgid "_Buddy:"
 msgstr "친구(_B):"
 
-#: ../pidgin/gtkconv.c:889 ../pidgin/gtksavedstatuses.c:1194
+#: ../pidgin/gtkconv.c:931 ../pidgin/gtksavedstatuses.c:1194
 #: ../pidgin/gtksavedstatuses.c:1528
 msgid "_Message:"
 msgstr "메시지(_M):"
 
-#: ../pidgin/gtkconv.c:947 ../pidgin/gtkconv.c:2598 ../pidgin/gtkdebug.c:219
-#: ../pidgin/gtkft.c:543
-msgid "Unable to open file."
-msgstr "파일을 열 수 없습니다."
-
-#: ../pidgin/gtkconv.c:953
+#: ../pidgin/gtkconv.c:995
 #, c-format
 msgid "<h1>Conversation with %s</h1>\n"
 msgstr "<h1>%s 님과의 대화</h1>\n"
 
-#: ../pidgin/gtkconv.c:991
+#: ../pidgin/gtkconv.c:1033
 msgid "Save Conversation"
 msgstr "대화 저장"
 
-#: ../pidgin/gtkconv.c:1140 ../pidgin/gtkdebug.c:167 ../pidgin/gtkdebug.c:743
+#: ../pidgin/gtkconv.c:1179 ../pidgin/gtkdebug.c:167 ../pidgin/gtkdebug.c:743
 msgid "Find"
 msgstr "찾기"
 
-#: ../pidgin/gtkconv.c:1166 ../pidgin/gtkdebug.c:195
+#: ../pidgin/gtkconv.c:1205 ../pidgin/gtkdebug.c:195
 msgid "_Search for:"
 msgstr "검색 단어(_S):"
 
-#: ../pidgin/gtkconv.c:1622
+#: ../pidgin/gtkconv.c:1676
 msgid "Un-Ignore"
 msgstr "무시 안 함"
 
-#: ../pidgin/gtkconv.c:1625
+#: ../pidgin/gtkconv.c:1679
 msgid "Ignore"
 msgstr "무시할 대상"
 
-#: ../pidgin/gtkconv.c:1645
+#: ../pidgin/gtkconv.c:1699
 msgid "Get Away Message"
 msgstr "자리 비움 메시지"
 
-#: ../pidgin/gtkconv.c:1668
+#: ../pidgin/gtkconv.c:1722
 msgid "Last said"
 msgstr "마지막 메시지:"
 
-#: ../pidgin/gtkconv.c:2606
+#: ../pidgin/gtkconv.c:2671
 msgid "Unable to save icon file to disk."
 msgstr "아이콘 파일을 저장할 수 없습니다."
 
-#: ../pidgin/gtkconv.c:2657
+#: ../pidgin/gtkconv.c:2722
 msgid "Save Icon"
 msgstr "아이콘 저장"
 
-#: ../pidgin/gtkconv.c:2709
+#: ../pidgin/gtkconv.c:2774
 msgid "Animate"
 msgstr "애니메이션 사용"
 
-#: ../pidgin/gtkconv.c:2714
+#: ../pidgin/gtkconv.c:2779
 msgid "Hide Icon"
 msgstr "아이콘 숨기기"
 
-#: ../pidgin/gtkconv.c:2717
+#: ../pidgin/gtkconv.c:2782
 msgid "Save Icon As..."
 msgstr "아이콘을 다른 이름으로 저장..."
 
-#: ../pidgin/gtkconv.c:2721
+#: ../pidgin/gtkconv.c:2786
 msgid "Set Custom Icon..."
 msgstr "사용자 아이콘 설정..."
 
-#: ../pidgin/gtkconv.c:2734
+#: ../pidgin/gtkconv.c:2799
 msgid "Remove Custom Icon"
 msgstr "사용자 아이콘 삭제"
 
-#: ../pidgin/gtkconv.c:2861
+#: ../pidgin/gtkconv.c:2931
 msgid "Show All"
 msgstr ""
 
 #. Conversation menu
-#: ../pidgin/gtkconv.c:2880
+#: ../pidgin/gtkconv.c:2950
 msgid "/_Conversation"
 msgstr "/대화(_C)"
 
-#: ../pidgin/gtkconv.c:2882
+#: ../pidgin/gtkconv.c:2952
 msgid "/Conversation/New Instant _Message..."
 msgstr "/대화/새 인스턴트 메시지(_M)..."
 
-#: ../pidgin/gtkconv.c:2887
+#: ../pidgin/gtkconv.c:2957
 msgid "/Conversation/_Find..."
 msgstr "/대화/찾기(_F)..."
 
-#: ../pidgin/gtkconv.c:2889
+#: ../pidgin/gtkconv.c:2959
 msgid "/Conversation/View _Log"
 msgstr "/대화/로그 보기(_L)"
 
-#: ../pidgin/gtkconv.c:2890
+#: ../pidgin/gtkconv.c:2960
 msgid "/Conversation/_Save As..."
 msgstr "/대화/다른 이름으로 저장(_S)..."
 
-#: ../pidgin/gtkconv.c:2892
+#: ../pidgin/gtkconv.c:2962
 msgid "/Conversation/Clea_r Scrollback"
 msgstr "/대화/화면 비우기(_R)"
 
-#: ../pidgin/gtkconv.c:2896
+#: ../pidgin/gtkconv.c:2966
 msgid "/Conversation/Se_nd File..."
 msgstr "/대화/파일 전송(_N)..."
 
-#: ../pidgin/gtkconv.c:2897
+#: ../pidgin/gtkconv.c:2967
 msgid "/Conversation/Add Buddy _Pounce..."
 msgstr "/대화/친구 알림 추가(_P)..."
 
-#: ../pidgin/gtkconv.c:2899
+#: ../pidgin/gtkconv.c:2969
 msgid "/Conversation/_Get Info"
 msgstr "/대화/정보 가져오기(_G)"
 
-#: ../pidgin/gtkconv.c:2901
+#: ../pidgin/gtkconv.c:2971
 msgid "/Conversation/In_vite..."
 msgstr "/대화/초대(_V)..."
 
-#: ../pidgin/gtkconv.c:2903
+#: ../pidgin/gtkconv.c:2973
 msgid "/Conversation/M_ore"
 msgstr "/대화/자세히(_O)"
 
-#: ../pidgin/gtkconv.c:2907
+#: ../pidgin/gtkconv.c:2977
 msgid "/Conversation/Al_ias..."
 msgstr "/대화/별칭(_I)..."
 
-#: ../pidgin/gtkconv.c:2909
+#: ../pidgin/gtkconv.c:2979
 msgid "/Conversation/_Block..."
 msgstr "/대화/거부(_B)..."
 
-#: ../pidgin/gtkconv.c:2911
+#: ../pidgin/gtkconv.c:2981
 #, fuzzy
 msgid "/Conversation/_Unblock..."
 msgstr "/대화/거부(_B)..."
 
-#: ../pidgin/gtkconv.c:2913
+#: ../pidgin/gtkconv.c:2983
 msgid "/Conversation/_Add..."
 msgstr "/대화/추가(_A)..."
 
-#: ../pidgin/gtkconv.c:2915
+#: ../pidgin/gtkconv.c:2985
 msgid "/Conversation/_Remove..."
 msgstr "/대화/삭제(_R)..."
 
-#: ../pidgin/gtkconv.c:2920
+#: ../pidgin/gtkconv.c:2990
 msgid "/Conversation/Insert Lin_k..."
 msgstr "/대화/링크 삽입(_K)..."
 
-#: ../pidgin/gtkconv.c:2922
+#: ../pidgin/gtkconv.c:2992
 msgid "/Conversation/Insert Imag_e..."
 msgstr "/대화/이미지 삽입(_E)..."
 
-#: ../pidgin/gtkconv.c:2928
+#: ../pidgin/gtkconv.c:2998
 msgid "/Conversation/_Close"
 msgstr "/대화/닫기(_C)"
 
 #. Options
-#: ../pidgin/gtkconv.c:2932
+#: ../pidgin/gtkconv.c:3002
 msgid "/_Options"
 msgstr "/설정(_O)"
 
-#: ../pidgin/gtkconv.c:2933
+#: ../pidgin/gtkconv.c:3003
 msgid "/Options/Enable _Logging"
 msgstr "/설정/로그 기록(_L)"
 
-#: ../pidgin/gtkconv.c:2934
+#: ../pidgin/gtkconv.c:3004
 msgid "/Options/Enable _Sounds"
 msgstr "/설정/소리 사용(_S)"
 
-#: ../pidgin/gtkconv.c:2936
+#: ../pidgin/gtkconv.c:3006
 msgid "/Options/Show Formatting _Toolbars"
 msgstr "/설정/서식 도구모음 표시(_T)"
 
-#: ../pidgin/gtkconv.c:2937
+#: ../pidgin/gtkconv.c:3007
 msgid "/Options/Show Ti_mestamps"
 msgstr "/설정/타임스탬프 표시(_M)"
 
-#: ../pidgin/gtkconv.c:3061
+#: ../pidgin/gtkconv.c:3131
 msgid "/Conversation/More"
 msgstr "/대화/자세히(_O)"
 
-#: ../pidgin/gtkconv.c:3117
+#: ../pidgin/gtkconv.c:3187
 #, fuzzy
 msgid "/Options"
 msgstr "/설정(_O)"
@@ -14444,175 +14617,175 @@
 #. Make sure the 'Conversation -> More' menuitems are regenerated whenever
 #. * the 'Conversation' menu pops up because the entries can change after the
 #. * conversation is created.
-#: ../pidgin/gtkconv.c:3152 ../pidgin/gtkconv.c:3184
+#: ../pidgin/gtkconv.c:3222 ../pidgin/gtkconv.c:3254
 msgid "/Conversation"
 msgstr "/대화"
 
-#: ../pidgin/gtkconv.c:3192
+#: ../pidgin/gtkconv.c:3262
 msgid "/Conversation/View Log"
 msgstr "/대화/로그 보기"
 
-#: ../pidgin/gtkconv.c:3198
+#: ../pidgin/gtkconv.c:3268
 msgid "/Conversation/Send File..."
 msgstr "/대화/파일 전송..."
 
-#: ../pidgin/gtkconv.c:3202
+#: ../pidgin/gtkconv.c:3272
 msgid "/Conversation/Add Buddy Pounce..."
 msgstr "/대화/친구 알림 추가..."
 
-#: ../pidgin/gtkconv.c:3208
+#: ../pidgin/gtkconv.c:3278
 msgid "/Conversation/Get Info"
 msgstr "/대화/정보 가져오기..."
 
-#: ../pidgin/gtkconv.c:3212
+#: ../pidgin/gtkconv.c:3282
 msgid "/Conversation/Invite..."
 msgstr "/대화/초대..."
 
-#: ../pidgin/gtkconv.c:3218
+#: ../pidgin/gtkconv.c:3288
 msgid "/Conversation/Alias..."
 msgstr "/대화/별칭..."
 
-#: ../pidgin/gtkconv.c:3222
+#: ../pidgin/gtkconv.c:3292
 msgid "/Conversation/Block..."
 msgstr "/대화/거부..."
 
-#: ../pidgin/gtkconv.c:3226
+#: ../pidgin/gtkconv.c:3296
 #, fuzzy
 msgid "/Conversation/Unblock..."
 msgstr "/대화/거부..."
 
-#: ../pidgin/gtkconv.c:3230
+#: ../pidgin/gtkconv.c:3300
 msgid "/Conversation/Add..."
 msgstr "/대화/추가..."
 
-#: ../pidgin/gtkconv.c:3234
+#: ../pidgin/gtkconv.c:3304
 msgid "/Conversation/Remove..."
 msgstr "/대화/삭제..."
 
-#: ../pidgin/gtkconv.c:3240
+#: ../pidgin/gtkconv.c:3310
 msgid "/Conversation/Insert Link..."
 msgstr "/대화/링크 삽입..."
 
-#: ../pidgin/gtkconv.c:3244
+#: ../pidgin/gtkconv.c:3314
 msgid "/Conversation/Insert Image..."
 msgstr "/대화/이미지 삽입..."
 
-#: ../pidgin/gtkconv.c:3250
+#: ../pidgin/gtkconv.c:3320
 msgid "/Options/Enable Logging"
 msgstr "/설정/로그 기록"
 
-#: ../pidgin/gtkconv.c:3253
+#: ../pidgin/gtkconv.c:3323
 msgid "/Options/Enable Sounds"
 msgstr "/설정/소리 사용"
 
-#: ../pidgin/gtkconv.c:3266
+#: ../pidgin/gtkconv.c:3336
 msgid "/Options/Show Formatting Toolbars"
 msgstr "/설정/서식 도구모음 표시"
 
-#: ../pidgin/gtkconv.c:3269
+#: ../pidgin/gtkconv.c:3339
 msgid "/Options/Show Timestamps"
 msgstr "/설정/타임스탬프 표시"
 
-#: ../pidgin/gtkconv.c:3346 ../pidgin/gtkconv.c:3388
+#: ../pidgin/gtkconv.c:3416 ../pidgin/gtkconv.c:3458
 msgid "User is typing..."
 msgstr "사용자가 무언가를 입력하고 있습니다..."
 
-#: ../pidgin/gtkconv.c:3391
+#: ../pidgin/gtkconv.c:3461
 msgid "User has typed something and stopped"
 msgstr "사용자는 무언가를 입력하다가 일시중지 상태입니다."
 
 #. Build the Send To menu
-#: ../pidgin/gtkconv.c:3574 ../pidgin/gtkconv.c:8022
-#, fuzzy
-msgid "_Send To"
+#: ../pidgin/gtkconv.c:3645 ../pidgin/gtkconv.c:8181
+#, fuzzy
+msgid "S_end To"
 msgstr "받을 사람(_S)"
 
-#: ../pidgin/gtkconv.c:4286
+#: ../pidgin/gtkconv.c:4357
 msgid "_Send"
 msgstr "보내기(_S)"
 
 #. Setup the label telling how many people are in the room.
-#: ../pidgin/gtkconv.c:4390
+#: ../pidgin/gtkconv.c:4470
 msgid "0 people in room"
 msgstr "아무도 없습니다."
 
-#: ../pidgin/gtkconv.c:5759 ../pidgin/gtkconv.c:5880
+#: ../pidgin/gtkconv.c:5844 ../pidgin/gtkconv.c:5965
 #, c-format
 msgid "%d person in room"
 msgid_plural "%d people in room"
 msgstr[0] "대화실에 %d 명이 있습니다."
 msgstr[1] "대화실에 %d 명이 있습니다."
 
-#: ../pidgin/gtkconv.c:6486 ../pidgin/gtkstatusbox.c:660
+#: ../pidgin/gtkconv.c:6572 ../pidgin/gtkstatusbox.c:660
 msgid "Typing"
 msgstr "입력 중입니다."
 
-#: ../pidgin/gtkconv.c:6490
+#: ../pidgin/gtkconv.c:6576
 msgid "Stopped Typing"
 msgstr "입력을 중지했습니다."
 
-#: ../pidgin/gtkconv.c:6493
+#: ../pidgin/gtkconv.c:6579
 msgid "Nick Said"
 msgstr "Nick Said"
 
-#: ../pidgin/gtkconv.c:6496 ../pidgin/gtkdocklet.c:492
+#: ../pidgin/gtkconv.c:6582 ../pidgin/gtkdocklet.c:685
 msgid "Unread Messages"
 msgstr "읽지 않은 메시지"
 
-#: ../pidgin/gtkconv.c:6499
+#: ../pidgin/gtkconv.c:6588
 msgid "New Event"
 msgstr "새 이벤트"
 
-#: ../pidgin/gtkconv.c:7572
+#: ../pidgin/gtkconv.c:7700
 #, fuzzy
 msgid "clear: Clears all conversation scrollbacks."
 msgstr "비우기: 대화 창에 있는 이전의 메시지를 삭제합니다."
 
-#: ../pidgin/gtkconv.c:7736
+#: ../pidgin/gtkconv.c:7863
 msgid "Confirm close"
 msgstr "닫기 확인"
 
-#: ../pidgin/gtkconv.c:7768
+#: ../pidgin/gtkconv.c:7895
 msgid "You have unread messages. Are you sure you want to close the window?"
 msgstr "아직 읽지 않은 메시지가 있습니다. 정말 창을 닫으시겠습니까?"
 
-#: ../pidgin/gtkconv.c:8355
+#: ../pidgin/gtkconv.c:8514
 msgid "Close other tabs"
 msgstr "다른 탭 닫기"
 
-#: ../pidgin/gtkconv.c:8361
+#: ../pidgin/gtkconv.c:8520
 msgid "Close all tabs"
 msgstr "모든 탭 닫기"
 
-#: ../pidgin/gtkconv.c:8369
+#: ../pidgin/gtkconv.c:8528
 msgid "Detach this tab"
 msgstr "이 탭을 분리"
 
-#: ../pidgin/gtkconv.c:8375
+#: ../pidgin/gtkconv.c:8534
 msgid "Close this tab"
 msgstr "이 탭을 닫기"
 
-#: ../pidgin/gtkconv.c:8875
+#: ../pidgin/gtkconv.c:9031
 msgid "Close conversation"
 msgstr "대화 창을 닫습니다."
 
-#: ../pidgin/gtkconv.c:9477
+#: ../pidgin/gtkconv.c:9633
 msgid "Last created window"
 msgstr "마지막에 생성한 창을 재이용"
 
-#: ../pidgin/gtkconv.c:9479
+#: ../pidgin/gtkconv.c:9635
 msgid "Separate IM and Chat windows"
 msgstr "메시지와 대화 창을 분리"
 
-#: ../pidgin/gtkconv.c:9481 ../pidgin/gtkprefs.c:1415
+#: ../pidgin/gtkconv.c:9637 ../pidgin/gtkprefs.c:1417
 msgid "New window"
 msgstr "새 창으로 열기"
 
-#: ../pidgin/gtkconv.c:9483
+#: ../pidgin/gtkconv.c:9639
 msgid "By group"
 msgstr "그룹마다 공유"
 
-#: ../pidgin/gtkconv.c:9485
+#: ../pidgin/gtkconv.c:9641
 msgid "By account"
 msgstr "계정마다 공유"
 
@@ -15033,12 +15206,12 @@
 msgstr "아무하라어"
 
 #: ../pidgin/gtkdialogs.c:357
-#, fuzzy, c-format
+#, c-format
 msgid "About %s"
-msgstr "Pidgin 정보"
+msgstr "%s 정보"
 
 #: ../pidgin/gtkdialogs.c:400
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "%s is a graphical modular messaging client based on libpurple which is "
 "capable of connecting to AIM, MSN, Yahoo!, XMPP, ICQ, IRC, SILC, SIP/SIMPLE, "
@@ -15050,19 +15223,18 @@
 "complete list of contributors.  We provide no warranty for this program."
 "<BR><BR>"
 msgstr ""
-"Pidgin은 AIM, MSN, Yahoo!, Jabber, ICQ, IRC, SILC, SIP/SIMPLE, Novell "
-"GroupWise, Lotus Sametime, Bonjour, Zephyr, Gadu-Gadu 그리고 QQ 프로토콜을 모"
-"두 이용할 수 있는 GTK+ 툴킷을 채용한 모듈형 메시지 클라이언트입니다."
-"<BR><BR>GPL 라이센스(버전 2 이상)가 정하는 조항 하에 재배포 또는 변경이 가능"
-"합니다. GPL 복사가 본 Pidgin 패키지 내에 'COPYING' 라고 하는 파일명으로서 포"
-"함되어 있습니다. Pidgin의 저작권은 그 공헌자에게 귀속됩니다. 공헌자의 상세한 "
-"목록에 대해서는 'COPYRIGHT' 를 참조해 주십시오. 본 프로그램은 완전 무보증입니"
-"다.<BR><BR>"
+"%s은 AIM, MSN, Yahoo!, Jabber, ICQ, IRC, SILC, SIP/SIMPLE, Novell GroupWise, "
+"Lotus Sametime, Bonjour, Zephyr, Gadu-Gadu 그리고 QQ 프로토콜을 모두 이용할 "
+"수 있는 GTK+ 툴킷을 채용한 모듈형 메시지 클라이언트입니다.<BR><BR>GPL 라이센"
+"스(버전 2 이상)가 정하는 조항 하에 재배포 또는 변경이 가능합니다. GPL 복사가 "
+"본 %s 패키지 내에 'COPYING' 라고 하는 파일명으로서 포함되어 있습니다. %s의 저"
+"작권은 그 공헌자에게 귀속됩니다. 공헌자의 상세한 목록에 대해서는 'COPYRIGHT' "
+"를 참조해 주십시오. 본 프로그램은 어떠한 보증도 하지 않습니다.<BR><BR>"
 
 #: ../pidgin/gtkdialogs.c:418
-#, fuzzy, c-format
+#, c-format
 msgid "<FONT SIZE=\"4\">IRC:</FONT> #pidgin on irc.freenode.net<BR><BR>"
-msgstr "<FONT SIZE=\"4\">IRC:</FONT> irc.freenode.net の #gaim 채널<BR><BR>"
+msgstr "<FONT SIZE=\"4\">IRC:</FONT> irc.freenode.net의 #pidgin 채널<BR><BR>"
 
 #: ../pidgin/gtkdialogs.c:423
 msgid "Current Developers"
@@ -15098,6 +15270,16 @@
 msgid "Debugging Information"
 msgstr "디버깅 정보"
 
+#: ../pidgin/gtkdialogs.c:754 ../pidgin/gtkdialogs.c:893
+#: ../pidgin/gtkdialogs.c:974
+msgid "_Name"
+msgstr "이름(_N)"
+
+#: ../pidgin/gtkdialogs.c:759 ../pidgin/gtkdialogs.c:898
+#: ../pidgin/gtkdialogs.c:979
+msgid "_Account"
+msgstr "계정(_A)"
+
 #: ../pidgin/gtkdialogs.c:906
 msgid "Get User Info"
 msgstr "사용자 정보 가져오기"
@@ -15227,32 +15409,32 @@
 msgid "_Remove Chat"
 msgstr "삭제(_R)"
 
-#: ../pidgin/gtkdocklet.c:150
+#: ../pidgin/gtkdocklet.c:152
 msgid "Right-click for more unread messages...\n"
 msgstr "읽지 않은 메시지를 표시할 경우에는 오른쪽 버튼을 눌러주십시오...\n"
 
-#: ../pidgin/gtkdocklet.c:435
+#: ../pidgin/gtkdocklet.c:533
 msgid "Change Status"
 msgstr "상태 바꾸기"
 
-#: ../pidgin/gtkdocklet.c:487
+#: ../pidgin/gtkdocklet.c:680
 msgid "Show Buddy List"
 msgstr "친구 목록 열기..."
 
-#: ../pidgin/gtkdocklet.c:513
+#: ../pidgin/gtkdocklet.c:706
 msgid "New Message..."
 msgstr "새 메시지..."
 
-#: ../pidgin/gtkdocklet.c:528
+#: ../pidgin/gtkdocklet.c:721
 msgid "Mute Sounds"
 msgstr "소리 끄기"
 
-#: ../pidgin/gtkdocklet.c:535
-#, fuzzy
-msgid "Blink on new message"
+#: ../pidgin/gtkdocklet.c:728
+#, fuzzy
+msgid "Blink on New Message"
 msgstr "새로운 메시지가 도착하면 깜박거림"
 
-#: ../pidgin/gtkdocklet.c:542
+#: ../pidgin/gtkdocklet.c:738
 msgid "Quit"
 msgstr "종료"
 
@@ -15346,7 +15528,7 @@
 msgid "Paste as Plain _Text"
 msgstr "문자열로 붙여넣기(_T)"
 
-#: ../pidgin/gtkimhtml.c:833 ../pidgin/gtkimhtmltoolbar.c:1194
+#: ../pidgin/gtkimhtml.c:833 ../pidgin/gtkimhtmltoolbar.c:1195
 msgid "_Reset formatting"
 msgstr "서식 초기화(_R)"
 
@@ -15461,9 +15643,9 @@
 
 #: ../pidgin/gtkimhtmltoolbar.c:430 ../pidgin/gtkimhtmltoolbar.c:1102
 msgid "Insert Link"
-msgstr "링크 삽입"
-
-#: ../pidgin/gtkimhtmltoolbar.c:434 ../pidgin/gtkimhtmltoolbar.c:1262
+msgstr "링크를 삽입합니다."
+
+#: ../pidgin/gtkimhtmltoolbar.c:434 ../pidgin/gtkimhtmltoolbar.c:1263
 msgid "_Insert"
 msgstr "삽입(_I)"
 
@@ -15474,7 +15656,7 @@
 
 #: ../pidgin/gtkimhtmltoolbar.c:540 ../pidgin/gtkimhtmltoolbar.c:550
 msgid "Insert Image"
-msgstr "이미지 삽입"
+msgstr "이미지를 삽입합니다."
 
 #: ../pidgin/gtkimhtmltoolbar.c:761
 msgid "This theme has no available smileys."
@@ -15485,10 +15667,9 @@
 msgid "Smile!"
 msgstr "이모티콘!"
 
-#: ../pidgin/gtkimhtmltoolbar.c:846 ../pidgin/gtkimhtmltoolbar.c:1219
-#, fuzzy
+#: ../pidgin/gtkimhtmltoolbar.c:846 ../pidgin/gtkimhtmltoolbar.c:1220
 msgid "_Font"
-msgstr "글꼴"
+msgstr "글꼴(_F)"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1054
 #, fuzzy
@@ -15513,139 +15694,119 @@
 
 #: ../pidgin/gtkimhtmltoolbar.c:1091
 msgid "Strikethrough"
-msgstr ""
+msgstr "취소줄"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1093
 msgid "Increase Font Size"
-msgstr ""
+msgstr "글자 크기 크게"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1094
 msgid "Decrease Font Size"
-msgstr ""
+msgstr "글자 크기 작게"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1096
-#, fuzzy
 msgid "Font Face"
 msgstr "글꼴 종류"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1097
-#, fuzzy
 msgid "Background Color"
 msgstr "배경색"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1098
-#, fuzzy
 msgid "Foreground Color"
-msgstr "글꼴 색상"
+msgstr "글자색"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1100
-#, fuzzy
 msgid "Reset Formatting"
 msgstr "서식을 초기화 합니다."
 
 #: ../pidgin/gtkimhtmltoolbar.c:1103
-#, fuzzy
 msgid "Insert IM Image"
-msgstr "이미지 삽입"
+msgstr "IM 이미지를 삽입합니다."
 
 #: ../pidgin/gtkimhtmltoolbar.c:1104
-#, fuzzy
 msgid "Insert Smiley"
 msgstr "이모티콘을 삽입합니다."
 
-#: ../pidgin/gtkimhtmltoolbar.c:1179
-#, fuzzy
+#: ../pidgin/gtkimhtmltoolbar.c:1180
 msgid "<b>_Bold</b>"
-msgstr "<b>비밀번호</b>:"
-
-#: ../pidgin/gtkimhtmltoolbar.c:1180
-#, fuzzy
-msgid "<i>_Italic</i>"
-msgstr " <i>(ircop)</i>"
+msgstr "<b>굵게(_B)</b>"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1181
-#, fuzzy
-msgid "<u>_Underline</u>"
-msgstr "밑줄"
+msgid "<i>_Italic</i>"
+msgstr "<i>기울림(_I)</i>"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1182
-msgid "<span strikethrough='true'>Strikethrough</span>"
-msgstr ""
+msgid "<u>_Underline</u>"
+msgstr "<u>밑줄(_U)</u>"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1183
-#, fuzzy
+msgid "<span strikethrough='true'>Strikethrough</span>"
+msgstr "<span strikethrough='true'>취소줄</span>"
+
+#: ../pidgin/gtkimhtmltoolbar.c:1184
 msgid "<span size='larger'>_Larger</span>"
-msgstr ""
-"<span size='larger' weight='bold'>이미지 저장 중 오류</span>\n"
-"\n"
-"%s"
-
-#: ../pidgin/gtkimhtmltoolbar.c:1185
-#, fuzzy
+msgstr "<span size='larger'>크게(_L)</span>"
+
+#: ../pidgin/gtkimhtmltoolbar.c:1186
 msgid "_Normal"
-msgstr "표준"
-
-#: ../pidgin/gtkimhtmltoolbar.c:1187
+msgstr "표준(_N)"
+
+#: ../pidgin/gtkimhtmltoolbar.c:1188
 msgid "<span size='smaller'>_Smaller</span>"
-msgstr ""
+msgstr "<span size='smaller'>작게(_S)</span>"
 
 #. If we want to show the formatting for the following items, we would
 #. * need to update them when formatting changes. The above items don't need
 #. * no updating nor nothin'
-#: ../pidgin/gtkimhtmltoolbar.c:1191
-#, fuzzy
+#: ../pidgin/gtkimhtmltoolbar.c:1192
 msgid "_Font face"
-msgstr "글꼴 종류"
-
-#: ../pidgin/gtkimhtmltoolbar.c:1192
-#, fuzzy
-msgid "Foreground _color"
-msgstr "글꼴 색상"
+msgstr "글꼴(_F)"
 
 #: ../pidgin/gtkimhtmltoolbar.c:1193
-#, fuzzy
+msgid "Foreground _color"
+msgstr "글자색(_C)"
+
+#: ../pidgin/gtkimhtmltoolbar.c:1194
 msgid "Bac_kground color"
-msgstr "배경색"
-
-#: ../pidgin/gtkimhtmltoolbar.c:1270
-#, fuzzy
-msgid "_Smiley"
-msgstr "이모티콘!"
-
-#: ../pidgin/gtkimhtmltoolbar.c:1276
-#, fuzzy
+msgstr "배경색(_K)"
+
+#: ../pidgin/gtkimhtmltoolbar.c:1271
 msgid "_Image"
-msgstr "이미지 저장"
-
-#: ../pidgin/gtkimhtmltoolbar.c:1282
-#, fuzzy
+msgstr "이미지(_I)"
+
+#: ../pidgin/gtkimhtmltoolbar.c:1277
 msgid "_Link"
-msgstr "로그인(_L)"
-
-#: ../pidgin/gtkimhtmltoolbar.c:1288
+msgstr "링크(_L)"
+
+#: ../pidgin/gtkimhtmltoolbar.c:1283
 msgid "_Horizontal rule"
-msgstr ""
+msgstr "수평 눈금(_H)"
+
+#: ../pidgin/gtkimhtmltoolbar.c:1305
+msgid "_Smile!"
+msgstr "이모티콘(_S)"
 
 #: ../pidgin/gtklog.c:293
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Are you sure you want to permanently delete the log of the conversation with "
 "%s which started at %s?"
-msgstr "정말 %2$s 님을 %1$s (으)로의 알림 설정을 삭제하시겠습니까?"
+msgstr "정말 %s 님과 %s 에 시작된 대화 기록을 영구적으로 삭제하시겠습니까?"
 
 #: ../pidgin/gtklog.c:304
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Are you sure you want to permanently delete the log of the conversation in %"
 "s which started at %s?"
-msgstr "정말 %2$s 님을 %1$s (으)로의 알림 설정을 삭제하시겠습니까?"
+msgstr "정말 %s 에서 %s 에 시작된 대화 기록을 영구적으로 삭제하시겠습니까?"
 
 #: ../pidgin/gtklog.c:309
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Are you sure you want to permanently delete the system log which started at %"
 "s?"
-msgstr "정말 선택한 저장된 상태를 삭제하시겠습니까?"
+msgstr "정말 %s 시작된 시스템 기록을 영구적으로 삭제하시겠습니까?"
 
 #: ../pidgin/gtklog.c:453
 #, c-format
@@ -15697,17 +15858,17 @@
 msgid "Total log size:"
 msgstr "로그 전체 크기:"
 
-#: ../pidgin/gtklog.c:709
+#: ../pidgin/gtklog.c:710
 #, c-format
 msgid "Conversations in %s"
 msgstr "%s 님과의 대화"
 
-#: ../pidgin/gtklog.c:717 ../pidgin/gtklog.c:779
+#: ../pidgin/gtklog.c:718 ../pidgin/gtklog.c:785
 #, c-format
 msgid "Conversations with %s"
 msgstr "%s 님과의 대화"
 
-#: ../pidgin/gtklog.c:804
+#: ../pidgin/gtklog.c:810
 msgid "System Log"
 msgstr "시스템 로그"
 
@@ -15729,9 +15890,10 @@
 "  -n, --nologin       don't automatically login\n"
 "  -l, --login[=NAME]  automatically login (optional argument NAME specifies\n"
 "                      account(s) to use, separated by commas)\n"
+"  --display=DISPLAY   X display to use\n"
 "  -v, --version       display the current version and exit\n"
 msgstr ""
-"Pidgin %s\n"
+"%s %s\n"
 "사용법: %s [옵션]...\n"
 "\n"
 "  -c, --config=DIR    DIR에 있는 설정 파일 사용\n"
@@ -15742,10 +15904,10 @@
 "                      사용할 계정을 지정, 쉼표로 분리)\n"
 "  -v, --version       현재 버전을 표시하고 종료\n"
 
-#: ../pidgin/gtkmain.c:512
-#, fuzzy, c-format
-msgid ""
-"%s has segfaulted and attempted to dump a core file.\n"
+#: ../pidgin/gtkmain.c:516
+#, c-format
+msgid ""
+"%s %s has segfaulted and attempted to dump a core file.\n"
 "This is a bug in the software and has happened through\n"
 "no fault of your own.\n"
 "\n"
@@ -15763,29 +15925,29 @@
 "on other protocols is at\n"
 "%swiki/DeveloperPages\n"
 msgstr ""
-"세그먼트 오류가 발생하여 Pidgin이\n"
-"core 파일 출력을 시험했습니다. 이것은 소프트웨어의\n"
-"버그이며, 사용자 실수가 아닙니다.\n"
+"세그먼트 오류가 발생하여 %s %s이(가)\n"
+"core 파일 출력을 시험했습니다.\n"
+"이것은 소프트웨어의 버그이며, 사용자 실수가 아닙니다.\n"
 "\n"
 "이 문제가 재현 가능하면, 다음 사이트로부터\n"
-"Pidgin 개발자에게 버그로서 보고해 주십시오.\n"
-"%sbug.php\n"
+"개발자에게 버그로서 보고해 주십시오.\n"
+"%ssimpleticket/\n"
 "\n"
 "문제를 재현하기 위한 순서와 core 파일로부터의\n"
 "버그 추적 정보도 첨부해 주십시오.\n"
 "버그 추적 정보의 취득 방법을 알 수 없는 경우에는\n"
 "다음 사이트에 있는 설명을 참조해 주십시오.\n"
-"%sgdb.php\n"
+"%swiki/GetABacktrace\n"
 "\n"
 "도움말이 필요하면 IM 으로\n"
 "SeanEgn 씨 또는 LSchiere 씨 (모두 AIM 경우) 에게\n"
 "말을 걸어봐 주십시오 그 외의 프로토콜 경우에 대해서는\n"
 "다음 사이트를 참조해 주십시오.\n"
-"%scontactinfo.php\n"
+"%swiki/DeveloperPages\n"
 
 #. Translators may want to transliterate the name.
 #. It is not to be translated.
-#: ../pidgin/gtkmain.c:699 ../pidgin/pidgin.h:51
+#: ../pidgin/gtkmain.c:706 ../pidgin/pidgin.h:51
 #, fuzzy
 msgid "Pidgin"
 msgstr "해(돼지)"
@@ -15799,36 +15961,36 @@
 msgstr ""
 "<span weight=\"bold\" size=\"larger\">새로운 메일이 도착했습니다!</span>"
 
-#: ../pidgin/gtknotify.c:540
+#: ../pidgin/gtknotify.c:545
 #, c-format
 msgid "%s has %d new message."
 msgid_plural "%s has %d new messages."
 msgstr[0] "%s 에는 %d 개의 새로운 메시지가 있습니다."
 msgstr[1] "%s 에는 %d 개의 새로운 메시지가 있습니다."
 
-#: ../pidgin/gtknotify.c:564
-#, fuzzy, c-format
-msgid "<b>You have %d new e-mail.</b>"
-msgid_plural "<b>You have %d new e-mails.</b>"
+#: ../pidgin/gtknotify.c:569
+#, fuzzy, c-format
+msgid "<b>%d new e-mail.</b>"
+msgid_plural "<b>%d new e-mails.</b>"
 msgstr[0] "<b>%d 개의 새로운 메시지가 있습니다.</b>"
 msgstr[1] "<b>%d 개의 새로운 메시지가 있습니다.</b>"
 
-#: ../pidgin/gtknotify.c:989
+#: ../pidgin/gtknotify.c:997
 #, c-format
 msgid "The browser command \"%s\" is invalid."
 msgstr "브라우저 명령 \"%s\" 이(가) 올바르지 않습니다."
 
-#: ../pidgin/gtknotify.c:991 ../pidgin/gtknotify.c:1003
-#: ../pidgin/gtknotify.c:1016 ../pidgin/gtknotify.c:1144
+#: ../pidgin/gtknotify.c:999 ../pidgin/gtknotify.c:1011
+#: ../pidgin/gtknotify.c:1024 ../pidgin/gtknotify.c:1152
 msgid "Unable to open URL"
 msgstr "URL을 열 수 없습니다."
 
-#: ../pidgin/gtknotify.c:1001 ../pidgin/gtknotify.c:1014
+#: ../pidgin/gtknotify.c:1009 ../pidgin/gtknotify.c:1022
 #, c-format
 msgid "Error launching \"%s\": %s"
 msgstr "\"%s\" 실행 중 오류: %s"
 
-#: ../pidgin/gtknotify.c:1145
+#: ../pidgin/gtknotify.c:1153
 msgid ""
 "The 'Manual' browser command has been chosen, but no command has been set."
 msgstr ""
@@ -15881,96 +16043,96 @@
 msgstr "파일 선택"
 
 #. Create the "Pounce on Whom" frame.
-#: ../pidgin/gtkpounce.c:532
+#: ../pidgin/gtkpounce.c:539
 msgid "Pounce on Whom"
 msgstr "알림을 받을 친구"
 
-#: ../pidgin/gtkpounce.c:559
+#: ../pidgin/gtkpounce.c:566
 msgid "_Buddy name:"
 msgstr "친구 이름(_B):"
 
-#: ../pidgin/gtkpounce.c:593
+#: ../pidgin/gtkpounce.c:600
 msgid "Si_gns on"
 msgstr "접속했을 때(_G)"
 
-#: ../pidgin/gtkpounce.c:595
+#: ../pidgin/gtkpounce.c:602
 msgid "Signs o_ff"
 msgstr "접속을 해제했을 때(_F)"
 
-#: ../pidgin/gtkpounce.c:597
+#: ../pidgin/gtkpounce.c:604
 msgid "Goes a_way"
 msgstr "자리 비움이 되었을 때(_W)"
 
-#: ../pidgin/gtkpounce.c:599
+#: ../pidgin/gtkpounce.c:606
 msgid "Ret_urns from away"
 msgstr "자리 비움으로부터 복귀했을 때(_U)"
 
-#: ../pidgin/gtkpounce.c:601
+#: ../pidgin/gtkpounce.c:608
 msgid "Becomes _idle"
 msgstr "대기 상태가 되었을 때(_I)"
 
-#: ../pidgin/gtkpounce.c:603
+#: ../pidgin/gtkpounce.c:610
 msgid "Is no longer i_dle"
 msgstr "대기 상태로부터 복귀했을 때(_D)"
 
-#: ../pidgin/gtkpounce.c:605
+#: ../pidgin/gtkpounce.c:612
 msgid "Starts _typing"
 msgstr "입력 시작했을 때(_T)"
 
-#: ../pidgin/gtkpounce.c:607
+#: ../pidgin/gtkpounce.c:614
 msgid "P_auses while typing"
 msgstr "입력을 일시 중지했을 때(_A)"
 
-#: ../pidgin/gtkpounce.c:609
+#: ../pidgin/gtkpounce.c:616
 msgid "Stops t_yping"
 msgstr "입력을 멈추었을 때(_Y)"
 
-#: ../pidgin/gtkpounce.c:611
+#: ../pidgin/gtkpounce.c:618
 msgid "Sends a _message"
 msgstr "메시지 전송 시(_M)"
 
-#: ../pidgin/gtkpounce.c:654
+#: ../pidgin/gtkpounce.c:661
 msgid "Ope_n an IM window"
 msgstr "대화 창 열기(_N)"
 
-#: ../pidgin/gtkpounce.c:656
+#: ../pidgin/gtkpounce.c:663
 msgid "_Pop up a notification"
 msgstr "팝업으로 알림(_P)"
 
-#: ../pidgin/gtkpounce.c:658
+#: ../pidgin/gtkpounce.c:665
 msgid "Send a _message"
 msgstr "메시지 보내기(_M)"
 
-#: ../pidgin/gtkpounce.c:660
+#: ../pidgin/gtkpounce.c:667
 msgid "E_xecute a command"
 msgstr "명령 실행(_X)"
 
-#: ../pidgin/gtkpounce.c:662
+#: ../pidgin/gtkpounce.c:669
 msgid "P_lay a sound"
 msgstr "소리 재생(_L)"
 
-#: ../pidgin/gtkpounce.c:668
+#: ../pidgin/gtkpounce.c:675
 msgid "Brows_e..."
 msgstr "찾아보기(_E)..."
 
-#: ../pidgin/gtkpounce.c:670
+#: ../pidgin/gtkpounce.c:677
 msgid "Br_owse..."
 msgstr "찾아보기(_O)..."
 
-#: ../pidgin/gtkpounce.c:671
+#: ../pidgin/gtkpounce.c:678
 msgid "Pre_view"
 msgstr "미리보기(_V)"
 
-#: ../pidgin/gtkpounce.c:798
+#: ../pidgin/gtkpounce.c:805
 #, fuzzy
 msgid "P_ounce only when my status is not Available"
 msgstr "자신의 상태를 지정할 수 없을 때에만 알림을 받음(_O)"
 
-#: ../pidgin/gtkpounce.c:803
+#: ../pidgin/gtkpounce.c:810
 msgid "_Recurring"
 msgstr "반복(_R)"
 
-#: ../pidgin/gtkpounce.c:1246
+#: ../pidgin/gtkpounce.c:1253
 msgid "Pounce Target"
 msgstr "알림 받을 상대"
 
@@ -16020,7 +16182,7 @@
 msgid "_Hide new IM conversations:"
 msgstr "새 대화 창 숨기기(_H):"
 
-#: ../pidgin/gtkprefs.c:908 ../pidgin/gtkprefs.c:1944
+#: ../pidgin/gtkprefs.c:908 ../pidgin/gtkprefs.c:1946
 msgid "When away"
 msgstr "자리 비움일 때만"
 
@@ -16073,178 +16235,179 @@
 msgid "Show _formatting on incoming messages"
 msgstr "수신 메시지의 서식 표시(_F)"
 
-#: ../pidgin/gtkprefs.c:998
-#, fuzzy
-msgid "Show _detailed information"
-msgstr "로그인 정보 표시"
+#: ../pidgin/gtkprefs.c:997
+msgid "Close IMs immediately when the tab is closed"
+msgstr ""
 
 #: ../pidgin/gtkprefs.c:1000
+msgid "Show _detailed information"
+msgstr "상세 정보 보이기(_D)"
+
+#: ../pidgin/gtkprefs.c:1002
 msgid "Enable buddy ic_on animation"
 msgstr "친구 아이콘 애니메이션 표시(_O)"
 
-#: ../pidgin/gtkprefs.c:1007
+#: ../pidgin/gtkprefs.c:1009
 msgid "_Notify buddies that you are typing to them"
 msgstr "메시지가 입력 중임을 친구에게 알림(_N)"
 
-#: ../pidgin/gtkprefs.c:1010
+#: ../pidgin/gtkprefs.c:1012
 msgid "Highlight _misspelled words"
 msgstr "틀린 철자 강조 표시(_M)"
 
-#: ../pidgin/gtkprefs.c:1014
+#: ../pidgin/gtkprefs.c:1016
 msgid "Use smooth-scrolling"
 msgstr "부드러운 스크롤 사용"
 
-#: ../pidgin/gtkprefs.c:1017
-msgid "F_lash window when IMs are received"
-msgstr "메시지를 받으면 창을 깜빡거림(_L)"
-
 #: ../pidgin/gtkprefs.c:1019
-#, fuzzy
+msgid "F_lash window when IMs are received"
+msgstr "메시지를 받으면 창을 깜빡거림(_L)"
+
+#: ../pidgin/gtkprefs.c:1021
 msgid "Minimi_ze new conversation windows"
-msgstr "대화 창을 전면으로 표시(_A)"
-
-#: ../pidgin/gtkprefs.c:1023
+msgstr "최소화로 새 대화창 열기(_Z)"
+
+#: ../pidgin/gtkprefs.c:1025
 msgid "Font"
 msgstr "글꼴"
 
-#: ../pidgin/gtkprefs.c:1025
-msgid "Use document font from _theme"
-msgstr "테마로부터 문서 글꼴 사용(_t)"
-
 #: ../pidgin/gtkprefs.c:1027
-msgid "Use font from _theme"
-msgstr "테마로부터 글꼴 사용(_t)"
+msgid "Use document font from _theme"
+msgstr "테마로부터 문서 글꼴 사용(_T)"
 
 #: ../pidgin/gtkprefs.c:1029
+msgid "Use font from _theme"
+msgstr "테마로부터 글꼴 사용(_T)"
+
+#: ../pidgin/gtkprefs.c:1031
 msgid "Conversation _font:"
-msgstr "대화창 글꼴(_f):"
-
-#: ../pidgin/gtkprefs.c:1043
+msgstr "대화창 글꼴(_F):"
+
+#: ../pidgin/gtkprefs.c:1045
 msgid "Default Formatting"
 msgstr "기본 서식"
 
-#: ../pidgin/gtkprefs.c:1062
-#, fuzzy
+#: ../pidgin/gtkprefs.c:1064
 msgid ""
 "This is how your outgoing message text will appear when you use protocols "
 "that support formatting."
 msgstr ""
-"이것은 서식을 지원하는 프로토콜을 사용할 때, 보낸 메시지가 어떻게 표시되는지 "
-"나타냅니다. :)"
-
-#: ../pidgin/gtkprefs.c:1128
+"서식을 지원하는 프로토콜을 사용할 때, 보낸 메시지가 어떻게 표시되는지 나타냅"
+"니다. :)"
+
+#: ../pidgin/gtkprefs.c:1130
 msgid "ST_UN server:"
 msgstr "STUN 서버(_U):"
 
-#: ../pidgin/gtkprefs.c:1140
+#: ../pidgin/gtkprefs.c:1142
 msgid "<span style=\"italic\">Example: stunserver.org</span>"
 msgstr "<span style=\"italic\">예: stunserver.org</span>"
 
-#: ../pidgin/gtkprefs.c:1144
+#: ../pidgin/gtkprefs.c:1146
 msgid "_Autodetect IP address"
 msgstr "IP 주소를 자동으로 감지(_A)"
 
-#: ../pidgin/gtkprefs.c:1153
+#: ../pidgin/gtkprefs.c:1155
 msgid "Public _IP:"
 msgstr "공인 IP(_I):"
 
-#: ../pidgin/gtkprefs.c:1182
+#: ../pidgin/gtkprefs.c:1184
 msgid "Ports"
 msgstr "포트"
 
-#: ../pidgin/gtkprefs.c:1185
+#: ../pidgin/gtkprefs.c:1187
 msgid "_Manually specify range of ports to listen on"
 msgstr "수동으로 감시할 포트 번호의 범위를 지정(_M)"
 
-#: ../pidgin/gtkprefs.c:1188
+#: ../pidgin/gtkprefs.c:1190
 msgid "_Start port:"
 msgstr "시작 포트 번호(_S):"
 
-#: ../pidgin/gtkprefs.c:1195
+#: ../pidgin/gtkprefs.c:1197
 msgid "_End port:"
 msgstr "종료 포트 번호(_E):"
 
-#: ../pidgin/gtkprefs.c:1203
+#: ../pidgin/gtkprefs.c:1205
 msgid "Proxy Server"
 msgstr "프록시 서버"
 
-#: ../pidgin/gtkprefs.c:1207
+#: ../pidgin/gtkprefs.c:1209
 msgid "No proxy"
 msgstr "프록시 없음"
 
-#: ../pidgin/gtkprefs.c:1263
+#: ../pidgin/gtkprefs.c:1265
 msgid "_User:"
 msgstr "사용자명(_U):"
 
-#: ../pidgin/gtkprefs.c:1328
+#: ../pidgin/gtkprefs.c:1330
 msgid "Seamonkey"
 msgstr "Seamonkey"
 
-#: ../pidgin/gtkprefs.c:1329
+#: ../pidgin/gtkprefs.c:1331
 msgid "Opera"
 msgstr "Opera"
 
-#: ../pidgin/gtkprefs.c:1330
+#: ../pidgin/gtkprefs.c:1332
 msgid "Netscape"
 msgstr "Netscape"
 
-#: ../pidgin/gtkprefs.c:1331
+#: ../pidgin/gtkprefs.c:1333
 msgid "Mozilla"
 msgstr "Mozilla"
 
-#: ../pidgin/gtkprefs.c:1332
-msgid "Konqueror"
-msgstr "Konqueror"
-
-#: ../pidgin/gtkprefs.c:1333
-msgid "GNOME Default"
-msgstr "GNOME 디폴트"
-
 #: ../pidgin/gtkprefs.c:1334
+msgid "Konqueror"
+msgstr "Konqueror"
+
+#: ../pidgin/gtkprefs.c:1335
+msgid "GNOME Default"
+msgstr "GNOME 디폴트"
+
+#: ../pidgin/gtkprefs.c:1336
 msgid "Galeon"
 msgstr "Galeon"
 
-#: ../pidgin/gtkprefs.c:1335
+#: ../pidgin/gtkprefs.c:1337
 msgid "Firefox"
 msgstr "Firefox"
 
-#: ../pidgin/gtkprefs.c:1336
+#: ../pidgin/gtkprefs.c:1338
 msgid "Firebird"
 msgstr "Firebird"
 
-#: ../pidgin/gtkprefs.c:1337
+#: ../pidgin/gtkprefs.c:1339
 msgid "Epiphany"
 msgstr "Epiphany"
 
-#: ../pidgin/gtkprefs.c:1346
+#: ../pidgin/gtkprefs.c:1348
 msgid "Manual"
 msgstr "수동 설정"
 
-#: ../pidgin/gtkprefs.c:1399
+#: ../pidgin/gtkprefs.c:1401
 msgid "Browser Selection"
 msgstr "브라우저 선택"
 
-#: ../pidgin/gtkprefs.c:1403
+#: ../pidgin/gtkprefs.c:1405
 msgid "_Browser:"
 msgstr "브라우저(_B):"
 
-#: ../pidgin/gtkprefs.c:1411
+#: ../pidgin/gtkprefs.c:1413
 msgid "_Open link in:"
 msgstr "링크를 여는 방식(_O):"
 
-#: ../pidgin/gtkprefs.c:1413
+#: ../pidgin/gtkprefs.c:1415
 msgid "Browser default"
 msgstr "브라우저 설정에 따름"
 
-#: ../pidgin/gtkprefs.c:1414
+#: ../pidgin/gtkprefs.c:1416
 msgid "Existing window"
 msgstr "기존 창에서 열기"
 
-#: ../pidgin/gtkprefs.c:1416
+#: ../pidgin/gtkprefs.c:1418
 msgid "New tab"
 msgstr "새 탭으로 열기"
 
-#: ../pidgin/gtkprefs.c:1430
+#: ../pidgin/gtkprefs.c:1432
 #, c-format
 msgid ""
 "_Manual:\n"
@@ -16253,69 +16416,69 @@
 "수동 설정(_M):\n"
 "(URL은 %s (으)로 지정)"
 
-#: ../pidgin/gtkprefs.c:1470
+#: ../pidgin/gtkprefs.c:1472
 msgid "Log _format:"
 msgstr "로그 서식(_F):"
 
-#: ../pidgin/gtkprefs.c:1475
+#: ../pidgin/gtkprefs.c:1477
 msgid "Log all _instant messages"
 msgstr "메시지를 모두 기록에 기록(_L)"
 
-#: ../pidgin/gtkprefs.c:1477
+#: ../pidgin/gtkprefs.c:1479
 msgid "Log all c_hats"
 msgstr "대화를 모두 로그에 기록(_H)"
 
-#: ../pidgin/gtkprefs.c:1479
+#: ../pidgin/gtkprefs.c:1481
 msgid "Log all _status changes to system log"
 msgstr "상태 변경을 모두 로그에 기록(_S)"
 
-#: ../pidgin/gtkprefs.c:1625
+#: ../pidgin/gtkprefs.c:1627
 msgid "Sound Selection"
 msgstr "소리 선택"
 
-#: ../pidgin/gtkprefs.c:1635
+#: ../pidgin/gtkprefs.c:1637
 #, c-format
 msgid "Quietest"
 msgstr "가장 조용히"
 
-#: ../pidgin/gtkprefs.c:1637
+#: ../pidgin/gtkprefs.c:1639
 #, c-format
 msgid "Quieter"
 msgstr "약간 조용히"
 
-#: ../pidgin/gtkprefs.c:1639
+#: ../pidgin/gtkprefs.c:1641
 #, c-format
 msgid "Quiet"
 msgstr "조용히"
 
-#: ../pidgin/gtkprefs.c:1643
+#: ../pidgin/gtkprefs.c:1645
 #, c-format
 msgid "Loud"
 msgstr "크게"
 
-#: ../pidgin/gtkprefs.c:1645
+#: ../pidgin/gtkprefs.c:1647
 #, c-format
 msgid "Louder"
 msgstr "약간 크게"
 
-#: ../pidgin/gtkprefs.c:1647
+#: ../pidgin/gtkprefs.c:1649
 #, c-format
 msgid "Loudest"
 msgstr "가장 크게"
 
-#: ../pidgin/gtkprefs.c:1713
+#: ../pidgin/gtkprefs.c:1715
 msgid "_Method:"
 msgstr "방식(_M):"
 
-#: ../pidgin/gtkprefs.c:1715
+#: ../pidgin/gtkprefs.c:1717
 msgid "Console beep"
 msgstr "비프음"
 
-#: ../pidgin/gtkprefs.c:1722
+#: ../pidgin/gtkprefs.c:1724
 msgid "No sounds"
 msgstr "소리 없음"
 
-#: ../pidgin/gtkprefs.c:1730
+#: ../pidgin/gtkprefs.c:1732
 #, c-format
 msgid ""
 "Sound c_ommand:\n"
@@ -16324,82 +16487,81 @@
 "소리 명령(_O)\n"
 "(파일명은 %s (으)로 지정)"
 
-#: ../pidgin/gtkprefs.c:1757
+#: ../pidgin/gtkprefs.c:1759
 msgid "Sounds when conversation has _focus"
 msgstr "대화 창이 활성되면 소리 재생(_F)"
 
-#: ../pidgin/gtkprefs.c:1759
+#: ../pidgin/gtkprefs.c:1761
 msgid "Enable sounds:"
 msgstr "소리를 재생할 때:"
 
-#: ../pidgin/gtkprefs.c:1770
+#: ../pidgin/gtkprefs.c:1772
 msgid "Volume:"
 msgstr "음량:"
 
-#: ../pidgin/gtkprefs.c:1850
+#: ../pidgin/gtkprefs.c:1852
 msgid "Play"
 msgstr "재생"
 
-#: ../pidgin/gtkprefs.c:1927
+#: ../pidgin/gtkprefs.c:1929
 msgid "_Report idle time:"
 msgstr "대기 시간을 보고할 때(_R):"
 
-#: ../pidgin/gtkprefs.c:1932
+#: ../pidgin/gtkprefs.c:1934
 msgid "Based on keyboard or mouse use"
 msgstr "키보드나 마우스 조작을 시작했을 때"
 
-#: ../pidgin/gtkprefs.c:1941
+#: ../pidgin/gtkprefs.c:1943
 msgid "_Auto-reply:"
 msgstr "자동 응답(_A):"
 
-#: ../pidgin/gtkprefs.c:1945
+#: ../pidgin/gtkprefs.c:1947
 msgid "When both away and idle"
 msgstr "자리 비움으로 대기 상태일 때"
 
 #. Auto-away stuff
-#: ../pidgin/gtkprefs.c:1951
+#: ../pidgin/gtkprefs.c:1953
 msgid "Auto-away"
 msgstr "자동 자리 비움"
 
-#: ../pidgin/gtkprefs.c:1953
+#: ../pidgin/gtkprefs.c:1955
 msgid "Change status when _idle"
 msgstr "대기 상태가 되면 상태 변경(_I)"
 
-#: ../pidgin/gtkprefs.c:1957
-#, fuzzy
+#: ../pidgin/gtkprefs.c:1959
 msgid "_Minutes before becoming idle:"
-msgstr "상태를 변경할 때까지의 시간(분)(_M):"
-
-#: ../pidgin/gtkprefs.c:1965
+msgstr "대기 시간 간격(분)(_M)"
+
+#: ../pidgin/gtkprefs.c:1967
 msgid "Change _status to:"
 msgstr "다음 상태로 변경(_S):"
 
 #. Signon status stuff
-#: ../pidgin/gtkprefs.c:1986
+#: ../pidgin/gtkprefs.c:1988
 msgid "Status at Startup"
 msgstr "시작 시의 상태"
 
-#: ../pidgin/gtkprefs.c:1988
+#: ../pidgin/gtkprefs.c:1990
 msgid "Use status from last _exit at startup"
 msgstr "마지막 종료 시의 상태 유지(_E)"
 
-#: ../pidgin/gtkprefs.c:1994
+#: ../pidgin/gtkprefs.c:1996
 msgid "Status to a_pply at startup:"
 msgstr "시작 시에 적용할 상태(_P):"
 
-#: ../pidgin/gtkprefs.c:2032
+#: ../pidgin/gtkprefs.c:2034
 msgid "Interface"
 msgstr "인터페이스"
 
-#: ../pidgin/gtkprefs.c:2034
+#: ../pidgin/gtkprefs.c:2036
 msgid "Smiley Themes"
 msgstr "이모티콘 테마"
 
-#: ../pidgin/gtkprefs.c:2041
+#: ../pidgin/gtkprefs.c:2043
 msgid "Browser"
 msgstr "브라우저"
 
-#: ../pidgin/gtkprefs.c:2045
+#: ../pidgin/gtkprefs.c:2047
 msgid "Status / Idle"
 msgstr "상태 / 대기"
 
@@ -16567,40 +16729,39 @@
 msgid "Waiting for network connection"
 msgstr "네트워크 접속 대기 중입니다."
 
-#: ../pidgin/gtkutils.c:632
+#: ../pidgin/gtkutils.c:633
 #, fuzzy
 msgid "Google Talk"
 msgstr "Toggle Tag"
 
-#: ../pidgin/gtkutils.c:1399 ../pidgin/gtkutils.c:1422
+#: ../pidgin/gtkutils.c:1400 ../pidgin/gtkutils.c:1423
 #, c-format
 msgid "The following error has occurred loading %s: %s"
 msgstr "%s 을(를) 불러올 때 오류가 발생했습니다: %s"
 
-#: ../pidgin/gtkutils.c:1402 ../pidgin/gtkutils.c:1424
+#: ../pidgin/gtkutils.c:1403 ../pidgin/gtkutils.c:1425
 msgid "Failed to load image"
 msgstr "이미지 불러오기에 실패했습니다."
 
-#: ../pidgin/gtkutils.c:1498
+#: ../pidgin/gtkutils.c:1499
 #, c-format
 msgid "Cannot send folder %s."
 msgstr "폴더 %s 은(는) 전송할 수 없습니다."
 
-#: ../pidgin/gtkutils.c:1499
+#: ../pidgin/gtkutils.c:1500
 #, fuzzy, c-format
 msgid ""
 "%s cannot transfer a folder. You will need to send the files within "
 "individually."
 msgstr ""
-"Pidgin에서는 폴더 자체를 전송할 수 없습니다. 파일을 개별적으로 전송해 주십시"
-"오."
-
-#: ../pidgin/gtkutils.c:1531 ../pidgin/gtkutils.c:1543
-#: ../pidgin/gtkutils.c:1550
+"%s에서는 폴더 자체를 전송할 수 없습니다. 파일을 개별적으로 전송해 주십시오."
+
+#: ../pidgin/gtkutils.c:1534 ../pidgin/gtkutils.c:1546
+#: ../pidgin/gtkutils.c:1553
 msgid "You have dragged an image"
 msgstr "드래그 한 것은 이미지입니다."
 
-#: ../pidgin/gtkutils.c:1532
+#: ../pidgin/gtkutils.c:1535
 msgid ""
 "You can send this image as a file transfer, embed it into this message, or "
 "use it as the buddy icon for this user."
@@ -16608,23 +16769,23 @@
 "이 이미지를 파일로 전송하거나 메시지 안에 삽입하거나 혹은 사용자의 친구 아이"
 "콘으로 이용할 수 있습니다."
 
-#: ../pidgin/gtkutils.c:1538 ../pidgin/gtkutils.c:1558
+#: ../pidgin/gtkutils.c:1541 ../pidgin/gtkutils.c:1561
 msgid "Set as buddy icon"
 msgstr "친구 아이콘으로 하기"
 
-#: ../pidgin/gtkutils.c:1539 ../pidgin/gtkutils.c:1559
+#: ../pidgin/gtkutils.c:1542 ../pidgin/gtkutils.c:1562
 msgid "Send image file"
 msgstr "파일로 보내기"
 
-#: ../pidgin/gtkutils.c:1540 ../pidgin/gtkutils.c:1559
+#: ../pidgin/gtkutils.c:1543 ../pidgin/gtkutils.c:1562
 msgid "Insert in message"
 msgstr "메시지 안에 삽입"
 
-#: ../pidgin/gtkutils.c:1544
+#: ../pidgin/gtkutils.c:1547
 msgid "Would you like to set it as the buddy icon for this user?"
 msgstr "이 사용자의 친구 아이콘으로 이미지를 설정하시겠습니까?"
 
-#: ../pidgin/gtkutils.c:1551
+#: ../pidgin/gtkutils.c:1554
 #, fuzzy
 msgid ""
 "You can send this image as a file transfer, or use it as the buddy icon for "
@@ -16633,7 +16794,7 @@
 "이 이미지를 파일로 전송하거나 메시지 안에 삽입하거나 혹은 사용자의 친구 아이"
 "콘으로 이용할 수 있습니다."
 
-#: ../pidgin/gtkutils.c:1552
+#: ../pidgin/gtkutils.c:1555
 msgid ""
 "You can insert this image into this message, or use it as the buddy icon for "
 "this user"
@@ -16646,11 +16807,11 @@
 #. * send.  The only logical one is "Application," but do we really want to send a binary and nothing else?
 #. * Probably not.  I'll just give an error and return.
 #. The original patch sent the icon used by the launcher.  That's probably wrong
-#: ../pidgin/gtkutils.c:1610
+#: ../pidgin/gtkutils.c:1614
 msgid "Cannot send launcher"
 msgstr "실행기는 전송할 수 없습니다."
 
-#: ../pidgin/gtkutils.c:1610
+#: ../pidgin/gtkutils.c:1614
 msgid ""
 "You dragged a desktop launcher. Most likely you wanted to send whatever this "
 "launcher points to instead of this launcher itself."
@@ -16658,7 +16819,7 @@
 "드래그 한 것은 데스크탑 실행기입니다. 아마도 실행기 자신이 아닌, 실행기가 지"
 "시하고 있는 오브젝트를 전송하고자 할 것입니다."
 
-#: ../pidgin/gtkutils.c:2345
+#: ../pidgin/gtkutils.c:2349
 #, c-format
 msgid ""
 "<b>File:</b> %s\n"
@@ -16669,26 +16830,26 @@
 "<b>파일 크기:</b> %s\n"
 "<b>이미지 크기:</b> %dx%d"
 
-#: ../pidgin/gtkutils.c:2641
+#: ../pidgin/gtkutils.c:2645
 #, c-format
 msgid "The file '%s' is too large for %s.  Please try a smaller image.\n"
 msgstr ""
 "파일 '%s' 은(는) %s (으)로는 너무 큽니다. 더 작은 이미지로 시도해 보십시오.\n"
 
-#: ../pidgin/gtkutils.c:2643
+#: ../pidgin/gtkutils.c:2647
 msgid "Icon Error"
 msgstr "아이콘 오류"
 
-#: ../pidgin/gtkutils.c:2644
+#: ../pidgin/gtkutils.c:2648
 msgid "Could not set icon"
 msgstr "아이콘을 전송할 수 없었습니다."
 
-#: ../pidgin/gtkutils.c:2744
+#: ../pidgin/gtkutils.c:2748
 #, c-format
 msgid "Failed to open file '%s': %s"
 msgstr "파일 '%s' 을(를) 열 수 없었습니다: %s"
 
-#: ../pidgin/gtkutils.c:2793
+#: ../pidgin/gtkutils.c:2797
 #, c-format
 msgid ""
 "Failed to load image '%s': reason not known, probably a corrupt image file"
@@ -16896,7 +17057,7 @@
 msgid "Received Messages"
 msgstr "받은 메시지"
 
-#: ../pidgin/plugins/convcolors.c:210 ../pidgin/plugins/pidginrc.c:251
+#: ../pidgin/plugins/convcolors.c:210 ../pidgin/plugins/pidginrc.c:245
 #, c-format
 msgid "Select Color for %s"
 msgstr "%s (으)로 사용할 색상 선택"
@@ -17164,7 +17325,7 @@
 "<b>Buddy Note</b>: %s"
 msgstr "Buddy Notes"
 
-#: ../pidgin/plugins/history.c:188
+#: ../pidgin/plugins/history.c:195
 msgid "History"
 msgstr "History"
 
@@ -17377,7 +17538,6 @@
 #. *< priority
 #. *< id
 #: ../pidgin/plugins/pidgininc.c:91
-#, fuzzy
 msgid "Pidgin Demonstration Plugin"
 msgstr "Pidgin 데모 플러그인"
 
@@ -17417,45 +17577,37 @@
 msgid "GtkTreeView Horizontal Separation"
 msgstr "GtkTreeView 수평방향 분리자"
 
-#: ../pidgin/plugins/pidginrc.c:73
+#: ../pidgin/plugins/pidginrc.c:69
 msgid "Conversation Entry"
 msgstr "메지시 글꼴"
 
-#: ../pidgin/plugins/pidginrc.c:74
-msgid "Conversation History"
-msgstr "대화 히스토리 글꼴"
-
-#: ../pidgin/plugins/pidginrc.c:75
-msgid "Log Viewer"
-msgstr "로그 뷰어 글꼴"
-
-#: ../pidgin/plugins/pidginrc.c:76
+#: ../pidgin/plugins/pidginrc.c:70
 msgid "Request Dialog"
 msgstr "질문 창의 글꼴"
 
-#: ../pidgin/plugins/pidginrc.c:77
+#: ../pidgin/plugins/pidginrc.c:71
 msgid "Notify Dialog"
 msgstr "알림 창의 글꼴"
 
-#: ../pidgin/plugins/pidginrc.c:253
+#: ../pidgin/plugins/pidginrc.c:247
 msgid "Select Color"
 msgstr "글꼴 색상"
 
-#: ../pidgin/plugins/pidginrc.c:300
+#: ../pidgin/plugins/pidginrc.c:294
 #, c-format
 msgid "Select Interface Font"
 msgstr "인터페이스 글꼴 선택"
 
-#: ../pidgin/plugins/pidginrc.c:303
+#: ../pidgin/plugins/pidginrc.c:297
 #, c-format
 msgid "Select Font for %s"
 msgstr "%s (으)로 사용할 글꼴 선택"
 
-#: ../pidgin/plugins/pidginrc.c:371
+#: ../pidgin/plugins/pidginrc.c:365
 msgid "GTK+ Interface Font"
 msgstr "GTK+ 인터페이스 글꼴"
 
-#: ../pidgin/plugins/pidginrc.c:391
+#: ../pidgin/plugins/pidginrc.c:385
 msgid "GTK+ Text Shortcut Theme"
 msgstr "GTK+ 글자 바로 가기 테마"
 
@@ -17479,38 +17631,36 @@
 #. widget_bool_widgets[i]);
 #. }
 #.
-#: ../pidgin/plugins/pidginrc.c:428
+#: ../pidgin/plugins/pidginrc.c:422
 msgid "Interface colors"
 msgstr "인터페이스 색상"
 
-#: ../pidgin/plugins/pidginrc.c:452
+#: ../pidgin/plugins/pidginrc.c:446
 msgid "Widget Sizes"
 msgstr "Widget 크기"
 
-#: ../pidgin/plugins/pidginrc.c:473
+#: ../pidgin/plugins/pidginrc.c:467
 msgid "Fonts"
 msgstr "글꼴"
 
-#: ../pidgin/plugins/pidginrc.c:497
-#, fuzzy
+#: ../pidgin/plugins/pidginrc.c:491
 msgid "Gtkrc File Tools"
-msgstr "Pidgin 파일 제어"
-
-#: ../pidgin/plugins/pidginrc.c:502
+msgstr ""
+
+#: ../pidgin/plugins/pidginrc.c:496
 #, c-format
 msgid "Write settings to %s%sgtkrc-2.0"
 msgstr "이 설정을 \"%s%sgtkrc-2.0\" 에 저장"
 
-#: ../pidgin/plugins/pidginrc.c:511
+#: ../pidgin/plugins/pidginrc.c:505
 msgid "Re-read gtkrc files"
 msgstr "이 \"gtkrc\" 파일을 읽어들임"
 
-#: ../pidgin/plugins/pidginrc.c:544
-#, fuzzy
+#: ../pidgin/plugins/pidginrc.c:538
 msgid "Pidgin GTK+ Theme Control"
 msgstr "Pidgin GTK+ 테마 정의"
 
-#: ../pidgin/plugins/pidginrc.c:546 ../pidgin/plugins/pidginrc.c:547
+#: ../pidgin/plugins/pidginrc.c:540 ../pidgin/plugins/pidginrc.c:541
 msgid "Provides access to commonly used gtkrc settings."
 msgstr "\"gtkrc\" 의 설정에 접근하는 기능을 제공합니다."
 
@@ -17533,11 +17683,13 @@
 "에서 전송 내용을 감시해 주십시오."
 
 #: ../pidgin/plugins/relnot.c:71
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "You are using %s version %s.  The current version is %s.  You can get it "
 "from <a href=\"%s\">%s</a><hr>"
-msgstr "사용 중인 버전은 %s 입니다. 최신 버전은 %s 입니다.<hr>"
+msgstr ""
+"사용 중인 %s 버전은 %s 입니다. 현재 버전은 %s 입니다. 다음 사이트에서 다운로"
+"드 받을 수 있습니다: <a href=\"%s\">%s</a><hr>"
 
 #: ../pidgin/plugins/relnot.c:79
 #, fuzzy, c-format
@@ -17647,7 +17799,7 @@
 #. *< dependencies
 #. *< priority
 #. *< id
-#: ../pidgin/plugins/ticker/ticker.c:74 ../pidgin/plugins/ticker/ticker.c:354
+#: ../pidgin/plugins/ticker/ticker.c:74 ../pidgin/plugins/ticker/ticker.c:356
 msgid "Buddy Ticker"
 msgstr "Buddy Ticker"
 
@@ -17655,7 +17807,7 @@
 #. *< version
 #. *  summary
 #. *  description
-#: ../pidgin/plugins/ticker/ticker.c:357 ../pidgin/plugins/ticker/ticker.c:359
+#: ../pidgin/plugins/ticker/ticker.c:359 ../pidgin/plugins/ticker/ticker.c:361
 msgid "A horizontal scrolling version of the buddy list."
 msgstr "친구 목록을 수평방향으로 스크롤하는 버전입니다."
 
@@ -17690,9 +17842,9 @@
 msgstr "타임스탬프 서식 설정"
 
 #: ../pidgin/plugins/timestamp_format.c:26
-#, fuzzy, c-format
+#, c-format
 msgid "_Force 24-hour time format"
-msgstr "강제적으로 24시간제 적용(_F)"
+msgstr "강제적으로 24-시간제 적용(_F)"
 
 #: ../pidgin/plugins/timestamp_format.c:33
 msgid "Show dates in..."
@@ -17822,9 +17974,9 @@
 msgstr "시작"
 
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:312
-#, fuzzy, c-format
+#, c-format
 msgid "_Start %s on Windows startup"
-msgstr "윈도우즈 시작 시 Pidgin 실행(_S)"
+msgstr "윈도우즈 시작 시 %s 실행(_S)"
 
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:327
 msgid "_Dockable Buddy List"
@@ -17845,21 +17997,17 @@
 msgstr "대화에서 메시지를 받으면 창을 깜박거림(_F)"
 
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:371
-#, fuzzy
 msgid "Windows Pidgin Options"
-msgstr "로그인 설정"
+msgstr "Windows Pidgin 설정"
 
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:373
-#, fuzzy
 msgid "Options specific to Pidgin for Windows."
-msgstr "윈도우즈 버전의 Pidgin 전용 옵션 기능을 제공합니다."
+msgstr "Windows를 위한 Pidgin 설정을 제공합니다."
 
 #: ../pidgin/plugins/win32/winprefs/winprefs.c:374
-#, fuzzy
 msgid ""
 "Provides options specific to Pidgin for Windows , such as buddy list docking."
-msgstr ""
-"윈도우즈 버전의 Pidgin에 특화된 옵션 기능 (대화 창의 조합) 을 제공합니다."
+msgstr "친구 목록 도킹과 같은 Windows에 대한 Pidgin 설정을 제공합니다."
 
 #: ../pidgin/plugins/xmppconsole.c:667
 msgid "<font color='#777777'>Logged out.</font>"
@@ -17909,115 +18057,18 @@
 msgstr ""
 "이것은 XMPP 서버 또는 클라이언트를 디버그 할 때에 편리한 플러그인입니다."
 
-#, fuzzy
-#~ msgid "Offline buddies"
-#~ msgstr "오프라인 친구 표시"
-
-#, fuzzy
-#~ msgid "Sort"
-#~ msgstr "포트 번호"
-
-#, fuzzy
-#~ msgid "By Status"
-#~ msgstr "상태순"
-
-#, fuzzy
-#~ msgid "By Log Size"
-#~ msgstr "로그 크기순"
-
-#, fuzzy
-#~ msgid "Unable to connect to contact server"
-#~ msgstr "서버에 접속할 수 없습니다."
-
-#, fuzzy
-#~ msgid "Unable to retrieve MSN Address Book"
-#~ msgstr "Notes 주소록 선택"
-
-#, fuzzy
-#~ msgid "Current media"
-#~ msgstr "현재의 토큰"
-
-#, fuzzy
-#~ msgid "Windows Live Messenger Protocol Plugin"
-#~ msgstr "Novell GroupWise 메신저 프로토콜 플러그인"
-
-#, fuzzy
-#~ msgid "Windows Live ID authentication Failed"
-#~ msgstr "표준 인증에 실패했습니다."
-
-#~ msgid "%s just sent you a Nudge!"
-#~ msgstr "%s 님이 신호를 보내고 싶어 합니다!"
-
-#, fuzzy
-#~ msgid "Unknown error (%d)"
-#~ msgstr "알 수 없는 오류"
-
-#, fuzzy
-#~ msgid "Unable to connect to OIM server"
-#~ msgstr "서버에 접속할 수 없습니다."
-
-#, fuzzy
-#~ msgid "%s (%s) changed status from %s to %s"
-#~ msgstr "%s 님이 상태를 %s (으)로부터 %s (으)로 변경했습니다."
-
-#, fuzzy
-#~ msgid "%s (%s) is now %s"
-#~ msgstr "%s 님을 %s 님으로 인식했습니다."
-
-#, fuzzy
-#~ msgid "%s (%s) is no longer %s"
-#~ msgstr "이제 %s 님은 %s 님이 아닙니다."
-
-#, fuzzy
-#~ msgid "_Merge"
-#~ msgstr "메시지(_M):"
-
-#, fuzzy
-#~ msgid "_Send File..."
-#~ msgstr "파일 전송(_S)"
-
-#, fuzzy
-#~ msgid "Add Buddy _Pounce..."
-#~ msgstr "친구 알림 추가(_P)"
-
-#, fuzzy
-#~ msgid "Hide when offline"
-#~ msgstr "오프라인일 때에는 허가되지 않았습니다."
-
-#, fuzzy
-#~ msgid "Show when offline"
-#~ msgstr "오프라인일 때에는 허가되지 않았습니다."
-
-#, fuzzy
-#~ msgid "Add _Buddy..."
-#~ msgstr "친구 추가"
-
-#, fuzzy
-#~ msgid "Add C_hat..."
-#~ msgstr "대화 추가"
-
-#, fuzzy
-#~ msgid "Persistent"
-#~ msgstr "페르시아어"
-
-#, fuzzy
-#~ msgid "/Accounts/Manage"
-#~ msgstr "/계정"
-
-#, fuzzy
-#~ msgid "A_ccount:"
-#~ msgstr "계정:"
-
-#, fuzzy
-#~ msgid "S_end To"
-#~ msgstr "받을 사람(_S)"
-
-#~ msgid "Gaim Internet Messenger"
-#~ msgstr "Pidgin 인터넷 메신저"
-
 #~ msgid "Toggle offline buddies"
 #~ msgstr "오프라인 친구로 전환"
 
+#~ msgid "Sort by status"
+#~ msgstr "상태순"
+
+#~ msgid "Sort alphabetically"
+#~ msgstr "알파벳순"
+
+#~ msgid "Sort by log size"
+#~ msgstr "로그 크기순"
+
 #~ msgid ""
 #~ "%s was disconnected due to the following error:\n"
 #~ "%s"
@@ -18040,9 +18091,42 @@
 #~ msgid "Alias..."
 #~ msgstr "별칭..."
 
+#~ msgid "Add a _Buddy"
+#~ msgstr "친구 추가(_B)"
+
+#~ msgid "Add a C_hat"
+#~ msgstr "대화 추가(_H)"
+
+#~ msgid "/Buddies/Show _Offline Buddies"
+#~ msgstr "/친구/오프라인 친구 표시(_O)"
+
+#~ msgid "/Buddies/Show _Empty Groups"
+#~ msgstr "/친구/빈 그룹 표시(_E)"
+
+#~ msgid "/Buddies/Show Buddy _Details"
+#~ msgstr "/친구/친구 상세 표시(_D)"
+
+#~ msgid "/Buddies/Show Idle _Times"
+#~ msgstr "/친구/대기 시간 표시(_T)"
+
+#~ msgid "/Accounts/Add\\/Edit"
+#~ msgstr "/계정/추가\\/편집"
+
 #~ msgid "/Tools/Buddy Pounces"
 #~ msgstr "/도구/친구 알림"
 
+#~ msgid "/Buddies/Show Offline Buddies"
+#~ msgstr "/친구/오프라인 친구 표시"
+
+#~ msgid "/Buddies/Show Empty Groups"
+#~ msgstr "/친구/빈 그룹 표시"
+
+#~ msgid "/Buddies/Show Buddy Details"
+#~ msgstr "/친구/친구 상세 표시"
+
+#~ msgid "/Buddies/Show Idle Times"
+#~ msgstr "/친구/대기 시간 표시"
+
 #~ msgid "/Options/Show Buddy _Icon"
 #~ msgstr "/설정/친구 아이콘 표시(_I)"
 
@@ -18056,17 +18140,14 @@
 #~ msgstr ""
 #~ "<FONT SIZE=\"4\">IRC:</FONT> irc.freenode.net の #wingaim 채널<BR><BR>"
 
-#~ msgid "Smaller font size"
-#~ msgstr "글자 크기 작게"
-
 #~ msgid "Insert link"
-#~ msgstr "링크를 삽입합니다."
+#~ msgstr "링크 삽입"
 
 #~ msgid "Insert image"
-#~ msgstr "이미지를 삽입합니다."
-
-#~ msgid "Gaim %s. Try `%s -h' for more information.\n"
-#~ msgstr "Pidgin %s. 상세 정보는 `%s -h' 를 입력하십시오.\n"
+#~ msgstr "이미지 삽입"
+
+#~ msgid "_Smiley"
+#~ msgstr "이모티콘(_S)"
 
 #~ msgid "Show buddy _icons"
 #~ msgstr "친구 아이콘 표시(_I)"
@@ -18081,6 +18162,12 @@
 #~ msgid "GtkTreeView Expander Size"
 #~ msgstr "GtkTreeView Expander 크기"
 
+#~ msgid "Conversation History"
+#~ msgstr "대화 히스토리 글꼴"
+
+#~ msgid "Log Viewer"
+#~ msgstr "로그 뷰어 글꼴"
+
 #~ msgid "GtkTreeView Indent Expanders"
 #~ msgstr "GtkTreeView의 Expander를 들여쓰기 함"
 
@@ -18088,16 +18175,6 @@
 #~ msgstr "도구"
 
 #~ msgid ""
-#~ "You can get version %s from:<br><a href=\"http://gaim.sourceforge.net/"
-#~ "\">http://gaim.sourceforge.net</a>."
-#~ msgstr ""
-#~ "버전 %s 은(는) 다음 사이트로부터 받을 수 있습니다:<br><a href=\"http://"
-#~ "pidgin.sourceforge.net/\">http://pidgin.sourceforge.net</a>"
-
-#~ msgid "WinGaim Options"
-#~ msgstr "WinPidgin 설정"
-
-#~ msgid ""
 #~ "%d buddy from group %s was not removed because it belongs to an account "
 #~ "which is disabled or offline.  This buddy and the group were not "
 #~ "removed.\n"
@@ -18115,9 +18192,6 @@
 #~ msgid "Group not removed"
 #~ msgstr "그룹을 삭제할 수 없습니다."
 
-#~ msgid "Old Gaim"
-#~ msgstr "구버전 Pidgin"
-
 #~ msgid "Autoreply"
 #~ msgstr "Autoreply"
 
@@ -18199,9 +18273,6 @@
 #~ "지금 저는 응답할 수 있는 상태가 아니므로, 메시지를 남겨 주십시오. 확인하"
 #~ "는 대로 연락을 드리겠습니다."
 
-#~ msgid "Gaim User"
-#~ msgstr "Pidgin 사용자"
-
 #~ msgid "Jabber Account"
 #~ msgstr "Jabber 계정"
 
@@ -18226,6 +18297,9 @@
 #~ msgid "You have just sent a Nudge!"
 #~ msgstr "지금 신호를 전송했습니다!"
 
+#~ msgid "Has you"
+#~ msgstr "내가 등록됨"
+
 #~ msgid ""
 #~ "Always use AIM/ICQ proxy server for file transfers\n"
 #~ "(slower, but does not reveal your IP address)"
@@ -18341,8 +18415,8 @@
 #~ "없습니다. Pidgin은 모든 송신 데이터를 차단합니다. 일시적인 현상이므로 잠시"
 #~ "만 기다려 주십시오."
 
-#~ msgid "Gaim - Save As..."
-#~ msgstr "Pidgin - 다른 이름으로 저장..."
+#~ msgid "Normal authentication failed!"
+#~ msgstr "표준 인증에 실패했습니다."
 
 #~ msgid ""
 #~ "The normal authentication method has failed. This means either your "