diff options
author | ichizok <gclient.gaap@gmail.com> | 2022-01-31 12:27:18 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-01-31 12:27:18 +0000 |
commit | 672776dbe8427876ef4bfce84520712df87b6eb1 (patch) | |
tree | 96bd350e3654192104bfa9480fa2056a2e94c40f /src/create_nvcmdidxs.c | |
parent | 48a604845e33399893d6bf293e71bcd2a412800d (diff) |
patch 8.2.4270: generating nv_cmdidxs.h requires building Vim twicev8.2.4270
Problem: Generating nv_cmdidxs.h requires building Vim twice.
Solution: Move the table into a separate file and use a separate executable
to extract the command characters. (Ozaki Kiichi, closes #9669)
Diffstat (limited to 'src/create_nvcmdidxs.c')
-rw-r--r-- | src/create_nvcmdidxs.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/create_nvcmdidxs.c b/src/create_nvcmdidxs.c new file mode 100644 index 0000000000..1d084f5657 --- /dev/null +++ b/src/create_nvcmdidxs.c @@ -0,0 +1,38 @@ +/* vi:set ts=8 sts=4 sw=4 noet: + * + * VIM - Vi IMproved by Bram Moolenaar et al. + * + * Do ":help uganda" in Vim to read copying and usage conditions. + * Do ":help credits" in Vim to see a list of people who contributed. + * See README.txt for an overview of the Vim source code. + */ + +/* + * create_nvcmdidxs.c: helper program for `make nvcmdidxs` + * + * This outputs the list of command characters from the nv_cmds table in + * decimal form, one per line. + */ + +#include "vim.h" + +// Declare nv_cmds[]. +#include "nv_cmds.h" + +#include <stdio.h> + +int main(void) +{ + size_t i; + + for (i = 0; i < NV_CMDS_SIZE; i++) + { + int cmdchar = nv_cmds[i]; + + // Special keys are negative, use the negated value for sorting. + if (cmdchar < 0) + cmdchar = -cmdchar; + printf("%d\n", cmdchar); + } + return 0; +} |