From f76a3594dd3fb20c07042b4bdd88d9e1f8ad836a Mon Sep 17 00:00:00 2001 From: Trae Robrock Date: Fri, 30 Jan 2026 18:46:06 -0500 Subject: [PATCH] Missed a couple of places that hard code J for the newline key (#6853) Signed-off-by: Trae Robrock --- crates/goose-cli/src/session/completion.rs | 6 +++++- crates/goose-cli/src/session/input.rs | 7 +++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/crates/goose-cli/src/session/completion.rs b/crates/goose-cli/src/session/completion.rs index 6c32529a..27f9592c 100644 --- a/crates/goose-cli/src/session/completion.rs +++ b/crates/goose-cli/src/session/completion.rs @@ -390,7 +390,11 @@ impl Hinter for GooseCompleter { fn hint(&self, line: &str, _pos: usize, _ctx: &Context<'_>) -> Option { // Only show hint when line is empty if line.is_empty() { - Some("Press Enter to send, Ctrl-J for new line".to_string()) + let newline_key = super::input::get_newline_key().to_ascii_uppercase(); + Some(format!( + "Press Enter to send, Ctrl-{} for new line", + newline_key + )) } else { None } diff --git a/crates/goose-cli/src/session/input.rs b/crates/goose-cli/src/session/input.rs index e9319413..73ccee44 100644 --- a/crates/goose-cli/src/session/input.rs +++ b/crates/goose-cli/src/session/input.rs @@ -83,9 +83,12 @@ pub fn get_input( return Ok(InputResult::Message(message)); } - // Ensure Ctrl-J binding is set for newlines + let newline_key = get_newline_key(); editor.bind_sequence( - rustyline::KeyEvent(rustyline::KeyCode::Char('j'), rustyline::Modifiers::CTRL), + rustyline::KeyEvent( + rustyline::KeyCode::Char(newline_key), + rustyline::Modifiers::CTRL, + ), rustyline::EventHandler::Simple(rustyline::Cmd::Newline), );