Index: gedit/gedit-document.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/gedit-document.c,v
retrieving revision 1.72
diff -u -r1.72 gedit-document.c
--- gedit/gedit-document.c	12 Jun 2003 09:32:16 -0000	1.72
+++ gedit/gedit-document.c	28 Jun 2003 15:38:30 -0000
@@ -1437,8 +1437,11 @@
 		switch (errno)
 		{
 			case ENOSPC:
-				msg = _("There is not enough disk space to save the file.\n"
-					"Please free some disk space and try again.");
+				msg = g_strconcat (_("There is not enough disk space to save the "
+						     "file."),
+						   "\n",
+						   _("Please free some disk space and try again."),
+						   NULL);
 				break;
 
 			case EFBIG:
Index: gedit/gedit-file-selector-util.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/gedit-file-selector-util.c,v
retrieving revision 1.17
diff -u -r1.17 gedit-file-selector-util.c
--- gedit/gedit-file-selector-util.c	26 May 2003 17:21:32 -0000	1.17
+++ gedit/gedit-file-selector-util.c	28 Jun 2003 15:38:30 -0000
@@ -145,22 +145,42 @@
 static gboolean
 replace_existing_file (GtkWindow *parent, const gchar* file_name)
 {
-	return replace_dialog (parent,
-			       _("A file named \"%s\" already exists.\n"
-				 "Do you want to replace it with the "
-				 "one you are saving?"),
-			       file_name);
+	gchar *tmp_str;
+	gboolean response;
+
+	tmp_str = g_strconcat (_("A file named \"%s\" already exists."),
+			       "\n",
+			       // translators: 'it' refers to 'file'
+			       _("Do you want to replace it with the one you "
+			  	 "are saving?"),
+			       NULL);
+
+	response = replace_dialog (parent, tmp_str, file_name);
+
+	g_free (tmp_str);
+
+	return response;
 }
 
 /* Presents a confirmation dialog for whether to replace a read-only file */
 static gboolean
 replace_read_only_file (GtkWindow *parent, const gchar* file_name)
 {
-	return replace_dialog (parent,
-			       _("The file \"%s\" is read-only.\n"
-				 "Do you want to try to replace it with the "
-				 "one you are saving?"),
-			       file_name);
+	char *tmp_str;
+	gboolean response;
+
+	tmp_str = g_strconcat (_("The file \"%s\" is read-only."),
+			       "\n",
+			       // translators: 'it' refers to 'file'
+			       _("Do you want to replace it with the one you "
+				 "are saving?"),
+			       NULL);
+
+	response = replace_dialog (parent, tmp_str, file_name);
+
+	g_free (tmp_str);
+
+	return response;
 }
 
 static char *
Index: gedit/gedit-file.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/gedit-file.c,v
retrieving revision 1.57
diff -u -r1.57 gedit-file.c
--- gedit/gedit-file.c	6 Jun 2003 16:26:07 -0000	1.57
+++ gedit/gedit-file.c	28 Jun 2003 15:38:30 -0000
@@ -628,17 +628,23 @@
 {
 	GtkWidget *msgbox;
 	gint ret;
-	gchar *name;
+	gchar *name, *tmp_str;
 
 	name = gedit_document_get_short_name (doc);
 
+	tmp_str = g_strconcat (_("Do you want to revert to saved the document '%s'?"),
+			       "\n\n",
+			       _("You will not be able to undo this operation."),
+			       NULL);
+
 	msgbox = gtk_message_dialog_new (GTK_WINDOW (gedit_get_active_window ()),
 					 GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
 					 GTK_MESSAGE_QUESTION,
 					 GTK_BUTTONS_NONE,
-					 _("Do you want to revert to saved the document '%s'?\n\n"
-					   "You will not be able to undo this operation."), 
+					 tmp_str,
 					 name);
+
+	g_free (tmp_str);
 	g_free (name);
 
 	/* Add Cancel button */
Index: gedit/gedit-mdi.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/gedit-mdi.c,v
retrieving revision 1.72
diff -u -r1.72 gedit-mdi.c
--- gedit/gedit-mdi.c	12 Jun 2003 09:32:16 -0000	1.72
+++ gedit/gedit-mdi.c	28 Jun 2003 15:38:31 -0000
@@ -947,14 +947,22 @@
 
 		fname = gedit_document_get_short_name (doc);
 
+		msg = g_strconcat (_("Do you want to save the changes you made to the document "
+				     "\"%s\"?"),
+				   "\n\n",
+				   _("Your changes will be lost if you don't save them."),
+				   NULL);
+
 		msgbox = gtk_message_dialog_new (GTK_WINDOW (bonobo_mdi_get_active_window (mdi)),
 				GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
 				GTK_MESSAGE_QUESTION,
 				GTK_BUTTONS_NONE,
-				_("Do you want to save the changes you made to the document \"%s\"? \n\n"
-				  "Your changes will be lost if you don't save them."),
+				msg,
 				fname);
 
+		g_free (msg);
+		g_free (fname);
+
 		gedit_dialog_add_button (GTK_DIALOG (msgbox),
 				_("Do_n't save"), GTK_STOCK_NO,
 				GTK_RESPONSE_NO);
@@ -1000,9 +1008,6 @@
 		
 		gtk_widget_destroy (msgbox);
 
-		g_free (fname);
-		g_free (msg);
-		
 		switch (ret)
 		{
 			case GTK_RESPONSE_YES:
Index: gedit/gedit-plugins-engine.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/gedit-plugins-engine.c,v
retrieving revision 1.19
diff -u -r1.19 gedit-plugins-engine.c
--- gedit/gedit-plugins-engine.c	2 Jan 2003 22:43:31 -0000	1.19
+++ gedit/gedit-plugins-engine.c	28 Jun 2003 15:38:31 -0000
@@ -359,7 +359,7 @@
 	
 	if (plugin->handle == NULL)
 	{
-		g_warning (_("Error, unable to open module file '%s'\n"),
+		g_warning (_("Error, unable to open module file '%s'"),
 			   g_module_error ());
 		
 		return FALSE;
Index: gedit/gedit-utils.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/gedit-utils.c,v
retrieving revision 1.47
diff -u -r1.47 gedit-utils.c
--- gedit/gedit-utils.c	12 Jun 2003 18:00:00 -0000	1.47
+++ gedit/gedit-utils.c	28 Jun 2003 15:38:32 -0000
@@ -376,7 +376,7 @@
 		GtkWindow *parent)
 {
 	gchar *scheme_string;
-	gchar *error_message = NULL;
+	gchar *error_message = NULL, *tmp_error_message = NULL;
 	gchar *full_formatted_uri;
        	gchar *uri_for_display	;
 	gchar *encoding_name = NULL;
@@ -408,11 +408,16 @@
 		switch (error->code)
 		{
 			case GNOME_VFS_ERROR_NOT_FOUND:
-				error_message = g_strdup_printf (
-       	                 		_("Could not find the file \"%s\".\n\n"
-					  "Please, check that you typed the location correctly "
-					  "and try again."),
-       		                 	uri_for_display);
+				tmp_error_message = g_strconcat (_("Could not find the file "
+								   "\"%s\"."),
+								 "\n\n",
+								 _("Please, check that you typed "
+								   "the location correctly and try "
+								   "again."),
+								 NULL);
+
+				error_message = g_strdup_printf (tmp_error_message,
+								 uri_for_display);
 				break;
 	
 			case GNOME_VFS_ERROR_CORRUPTED_DATA:
@@ -427,10 +432,18 @@
                 
 				if ((scheme_string != NULL) && g_utf8_validate (scheme_string, -1, NULL))
 				{
-					error_message = g_strdup_printf (
-						_("Could not open the file \"%s\" because "
-						  "gedit cannot handle %s: locations."),
-       	                        	 	uri_for_display, scheme_string);
+					gchar *tmp_scheme_string;
+
+					tmp_scheme_string = g_strdup_printf ("%s:", scheme_string);
+
+					error_message = g_strdup_printf (_("Could not open the "
+									   "file \"%s\" because "
+									   "gedit cannot handle %s "
+									   "locations."),
+									 uri_for_display,
+									 tmp_scheme_string);
+
+					g_free (tmp_scheme_string);
 				}
 				else
 					error_message = g_strdup_printf (
@@ -457,11 +470,16 @@
 				break;	
 
 			case GNOME_VFS_ERROR_INVALID_URI:
-				error_message = g_strdup_printf (
-                	        	_("\"%s\" is not a valid location.\n\n"
-					  "Please, check that you typed the location "
-					  "correctly and try again."),
-                         		uri_for_display);
+				tmp_error_message = g_strconcat (_("\"%s\" is not a valid "
+								   "location."),
+								 "\n\n",
+								 _("Please, check that you typed "
+								   "the location correctly and try "
+								   "again."),
+								   NULL);
+
+				error_message = g_strdup_printf (tmp_error_message,
+								 uri_for_display);
 	                	break;
 	
 			case GNOME_VFS_ERROR_ACCESS_DENIED:
@@ -472,19 +490,26 @@
         	        	break;
 
 			case GNOME_VFS_ERROR_TOO_MANY_OPEN_FILES:
-				error_message = g_strdup_printf (
-					_("Could not open the file \"%s\" because "
-					  "there are too many open files.\n\n"
-					  "Please, close some open file and try again."),
-                	         	uri_for_display);
+				tmp_error_message = g_strconcat (_("Could not find the file \"%s\" "
+								   "because there are too many "
+								   "open files."),
+								 "\n\n",
+								 _("Please, close some open file "
+								   "and try again."),
+								 NULL);
+
+				error_message = g_strdup_printf (tmp_error_message, uri_for_display);
                 		break;
 
 			case GNOME_VFS_ERROR_IS_DIRECTORY:
-				error_message = g_strdup_printf (
-					_("\"%s\" is a directory.\n\n"
-					  "Please, check that you typed the location "
-					  "correctly and try again."),
-                         		uri_for_display);
+				tmp_error_message = g_strconcat (_("\"%s\" is a directory."),
+								 "\n\n",
+								 _("Please, check that you typed "
+								   "the location correctly and try "
+								   "again."),
+								 NULL);
+
+				g_strdup_printf (tmp_error_message, uri_for_display);
 	                	break;
 
 			case GNOME_VFS_ERROR_NO_MEMORY:
@@ -513,15 +538,23 @@
 
 						gnome_vfs_uri_unref (vfs_uri);		
 					}
-				
-	                		error_message = g_strdup_printf (
-						_("Could not open the file \"%s\" because no host \"%s\" " 
-					  	  "could be found.\n\n"
-                			  	  "Please, check that you typed the location correctly "
-					  	  "and that your proxy settings are correct and then "
-				  		  "try again."),
-						  uri_for_display,
-						  host_name);
+
+					tmp_error_message = g_strconcat (_("Could not open the "
+									   "file \"%s\" because no "
+									   "host \"%s\" could be "
+									   "found."),
+									   "\n\n",
+									   _("Please, check that "
+									     "you typed the "
+									     "location correctly "
+									     "and that your proxy "
+									     "settings are correct "
+									     "and then try again."),
+									   NULL);
+
+					error_message = g_strdup_printf (tmp_error_message,
+									 uri_for_display,
+									 host_name);
 
 					g_free (host_name);
 				}
@@ -529,39 +562,54 @@
 				break;
 
 			case GNOME_VFS_ERROR_INVALID_HOST_NAME:
-				error_message = g_strdup_printf (
+				tmp_error_message = g_strconcat (
                         		_("Could not open the file \"%s\" because the host name "
-					  "was invalid.\n\n"
-				   	  "Please, check that you typed the location correctly "
+					  "was invalid."),
+					"\n\n",
+				   	_("Please, check that you typed the location correctly "
 					  "and try again."),
-	                         	uri_for_display);
+					NULL);
+
+				error_message = g_strdup_printf (tmp_error_message,
+								 uri_for_display);
                 		break;
 
 			case GNOME_VFS_ERROR_HOST_HAS_NO_ADDRESS:
-				error_message = g_strdup_printf (
+				tmp_error_message = g_strconcat (
 					_("Could not open the file \"%s\" because the host name "
-					  "was empty.\n\n"
-					  "Please, check that your proxy settings are correct "
+					  "was empty."),
+					"\n\n",
+					_("Please, check that your proxy settings are correct "
 					  "and try again."),
-					uri_for_display);
+					NULL);
+
+				error_message = g_strdup_printf (tmp_error_message,
+								 uri_for_display);
 				break;
 		
 			case GNOME_VFS_ERROR_LOGIN_FAILED:
-				error_message = g_strdup_printf (
+				tmp_error_message = g_strconcat (
 					_("Could not open the file \"%s\" because the attempt to "
-					  "log in failed.\n\n"
-					  "Please, check that you typed the location correctly "
+					  "log in failed."),
+					"\n\n",
+					_("Please, check that you typed the location correctly "
 					  "and try again."),
-					uri_for_display);		
+					NULL);
+
+				error_message = g_strdup_printf (tmp_error_message,
+								 uri_for_display);
 				break;
 
 			case GEDIT_ERROR_INVALID_UTF8_DATA:
-				error_message = g_strdup_printf (
+				tmp_error_message = g_strconcat (
                 	        	_("Could not open the file \"%s\" because "
-				   	  "it contains invalid data.\n\n"
-				  	  "Probably, you are trying to open a binary file."),
-				 	uri_for_display);
+				   	  "it contains invalid data."),
+					"\n\n",
+				  	_("Probably, you are trying to open a binary file."),
+					NULL);
 
+				error_message = g_strdup_printf (tmp_error_message,
+								 uri_for_display);
 				break;
 
 			/*
@@ -600,36 +648,44 @@
 		switch (error->code)
 		{
 			case GEDIT_CONVERT_ERROR_AUTO_DETECTION_FAILED:
-				error_message = g_strdup_printf (
+				tmp_error_message = g_strconcat (
                 	        	_("Could not open the file \"%s\" because "
 				   	  "gedit has not been able to automatically detect "
-					  "the character coding.\n\n"
-					  "Please, check that you are not trying to open a binary file "
-					  "and try again selecting a character coding in the 'Open File...' "
-					  "(or 'Open Location') dialog."),
-				 	uri_for_display);
+					  "the character coding."),
+					"\n\n",
+					_("Please, check that you are not trying to open a binary "
+					  "file and try again selecting a character coding in the "
+					  "'Open File...' (or 'Open Location') dialog."),
+					NULL);
 
+				error_message = g_strdup_printf (tmp_error_message,
+								 uri_for_display);
 				break;
 
 			case GEDIT_CONVERT_ERROR_ILLEGAL_SEQUENCE:
-				error_message = g_strdup_printf (
-                	        	_("Could not open the file \"%s\" using "
-					  "the %s character coding.\n\n"
-					  "Please, check that you are not trying to open a binary file "
-					  "and that you selected the right "
-					  "character coding in the 'Open File...' (or 'Open Location') "
-					  "dialog and try again."),
-					uri_for_display, encoding_name);
+				tmp_error_message = g_strconcat (
+                	        	_("Could not open the file \"%s\" using the %s character "
+					  "coding."),
+					"\n\n",
+					_("Please, check that you are not trying to open a binary "
+					  "file and that you selected the right character coding "
+					  "in the 'Open File...' (or 'Open Location') dialog and "
+					  "try again."),
+					NULL);
 
+				error_message = g_strconcat (tmp_error_message, uri_for_display,
+							     encoding_name);
 				break;
 			
 			case GEDIT_CONVERT_ERROR_BINARY_FILE:
-				error_message = g_strdup_printf (
-                	        	_("Could not open the file \"%s\" because "
-				   	  "it contains invalid data.\n\n"
-				  	  "Probably, you are trying to open a binary file."),
-				 	uri_for_display);
+				tmp_error_message = g_strconcat (
+                	        	_("Could not open the file \"%s\" because it contains "
+					  "invalid data."),
+					"\n\n",
+				  	_("Probably, you are trying to open a binary file."),
+					NULL);
 
+				error_message = g_strconcat (tmp_error_message, uri_for_display);
 				break;
 	  
 		}
@@ -642,19 +698,25 @@
 			case G_CONVERT_ERROR_ILLEGAL_SEQUENCE:
 			case G_CONVERT_ERROR_FAILED:
 			case G_CONVERT_ERROR_PARTIAL_INPUT:
-				error_message = g_strdup_printf (
-					_("Could not open the file \"%s\" using "
-					  "the %s character coding.\n\n"
-					  "Please, check that you are not trying to open a binary file "
-					  "and that you selected the right "
-					  "character coding in the 'Open File...' (or 'Open Location') "
-					  "dialog and try again."),
-					uri_for_display, encoding_name);
-				break;
+				tmp_error_message = g_strconcat (_("Could not open the file \"%s\" "
+								   "using the %s character "
+								   "coding."),
+								 "\n\n",
+								 _("Please, check that you are "
+								   "not trying to open a binary "
+								   "file and that you selected the "
+								   "right character coding in the "
+								   "'Open File...' (or 'Open "
+								   "Location') dialog and try "
+								   "again."),
+								 NULL);
 
+				error_message = g_strdup_printf (tmp_error_message, uri_for_display,
+								 encoding_name);
+				break;
 		}
 	}
-	
+
 	if (error_message == NULL)
 	{
 		if (error->message == NULL)
@@ -662,12 +724,19 @@
                         			_("Could not open the file \"%s\"."),
 					 	uri_for_display);
 		else
-			error_message = g_strdup_printf (
-                        			_("Could not open the file \"%s\".\n\n%s"),
-					 	uri_for_display, error->message);
+		{
+			tmp_error_message = g_strconcat (_("Could not open the file \"%s\""),
+							 "\n\n",
+							 "%s");
 
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display,
+							 error->message);
+		}
 	}
 
+	if (tmp_error_message != NULL)
+		g_free (tmp_error_message);
+
 	g_free (encoding_name);
 
 	dialog = gtk_message_dialog_new (
@@ -694,7 +763,7 @@
 		GError *error,
 		GtkWindow *parent)
 {
-	gchar *error_message;
+	gchar *error_message = NULL, *tmp_error_message = NULL;
 	gchar *full_formatted_uri;
        	gchar *uri_for_display	;
 	
@@ -718,9 +787,16 @@
 					_("Could not save the file \"%s\"."),
 				  	uri_for_display);
 	else
-		error_message = g_strdup_printf (
-					_("Could not save the file \"%s\".\n\n%s"),
-				 	uri_for_display, error->message);
+	{
+		tmp_error_message = g_strconcat (_("Could not save the file \"%s\""),
+						 "\n\n",
+						 "%s");
+
+		error_message = g_strdup_printf (tmp_error_message, uri_for_display,
+						 error->message);
+
+		g_free (tmp_error_message);
+	}
 		
 	dialog = gtk_message_dialog_new (
 			parent,
@@ -747,9 +823,9 @@
 		GtkWindow *parent)
 {
 	gchar *scheme_string;
-	gchar *error_message;
+	gchar *error_message = NULL, *tmp_error_message = NULL;
 	gchar *full_formatted_uri;
-       	gchar *uri_for_display	;
+       	gchar *uri_for_display;
 	
 	GnomeVFSURI *vfs_uri;
 	
@@ -771,10 +847,15 @@
 	switch (error->code)
 	{
 		case GNOME_VFS_ERROR_NOT_FOUND:
-			error_message = g_strdup_printf (
-                        	_("Could not revert the file \"%s\" because gedit cannot find it.\n\n"
-			   	  "Perhaps, it has recently been deleted."),
-                         	uri_for_display);
+			tmp_error_message = g_strconcat (_("Could not revert the file \"%s\" "
+							   "because gedit cannot find it."),
+							 "\n\n",
+							 _("Perhaps, it has recently been "
+							   "deleted."),
+							 NULL);
+
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
+
 			break;
 
 		case GNOME_VFS_ERROR_CORRUPTED_DATA:
@@ -789,10 +870,13 @@
                 
 			if ((scheme_string != NULL) && g_utf8_validate (scheme_string, -1, NULL))
 			{
-				error_message = g_strdup_printf (
-					_("Could not revert the file \"%s\" because "
-					  "gedit cannot handle %s: locations."),
-                                	uri_for_display, scheme_string);
+				tmp_error_message = g_strdup_printf ("%s:", scheme_string);
+
+				error_message = g_strdup_printf (_("Could not revert the file "
+								   "\"%s\" because gedit cannot "
+								   "handle %s locations."),
+								 uri_for_display,
+								 tmp_error_message);
 			}
 			else
 				error_message = g_strdup_printf (
@@ -826,18 +910,24 @@
                 	break;
 
 		case GNOME_VFS_ERROR_TOO_MANY_OPEN_FILES:
-			error_message = g_strdup_printf (
+			tmp_error_message = g_strconcat (
 				_("Could not revert the file \"%s\" because "
-				  "there are too many open files.\n\n"
-				  "Please, close some open file and try again."),
-                         	uri_for_display);
+				  "there are too many open files."),
+				"\n\n",
+				_("Please, close some open file and try again."),
+				NULL);
+
+			g_strdup_printf (tmp_error_message, uri_for_display);
                 	break;
 	
 		case GNOME_VFS_ERROR_NO_MEMORY:
-			error_message = g_strdup_printf (
-				_("Not enough available memory to revert the file \"%s\". "
-				  "Please, close some running application and try again."),
-                         	uri_for_display);
+			tmp_error_message = g_strconcat (
+				_("Not enough available memory to revert the file \"%s\"."),
+				"\n\n",
+				_("Please, close some running application and try again."),
+				NULL);
+
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
                 	break;
 
 		case GNOME_VFS_ERROR_HOST_NOT_FOUND:
@@ -859,41 +949,50 @@
 
 					gnome_vfs_uri_unref (vfs_uri);		
 				}
-				
-				error_message = g_strdup_printf (
+
+				tmp_error_message = g_strconcat (
 					_("Could not revert the file \"%s\" because no host \"%s\" " 
-				  	  "could be found.\n\n"
-                		  	  "Please, check that your proxy settings are correct and "
+				  	  "could be found."),
+					"\n\n",
+                		  	_("Please, check that your proxy settings are correct and "
 				  	  "try again."),
-					  uri_for_display,
-					  host_name);
+					NULL);
 
+				error_message = g_strdup_printf (tmp_error_message, uri_for_display,
+								 host_name);
 				g_free (host_name);
 			}
 
 			break;
             
 		case GNOME_VFS_ERROR_HOST_HAS_NO_ADDRESS:
-			error_message = g_strdup_printf (
-				_("Could not revert the file \"%s\" because the host name was empty.\n\n"
-				  "Please, check that your proxy settings are correct and try again."),
-				uri_for_display);
+			tmp_error_message = g_strconcat (
+				_("Could not revert the file \"%s\" because the host name was "
+				  "empty."),
+				"\n\n",
+				_("Please, check that your proxy settings are correct and try "
+				"again."),
+				NULL);
+
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
 			break;
 		
 		case GNOME_VFS_ERROR_LOGIN_FAILED:
-			error_message = g_strdup_printf (
+			tmp_error_message = g_strconcat (
 				_("Could not revert the file \"%s\" because the attempt to "
 				  "log in failed."),
 				uri_for_display);		
 			break;
 
 		case GEDIT_ERROR_INVALID_UTF8_DATA:
-			error_message = g_strdup_printf (
+			tmp_error_message = g_strconcat (
                         	_("Could not revert the file \"%s\" because "
-			   	  "it contains invalid UTF-8 data.\n\n"
-				  "Probably, you are trying to revert a binary file."),
-			 	uri_for_display);
+			   	  "it contains invalid UTF-8 data."),
+				"\n\n",
+				_("Probably, you are trying to revert a binary file."),
+				NULL);
 
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
 			break;
 			
 		case GEDIT_ERROR_UNTITLED:
@@ -941,6 +1040,9 @@
 
 			break;
 	}
+
+	if (tmp_error_message != NULL)
+		g_free (tmp_error_message);
 	
 	dialog = gtk_message_dialog_new (
 			parent,
@@ -966,7 +1068,7 @@
 		gint error_code,
 		GtkWindow *parent)
 {
-	gchar *error_message;
+	gchar *error_message = NULL, *tmp_error_message = NULL;
 	gchar *full_formatted_uri;
        	gchar *uri_for_display	;
 	
@@ -992,49 +1094,66 @@
 			break;
 
 		case EISDIR:
-			error_message = g_strdup_printf (
-				_("\"%s\" is a directory.\n\n"
-				  "Please, check that you typed the location correctly."),
-                         	uri_for_display);
+			tmp_error_message = g_strconcat (
+				_("\"%s\" is a directory."),
+				"\n\n",
+				_("Please, check that you typed the location correctly."),
+				NULL);
+
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
                 	break;
 
 		case EACCES:
 		case EROFS:
 		case ETXTBSY:
-			error_message = g_strdup_printf (
-				_("Cannot create the file \"%s\".\n\n"
-				  "Make sure you have the appropriate write permissions."),
-				uri_for_display);
+			tmp_error_message = g_strconcat (
+				_("Cannot create the file \"%s\"."),
+				"\n\n",
+				_("Make sure you have the appropriate write permissions."),
+				NULL);
+
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
 			break;
 
 		case ENAMETOOLONG:
-			error_message = g_strdup_printf (
-				_("Cannot create the file \"%s\".\n\n"
-				  "The file name is too long."),
-				uri_for_display);
+			tmp_error_message = g_strconcat (
+				_("Cannot create the file \"%s\"."),
+				"\n\n",
+				_("The file name is too long."),
+				NULL);
+
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
 			break;
 		
 		case ENOENT:
-			error_message = g_strdup_printf (
-				_("Cannot create the file \"%s\".\n\n"
-				  "A directory component in the file name does not exist or "
+			tmp_error_message = g_strconcat (
+				_("Cannot create the file \"%s\"."),
+				"\n\n",
+				_("A directory component in the file name does not exist or "
 		                  "is a dangling symbolic link."),
-				uri_for_display);	
-			break;
+				NULL);
 
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
+			break;
 
 		case ENOSPC:
-			error_message = g_strdup_printf (
-				 _("There is not enough disk space to create the file \"%s\".\n\n"
-				   "Please free some disk space and try again."),
-				 uri_for_display);
+			tmp_error_message = g_strconcat (
+				_("There is not enough disk space to create the file \"%s\"."),
+				"\n\n",
+				_("Please free some disk space and try again."),
+				NULL);
+
+			error_message = g_strdup_printf (tmp_error_message, uri_for_display);
 			break;
 
 		default:
 			error_message = g_strdup_printf (_("Could not create the file \"%s\"."),
 							 uri_for_display);
 	}
-	
+
+	if (tmp_error_message != NULL)
+		g_free (tmp_error_message);
+
 	dialog = gtk_message_dialog_new (
 			parent,
 			GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
Index: gedit/dialogs/gedit-page-setup-dialog.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/dialogs/gedit-page-setup-dialog.c,v
retrieving revision 1.2
diff -u -r1.2 gedit-page-setup-dialog.c
--- gedit/dialogs/gedit-page-setup-dialog.c	14 Jun 2003 12:55:45 -0000	1.2
+++ gedit/dialogs/gedit-page-setup-dialog.c	28 Jun 2003 15:38:33 -0000
@@ -584,8 +584,21 @@
 
 	if (!gui)
 	{
-		gedit_warning (_("Could not find '" GEDIT_GLADEDIR "page-setup-dialog.glade2'.\n\n"
-			       "Reinstall gedit."), parent);
+		gchar *tmp_str, *tmp_str2;
+
+		tmp_str = g_strconcat (_("Could not find '%s'."),
+				       "\n\n",
+				       _("Reinstall gedit."),
+				       NULL);
+
+		tmp_str2 = g_strdup_printf (tmp_str, GEDIT_GLADEDIR
+					    "page-setup-dialog.glade2");
+
+		gedit_warning (tmp_str2, parent);
+
+		g_free (tmp_str);
+		g_free (tmp_str2);
+
 		return NULL;
 	}
 
@@ -625,9 +638,21 @@
 	    !dialog->numbers_font_label		||
 	    !dialog->restore_button)
 	{
-		gedit_warning (_("Could not find the required widgets inside '" 
-			       GEDIT_GLADEDIR "page-setup-dialog.glade2'.\n\n"
-			       "Reinstall gedit."), parent);
+		gchar *tmp_str, *tmp_str2;
+
+		tmp_str = g_strconcat (_("Could not find the required widgets"
+					 "inside '%s'."),
+				       "\n\n",
+				       _("Reinstall gedit."),
+				       NULL);
+
+		tmp_str2 = g_strdup_printf (tmp_str, GEDIT_GLADEDIR
+					    "page-setup-dialog.glade2");
+
+		gedit_warning (tmp_str2, parent);
+
+		g_free (tmp_str);
+		g_free (tmp_str2);
 
 		if (!dialog->dialog)
 			gtk_widget_destroy (dialog->dialog);
Index: gedit/dialogs/gedit-plugin-manager.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/dialogs/gedit-plugin-manager.c,v
retrieving revision 1.4
diff -u -r1.4 gedit-plugin-manager.c
--- gedit/dialogs/gedit-plugin-manager.c	3 Jun 2003 15:39:29 -0000	1.4
+++ gedit/dialogs/gedit-plugin-manager.c	28 Jun 2003 15:38:33 -0000
@@ -504,7 +504,8 @@
 			     "plugin_manager_dialog_content", NULL);
 
 	if (!gui) {
-		g_warning (_("Could not find plugin-manager.glade2, reinstall gedit.\n"));
+		g_warning (_("Could not find %s, reinstall gedit."),
+			   "plugin-manager.glade2");
 		return NULL;
 	}
 
@@ -522,7 +523,7 @@
 	if (!(content && pm->tree && pm->configure_button &&
 	      viewport && pm->about_button)) {
 
-		g_warning (_("Invalid glade file for plugin manager -- not all widgets found.\n"));
+		g_warning (_("Invalid glade file for plugin manager -- not all widgets found."));
 		g_object_unref (gui);
 
 		return NULL;
Index: gedit/dialogs/gedit-plugin-program-location-dialog.c
===================================================================
RCS file: /cvs/gnome/gedit/gedit/dialogs/gedit-plugin-program-location-dialog.c,v
retrieving revision 1.6
diff -u -r1.6 gedit-plugin-program-location-dialog.c
--- gedit/dialogs/gedit-plugin-program-location-dialog.c	27 Jan 2003 11:26:33 -0000	1.6
+++ gedit/dialogs/gedit-plugin-program-location-dialog.c	28 Jun 2003 15:38:33 -0000
@@ -58,7 +58,7 @@
 	GtkWidget *logo;
 	GtkWidget *program_location_entry;
 	
-	gchar *str_label;
+	gchar *str_label, *program_name_label, *tmp_str_label, *tmp_str_label2;
 	gchar *program_location;
 
 	gint ret;
@@ -75,7 +75,7 @@
 		return NULL;
 	}
 
-	dialog = gtk_dialog_new_with_buttons (_("Set program location..."),
+	dialog = gtk_dialog_new_with_buttons (_("Set Program Location"),
 					      parent,
 					      GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
 					      GTK_STOCK_CANCEL,
@@ -103,13 +103,26 @@
 	}
 	gtk_label_set_use_markup (GTK_LABEL (label), TRUE);
 
-	str_label = g_strdup_printf(_("The %s plugin uses an external program, "
-				      "called <tt>%s</tt>, to perform its task.\n\n"
-                                      "Please, specify the location of the <tt>%s</tt> program."),
-				    plugin_name, program_name, program_name);
+	/* we split the whole string beast. Else the %s order will be borked for many locales */
+	program_name_label = g_strdup_printf ("<tt>%s</tt>", program_name);
+
+	tmp_str_label = g_strdup_printf (_("The %s plugin uses an external program, called %s, to "
+					   "perform its task."), plugin_name, program_name_label);
+
+	tmp_str_label2 = g_strdup_printf (_("Please, specify the location of the %s program."),
+					    program_name_label);
+
+	str_label = g_strconcat (tmp_str_label,
+				 "\n\n",
+				 tmp_str_label2,
+				 NULL);
 
 	gtk_label_set_markup (GTK_LABEL (label), str_label);
-	g_free(str_label);
+
+	g_free (str_label);
+	g_free (tmp_str_label);
+	g_free (tmp_str_label2);
+	g_free (program_name_label);
 
 	/* stick the plugin manager logo in there */
 	gtk_image_set_from_file (GTK_IMAGE (logo), GNOME_ICONDIR PLUGIN_MANAGER_LOGO);
Index: plugins/shell_output/shell_output.c
===================================================================
RCS file: /cvs/gnome/gedit/plugins/shell_output/shell_output.c,v
retrieving revision 1.37
diff -u -r1.37 shell_output.c
--- plugins/shell_output/shell_output.c	11 Jun 2003 21:06:50 -0000	1.37
+++ plugins/shell_output/shell_output.c	28 Jun 2003 15:38:34 -0000
@@ -687,14 +687,21 @@
 	if (command_string == NULL || (strlen (command_string) == 0))
 	{
 		GtkWidget *err_dialog;
-		
+		gchar *err_msg;
+
+		err_msg = g_strconcat (_("The shell command entry is empty."),
+				       "\n\n",
+				       _("Please, insert a valid shell command."),
+				       NULL);
+
 		err_dialog = gtk_message_dialog_new (
 				GTK_WINDOW (dialog->dialog),
 				GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
 			   	GTK_MESSAGE_ERROR,
 			   	GTK_BUTTONS_OK,
-				_("The shell command entry is empty.\n\n"
-				  "Please, insert a valid shell command."));
+				err_msg);
+
+		g_free (err_msg);
 			
 		gtk_dialog_set_default_response (GTK_DIALOG (err_dialog), GTK_RESPONSE_OK);
 
@@ -720,15 +727,20 @@
                            NULL))
 	{
 		GtkWidget *err_dialog;
+		gchar *err_msg;
+
+		err_msg = g_strconcat (_("Error parsing the shell command."),
+				       "\n\n",
+				       _("Please, insert a valid shell command."),
+				       NULL);
 		
 		err_dialog = gtk_message_dialog_new (
 				GTK_WINDOW (dialog->dialog),
 				GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
 			   	GTK_MESSAGE_ERROR,
 			   	GTK_BUTTONS_OK,
-				_("Error parsing the shell command.\n\n"
-				  "Please, insert a valid shell command."));
-			
+				err_msg);
+
 		gtk_dialog_set_default_response (GTK_DIALOG (err_dialog), GTK_RESPONSE_OK);
 
 		gtk_window_set_resizable (GTK_WINDOW (err_dialog), FALSE);
@@ -737,6 +749,7 @@
   		gtk_widget_destroy (err_dialog);
 
 		g_free (unescaped_command_string);
+		g_free (err_msg);
 		
 		return FALSE;
 	}
