From 2265901e6e36b84276e71642c58c39f946badd08 Mon Sep 17 00:00:00 2001
From: Henrik Karlsson <i97henka@gmail.com>
Date: Mon, 23 Jan 2023 10:50:44 +0000
Subject: [PATCH] improved help command listing.

---
 src/libcmd/repl.cc | 53 +++++++++++++++++++++++++---------------------
 1 file changed, 29 insertions(+), 24 deletions(-)

diff --git a/src/libcmd/repl.cc b/src/libcmd/repl.cc
index e3afb1531..5fc503c2b 100644
--- a/src/libcmd/repl.cc
+++ b/src/libcmd/repl.cc
@@ -486,35 +486,40 @@ bool NixRepl::processLine(std::string line)
         std::cout
              << "The following commands are available:\n"
              << "\n"
-             << "  <expr>        Evaluate and print expression\n"
-             << "  <x> = <expr>  Bind expression to variable\n"
-             << "  :a <expr>     Add attributes from resulting set to scope\n"
-             << "  :b <expr>     Build a derivation\n"
-             << "  :bl <expr>    Build a derivation, creating GC roots in the working directory\n"
-             << "  :e <expr>     Open package or function in $EDITOR\n"
-             << "  :i <expr>     Build derivation, then install result into current profile\n"
-             << "  :l <path>     Load Nix expression and add it to scope\n"
-             << "  :lf <ref>     Load Nix flake and add it to scope\n"
-             << "  :p <expr>     Evaluate and print expression recursively\n"
-             << "  :q            Exit nix-repl\n"
-             << "  :r            Reload all files\n"
-             << "  :sh <expr>    Build dependencies of derivation, then start nix-shell\n"
-             << "  :t <expr>     Describe result of evaluation\n"
-             << "  :u <expr>     Build derivation, then start nix-shell\n"
-             << "  :doc <expr>   Show documentation of a builtin function\n"
-             << "  :log <expr>   Show logs for a derivation\n"
-             << "  :te [bool]    Enable, disable or toggle showing traces for errors\n"
+             << "  <expr>                       Evaluate and print expression\n"
+             << "  <x> = <expr>                 Bind expression to variable\n"
+             << "  :a, :add <expr>              Add attributes from resulting set to scope\n"
+             << "  :b <expr>                    Build a derivation\n"
+             << "  :bl <expr>                   Build a derivation, creating GC roots in the\n"
+             << "                               working directory\n"
+             << "  :e, :edit <expr>             Open package or function in $EDITOR\n"
+             << "  :i <expr>                    Build derivation, then install result into\n"
+             << "                               current profile\n"
+             << "  :l, :load <path>             Load Nix expression and add it to scope\n"
+             << "  :lf, :load-flake <ref>       Load Nix flake and add it to scope\n"
+             << "  :p, :print <expr>            Evaluate and print expression recursively\n"
+             << "  :q, :quit                    Exit nix-repl\n"
+             << "  :r, :reload                  Reload all files\n"
+             << "  :sh <expr>                   Build dependencies of derivation, then start\n"
+             << "                               nix-shell\n"
+             << "  :t <expr>                    Describe result of evaluation\n"
+             << "  :u <expr>                    Build derivation, then start nix-shell\n"
+             << "  :doc <expr>                  Show documentation of a builtin function\n"
+             << "  :log <expr>                  Show logs for a derivation\n"
+             << "  :te, :trace-enable [bool]    Enable, disable or toggle showing traces for\n"
+             << "                               errors\n"
+             << "  :?, :help                    Brings up this help menu\n"
              ;
         if (state->debugRepl) {
              std::cout
              << "\n"
              << "        Debug mode commands\n"
-             << "  :env          Show env stack\n"
-             << "  :bt           Show trace stack\n"
-             << "  :st           Show current trace\n"
-             << "  :st <idx>     Change to another trace in the stack\n"
-             << "  :c            Go until end of program, exception, or builtins.break\n"
-             << "  :s            Go one step\n"
+             << "  :env             Show env stack\n"
+             << "  :bt, :backtrace  Show trace stack\n"
+             << "  :st              Show current trace\n"
+             << "  :st <idx>        Change to another trace in the stack\n"
+             << "  :c, :continue    Go until end of program, exception, or builtins.break\n"
+             << "  :s, :step        Go one step\n"
              ;
         }