0
0
mirror of https://github.com/vim/vim.git synced 2025-09-28 04:24:06 -04:00

patch 8.0.1656: no option to have xxd produce upper case variable names

Problem:    No option to have xxd produce upper case variable names.
Solution:   Add the -C argument. (Matt Panaro closes #2772)
This commit is contained in:
Bram Moolenaar
2018-04-03 12:17:25 +02:00
parent 25a6e8a769
commit 8b31a6ff7a
2 changed files with 10 additions and 4 deletions

View File

@@ -762,6 +762,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1656,
/**/ /**/
1655, 1655,
/**/ /**/

View File

@@ -215,6 +215,8 @@ char hexxa[] = "0123456789abcdef0123456789ABCDEF", *hexx = hexxa;
#define HEX_BITS 3 /* not hex a dump, but bits: 01111001 */ #define HEX_BITS 3 /* not hex a dump, but bits: 01111001 */
#define HEX_LITTLEENDIAN 4 #define HEX_LITTLEENDIAN 4
#define CONDITIONAL_CAPITALIZE(c) (capitalize ? toupper((int)c) : c)
static char *pname; static char *pname;
static void static void
@@ -225,6 +227,7 @@ exit_with_usage(void)
fprintf(stderr, "Options:\n"); fprintf(stderr, "Options:\n");
fprintf(stderr, " -a toggle autoskip: A single '*' replaces nul-lines. Default off.\n"); fprintf(stderr, " -a toggle autoskip: A single '*' replaces nul-lines. Default off.\n");
fprintf(stderr, " -b binary digit dump (incompatible with -ps,-i,-r). Default hex.\n"); fprintf(stderr, " -b binary digit dump (incompatible with -ps,-i,-r). Default hex.\n");
fprintf(stderr, " -C capitalize variable names in C include file style (-i).\n");
fprintf(stderr, " -c cols format <cols> octets per line. Default 16 (-i: 12, -ps: 30).\n"); fprintf(stderr, " -c cols format <cols> octets per line. Default 16 (-i: 12, -ps: 30).\n");
fprintf(stderr, " -E show characters in EBCDIC. Default ASCII.\n"); fprintf(stderr, " -E show characters in EBCDIC. Default ASCII.\n");
fprintf(stderr, " -e little-endian dump (incompatible with -ps,-i,-r).\n"); fprintf(stderr, " -e little-endian dump (incompatible with -ps,-i,-r).\n");
@@ -459,7 +462,7 @@ main(int argc, char *argv[])
{ {
FILE *fp, *fpo; FILE *fp, *fpo;
int c, e, p = 0, relseek = 1, negseek = 0, revert = 0; int c, e, p = 0, relseek = 1, negseek = 0, revert = 0;
int cols = 0, nonzero = 0, autoskip = 0, hextype = HEX_NORMAL; int cols = 0, nonzero = 0, autoskip = 0, hextype = HEX_NORMAL, capitalize = 0;
int ebcdic = 0; int ebcdic = 0;
int octspergrp = -1; /* number of octets grouped in output */ int octspergrp = -1; /* number of octets grouped in output */
int grplen; /* total chars per octet group */ int grplen; /* total chars per octet group */
@@ -495,6 +498,7 @@ main(int argc, char *argv[])
else if (!STRNCMP(pp, "-u", 2)) hexx = hexxa + 16; else if (!STRNCMP(pp, "-u", 2)) hexx = hexxa + 16;
else if (!STRNCMP(pp, "-p", 2)) hextype = HEX_POSTSCRIPT; else if (!STRNCMP(pp, "-p", 2)) hextype = HEX_POSTSCRIPT;
else if (!STRNCMP(pp, "-i", 2)) hextype = HEX_CINCLUDE; else if (!STRNCMP(pp, "-i", 2)) hextype = HEX_CINCLUDE;
else if (!STRNCMP(pp, "-C", 2)) capitalize = 1;
else if (!STRNCMP(pp, "-r", 2)) revert++; else if (!STRNCMP(pp, "-r", 2)) revert++;
else if (!STRNCMP(pp, "-E", 2)) ebcdic++; else if (!STRNCMP(pp, "-E", 2)) ebcdic++;
else if (!STRNCMP(pp, "-v", 2)) else if (!STRNCMP(pp, "-v", 2))
@@ -722,7 +726,7 @@ main(int argc, char *argv[])
if (fprintf(fpo, "unsigned char %s", isdigit((int)argv[1][0]) ? "__" : "") < 0) if (fprintf(fpo, "unsigned char %s", isdigit((int)argv[1][0]) ? "__" : "") < 0)
die(3); die(3);
for (e = 0; (c = argv[1][e]) != 0; e++) for (e = 0; (c = argv[1][e]) != 0; e++)
if (putc(isalnum(c) ? c : '_', fpo) == EOF) if (putc(isalnum(c) ? CONDITIONAL_CAPITALIZE(c) : '_', fpo) == EOF)
die(3); die(3);
if (fputs("[] = {\n", fpo) == EOF) if (fputs("[] = {\n", fpo) == EOF)
die(3); die(3);
@@ -750,9 +754,9 @@ main(int argc, char *argv[])
if (fprintf(fpo, "unsigned int %s", isdigit((int)argv[1][0]) ? "__" : "") < 0) if (fprintf(fpo, "unsigned int %s", isdigit((int)argv[1][0]) ? "__" : "") < 0)
die(3); die(3);
for (e = 0; (c = argv[1][e]) != 0; e++) for (e = 0; (c = argv[1][e]) != 0; e++)
if (putc(isalnum(c) ? c : '_', fpo) == EOF) if (putc(isalnum(c) ? CONDITIONAL_CAPITALIZE(c) : '_', fpo) == EOF)
die(3); die(3);
if (fprintf(fpo, "_len = %d;\n", p) < 0) if (fprintf(fpo, "_%s = %d;\n", capitalize ? "LEN" : "len", p) < 0)
die(3); die(3);
} }