Skip to content

Commit 7e1a452

Browse files
committed
fix(cmd2): configure PromptSession for READLINE_LIKE tab completion
Set complete_style=CompleteStyle.READLINE_LIKE and complete_in_thread=True to restore <TAB><TAB> behavior showing all options, mimicking readline.
1 parent 9c4f421 commit 7e1a452

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

cmd2/cmd2.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@
146146
from prompt_toolkit.input import DummyInput
147147
from prompt_toolkit.output import DummyOutput
148148
from prompt_toolkit.patch_stdout import patch_stdout
149-
from prompt_toolkit.shortcuts import PromptSession, set_title
149+
from prompt_toolkit.shortcuts import CompleteStyle, PromptSession, set_title
150150

151151
try:
152152
if sys.platform == "win32":
@@ -443,6 +443,8 @@ def __init__(
443443
self.session: PromptSession[str] = PromptSession(
444444
history=self.history_adapter,
445445
completer=self.completer,
446+
complete_style=CompleteStyle.READLINE_LIKE,
447+
complete_in_thread=True,
446448
)
447449
except (NoConsoleScreenBufferError, AttributeError, ValueError):
448450
# Fallback to dummy input/output if PromptSession initialization fails.
@@ -453,6 +455,8 @@ def __init__(
453455
completer=self.completer,
454456
input=DummyInput(),
455457
output=DummyOutput(),
458+
complete_style=CompleteStyle.READLINE_LIKE,
459+
complete_in_thread=True,
456460
)
457461

458462
# Commands to exclude from the history command

0 commit comments

Comments
 (0)