Configuração

Atalhos de teclado

Use atalhos de teclado para simplificar seu fluxo de trabalho e reduzir a dependência de interações com o mouse.

Comandos de teclado disponíveis

Bob oferece comandos de teclado para aprimorar seu fluxo de trabalho. Esta página foca no comando Bob.acceptInput, mas aqui está uma referência rápida para comandos de teclado principais:

ComandoDescriçãoAtalho Padrão
Bob.acceptInputEnviar texto ou aceitar a sugestão principalNenhum (configurável)
Bob.focusFocar na caixa de entrada BobNenhum (configurável)
Edição em linhaEditar código diretamente no editorCmd + K (Mac) / Ctrl + K (Windows/Linux)
Mover para o chatEnviar código selecionado para a interface de chatCmd + L (Mac) / Ctrl + L (Windows/Linux)
Modo de codificação literáriaAlternar modo de codificação literáriaCmd + I (Mac) / Ctrl + I (Windows/Linux)

Para uma lista completa de todos os atalhos de teclado disponíveis e para configurar vinculações personalizadas, abra as configurações do Bob, nas configurações Gerais e navegue até a opção Atalhos de teclado onde você pode visualizar e modificar todos os atalhos.

Principais benefícios dos comandos de teclado

  • Interface orientada por teclado: Envie texto ou selecione o botão de sugestão principal sem interação com o mouse
  • Acessibilidade aprimorada: Essencial para usuários com limitações de mobilidade ou aqueles que experimentam desconforto com o uso do mouse
  • Compatibilidade Vim/Neovim: Suporta transições perfeitas para desenvolvedores vindos de ambientes centrados em teclado
  • Eficiência de fluxo de trabalho: Reduz a alternância de contexto entre teclado e mouse durante tarefas de desenvolvimento

Comando Bob.acceptInput

O comando Bob.acceptInput permite que você envie texto ou aceite sugestões com atalhos de teclado em vez de clicar em botões ou pressionar Enter na área de entrada.

Como o comando funciona

O comando Bob.acceptInput é um comando de envio de entrada de propósito geral. Quando acionado, ele:

  • Envia seu texto atual ou entrada de imagem quando na área de entrada de texto (equivalente a pressionar Enter)
  • Clica no botão principal (primeiro) quando botões de ação estão visíveis (como botões confirmar/cancelar ou quaisquer outros botões de ação)

Guia de configuração detalhado

Método 1: Usando a UI

  1. Abra a Paleta de Comandos (Ctrl+Shift+P ou Cmd+Shift+P no Mac)
  2. Digite "Preferences: Open Keyboard Shortcuts"
  3. Na caixa de pesquisa, digite "Bob.acceptInput"
  4. Localize "Bob: Accept Input/Suggestion" nos resultados
  5. Clique no ícone + à esquerda do comando
  6. Pressione sua combinação de teclas desejada (por exemplo, Ctrl+Enter ou Alt+Enter)
  7. Pressione Enter para confirmar

Método 2: Editando keybindings.json diretamente

  1. Abra a Paleta de Comandos (Ctrl+Shift+P ou Cmd+Shift+P no Mac)
  2. Digite "Preferences: Open Keyboard Shortcuts (JSON)"
  3. Adicione a seguinte entrada ao array JSON:
{
  "key": "ctrl+enter",  // ou sua combinação de teclas preferida
  "command": "Bob.acceptInput",
  "when": "BobViewFocused"  // Esta é uma condição de contexto que garante que o comando funcione apenas quando Bob está focado
}

Você também pode usar uma condição mais específica:

{
  "key": "ctrl+enter",
  "command": "Bob.acceptInput",
  "when": "webviewViewFocus && webviewViewId == 'Bob-cline.SidebarProvider'"
}

Combinações de teclas recomendadas

Escolha uma combinação de teclas que não entre em conflito com atalhos existentes do IBM Bob:

  • Alt+Enter - Fácil de pressionar enquanto digita
  • Ctrl+Space - Familiar para quem usa autocompletar
  • Ctrl+Enter - Intuitivo para executar comandos
  • Alt+A - Mnemônico para "Aceitar"

Casos de uso práticos

Fluxos de trabalho de desenvolvimento rápido

  • Envio de texto: Envie mensagens ao Bob sem mover suas mãos do teclado
  • Confirmações de ação: Aceite operações como salvar arquivos, executar comandos ou aplicar diffs
  • Processos de múltiplas etapas: Mova-se rapidamente através de etapas que requerem confirmação ou entrada
  • Tarefas consecutivas: Encadeie múltiplas tarefas juntas com interrupção mínima

