From 58dfca6e27df63a5033bbd1f21d903939cfc6c57 Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Fri, 15 Jan 2021 16:43:19 -0500 Subject: [PATCH] Avoid the whitespace after completion --- .../src/main/scala/sbt/internal/util/LineReader.scala | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/internal/util-complete/src/main/scala/sbt/internal/util/LineReader.scala b/internal/util-complete/src/main/scala/sbt/internal/util/LineReader.scala index 8f04bd5cb..d52903d87 100644 --- a/internal/util-complete/src/main/scala/sbt/internal/util/LineReader.scala +++ b/internal/util-complete/src/main/scala/sbt/internal/util/LineReader.scala @@ -63,11 +63,14 @@ object LineReader { * `testOnly testOnly\ com.foo.FooSpec` instead of `testOnly com.foo.FooSpec`. */ if (c.append.nonEmpty) { - if (!pl.line().endsWith(" ")) { - candidates.add(new Candidate(pl.line().split(" ").last + c.append)) - } else { - candidates.add(new Candidate(c.append)) + val cand = pl.line() match { + case line if line.endsWith(" ") => c.append + case line => line.split(" ").last + c.append } + // https://github.com/jline/jline3/blob/9a4971868e4bdd29a36e454de01f54d3cd6071e0/reader/src/main/java/org/jline/reader/Candidate.java#L123-L131 + // "If the candidate is complete and is selected, a space separator will be added." + val complete = false + candidates.add(new Candidate(cand, cand, null, null, null, null, complete)) } } }