Skip to content

Commit c83f6d0

Browse files
cpcloudcursoragent
andcommitted
fix(ui): change mag mode keybinding from ctrl+m to ctrl+o
ctrl+m sends the same byte as Enter (0x0D) in terminals, making mag mode impossible to toggle. ctrl+o has no terminal special meaning and "o" suggests "order" of magnitude. Closes #191 Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 811ca82 commit c83f6d0

File tree

5 files changed

+9
-7
lines changed

5 files changed

+9
-7
lines changed

internal/app/chat.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1365,7 +1365,7 @@ func (m *Model) handleChatKey(key tea.KeyMsg) (tea.Model, tea.Cmd) {
13651365
case "ctrl+s":
13661366
m.toggleSQL()
13671367
return m, nil
1368-
case "ctrl+m":
1368+
case "ctrl+o":
13691369
m.toggleMagMode()
13701370
return m, nil
13711371
case "ctrl+c":

internal/app/chat_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -329,10 +329,10 @@ func TestChatMagModeToggle(t *testing.T) {
329329
assert.False(t, m.magMode)
330330

331331
// Toggle on from within chat.
332-
sendKey(m, "ctrl+m")
332+
sendKey(m, "ctrl+o")
333333
assert.True(t, m.magMode)
334334

335335
// Toggle off.
336-
sendKey(m, "ctrl+m")
336+
sendKey(m, "ctrl+o")
337337
assert.False(t, m.magMode)
338338
}

internal/app/mag_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -152,17 +152,17 @@ func TestMagTransformCells(t *testing.T) {
152152
func TestMagModeToggle(t *testing.T) {
153153
m := newTestModel()
154154
assert.False(t, m.magMode)
155-
sendKey(m, "ctrl+m")
155+
sendKey(m, "ctrl+o")
156156
assert.True(t, m.magMode)
157-
sendKey(m, "ctrl+m")
157+
sendKey(m, "ctrl+o")
158158
assert.False(t, m.magMode)
159159
}
160160

161161
func TestMagModeWorksInEditMode(t *testing.T) {
162162
m := newTestModel()
163163
m.enterEditMode()
164164
assert.False(t, m.magMode)
165-
sendKey(m, "ctrl+m")
165+
sendKey(m, "ctrl+o")
166166
assert.True(t, m.magMode)
167167
}
168168

internal/app/mode_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ func sendKey(m *Model, key string) {
4444
msg = tea.KeyMsg{Type: tea.KeyShiftTab}
4545
case "ctrl+c":
4646
msg = tea.KeyMsg{Type: tea.KeyCtrlC}
47+
case "ctrl+o":
48+
msg = tea.KeyMsg{Type: tea.KeyCtrlO}
4749
}
4850
m.Update(msg)
4951
}

internal/app/model.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -375,7 +375,7 @@ func (m *Model) handleCommonKeys(key tea.KeyMsg) (tea.Cmd, bool) {
375375
m.showHouse = !m.showHouse
376376
m.resizeTables()
377377
return nil, true
378-
case "ctrl+m":
378+
case "ctrl+o":
379379
m.magMode = !m.magMode
380380
return nil, true
381381
case "h", "left":

0 commit comments

Comments
 (0)