Mercurial > vim
changeset 11256:17ba19406c50 v8.0.0514
patch 8.0.0514: script for creating cmdidxs can be improved
commit https://github.com/vim/vim/commit/980128c369451450743bdb90a67588fa72ec4b07
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Mar 26 21:46:28 2017 +0200
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)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 26 Mar 2017 22:00:05 +0200 |
parents | e89930ecb1ca |
children | 91121e5dbbe1 |
files | src/create_cmdidxs.pl src/ex_docmd.c src/version.c |
diffstat | 3 files changed, 9 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- 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 @@ for my $c1 ('a' .. 'z') { } 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"; -
--- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -566,7 +566,7 @@ static const unsigned char cmdidxs2[26][ /* 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 */