Skip to content

Snacks Terminal Extra

editor.snacks-terminal switches :BlakTerminal from Blak’s native terminal split to Snacks.terminal.toggle(). The default toggle key still comes from terminal.toggle_key, so you can keep <leader>tt or choose your own mapping.

Enable it

-- ~/.config/blak/lua/blak/user.lua
return {
extras = {
enabled = {
"editor.snacks-terminal",
},
},
}

Or enable it interactively:

:BlakExtras enable editor.snacks-terminal

What it adds

SurfaceContribution
Configterminal.provider = "snacks"
Snacksterminal.enabled = true
Command:BlakTerminal [cmd] toggles Snacks terminal
Keymapterminal.toggle_key toggles Snacks terminal

The keymap appears in :BlakKeys.

Configure the toggle key

return {
extras = {
enabled = { "editor.snacks-terminal" },
},
terminal = {
toggle_key = "<C-/>",
},
}

Set the key to false if you want to keep terminal toggling command-only:

return {
extras = {
enabled = { "editor.snacks-terminal" },
},
terminal = {
toggle_key = false,
},
}

Configure Snacks terminal

Snacks terminal options go under snacks.terminal:

return {
extras = {
enabled = { "editor.snacks-terminal" },
},
snacks = {
terminal = {
win = {
position = "bottom",
height = 0.3,
},
},
},
}

Switch back to native

Remove the extra or disable it:

:BlakExtras disable editor.snacks-terminal

If you set the provider manually, set it back:

return {
terminal = {
provider = "native",
toggle_key = "<leader>tt",
},
extras = {
enabled = {},
},
}

Restart Blak when you want already-loaded terminal windows and keymaps to disappear cleanly.