diff --git a/src/arabic.h b/src/arabic.h
index 7328fd2..3a948d0 100644
--- a/src/arabic.h
+++ b/src/arabic.h
@@ -7,7 +7,7 @@
  */
 
 /*
- * Arabic characters are catagorized into following types:
+ * Arabic characters are categorized into following types:
  *
  * Isolated	- iso-8859-6 form	  char denoted with	a_*
  * Initial	- unicode form-B start	  char denoted with	a_i_*
diff --git a/src/gui_gtk.c b/src/gui_gtk.c
index f760ad0..da4fc42 100644
--- a/src/gui_gtk.c
+++ b/src/gui_gtk.c
@@ -53,6 +53,9 @@
 # ifdef bindtextdomain
 #  undef bindtextdomain
 # endif
+# ifdef bindtextdomain_codeset
+#  undef bindtextdomain_codeset
+# endif
 # if defined(FEAT_GETTEXT) && !defined(ENABLE_NLS)
 #  define ENABLE_NLS	/* so the texts in the dialog boxes are translated */
 # endif
@@ -449,8 +452,8 @@
  *
  * gtk_menu_item_new_with_label(menu->dname);
  *
- * This is neccessary, since there is no other way in GTK+ 1 to get the
- * not automatically parsed accellerator stuff right.
+ * This is necessary, since there is no other way in GTK+ 1 to get the
+ * not automatically parsed accelerator stuff right.
  */
     static void
 menu_item_new(vimmenu_T *menu, GtkWidget *parent_widget)
@@ -828,7 +831,7 @@
 
 #if defined(FEAT_MENU) || defined(PROTO)
 /*
- * Enable or disable accelators for the toplevel menus.
+ * Enable or disable accelerators for the toplevel menus.
  */
     void
 gui_gtk_set_mnemonics(int enable)
@@ -2493,7 +2496,7 @@
 	return TRUE;
 #endif
 
-    /* It would be delightfull if it where possible to do search history
+    /* It would be delightful if it where possible to do search history
      * operations on the K_UP and K_DOWN keys here.
      */
 
