updated for version 7.3.423
Problem:    Small mistakes in comments, proto and indent.
Solution:   Fix the mistakes.

Also update runtime files
diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index 7d1e282e..4b2564b 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -1939,7 +1939,7 @@
 }
 
 /*
- * Return TRUE if window "win" is editing then file at the current argument
+ * Return TRUE if window "win" is editing the file at the current argument
  * index.
  */
     static int
diff --git a/src/po/ca.po b/src/po/ca.po
index 20f3c4b..b397ae0 100644
--- a/src/po/ca.po
+++ b/src/po/ca.po
@@ -1,6 +1,6 @@
 # Catalan messages for vim.
-# Copyright (C) 2003-2008 Ernest Adrogué <eadrogue@gmx.net>.
-# This file is distributed under the GNU General Public License.
+# Copyright (C) 2003-2012 Ernest Adrogué <eadrogue@gmx.net>.
+# This file is distributed under the Vim License.
 #
 msgid ""
 msgstr ""
@@ -13,8 +13,6 @@
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=iso-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Catalan\n"
-"X-Poedit-Country: SPAIN\n"
 
 msgid "E82: Cannot allocate any buffer, exiting..."
 msgstr "E82: No s'ha pogut assignar memòria per cap buffer, sortint..."
diff --git a/src/po/eo.po b/src/po/eo.po
index bad6424..20b396c 100644
--- a/src/po/eo.po
+++ b/src/po/eo.po
@@ -23,10 +23,11 @@
 msgstr ""
 "Project-Id-Version: Vim(Esperanto)\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-21 17:23+0200\n"
-"PO-Revision-Date: 2011-06-21 17:26+0200\n"
+"POT-Creation-Date: 2012-01-22 15:37+0100\n"
+"PO-Revision-Date: 2012-01-22 15:38+0100\n"
 "Last-Translator: Dominique PELLÉ <dominique.pelle@gmail.com>\n"
 "Language-Team: \n"
+"Language: eo\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -562,7 +563,7 @@
 
 #, c-format
 msgid "E119: Not enough arguments for function: %s"
-msgstr "E119: Ne sufiĉe da argumentoj de funkcio: %s"
+msgstr "E119: Ne sufiĉe da argumentoj por funkcio: %s"
 
 #, c-format
 msgid "E120: Using <SID> not in a script context: %s"
@@ -741,6 +742,10 @@
 msgid "E125: Illegal argument: %s"
 msgstr "E125: Nevalida argumento: %s"
 
+#, c-format
+msgid "E853: Duplicate argument name: %s"
+msgstr "E853: Ripetita nomo de argumento: %s"
+
 msgid "E126: Missing :endfunction"
 msgstr "E126: Mankas \":endfunction\""
 
@@ -2035,6 +2040,12 @@
 msgid "E228: makemap: Illegal mode"
 msgstr "E228: makemap: Nevalida reĝimo"
 
+msgid "E851: Failed to create a new process for the GUI"
+msgstr "E851: Ne sukcesis krei novan procezon por la grafika interfaco"
+
+msgid "E852: The child process failed to start the GUI"
+msgstr "E852: La ida procezo ne sukcesis startigi la grafikan interfacon"
+
 msgid "E229: Cannot start the GUI"
 msgstr "E229: Ne eblas lanĉi la grafikan interfacon"
 
@@ -4057,6 +4068,9 @@
 msgid "Keys don't match!"
 msgstr "Ŝlosiloj ne kongruas!"
 
+msgid "E854: path too long for completion"
+msgstr "E854: tro longa vojo por kompletigo"
+
 #, c-format
 msgid ""
 "E343: Invalid path: '**[number]' must be at the end of the path or be "
@@ -4238,8 +4252,8 @@
 "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Chars; %ld of %ld "
 "Bytes"
 msgstr ""
-"Apartigis %s%ld de %ld Linioj; %ld de %ld Vortoj; %ld de %ld Signoj; %ld de %"
-"ld Bajtoj"
+"Apartigis %s%ld de %ld Linioj; %ld de %ld Vortoj; %ld de %ld Signoj; %ld de "
+"%ld Bajtoj"
 
 #, c-format
 msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld"
@@ -4250,8 +4264,8 @@
 "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of "
 "%ld"
 msgstr ""
-"Kol %s de %s; Linio %ld de %ld; Vorto %ld de %ld; Signo %ld de %ld; Bajto %"
-"ld de %ld"
+"Kol %s de %s; Linio %ld de %ld; Vorto %ld de %ld; Signo %ld de %ld; Bajto "
+"%ld de %ld"
 
 #, c-format
 msgid "(+%ld for BOM)"
