Alguns mappings fazem sentido apenas com o debugger ativo, são eles (com sugestão de mapping):
b: Toggle break point;
n: Step Over;
s: Step Into;
r: Step Return;
c: Continue;
<leader>dl: List Breakpoints (aparece na quickfix);
e: Evaluate current selected text;
<leader>dq Fechar o debug;
Aqui temos que decidir se durante o debug vamos prefixar todos os mappings com <leader>d. Isso porque alguns mappings aqui conflitam com comandos já existentes do vim/neovim. Por exemplo, c, b, s, etc. Mas são mappings que são conhecidos em debuggers já existentes (pdb, delve, etc).
Penso que vale a pena ter o clash pois durante uma sessão de debug estamos menos propensos a editar código e sim apenas acompanhar a execução.
Ideia de como desligar os mappings quando o debug fechar
Até onde vi na doc do vimspector ele não tem um "User autocmd" par avisar que o debugger foi fechado. Então talvez valha a pena termos uma função nossa atrelada ao mapping de "Fechar Debugger", dessa forma podemos fazer duas coisas quando essa função for executada:
- Remover os mappings
- Chamar
vimspector#Reset()
Alguns mappings fazem sentido apenas com o debugger ativo, são eles (com sugestão de mapping):
b: Toggle break point;n: Step Over;s: Step Into;r: Step Return;c: Continue;<leader>dl: List Breakpoints (aparece na quickfix);e: Evaluate current selected text;<leader>dqFechar o debug;Aqui temos que decidir se durante o debug vamos prefixar todos os mappings com
<leader>d. Isso porque alguns mappings aqui conflitam com comandos já existentes do vim/neovim. Por exemplo,c,b,s, etc. Mas são mappings que são conhecidos em debuggers já existentes (pdb, delve, etc).Penso que vale a pena ter o clash pois durante uma sessão de debug estamos menos propensos a editar código e sim apenas acompanhar a execução.
Ideia de como desligar os mappings quando o debug fechar
Até onde vi na doc do vimspector ele não tem um "User autocmd" par avisar que o debugger foi fechado. Então talvez valha a pena termos uma função nossa atrelada ao mapping de "Fechar Debugger", dessa forma podemos fazer duas coisas quando essa função for executada:
vimspector#Reset()