patch 8.2.3985: error messages are spread out

Problem:    Error messages are spread out.
Solution:   Move more error messages to errors.h.
diff --git a/src/undo.c b/src/undo.c
index 49a5681..a376150 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -2713,7 +2713,7 @@
 				      || bot > curbuf->b_ml.ml_line_count + 1)
 	{
 	    unblock_autocmds();
-	    iemsg(_("E438: u_undo: line numbers wrong"));
+	    iemsg(_(e_u_undo_line_numbers_wrong));
 	    changed();		// don't want UNCHANGED now
 	    return;
 	}
@@ -3285,7 +3285,7 @@
 {
     if (curbuf->b_u_newhead == NULL || curbuf->b_u_newhead->uh_entry == NULL)
     {
-	iemsg(_("E439: undo list corrupt"));
+	iemsg(_(e_undo_list_corrupt));
 	return NULL;
     }
     return curbuf->b_u_newhead->uh_entry;
@@ -3317,7 +3317,7 @@
 	uep->ue_bot = uep->ue_top + uep->ue_size + 1 + extra;
 	if (uep->ue_bot < 1 || uep->ue_bot > curbuf->b_ml.ml_line_count)
 	{
-	    iemsg(_("E440: undo line missing"));
+	    iemsg(_(e_undo_line_missing));
 	    uep->ue_bot = uep->ue_top + 1;  // assume all lines deleted, will
 					    // get all the old lines back
 					    // without deleting the current