mirror of
https://github.com/aljazceru/opencode.git
synced 2025-12-20 17:24:22 +01:00
fix: keybind docs out of sync
This commit is contained in:
@@ -199,12 +199,6 @@ export namespace Config {
|
|||||||
.object({
|
.object({
|
||||||
leader: z.string().optional().default("ctrl+x").describe("Leader key for keybind combinations"),
|
leader: z.string().optional().default("ctrl+x").describe("Leader key for keybind combinations"),
|
||||||
app_help: z.string().optional().default("<leader>h").describe("Show help dialog"),
|
app_help: z.string().optional().default("<leader>h").describe("Show help dialog"),
|
||||||
switch_mode: z.string().optional().default("none").describe("@deprecated use switch_agent. Next mode"),
|
|
||||||
switch_mode_reverse: z
|
|
||||||
.string()
|
|
||||||
.optional()
|
|
||||||
.default("none")
|
|
||||||
.describe("@deprecated use switch_agent_reverse. Previous mode"),
|
|
||||||
switch_agent: z.string().optional().default("tab").describe("Next agent"),
|
switch_agent: z.string().optional().default("tab").describe("Next agent"),
|
||||||
switch_agent_reverse: z.string().optional().default("shift+tab").describe("Previous agent"),
|
switch_agent_reverse: z.string().optional().default("shift+tab").describe("Previous agent"),
|
||||||
editor_open: z.string().optional().default("<leader>e").describe("Open external editor"),
|
editor_open: z.string().optional().default("<leader>e").describe("Open external editor"),
|
||||||
@@ -222,10 +216,6 @@ export namespace Config {
|
|||||||
model_cycle_recent: z.string().optional().default("f2").describe("Next recent model"),
|
model_cycle_recent: z.string().optional().default("f2").describe("Next recent model"),
|
||||||
model_cycle_recent_reverse: z.string().optional().default("shift+f2").describe("Previous recent model"),
|
model_cycle_recent_reverse: z.string().optional().default("shift+f2").describe("Previous recent model"),
|
||||||
theme_list: z.string().optional().default("<leader>t").describe("List available themes"),
|
theme_list: z.string().optional().default("<leader>t").describe("List available themes"),
|
||||||
file_list: z.string().optional().default("none").describe("@deprecated Currently not available. List files"),
|
|
||||||
file_close: z.string().optional().default("none").describe("@deprecated Close file"),
|
|
||||||
file_search: z.string().optional().default("none").describe("@deprecated Search file"),
|
|
||||||
file_diff_toggle: z.string().optional().default("none").describe("@deprecated Split/unified diff"),
|
|
||||||
project_init: z.string().optional().default("<leader>i").describe("Create/update AGENTS.md"),
|
project_init: z.string().optional().default("<leader>i").describe("Create/update AGENTS.md"),
|
||||||
input_clear: z.string().optional().default("ctrl+c").describe("Clear input field"),
|
input_clear: z.string().optional().default("ctrl+c").describe("Clear input field"),
|
||||||
input_paste: z.string().optional().default("ctrl+v").describe("Paste from clipboard"),
|
input_paste: z.string().optional().default("ctrl+v").describe("Paste from clipboard"),
|
||||||
@@ -239,16 +229,27 @@ export namespace Config {
|
|||||||
.optional()
|
.optional()
|
||||||
.default("ctrl+alt+d")
|
.default("ctrl+alt+d")
|
||||||
.describe("Scroll messages down by half page"),
|
.describe("Scroll messages down by half page"),
|
||||||
messages_previous: z.string().optional().default("ctrl+up").describe("Navigate to previous message"),
|
|
||||||
messages_next: z.string().optional().default("ctrl+down").describe("Navigate to next message"),
|
|
||||||
messages_first: z.string().optional().default("ctrl+g").describe("Navigate to first message"),
|
messages_first: z.string().optional().default("ctrl+g").describe("Navigate to first message"),
|
||||||
messages_last: z.string().optional().default("ctrl+alt+g").describe("Navigate to last message"),
|
messages_last: z.string().optional().default("ctrl+alt+g").describe("Navigate to last message"),
|
||||||
messages_layout_toggle: z.string().optional().default("<leader>p").describe("Toggle layout"),
|
|
||||||
messages_copy: z.string().optional().default("<leader>y").describe("Copy message"),
|
messages_copy: z.string().optional().default("<leader>y").describe("Copy message"),
|
||||||
messages_revert: z.string().optional().default("none").describe("@deprecated use messages_undo. Revert message"),
|
|
||||||
messages_undo: z.string().optional().default("<leader>u").describe("Undo message"),
|
messages_undo: z.string().optional().default("<leader>u").describe("Undo message"),
|
||||||
messages_redo: z.string().optional().default("<leader>r").describe("Redo message"),
|
messages_redo: z.string().optional().default("<leader>r").describe("Redo message"),
|
||||||
app_exit: z.string().optional().default("ctrl+c,<leader>q").describe("Exit the application"),
|
app_exit: z.string().optional().default("ctrl+c,<leader>q").describe("Exit the application"),
|
||||||
|
// Deprecated commands
|
||||||
|
switch_mode: z.string().optional().default("none").describe("@deprecated use switch_agent. Next mode"),
|
||||||
|
switch_mode_reverse: z
|
||||||
|
.string()
|
||||||
|
.optional()
|
||||||
|
.default("none")
|
||||||
|
.describe("@deprecated use switch_agent_reverse. Previous mode"),
|
||||||
|
file_list: z.string().optional().default("none").describe("@deprecated Currently not available. List files"),
|
||||||
|
file_close: z.string().optional().default("none").describe("@deprecated Close file"),
|
||||||
|
file_search: z.string().optional().default("none").describe("@deprecated Search file"),
|
||||||
|
file_diff_toggle: z.string().optional().default("none").describe("@deprecated Split/unified diff"),
|
||||||
|
messages_previous: z.string().optional().default("none").describe("@deprecated Navigate to previous message"),
|
||||||
|
messages_next: z.string().optional().default("none").describe("@deprecated Navigate to next message"),
|
||||||
|
messages_layout_toggle: z.string().optional().default("none").describe("@deprecated Toggle layout"),
|
||||||
|
messages_revert: z.string().optional().default("none").describe("@deprecated use messages_undo. Revert message"),
|
||||||
})
|
})
|
||||||
.strict()
|
.strict()
|
||||||
.openapi({
|
.openapi({
|
||||||
|
|||||||
@@ -138,11 +138,10 @@ const (
|
|||||||
MessagesPageDownCommand CommandName = "messages_page_down"
|
MessagesPageDownCommand CommandName = "messages_page_down"
|
||||||
MessagesHalfPageUpCommand CommandName = "messages_half_page_up"
|
MessagesHalfPageUpCommand CommandName = "messages_half_page_up"
|
||||||
MessagesHalfPageDownCommand CommandName = "messages_half_page_down"
|
MessagesHalfPageDownCommand CommandName = "messages_half_page_down"
|
||||||
MessagesPreviousCommand CommandName = "messages_previous"
|
|
||||||
MessagesNextCommand CommandName = "messages_next"
|
|
||||||
MessagesFirstCommand CommandName = "messages_first"
|
MessagesFirstCommand CommandName = "messages_first"
|
||||||
MessagesLastCommand CommandName = "messages_last"
|
MessagesLastCommand CommandName = "messages_last"
|
||||||
MessagesLayoutToggleCommand CommandName = "messages_layout_toggle"
|
|
||||||
MessagesCopyCommand CommandName = "messages_copy"
|
MessagesCopyCommand CommandName = "messages_copy"
|
||||||
MessagesUndoCommand CommandName = "messages_undo"
|
MessagesUndoCommand CommandName = "messages_undo"
|
||||||
MessagesRedoCommand CommandName = "messages_redo"
|
MessagesRedoCommand CommandName = "messages_redo"
|
||||||
@@ -348,16 +347,7 @@ func LoadFromConfig(config *opencode.Config) CommandRegistry {
|
|||||||
Description: "half page down",
|
Description: "half page down",
|
||||||
Keybindings: parseBindings("ctrl+alt+d"),
|
Keybindings: parseBindings("ctrl+alt+d"),
|
||||||
},
|
},
|
||||||
{
|
|
||||||
Name: MessagesPreviousCommand,
|
|
||||||
Description: "previous message",
|
|
||||||
Keybindings: parseBindings("ctrl+up"),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
Name: MessagesNextCommand,
|
|
||||||
Description: "next message",
|
|
||||||
Keybindings: parseBindings("ctrl+down"),
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
Name: MessagesFirstCommand,
|
Name: MessagesFirstCommand,
|
||||||
Description: "first message",
|
Description: "first message",
|
||||||
@@ -368,11 +358,7 @@ func LoadFromConfig(config *opencode.Config) CommandRegistry {
|
|||||||
Description: "last message",
|
Description: "last message",
|
||||||
Keybindings: parseBindings("ctrl+alt+g"),
|
Keybindings: parseBindings("ctrl+alt+g"),
|
||||||
},
|
},
|
||||||
{
|
|
||||||
Name: MessagesLayoutToggleCommand,
|
|
||||||
Description: "toggle layout",
|
|
||||||
Keybindings: parseBindings("<leader>p"),
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
Name: MessagesCopyCommand,
|
Name: MessagesCopyCommand,
|
||||||
Description: "copy message",
|
Description: "copy message",
|
||||||
|
|||||||
@@ -99,7 +99,6 @@ func (m Model) View() string {
|
|||||||
if m.isDiff == nil || *m.isDiff == false {
|
if m.isDiff == nil || *m.isDiff == false {
|
||||||
diffToggle = ""
|
diffToggle = ""
|
||||||
}
|
}
|
||||||
layoutToggle := m.app.Key(commands.MessagesLayoutToggleCommand)
|
|
||||||
|
|
||||||
background := t.Background()
|
background := t.Background()
|
||||||
footer := layout.Render(
|
footer := layout.Render(
|
||||||
@@ -114,9 +113,7 @@ func (m Model) View() string {
|
|||||||
layout.FlexItem{
|
layout.FlexItem{
|
||||||
View: close,
|
View: close,
|
||||||
},
|
},
|
||||||
layout.FlexItem{
|
|
||||||
View: layoutToggle,
|
|
||||||
},
|
|
||||||
layout.FlexItem{
|
layout.FlexItem{
|
||||||
View: diffToggle,
|
View: diffToggle,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1277,10 +1277,7 @@ func (a Model) executeCommand(command commands.Command) (tea.Model, tea.Cmd) {
|
|||||||
a.messages = updated.(chat.MessagesComponent)
|
a.messages = updated.(chat.MessagesComponent)
|
||||||
cmds = append(cmds, cmd)
|
cmds = append(cmds, cmd)
|
||||||
}
|
}
|
||||||
case commands.MessagesLayoutToggleCommand:
|
|
||||||
a.messagesRight = !a.messagesRight
|
|
||||||
a.app.State.MessagesRight = a.messagesRight
|
|
||||||
cmds = append(cmds, a.app.SaveState())
|
|
||||||
case commands.MessagesCopyCommand:
|
case commands.MessagesCopyCommand:
|
||||||
updated, cmd := a.messages.CopyLastMessage()
|
updated, cmd := a.messages.CopyLastMessage()
|
||||||
a.messages = updated.(chat.MessagesComponent)
|
a.messages = updated.(chat.MessagesComponent)
|
||||||
|
|||||||
@@ -12,18 +12,24 @@ opencode has a list of keybinds that you can customize through the opencode conf
|
|||||||
"leader": "ctrl+x",
|
"leader": "ctrl+x",
|
||||||
"app_help": "<leader>h",
|
"app_help": "<leader>h",
|
||||||
"switch_agent": "tab",
|
"switch_agent": "tab",
|
||||||
|
"switch_agent_reverse": "shift+tab",
|
||||||
|
|
||||||
"editor_open": "<leader>e",
|
"editor_open": "<leader>e",
|
||||||
|
|
||||||
"session_new": "<leader>n",
|
"session_new": "<leader>n",
|
||||||
"session_list": "<leader>l",
|
"session_list": "<leader>l",
|
||||||
"session_share": "<leader>s",
|
"session_share": "<leader>s",
|
||||||
"session_unshare": "<leader>u",
|
"session_unshare": "none",
|
||||||
|
"session_export": "<leader>x",
|
||||||
"session_interrupt": "esc",
|
"session_interrupt": "esc",
|
||||||
"session_compact": "<leader>c",
|
"session_compact": "<leader>c",
|
||||||
|
|
||||||
"tool_details": "<leader>d",
|
"tool_details": "<leader>d",
|
||||||
|
"thinking_blocks": "<leader>b",
|
||||||
"model_list": "<leader>m",
|
"model_list": "<leader>m",
|
||||||
|
"agent_list": "<leader>a",
|
||||||
|
"model_cycle_recent": "f2",
|
||||||
|
"model_cycle_recent_reverse": "shift+f2",
|
||||||
"theme_list": "<leader>t",
|
"theme_list": "<leader>t",
|
||||||
"project_init": "<leader>i",
|
"project_init": "<leader>i",
|
||||||
|
|
||||||
@@ -39,6 +45,8 @@ opencode has a list of keybinds that you can customize through the opencode conf
|
|||||||
"messages_first": "ctrl+g",
|
"messages_first": "ctrl+g",
|
||||||
"messages_last": "ctrl+alt+g",
|
"messages_last": "ctrl+alt+g",
|
||||||
"messages_copy": "<leader>y",
|
"messages_copy": "<leader>y",
|
||||||
|
"messages_undo": "<leader>u",
|
||||||
|
"messages_redo": "<leader>r",
|
||||||
|
|
||||||
"app_exit": "ctrl+c,<leader>q"
|
"app_exit": "ctrl+c,<leader>q"
|
||||||
}
|
}
|
||||||
@@ -65,7 +73,7 @@ You can disable a keybind by adding the key to your config with a value of "none
|
|||||||
{
|
{
|
||||||
"$schema": "https://opencode.ai/config.json",
|
"$schema": "https://opencode.ai/config.json",
|
||||||
"keybinds": {
|
"keybinds": {
|
||||||
"session_compact": "none",
|
"session_compact": "none"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user