VimLM: Asistente de programación Vim nativo basado en LLM, programación inteligente segura sin conexión

Introducción general

VimLM es un plugin de Vim que proporciona un asistente de código impulsado por el LLM nativo (Large Language Model). Interactuando con el modelo LLM nativo a través de comandos Vim, obtiene automáticamente el contexto de código para ayudar a los usuarios con la edición de código en Vim.Inspirado por GitHub Copilot y Cursor, VimLM integra la comprensión contextual de código, el resumen de código y la funcionalidad asistida por IA directamente incrustada en el flujo de trabajo de Vim. Es compatible con una amplia gama de modelos compatibles con MLX, con vinculación de teclas intuitiva y respuesta en pantalla dividida, lo que garantiza a los usuarios un uso seguro en entornos sin conexión, sin llamadas a la API ni fugas de datos.

VimLM:本地LLM驱动的Vim编程助手,安全离线的智能编程

 

Lista de funciones

  • independiente del modeloUtiliza cualquier modelo compatible con MLX mediante el archivo de configuración.
  • Experiencia de usuario nativa de Vim: Teclado intuitivo y respuesta en pantalla dividida
  • profundo conocimiento del contextoObtener contexto de código del archivo actual, selecciones visuales, archivos referenciados y estructura de directorios del proyecto
  • codificación conversacionalOptimización iterativa mediante consultas posteriores
  • Seguridad offlineUso totalmente offline, sin llamadas a la API ni fuga de datos.
  • Extracción y sustitución de códigosInserta un bloque de código de la respuesta en el área de selección.
  • Contexto exterior Adiciones: Añade un archivo o carpeta externa al contexto mediante el comando !include.
  • Generación de archivos de proyectoGenerar archivos de proyecto con el comando deploy.
  • La respuesta sigue generándose: Continúa generando la respuesta interrumpida con el comando !continue.
  • Continuación del hilo: Continúa el hilo actual con el comando !followup.

 

Utilizar la ayuda

Proceso de instalación

  1. Asegúrese de que Python 3.12.8 está instalado en su sistema.
  2. Instala VimLM usando pip:
   pip install vimlm

Uso básico

  1. Del modo normal::
    • pulseCtrl-l: Añade la línea y el archivo actuales al contexto.
    • Sugerencia de ejemplo: "Expresión regular para eliminar la etiqueta HTML de item.content".
  2. Del modo visual::
    • Seleccione el bloque de código y pulseCtrl-l: Añade el bloque seleccionado y el archivo actual al contexto.
    • Sugerencia de ejemplo: "Convierte este código a la sintaxis async/await".
  3. Diálogo de seguimiento::
    • pulseCtrl-j: Continúa el hilo actual.
    • Ejemplo de seguimiento: "Cambio a Manifiesto V3".
  4. Extracción y sustitución de códigos::
    • pulseCtrl-p: Inserta un bloque de código de la respuesta en la última zona seleccionada (modo normal) o en la zona de selección activa (modo visual).
    • Ejemplo de flujo de trabajo: seleccione un fragmento de código en el modo visual, pulse la teclaCtrl-len la pregunta "Convertir este código a la sintaxis async/await" y, a continuación, pulse la teclaCtrl-pSustituye el código seleccionado.
  5. comando en línea::
    • !include: Añadir contexto externo.
      • Ejemplo: "AJAXify this application !include ~/scrap/hypermedia-applications.summ.md".
    • !deploy: Genera el archivo de proyecto.
      • Ejemplo: "Create REST API endpoint !deploy . /api".
    • !continueContinúa generando respuestas.
      • Ejemplo: "Summary !include archivo-grande.txt !continue 5000".
    • !followup: Continúa el hilo actual.
      • Ejemplo: "Crear una extensión de Chrome".

Procedimiento de funcionamiento detallado

  1. Añadir contexto::
    • En modo normal, pulseCtrl-lAñade la línea y el archivo actuales al contexto.
    • En el modo visual, seleccione el bloque de código y pulse la teclaCtrl-lAñade el bloque seleccionado y el archivo actual al contexto.
  2. Generar código::
    • En Modo Normal o Modo Visual, pulseCtrl-lPregunta para generar código.
    • pulseCtrl-pInserte el código generado en el área de selección.
  3. Diálogo de seguimiento::
    • pulseCtrl-jContinuar el hilo actual para la optimización iterativa.
  4. Añadir un contexto externo::
    • utilizar!includepara añadir un archivo o carpeta externos al contexto.
    • Ejemplo: "AJAXify this application !include ~/scrap/hypermedia-applications.summ.md".
  5. Generar archivos de proyecto::
    • utilizar!deploypara generar el archivo de proyecto.
    • Ejemplo: "Create REST API endpoint !deploy . /api".
  6. Continuar generando la respuesta::
    • utilizar!continuesigue generando la respuesta interrumpida.
    • Ejemplo: "Summary !include archivo-grande.txt !continue 5000".
  7. Continuación del hilo::
    • utilizar!followuppara continuar el hilo actual.
    • Ejemplo: "Crear una extensión de Chrome".
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...