Desenvolvimento centrado em teclado

  • Fluxos de trabalho Vim/Neovim: Se você vem de um background Vim/Neovim, mantenha seu fluxo de trabalho focado em teclado
  • Integração IDE: Use junto com outros atalhos de teclado do IBM Bob para uma experiência perfeita
  • Revisões de código: Aceite rapidamente sugestões ao revisar código com Bob
  • Escrita de documentação: Envie texto e aceite sugestões de formatação ao gerar documentação

Casos de uso de acessibilidade

  • Limitações de mobilidade das mãos: Essencial para usuários que têm dificuldade em usar um mouse
  • Prevenção de lesão por esforço repetitivo: Reduza o uso do mouse para prevenir ou gerenciar lesões por esforço repetitivo
  • Integração com leitor de tela: Funciona bem com leitores de tela para usuários com deficiência visual
  • Compatibilidade com controle por voz: Pode ser acionado via comandos de voz ao usar software de controle por voz

Benefícios de acessibilidade

O comando Bob.acceptInput foi projetado com acessibilidade em mente:

  • Dependência reduzida do mouse: Complete fluxos de trabalho inteiros sem alcançar o mouse
  • Tensão física reduzida: Ajuda usuários que experimentam desconforto ou dor com o uso do mouse
  • Método de entrada alternativo: Suporta usuários com deficiências de mobilidade que dependem de navegação por teclado
  • Otimização de fluxo de trabalho: Particularmente valioso para usuários vindos de ambientes centrados em teclado como Vim/Neovim

Fluxos de trabalho centrados em teclado

Aqui estão alguns exemplos de fluxo de trabalho completo mostrando como usar efetivamente atalhos de teclado com Bob:

Exemplo de fluxo de trabalho de desenvolvimento

  1. Abra IBM Bob e navegue até seu projeto
  2. Abra Bob via barra lateral
  3. Digite sua solicitação: "Crie um endpoint de API REST para registro de usuário"
  4. Quando Bob perguntar sobre preferências de framework, use seu atalho Bob.acceptInput para selecionar a primeira sugestão
  5. Continue usando o atalho para aceitar sugestões de geração de código
  6. Quando Bob oferecer salvar o arquivo, use o atalho novamente para confirmar
  7. Use os atalhos integrados do IBM Bob para navegar pelos arquivos criados

Fluxo de trabalho de revisão de código

  1. Selecione o código que você quer revisar e use o comando "Copiar" do IBM Bob
  2. Peça ao Bob para revisá-lo: "Revise este código para problemas de segurança"
  3. À medida que Bob faz perguntas esclarecedoras sobre o contexto do código, use seu atalho para aceitar sugestões
  4. Quando Bob fornecer recomendações de melhoria, use o atalho novamente para aceitar sugestões de implementação

Solução de problemas

ProblemaSolução
Atalho não funcionaCertifique-se de que Bob está focado (clique no painel Bob primeiro)
Sugestão errada selecionadaO comando sempre seleciona o primeiro botão (principal); use o mouse se precisar de uma opção diferente
Conflitos com atalhos existentesTente uma combinação de teclas diferente nas configurações de teclado do IBM Bob
Sem feedback visual quando usadoIsso é normal - o comando ativa silenciosamente a função sem confirmação visual
Atalho funciona inconsistentementeCertifique-se de que a cláusula when está configurada corretamente no seu keybindings.json (seja BobViewFocused ou a condição específica de webview)

Implementação técnica

O comando Bob.acceptInput é implementado da seguinte forma:

  • Comando registrado como Bob.acceptInput com título de exibição "Bob: Accept Input/Suggestion" na paleta de comandos
  • Quando acionado, envia uma mensagem "acceptInput" para a webview Bob ativa
  • A webview determina a ação apropriada com base no estado atual da UI:
    • Clica no botão de ação principal se botões de ação estão visíveis e habilitados
    • Envia a mensagem se a área de texto está habilitada e contém texto/imagens
  • Sem vinculação de tecla padrão - usuários atribuem seu atalho preferido

Limitações

  • Funciona apenas quando a interface Bob está ativa
  • Não tem efeito se nenhuma entrada ou sugestão está disponível no momento
  • Prioriza o botão principal (primeiro) quando múltiplas opções são mostradas
Como está este tópico?