@@ -5576,6 +5590,9 @@
 msgid "E430: Tag file path truncated for %s\n"
 msgstr "E430: Vojo de etikeda dosiero trunkita por %s\n"
 
+msgid "Ignoring long line in tags file"
+msgstr "Ignoro de longa linio en etikeda dosiero"
+
 #, c-format
 msgid "E431: Format error in tags file \"%s\""
 msgstr "E431: Eraro de formato en etikeda dosiero \"%s\""
@@ -5592,9 +5609,6 @@
 msgid "E433: No tags file"
 msgstr "E433: Neniu etikeda dosiero"
 
-msgid "Ignoring long line in tags file"
-msgstr "Ignoro de longa linio en etikeda dosiero"
-
 msgid "E434: Can't find tag pattern"
 msgstr "E434: Ne eblas trovi ŝablonon de etikedo"
 
diff --git a/src/po/fr.po b/src/po/fr.po
index 886cd17..8b3f29f 100644
--- a/src/po/fr.po
+++ b/src/po/fr.po
@@ -15,10 +15,11 @@
 msgstr ""
 "Project-Id-Version: Vim(Français)\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-06-21 17:23+0200\n"
-"PO-Revision-Date: 2011-06-21 17:26+0200\n"
+"POT-Creation-Date: 2012-01-22 15:37+0100\n"
+"PO-Revision-Date: 2012-01-22 15:40+0100\n"
 "Last-Translator: Dominique Pellé <dominique.pelle@gmail.com>\n"
 "Language-Team: \n"
+"Language: fr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO_8859-15\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -817,6 +818,10 @@
 msgid "E125: Illegal argument: %s"
 msgstr "E125: Argument invalide : %s"
 
+#, c-format
+msgid "E853: Duplicate argument name: %s"
+msgstr "E853: Nom d'argument dupliqué : %s"
+
 msgid "E126: Missing :endfunction"
 msgstr "E126: Il manque :endfunction"
 
@@ -2242,6 +2247,15 @@
 msgid "E228: makemap: Illegal mode"
 msgstr "E228: makemap : mode invalide"
 
+msgid "E851: Failed to create a new process for the GUI"
+msgstr ""
+"E851: Échec lors de la création d'un nouveau processus pour l'interface "
+"graphique"
+
+msgid "E852: The child process failed to start the GUI"
+msgstr ""
+"E852: Le processus fils n'a pas réussi à démarrer l'interface graphique"
+
 msgid "E229: Cannot start the GUI"
 msgstr "E229: Impossible de démarrer l'interface graphique"
 
@@ -4293,6 +4307,9 @@
 msgid "Keys don't match!"
 msgstr "Les clés ne correspondent pas !"
 
+msgid "E854: path too long for completion"
+msgstr "E854: chemin trop long pour complètement"
+
 #, c-format
 msgid ""
 "E343: Invalid path: '**[number]' must be at the end of the path or be "
@@ -4478,8 +4495,8 @@
 "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Chars; %ld of %ld "
 "Bytes"
 msgstr ""
-"%s%ld sur %ld Lignes ; %ld sur %ld Mots ; %ld sur %ld Caractères ; %ld sur %"
-"ld octets sélectionnés"
+"%s%ld sur %ld Lignes ; %ld sur %ld Mots ; %ld sur %ld Caractères ; %ld sur "
+"%ld octets sélectionnés"
 
 #, c-format
 msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld"
@@ -4491,8 +4508,8 @@
 "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of "
 "%ld"
 msgstr ""
-"Colonne %s sur %s ; Ligne %ld sur %ld ; Mot %ld sur %ld ; Caractère %ld sur %"
-"ld ; Octet %ld sur %ld"
+"Colonne %s sur %s ; Ligne %ld sur %ld ; Mot %ld sur %ld ; Caractère %ld sur "
+"%ld ; Octet %ld sur %ld"
 
 #, c-format
 msgid "(+%ld for BOM)"
@@ -5832,6 +5849,9 @@
 msgid "E430: Tag file path truncated for %s\n"
 msgstr "E430: Chemin de fichiers de marqueurs tronqué pour %s\n"
 
+msgid "Ignoring long line in tags file"
+msgstr "Ignore longue ligne dans le fichier de marqueurs"
+
 #, c-format
 msgid "E431: Format error in tags file \"%s\""
 msgstr "E431: Erreur de format dans le fichier de marqueurs \"%s\""
@@ -5848,9 +5868,6 @@
 msgid "E433: No tags file"
 msgstr "E433: Aucun fichier de marqueurs"
 
-msgid "Ignoring long line in tags file"
-msgstr "Ignore longue ligne dans le fichier de marqueurs"
-
 msgid "E434: Can't find tag pattern"
 msgstr "E434: Le motif de marqueur est introuvable"
 
