patch 8.2.3961: error messages are spread out

Problem:    Error messages are spread out.
Solution:   Move more errors to errors.h.
diff --git a/src/strings.c b/src/strings.c
index 52cf121..18b2cef 100644
--- a/src/strings.c
+++ b/src/strings.c
@@ -1061,7 +1061,7 @@
 					   && argvars[2].v_type != VAR_NUMBER
 					   && argvars[2].v_type != VAR_BOOL))
     {
-	emsg(_(e_invarg));
+	emsg(_(e_invalid_argument));
 	return;
     }
 
@@ -1163,7 +1163,7 @@
 	base = (int)tv_get_number(&argvars[1]);
 	if (base != 2 && base != 8 && base != 10 && base != 16)
 	{
-	    emsg(_(e_invarg));
+	    emsg(_(e_invalid_argument));
 	    return;
 	}
 	if (argvars[2].v_type != VAR_UNKNOWN && tv_get_bool(&argvars[2]))
@@ -1680,7 +1680,7 @@
 	if (STRLEN(fromstr) != STRLEN(tostr))
 	{
 error:
-	    semsg(_(e_invarg2), fromstr);
+	    semsg(_(e_invalid_argument_str), fromstr);
 	    ga_clear(&ga);
 	    return;
 	}
@@ -1788,7 +1788,7 @@
 
     if (argvars[1].v_type != VAR_UNKNOWN && argvars[1].v_type != VAR_STRING)
     {
-	semsg(_(e_invarg2), tv_get_string(&argvars[1]));
+	semsg(_(e_invalid_argument_str), tv_get_string(&argvars[1]));
 	return;
     }
 
@@ -1806,7 +1806,7 @@
 		return;
 	    if (dir < 0 || dir > 2)
 	    {
-		semsg(_(e_invarg2), tv_get_string(&argvars[2]));
+		semsg(_(e_invalid_argument_str), tv_get_string(&argvars[2]));
 		return;
 	    }
 	}