[BUG] Re-shown snacks split puts the cursor a row above the prompt when it has a winbar
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 84/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- lua, neovim
- Domínio
- cli, developer-experience, tooling
Direção de pesquisa
Comece em lua/claudecode/terminal/snacks.lua e inspecione a sequência de reexibição em torno de vsplit, nvim_win_set_buf e reapply_snacks_window_state. Reproduza o ciclo de ocultar/mostrar com o provider snacks padrão e uma winbar. Está concluído quando o estado é reaplicado antes da troca de buffer e alternâncias repetidas mantêm o prompt e o cursor do Claude alinhados sem perder a winbar.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Re-showing the split terminal with the snacks provider still leaves the cursor a row above Claude's ❯ prompt, the symptom in #240, whenever the split has a winbar. That's the default for split terminals (snacks/terminal.lua sets N: %{get(b:, 'term_title', '')} unless wo.winbar is set), and neither claudecode nor LazyVim's claudecode extra overrides it, so it's what you get out of the box.
To reproduce, open Claude in a right split with the default snacks provider, hide it with :ClaudeCode, show it again with :ClaudeCode, and the cursor sits a row above the prompt.
The re-show in lua/claudecode/terminal/snacks.lua runs vsplit, then nvim_win_set_buf, then reapply_snacks_window_state. Until the options are reapplied the terminal sits in a window with no winbar, one row taller than Claude last drew into. Neovim pulls a line of scrollback onto the screen when a terminal grows, and when the winbar comes back it drops a blank row off the bottom instead of pushing that line back, so the content ends up a row lower than Claude thinks it is. Claude redraws relative to the cursor, so every frame after that is a row off.
Moving reapply_snacks_window_state(term, new_win) above nvim_win_set_buf fixes it for me. The winbar survives the buffer switch, and hide/show stayed aligned in every case I tried, four quick toggles in a row included, with no Ctrl+L sent. Setting snacks_win_opts.wo.winbar = "" also works, but loses the title.
- Neovim 0.12.5
- Claude Code 2.1.283
- claudecode.nvim 2390c6e (current main)
- snacks.nvim 882c996
- WSL2 Ubuntu
- Linguagem predominante
- Lua
- Estrelas
- 3.1k
- Forks
- 219
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Sem guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de coder/claudecode.nvim
-
bug needs-triage
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
coder/claudecode.nvim#314 ·
-
bug needs-triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
coder/claudecode.nvim#313 ·
-
Is this plugin abondonned?Abertaneeds-triage
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 20/100
coder/claudecode.nvim#319 · 2 reações ·
-
[BUG] 框选文本一直抱错误信息Abertabug needs-triage
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
coder/claudecode.nvim#316 · 1 comentário ·
-
needs-triage
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 62/100
coder/claudecode.nvim#309 ·
Todas as issues de coder/claudecode.nvim
Issues semelhantes
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
AstroNvim/astrotheme#184 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
objectionary/eolang.sty#184 ·
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
Mantenedores costumam responder em até 1 dia
-
Add c++23 mapping to nvccAbertafeature request
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 86/100
Mantenedores costumam responder em até 2 dias