Skip to content

Commit

Permalink
Merge pull request #9476 from alois31/restore-progress-bar
Browse files Browse the repository at this point in the history
nix repl: Only hide the progress bar while waiting for user input
  • Loading branch information
edolstra committed Nov 30, 2023
2 parents cb7f258 + 20cd5eb commit 3bebaef
Showing 1 changed file with 3 additions and 5 deletions.
8 changes: 3 additions & 5 deletions src/libcmd/repl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@ extern "C" {
#include "finally.hh"
#include "markdown.hh"
#include "local-fs-store.hh"
#include "progress-bar.hh"
#include "print.hh"

#if HAVE_BOEHMGC
Expand Down Expand Up @@ -262,13 +261,11 @@ void NixRepl::mainLoop()
rl_set_list_possib_func(listPossibleCallback);
#endif

/* Stop the progress bar because it interferes with the display of
the repl. */
stopProgressBar();

std::string input;

while (true) {
// Hide the progress bar while waiting for user input, so that it won't interfere.
logger->pause();
// When continuing input from previous lines, don't print a prompt, just align to the same
// number of chars as the prompt.
if (!getLine(input, input.empty() ? "nix-repl> " : " ")) {
Expand All @@ -278,6 +275,7 @@ void NixRepl::mainLoop()
logger->cout("");
break;
}
logger->resume();
try {
if (!removeWhitespace(input).empty() && !processLine(input)) return;
} catch (ParseError & e) {
Expand Down

0 comments on commit 3bebaef

Please sign in to comment.