make command-line arguments more flexible - chess-puzzles - chess puzzle book generator
(HTM) git clone git://git.codemadness.org/chess-puzzles
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit 0bf730b426ada19f487f1791faf13269989abc04
(DIR) parent 132c4a50aae9c410bf3b505f4c61b322c388cf83
(HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Wed, 20 Dec 2023 18:50:17 +0100
make command-line arguments more flexible
Diffstat:
M fen_to_svg.c | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
---
(DIR) diff --git a/fen_to_svg.c b/fen_to_svg.c
@@ -391,17 +391,25 @@ main(int argc, char *argv[])
char square[3];
long l;
- if (argc != 3) {
- fprintf(stderr, "usage: %s <FEN> <moves>\n", argv[0]);
+ if (argc > 3) {
+ fprintf(stderr, "usage: %s <FEN> [moves] or\n", argv[0]);
+ fprintf(stderr, " %s <FEN> or\n", argv[0]);
+ fprintf(stderr, " %s\n", argv[0]);
return 1;
}
+ if (argc > 1)
+ fen = argv[1];
+ else
+ fen = "startpos";
+
+ if (argc > 2)
+ moves = argv[2];
+ else
+ moves = "";
- fen = argv[1];
if (!strcmp(fen, "startpos"))
fen = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1";
- moves = argv[2];
-
/* initial board state, FEN format */
x = y = field = 0;
for (s = fen; *s; s++) {