From 340ede13a102f4577419d96ed955c3712db35400 Mon Sep 17 00:00:00 2001 From: Xingchen722 Date: Thu, 19 Feb 2026 13:52:32 +0800 Subject: [PATCH 1/2] Improve help command formatting for clearer structure and alignment --- data/lars.txt | 1 + src/main/java/lars/command/HelpCommand.java | 37 +++++++++++++++++++++ src/main/java/lars/parser/Parser.java | 5 +++ src/main/java/lars/ui/Ui.java | 4 +-- 4 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 src/main/java/lars/command/HelpCommand.java diff --git a/data/lars.txt b/data/lars.txt index 690aea23d3..416cef8077 100644 --- a/data/lars.txt +++ b/data/lars.txt @@ -11,3 +11,4 @@ D | 0 | return book | Sunday T | 0 | 2103 D | 0 | return li book | 2026-02-19 T | 0 | miss mjr +T | 0 | 111 diff --git a/src/main/java/lars/command/HelpCommand.java b/src/main/java/lars/command/HelpCommand.java new file mode 100644 index 0000000000..df1c2ab43b --- /dev/null +++ b/src/main/java/lars/command/HelpCommand.java @@ -0,0 +1,37 @@ +package lars.command; + +import lars.exceptions.LarsException; +import lars.storage.Storage; +import lars.task.TaskList; +import lars.ui.Ui; + +public class HelpCommand extends Command { + + @Override + public void execute(TaskList tasks, Ui ui, Storage storage) { + this.response = + "Here are the commands you can use:\n\n" + + + "1. list\n\n" + + + "2. todo \n" + + " Example:\n" + + " todo read book\n\n" + + + "3. deadline /by \n" + + " Examples:\n" + + " 1. deadline submit report /by 2026-02-15\n" + + " 2. deadline return library book /by 2026-02-15 1800\n" + + " 3. deadline return library book /by Sunday\n\n" + + + "4. event /from /to \n" + + " Example:\n" + + " event meeting /from 2pm /to 4pm\n\n" + + + "5. mark \n" + + "6. unmark \n" + + "7. delete \n" + + "8. remind (or press ⏰)\n" + + "9. bye"; + } +} diff --git a/src/main/java/lars/parser/Parser.java b/src/main/java/lars/parser/Parser.java index 6ed3dc0f85..55e254b921 100644 --- a/src/main/java/lars/parser/Parser.java +++ b/src/main/java/lars/parser/Parser.java @@ -6,6 +6,7 @@ import lars.command.Command; import lars.command.DeleteCommand; import lars.command.ExitCommand; +import lars.command.HelpCommand; import lars.command.ListCommand; import lars.command.MarkCommand; import lars.command.RemindCommand; @@ -101,6 +102,10 @@ public static Command parse(String fullCommand) throws LarsException { case "remind": return new RemindCommand(); + + case "help": + return new HelpCommand(); + default: throw new LarsException("I'm sorry, but I don't know what that means :-("); } diff --git a/src/main/java/lars/ui/Ui.java b/src/main/java/lars/ui/Ui.java index 0a379fb33b..82cbf88332 100644 --- a/src/main/java/lars/ui/Ui.java +++ b/src/main/java/lars/ui/Ui.java @@ -29,9 +29,9 @@ public void printLine() { /** * Returns the welcome message shown to the user. */ - // 在 Ui.java 中添加 public String getWelcomeMessage() { - return "Hello! I'm Lars\nWhat can I do for you?"; + return "Hello! I'm Lars 💛💜\nSo glad to see you\n" + + "You can type \"help\" to see what I can do 🧞‍"; } /** From f129e49fc0a864f36f352c37e22044f87205dbb6 Mon Sep 17 00:00:00 2001 From: Xingchen722 Date: Thu, 19 Feb 2026 14:03:19 +0800 Subject: [PATCH 2/2] Add javadoc to HelpCommand and modify the checkstyle --- src/main/java/lars/command/HelpCommand.java | 50 +++++++++++---------- src/main/java/lars/ui/Ui.java | 4 +- 2 files changed, 28 insertions(+), 26 deletions(-) diff --git a/src/main/java/lars/command/HelpCommand.java b/src/main/java/lars/command/HelpCommand.java index df1c2ab43b..b4e47c06eb 100644 --- a/src/main/java/lars/command/HelpCommand.java +++ b/src/main/java/lars/command/HelpCommand.java @@ -1,37 +1,39 @@ package lars.command; -import lars.exceptions.LarsException; import lars.storage.Storage; import lars.task.TaskList; import lars.ui.Ui; +/** + * Represents a command that displays a help message listing all available commands and their formats. + * This command guides the user on how to interact with the Lars application effectively. + */ public class HelpCommand extends Command { @Override public void execute(TaskList tasks, Ui ui, Storage storage) { this.response = - "Here are the commands you can use:\n\n" + - - "1. list\n\n" + - - "2. todo \n" + - " Example:\n" + - " todo read book\n\n" + - - "3. deadline /by \n" + - " Examples:\n" + - " 1. deadline submit report /by 2026-02-15\n" + - " 2. deadline return library book /by 2026-02-15 1800\n" + - " 3. deadline return library book /by Sunday\n\n" + - - "4. event /from /to \n" + - " Example:\n" + - " event meeting /from 2pm /to 4pm\n\n" + - - "5. mark \n" + - "6. unmark \n" + - "7. delete \n" + - "8. remind (or press ⏰)\n" + - "9. bye"; + "Here are the commands you can use:\n\n" + + "1. list\n\n" + + + "2. todo \n" + + " 👉Example:\n" + + " todo read book\n\n" + + + "3. deadline /by \n" + + " 👉Examples:\n" + + " 1. deadline submit report /by 2026-02-15\n" + + " 2. deadline return library book /by 2026-02-15 1800\n" + + " 3. deadline return library book /by Sunday\n\n" + + + "4. event /from /to \n" + + " 👉Example:\n" + + " event meeting /from 2pm /to 4pm\n\n" + + + "5. mark \n" + + "6. unmark \n" + + "7. delete \n" + + "8. remind (or press ⏰)\n" + + "9. bye"; } } diff --git a/src/main/java/lars/ui/Ui.java b/src/main/java/lars/ui/Ui.java index 82cbf88332..cd7ae833c2 100644 --- a/src/main/java/lars/ui/Ui.java +++ b/src/main/java/lars/ui/Ui.java @@ -30,8 +30,8 @@ public void printLine() { * Returns the welcome message shown to the user. */ public String getWelcomeMessage() { - return "Hello! I'm Lars 💛💜\nSo glad to see you\n" + - "You can type \"help\" to see what I can do 🧞‍"; + return "Hello! I'm Lars 💛💜\nSo glad to see you\n" + + "You can type \"help\" to see what I can do 🧞‍"; } /**