Configuración

Atajos de teclado

Usa atajos de teclado para optimizar tu flujo de trabajo y reducir la dependencia de las interacciones con el ratón.

Comandos de teclado disponibles

Bob ofrece atajos de teclado para mejorar tu flujo de trabajo. Esta página se centra en el comando Bob.acceptInput, pero aquí hay una referencia rápida de atajos de teclado clave:

ComandoDescripciónAtajo predeterminado
Bob.acceptInputEnviar texto o aceptar sugerencia principalNinguno (configurable)
Bob.focusEnfocar campo de entrada de BobNinguno (configurable)
Edición en líneaEditar código directamente en el editorCmd + K (Mac) / Ctrl + K (Windows/Linux)
Mover al chatEnviar código seleccionado a la interfaz de chatCmd + L (Mac) / Ctrl + L (Windows/Linux)
Modo de codificación literariaAlternar modo de codificación literariaCmd + I (Mac) / Ctrl + I (Windows/Linux)

Para obtener una lista completa de todos los atajos de teclado disponibles y configurar combinaciones personalizadas, abre la configuración de Bob, en la configuración General y navega a la opción Atajos de teclado donde puedes ver y modificar todos los atajos.

Principales beneficios de los atajos de teclado

  • Interfaz controlada por teclado: Envía texto o selecciona el botón de sugerencia principal sin interacción con el ratón
  • Accesibilidad mejorada: Esencial para usuarios con limitaciones de movilidad o aquellos que experimentan incomodidad al usar el ratón
  • Compatibilidad con Vim/Neovim: Soporta transiciones fluidas para desarrolladores de entornos centrados en el teclado
  • Eficiencia del flujo de trabajo: Reduce los cambios de contexto entre teclado y ratón durante las tareas de desarrollo

Comando Bob.acceptInput

El comando Bob.acceptInput te permite enviar texto o aceptar sugerencias con atajos de teclado, en lugar de hacer clic en botones o presionar Enter en el área de entrada.

Cómo funciona el comando

El comando Bob.acceptInput es un comando universal de envío de entrada. Cuando se activa:

  • Envía tu entrada de texto o imagen actual si estás en el área de entrada de texto (equivalente a presionar Enter)
  • Hace clic en el botón principal (primero) si los botones de acción son visibles (como botones Confirmar/Cancelar u otros botones de acción)

Guía de configuración detallada

Método 1: Usar la interfaz de usuario

  1. Abre la paleta de comandos (Ctrl+Shift+P o Cmd+Shift+P en Mac)
  2. Escribe "Preferences: Open Keyboard Shortcuts"
  3. En el campo de búsqueda, escribe "Bob.acceptInput"
  4. Busca "Bob: Accept Input/Suggestion" en los resultados
  5. Haz clic en el símbolo + a la izquierda del comando
  6. Presiona tu combinación de teclas deseada (por ejemplo, Ctrl+Enter o Alt+Enter)
  7. Presiona Enter para confirmar

Método 2: Editar keybindings.json directamente

  1. Abre la paleta de comandos (Ctrl+Shift+P o Cmd+Shift+P en Mac)
  2. Escribe "Preferences: Open Keyboard Shortcuts (JSON)"
  3. Agrega la siguiente entrada al array JSON:
{
  "key": "ctrl+enter",  // o tu combinación de teclas preferida
  "command": "Bob.acceptInput",
  "when": "BobViewFocused"  // Esta es una condición de contexto que asegura que el comando solo funcione cuando Bob está enfocado
}

También puedes usar una condición más específica:

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

Combinaciones de teclas recomendadas

Elige una combinación de teclas que no entre en conflicto con los atajos de teclado existentes de IBM Bob:

  • Alt+Enter - Fácil de presionar mientras escribes
  • Ctrl+Space - Familiar para quienes usan autocompletado
  • Ctrl+Enter - Intuitivo para ejecutar comandos
  • Alt+A - Mnemotécnico para "Aceptar"

Casos de uso prácticos

Flujos de trabajo de desarrollo rápido

  • Envío de texto: Envía mensajes a Bob sin quitar las manos del teclado
  • Confirmaciones de acciones: Acepta operaciones como guardar archivos, ejecutar comandos o aplicar diffs
  • Procesos de múltiples pasos: Navega rápidamente por pasos que requieren confirmación o entrada
  • Tareas consecutivas: Encadena múltiples tareas con mínima interrupción