diff --git a/src/po/ru.cp1251.po b/src/po/ru.cp1251.po
index 1ab0676..0e6f0a8 100644
--- a/src/po/ru.cp1251.po
+++ b/src/po/ru.cp1251.po
@@ -4888,15 +4888,15 @@
 msgid "Edit with single &Vim"
 msgstr "Ðåäàêòèðîâàòü â &îäíîì Vim"
 
-msgid "&Diff with Vim"
-msgstr "&Ñðàâíèòü ñ ïîìîùüþ Vim"
+msgid "Diff with Vim"
+msgstr "Ñðàâíèòü ñ ïîìîùüþ Vim"
 
 msgid "Edit with &Vim"
 msgstr "Ðå&äàêòèðîâàòü ñ ïîìîùüþ Vim"
 
 #. Now concatenate
-msgid "Edit with existing Vim - &"
-msgstr "Ðåäàêòèðîâàòü â çàïóùåííîì Vim - &"
+msgid "Edit with existing Vim - "
+msgstr "Ðåäàêòèðîâàòü â çàïóùåííîì Vim - "
 
 msgid "Edits the selected file(s) with Vim"
 msgstr "Ðåäàêòèðîâàòü âûäåëåííûå ôàéëû ñ ïîìîùüþ Vim"
diff --git a/src/po/ru.po b/src/po/ru.po
index e5ad707..4eb782b 100644
--- a/src/po/ru.po
+++ b/src/po/ru.po
@@ -4888,15 +4888,15 @@
 msgid "Edit with single &Vim"
 msgstr "Редактировать в &одном Vim"
 
-msgid "&Diff with Vim"
-msgstr "&Сравнить с помощью Vim"
+msgid "Diff with Vim"
+msgstr "Сравнить с помощью Vim"
 
 msgid "Edit with &Vim"
 msgstr "Ре&дактировать с помощью Vim"
 
 #. Now concatenate
-msgid "Edit with existing Vim - &"
-msgstr "Редактировать в запущенном Vim - &"
+msgid "Edit with existing Vim - "
+msgstr "Редактировать в запущенном Vim - "
 
 msgid "Edits the selected file(s) with Vim"
 msgstr "Редактировать выделенные файлы с помощью Vim"
diff --git a/src/proto/ex_docmd.pro b/src/proto/ex_docmd.pro
index 8b0bd7c..f59c494 100644
--- a/src/proto/ex_docmd.pro
+++ b/src/proto/ex_docmd.pro
@@ -1,7 +1,7 @@
 /* ex_docmd.c */
 void do_exmode __ARGS((int improved));
 int do_cmdline_cmd __ARGS((char_u *cmd));
-int do_cmdline __ARGS((char_u *cmdline, char_u *(*getline)(int, void *, int), void *cookie, int flags));
+int do_cmdline __ARGS((char_u *cmdline, char_u *(*fgetline)(int, void *, int), void *cookie, int flags));
 int getline_equal __ARGS((char_u *(*fgetline)(int, void *, int), void *cookie, char_u *(*func)(int, void *, int)));
 void *getline_cookie __ARGS((char_u *(*fgetline)(int, void *, int), void *cookie));
 int checkforcmd __ARGS((char_u **pp, char *cmd, int len));
diff --git a/src/structs.h b/src/structs.h
index 7b71a5f..921a049 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -1846,7 +1846,7 @@
 				       often, keep it the first item!) */
 
 #if defined(FEAT_SYN_HL) || defined(FEAT_SPELL)
-    synblock_T	*w_s;
+    synblock_T	*w_s;		    /* for :ownsyntax */
 #endif
 
 #ifdef FEAT_WINDOWS
diff --git a/src/ui.c b/src/ui.c
index 3b0ae72..7322f15 100644
--- a/src/ui.c
+++ b/src/ui.c
@@ -2363,14 +2363,14 @@
 	       XtLastTimestampProcessed(XtDisplay(myShell)),
 	       clip_x11_convert_selection_cb, clip_x11_lose_ownership_cb,
 	       NULL) == False)
-	return FAIL;
+	    return FAIL;
     }
     else
 #endif
     {
 	if (!XChangeProperty(XtDisplay(myShell), XtWindow(myShell),
 		  cbd->sel_atom, timestamp_atom, 32, PropModeAppend, NULL, 0))
-	return FAIL;
+	    return FAIL;
     }
     /* Flush is required in a terminal as nothing else is doing it. */
     XFlush(XtDisplay(myShell));
diff --git a/src/version.c b/src/version.c
index 545e42f..be5ef96 100644
--- a/src/version.c
+++ b/src/version.c
@@ -715,6 +715,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    423,
+/**/
     422,
 /**/
     421,