Index: dialogs.c
===================================================================
--- dialogs.c	(revision 3081)
+++ dialogs.c	(working copy)
@@ -646,7 +646,8 @@
 	else
 	{
 		GtkWidget	*entry=NULL;
-		gchar 		*find_text;
+		gchar 		*find_text,
+				*find_text_normalized;
 
 		entry=gnome_entry_gtk_entry(GNOME_ENTRY(findy));
 
@@ -661,6 +662,9 @@
 			GTR_FREE(find_text);
 			find_text=newstr;
 		}
+		find_text_normalized = g_utf8_normalize(find_text, -1, G_NORMALIZE_DEFAULT_COMPOSE);
+		GTR_FREE(find_text);
+		find_text = find_text_normalized;
 
 		GtrPreferences.fi_comments=gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(fi_comments));
 		GtrPreferences.fi_english=gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(fi_english));
@@ -764,7 +768,7 @@
 	}
 	else
 	{
-		gchar *findme, *replaceme;
+		gchar *findme, *replaceme, *findme_normalized, *replaceme_normalized;
 		GtrReplace *rpl;
 
 		GtrPreferences.ri_comments=gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(ri_comments));
@@ -777,10 +781,18 @@
 		
 		findme=gtk_editable_get_chars(GTK_EDITABLE(
 			gnome_entry_gtk_entry(GNOME_ENTRY(findy))), 0, -1);
+		
+		findme_normalized = g_utf8_normalize(findme, -1, G_NORMALIZE_DEFAULT_COMPOSE);
+		GTR_FREE(findme);
+		findme = findme_normalized; 
 
 		replaceme=gtk_editable_get_chars(GTK_EDITABLE(
 			gnome_entry_gtk_entry(GNOME_ENTRY(replacy))), 0, -1);
 
+		replaceme_normalized = g_utf8_normalize(replaceme, -1, G_NORMALIZE_DEFAULT_COMPOSE);
+		GTR_FREE(replaceme);
+		replaceme = replaceme_normalized;
+
 		if(!findme || strlen(findme)<=0)
 		{
 			GtkWidget *message_dlg;
Index: parse.c
===================================================================
--- parse.c	(revision 3081)
+++ parse.c	(working copy)
@@ -95,7 +95,8 @@
 static void append_line(gchar ** old, const gchar * tail, gboolean continuation)
 {
 	gchar *to_add = g_new(gchar, strlen(tail) * 2);
-	gchar *result;
+	gchar *result,
+	      *result_normalized;
 	gint s, d = 0;
 
 	if (continuation)
@@ -120,7 +121,9 @@
 		GTR_FREE(*old);
 		GTR_FREE(to_add);
 	}
-	*old = result;
+	result_normalized = g_utf8_normalize(result, -1, G_NORMALIZE_DEFAULT_COMPOSE);
+	GTR_FREE(result);
+	*old = result_normalized;
 }
 
 gboolean add_to_obsolete(GtrPo *po, gchar *comment)
