patch 8.0.0514: script for creating cmdidxs can be improved

Problem:    Script for creating cmdidxs can be improved.
Solution:   Count skipped lines instead of collecting the lines.  Add "const".
            (Dominique Pelle, closes #1594)
diff --git a/src/create_cmdidxs.pl b/src/create_cmdidxs.pl
index ff8dcc3..d39ac16 100644
--- a/src/create_cmdidxs.pl
+++ b/src/create_cmdidxs.pl
@@ -9,15 +9,17 @@
 # Script should be run every time new Ex commands are added in Vim,
 # from the src/vim directory, since it reads commands from "ex_cmds.h".
 
+use strict;
+
 # Find the list of Vim commands from cmdnames[] table in ex_cmds.h
 my @cmds;
-my @skipped;
+my $skipped_cmds;
 open(IN, "< ex_cmds.h") or die "can't open ex_cmds.h: $!\n";
 while (<IN>) {
   if (/^EX\(CMD_\S*,\s*"([a-z][^"]*)"/) {
-    push (@cmds, $1);
+    push @cmds, $1;
   } elsif (/^EX\(CMD_/) {
-    push (@skipped, $1);
+    ++$skipped_cmds;
   }
 }
 
@@ -68,7 +70,6 @@
 }
 print "};\n",
       "\n",
-      "static int command_count = ", $#cmds + $#skipped + 2 , ";\n",
+      "static const int command_count = ", scalar(@cmds) + $skipped_cmds, ";\n",
       "\n",
       "/* End of automatically generated code by create_cmdidxs.pl */\n";
-
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 9782557..8755f05 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -566,7 +566,7 @@
   /* z */ {  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, }
 };
 
-static int command_count = 539;
+static const int command_count = 539;
 
 /* End of automatically generated code by create_cmdidxs.pl */
 
diff --git a/src/version.c b/src/version.c
index 28f3c59..79c97f9 100644
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    514,
+/**/
     513,
 /**/
     512,