Desarrollo centrado en el teclado

  • Flujos de trabajo Vim/Neovim: Si vienes de un entorno Vim/Neovim, mantén tu flujo de trabajo orientado al teclado
  • Integración con IDE: Usa junto con otros atajos de teclado de IBM Bob para una experiencia fluida
  • Revisiones de código: Acepta sugerencias rápidamente al revisar código con Bob
  • Creación de documentación: Envía texto y acepta sugerencias de formato al generar documentación

Casos de uso de accesibilidad

  • Limitaciones de movilidad de manos: Esencial para usuarios que tienen dificultades para usar un ratón
  • Prevención de lesiones por esfuerzo repetitivo: Reduce el uso del ratón para prevenir o manejar lesiones por esfuerzo repetitivo
  • Integración con lectores de pantalla: Funciona bien con lectores de pantalla para usuarios con discapacidad visual
  • Compatibilidad con control por voz: Puede activarse mediante comandos de voz cuando se usa software de control por voz

Beneficios de accesibilidad

El comando Bob.acceptInput fue diseñado pensando en la accesibilidad:

  • Dependencia reducida del ratón: Completa flujos de trabajo completos sin alcanzar el ratón
  • Tensión física reducida: Ayuda a usuarios que experimentan incomodidad o dolor al usar el ratón
  • Método de entrada alternativo: Soporta usuarios con limitaciones de movilidad que dependen de la navegación por teclado
  • Optimización del flujo de trabajo: Especialmente valioso para usuarios de entornos centrados en el teclado como Vim/Neovim

Flujos de trabajo centrados en el teclado

Aquí hay algunos ejemplos de flujos de trabajo completos que muestran cómo usar atajos de teclado efectivamente con Bob:

Ejemplo de flujo de trabajo de desarrollo

  1. Abre IBM Bob y navega a tu proyecto
  2. Abre Bob a través de la barra lateral
  3. Escribe tu solicitud: "Crea un endpoint de API REST para registro de usuarios"
  4. Cuando Bob pregunte sobre preferencias de framework, usa tu atajo de teclado Bob.acceptInput para seleccionar la primera sugerencia
  5. Continúa usando el atajo de teclado para aceptar sugerencias de generación de código
  6. Cuando Bob ofrezca guardar el archivo, usa el atajo de teclado nuevamente para confirmar
  7. Usa los atajos de teclado integrados de IBM Bob para navegar por los archivos creados

Flujo de trabajo de revisión de código

  1. Selecciona el código que deseas revisar y usa el comando "Copiar" de IBM Bob
  2. Pide a Bob que lo revise: "Revisa este código en busca de problemas de seguridad"
  3. Mientras Bob hace preguntas aclaratorias sobre el contexto del código, usa tu atajo de teclado para aceptar sugerencias
  4. Cuando Bob proporcione recomendaciones de mejora, usa el atajo de teclado nuevamente para aceptar sugerencias de implementación

Solución de problemas

ProblemaSolución
El atajo de teclado no funcionaAsegúrate de que Bob esté enfocado (haz clic primero en el panel de Bob)
Se selecciona la sugerencia incorrectaEl comando siempre selecciona el primer botón (principal); usa el ratón si necesitas otra opción
Conflictos con atajos de teclado existentesPrueba una combinación de teclas diferente en la configuración de teclado de IBM Bob
Sin retroalimentación visual al usarEsto es normal - el comando activa la función silenciosamente sin confirmación visual
El atajo de teclado funciona inconsistentementeAsegúrate de que la cláusula when en tu keybindings.json esté configurada correctamente (ya sea BobViewFocused o la condición específica de webview)

Implementación técnica

El comando Bob.acceptInput está implementado de la siguiente manera:

  • Comando registrado como Bob.acceptInput con título de visualización "Bob: Accept Input/Suggestion" en la paleta de comandos
  • Cuando se activa, envía un mensaje "acceptInput" a la webview activa de Bob
  • La webview determina la acción apropiada basándose en el estado actual de la interfaz de usuario:
    • Hace clic en el botón de acción principal si los botones de acción son visibles y están habilitados
    • Envía el mensaje si el área de texto está habilitada y contiene texto/imágenes
  • Sin vinculación de teclas predeterminada - los usuarios asignan su atajo de teclado preferido

Limitaciones

  • Solo funciona cuando la interfaz de Bob está activa
  • No tiene efecto si actualmente no hay entradas o sugerencias disponibles
  • Prioriza el botón principal (primero) cuando se muestran múltiples opciones
¿Cómo es este tema?