From f44a1a3d2cec4c6fac6aae1e544ed244877e8d2e Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Sun, 27 Sep 2026 13:17:35 -0400 Subject: [PATCH] style(console): consolidate usage text into one multiline write --- OpenNest.Console/Program.cs | 94 +++++++++++++------------------------ 1 file changed, 33 insertions(+), 61 deletions(-) diff --git a/OpenNest.Console/Program.cs b/OpenNest.Console/Program.cs index 4b51d02..9438410 100644 --- a/OpenNest.Console/Program.cs +++ b/OpenNest.Console/Program.cs @@ -675,69 +675,41 @@ static class NestConsole static void PrintUsage() { - Console.Error.WriteLine("Usage: OpenNest.Console [options]"); - Console.Error.WriteLine(); - Console.Error.WriteLine("Arguments:"); Console.Error.WriteLine( - " input-files One or more .nest nest files or .dxf/.dwg drawing files" + """ + Usage: OpenNest.Console [options] + + Arguments: + input-files One or more .nest nest files or .dxf/.dwg drawing files + + Modes: + Load nest and fill (existing behavior) + --size WxL Import DXF, create plate, and fill + Load nest and add imported DXF drawings + + Options: + --repair-bends-mm Opt-in endpoint/tick repair, limit >0.001 to 3.175 physical mm + --cad-units inches|mm Explicit source coordinate units required for bend repair + --drawing Drawing name to fill with (default: first drawing) + --plate Plate index to fill (default: 0) + --quantity Max parts to place (default: 0 = unlimited) + --spacing Override part spacing + --size Override plate size (e.g. 60x120); required for DXF-only mode + --output Output nest file path (default: -result.nest) + --template Nest template for plate defaults (thickness, quadrant, material, spacing) + --autonest Whole-job nesting via the jobs engine (--engine) instead of single-plate fill + --engine With --autonest: jobs engine (default: Default; also StockLadder, Strip, ...). + Without --autonest: fill strategy (Default, Strip, Vertical Remnant, Horizontal Remnant) + --keep-parts Don't clear existing parts before filling + --check-overlaps Run overlap detection after fill (exit code 1 if found) + --no-save Skip saving output file + --post Run a post processor after nesting + --post-output Output file for post processor (default: .cnc) + --posts-dir Directory containing post processor DLLs (default: Posts/) + --list-posts List available post processors and exit + -h, --help Show this help + """ ); - Console.Error.WriteLine(); - Console.Error.WriteLine("Modes:"); - Console.Error.WriteLine(" Load nest and fill (existing behavior)"); - Console.Error.WriteLine(" --size WxL Import DXF, create plate, and fill"); - Console.Error.WriteLine( - " Load nest and add imported DXF drawings" - ); - Console.Error.WriteLine(); - Console.Error.WriteLine("Options:"); - Console.Error.WriteLine( - " --repair-bends-mm Opt-in endpoint/tick repair, limit >0.001 to 3.175 physical mm" - ); - Console.Error.WriteLine( - " --cad-units inches|mm Explicit source coordinate units required for bend repair" - ); - Console.Error.WriteLine( - " --drawing Drawing name to fill with (default: first drawing)" - ); - Console.Error.WriteLine(" --plate Plate index to fill (default: 0)"); - Console.Error.WriteLine( - " --quantity Max parts to place (default: 0 = unlimited)" - ); - Console.Error.WriteLine(" --spacing Override part spacing"); - Console.Error.WriteLine( - " --size Override plate size (e.g. 60x120); required for DXF-only mode" - ); - Console.Error.WriteLine( - " --output Output nest file path (default: -result.nest)" - ); - Console.Error.WriteLine( - " --template Nest template for plate defaults (thickness, quadrant, material, spacing)" - ); - Console.Error.WriteLine( - " --autonest Whole-job nesting via the jobs engine (--engine) instead of single-plate fill" - ); - Console.Error.WriteLine( - " --engine With --autonest: jobs engine (default: Default; also StockLadder, Strip, ...)." - ); - Console.Error.WriteLine( - " Without --autonest: fill strategy (Default, Strip, Vertical Remnant, Horizontal Remnant)" - ); - Console.Error.WriteLine( - " --keep-parts Don't clear existing parts before filling" - ); - Console.Error.WriteLine( - " --check-overlaps Run overlap detection after fill (exit code 1 if found)" - ); - Console.Error.WriteLine(" --no-save Skip saving output file"); - Console.Error.WriteLine(" --post Run a post processor after nesting"); - Console.Error.WriteLine( - " --post-output Output file for post processor (default: .cnc)" - ); - Console.Error.WriteLine( - " --posts-dir Directory containing post processor DLLs (default: Posts/)" - ); - Console.Error.WriteLine(" --list-posts List available post processors and exit"); - Console.Error.WriteLine(" -h, --help Show this help"); } class Options