From ea8ce19c1060bb679d48b199741d9bfc44c77e29 Mon Sep 17 00:00:00 2001 From: Ludovic Apvrille <ludovic.apvrille@telecom-paris.fr> Date: Thu, 23 Feb 2023 18:50:45 +0100 Subject: [PATCH] Improving help formatting --- src/main/java/cli/Action.java | 22 +++++++++++----------- src/main/java/cli/Command.java | 26 +++++++++++++------------- src/main/java/cli/Help.java | 6 +++--- src/main/java/cli/Interpreter.java | 2 +- 4 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/main/java/cli/Action.java b/src/main/java/cli/Action.java index 069f8f9918..c1d8fa293c 100644 --- a/src/main/java/cli/Action.java +++ b/src/main/java/cli/Action.java @@ -120,7 +120,7 @@ public class Action extends Command { private final static String AVATAR_MUTATION = "avatar-mutation"; private final static String AVATAR_MUTATION_BATCH = "avatar-mutation-batch"; - private final static String AVATAR_DRAW = "avatar-draw"; + private final static String AVATAR_DRAW = "avatar-print"; private final static String AVATAR_PRINT = "avatar-draw"; private final static String AVATAR_RG_GENERATION = "avatar-rg"; private final static String AVATAR_UPPAAL_VALIDATE = "avatar-rg-validate"; @@ -357,8 +357,11 @@ public class Action extends Command { } public String getDescription() { - return "Get the name of the model under edition TTool. If a variable is provided as argument, the " + - "result is saved into this variable"; + return "Get the name of the model under edition TTool"; + } + + public String getUsage() { + return "If a variable is provided as argument, the result is saved into this variable"; } public String executeCommand(String command, Interpreter interpreter) { @@ -708,8 +711,11 @@ public class Action extends Command { } public String getDescription() { - return "Generate the XML of a diplodocus model.\n<variable name>: variable in which the " + - "XML specification is saved"; + return "Generate the XML of a diplodocus model"; + } + + public String getUsage() { + return "<variable name>: variable in which the XML specification is saved"; } public String executeCommand(String command, Interpreter interpreter) { @@ -1123,9 +1129,6 @@ public class Action extends Command { return "\n"; } - public String getExample() { - return "ap"; - } public String executeCommand(String command, Interpreter interpreter) { @@ -1163,9 +1166,6 @@ public class Action extends Command { return "\n"; } - public String getExample() { - return "ad"; - } public String executeCommand(String command, Interpreter interpreter) { diff --git a/src/main/java/cli/Command.java b/src/main/java/cli/Command.java index ebefcca76e..eb1f57cebd 100644 --- a/src/main/java/cli/Command.java +++ b/src/main/java/cli/Command.java @@ -118,24 +118,24 @@ public class Command implements CommandInterface { } - public String getHelp(int level) { + public String getHelp(int level, boolean printUsage) { String dec = getLevelString(level); - /*String h = ""; - h+= getCommand() + " (" + getShortCommand() + "): " + getUsage() + "\n" + getDescription() + "\n"; - for (Command c: subcommands) { - h+= "\t" + c.getHelp(); - }*/ - - StringBuffer b = new StringBuffer(dec + "* " + getCommand() + " (" + getShortCommand() + "): " + getUsage() + "\n" + dec + " " + - getDescription() + - "\n"); - if (getExample().length() > 0) { - b.append(dec + "Example: " + getExample() + "\n"); + StringBuffer b = new StringBuffer("\n" + dec + "* " + getCommand() + " (" + getShortCommand() + ")"); + b.append(": " + getDescription()); + if (printUsage) { + b.append("\n " + dec + getUsage()); + if (getExample().length() > 0) { + b.append("\n" + dec + "Example: " + getExample()); + } + } else { + if ((getUsage().length() + getExample().length()) > 0 ) { + b.append( " ..."); + } } - subcommands.forEach( (c) -> { b.append(c.getHelp(level + 1)); }); + subcommands.forEach( (c) -> { b.append(c.getHelp(level + 1, false)); }); return b.toString(); } diff --git a/src/main/java/cli/Help.java b/src/main/java/cli/Help.java index 3402118970..ee7e2257ba 100644 --- a/src/main/java/cli/Help.java +++ b/src/main/java/cli/Help.java @@ -93,8 +93,8 @@ public class Help extends Command { if (command.trim().length() == 0) { String s = ""; for(Command c: Interpreter.commands) { - //s += c.getShortCommand() + "\t" + c.getCommand() + "\t" + c.getDescription() + "\n"; - s += c.getShortCommand() + "\t" + c.getCommand() + "\n"; + s += c.getShortCommand() + "\t" + c.getCommand() + "\t" + c.getDescription() + "\n"; + //s += c.getShortCommand() + "\t" + c.getCommand() + "\n"; } interpreter.print(s); TraceManager.addDev("Info on command"); @@ -108,7 +108,7 @@ public class Help extends Command { return Interpreter.BAD_COMMAND_NAME; } - interpreter.print(c.getHelp(1)); + interpreter.print(c.getHelp(1, true)); return null; diff --git a/src/main/java/cli/Interpreter.java b/src/main/java/cli/Interpreter.java index b56433acbc..ff2b2104d5 100644 --- a/src/main/java/cli/Interpreter.java +++ b/src/main/java/cli/Interpreter.java @@ -323,7 +323,7 @@ public class Interpreter implements Runnable, TerminalProviderInterface { public String getHelp() { StringBuffer buf = new StringBuffer(""); for (Command c : commands) { - buf.append(c.getHelp(0) + "\n"); + buf.append(c.getHelp(0, true) + "\n"); } return buf.toString(); } -- GitLab