VimLM: Родной LLM-ориентированный помощник программирования Vim, умное программирование для безопасной работы в автономном режиме

Общее введение

VimLM - это плагин для Vim, который предоставляет помощника по работе с кодом на основе родной модели LLM (Large Language Model). Взаимодействуя с родной моделью LLM через команды Vim, он автоматически получает контекст кода и помогает пользователям выполнять редактирование кода в Vim.Вдохновленный GitHub Copilot и Cursor, VimLM интегрирует контекстное понимание кода, обобщение кода и функциональность с помощью искусственного интеллекта непосредственно в рабочий процесс Vim. Он поддерживает широкий спектр MLX-совместимых моделей с интуитивно понятной привязкой клавиш и разделенным экраном, обеспечивая пользователям безопасное использование в автономных средах без вызовов API или утечки данных.

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

 

Список функций

  • независимый от модели: Используйте любую MLX-совместимую модель через файл конфигурации
  • Пользовательский опыт Vim Native: Интуитивное переключение клавиш и разделение экрана
  • глубокое понимание контекста: Получение контекста кода из текущего файла, визуальных выделений, ссылающихся файлов и структуры каталогов проекта
  • разговорное кодирование: Итеративная оптимизация последующих запросов
  • Безопасность в автономном режиме: Полностью автономное использование, не требуются вызовы API или утечка данных
  • Извлечение и замена кода: Вставляет блок кода из ответа в область выбора.
  • Дополнения к внешнему контексту: Добавьте внешний файл или папку в контекст с помощью команды !include.
  • Формирование файла проекта: Создайте файлы проекта с помощью команды !deploy.
  • Ответные действия продолжаются: Продолжайте генерировать прерванный ответ с помощью команды !continue.
  • Продолжение нити: Продолжите текущий поток с помощью команды !followup.

 

Использование помощи

Процесс установки

  1. Убедитесь, что в вашей системе установлен Python 3.12.8.
  2. Установите VimLM с помощью pip:
   pip install vimlm

Основное использование

  1. Из обычного режима::
    • нажмитеCtrl-l: Добавляет текущую строку и файл в контекст.
    • Пример подсказки: "Регулярное выражение для удаления HTML-тега из item.content".
  2. Из визуального режима::
    • Выберите блок кода и нажмите кнопкуCtrl-l: Добавляет выбранный блок и текущий файл в контекст.
    • Пример подсказки: "Переведите этот код в синтаксис async/await".
  3. Последующий диалог::
    • нажмитеCtrl-j: Продолжение текущей темы.
    • Пример последующих действий: "Изменить на Manifest V3".
  4. Извлечение и замена кода::
    • нажмитеCtrl-p: Вставляет блок кода из ответа в последнюю выделенную область (обычный режим) или в активную область выделения (визуальный режим).
    • Пример работы: выберите фрагмент кода в визуальном режиме, нажмите кнопкуCtrl-lв подсказке "Преобразовать этот код в синтаксис async/await", затем нажмите кнопкуCtrl-pЗамените выбранный код.
  5. встроенная команда::
    • !include: Добавьте внешний контекст.
      • Пример: "AJAXify this application !include ~/scrap/hypermedia-applications.summ.md".
    • !deploy: Создайте файл проекта.
      • Пример: "Создать конечную точку REST API ! /api".
    • !continue: Продолжайте генерировать ответы.
      • Пример: "Summary !include large-file.txt !continue 5000".
    • !followup: Продолжение текущей темы.
      • Пример: "Создать расширение Chrome".

Подробная процедура работы

  1. Добавление контекста::
    • В обычном режиме нажмитеCtrl-lДобавляет текущую строку и файл в контекст.
    • В визуальном режиме выберите блок кода и нажмите кнопкуCtrl-lДобавляет выбранный блок и текущий файл в контекст.
  2. Сгенерировать код::
    • В обычном или визуальном режиме нажмитеCtrl-lПодсказка для генерации кода.
    • нажмитеCtrl-pВставьте сгенерированный код в область выбора.
  3. Последующий диалог::
    • нажмитеCtrl-jПродолжить текущий поток для итеративной оптимизации.
  4. Добавление внешнего контекста::
    • пользоваться!includeчтобы добавить внешний файл или папку в контекст.
    • Пример: "AJAXify this application !include ~/scrap/hypermedia-applications.summ.md".
  5. Создание файлов проекта::
    • пользоваться!deployчтобы сгенерировать файл проекта.
    • Пример: "Создать конечную точку REST API ! /api".
  6. Продолжайте генерировать ответ::
    • пользоваться!continueкоманда продолжает генерировать прерванный ответ.
    • Пример: "Summary !include large-file.txt !continue 5000".
  7. Продолжение нити::
    • пользоваться!followupчтобы продолжить текущий поток.
    • Пример: "Создать расширение Chrome".
© заявление об авторских правах

Похожие статьи

Napkin:将文字转换为效果出众的概念示意图,文章快速制作插图

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...