Для импорта файлов надо require(""), Напр: require("config.config") для загрузки файла ~/.config/nvim/lua/config/config.lua Для биндов надо использовать vim.keymap.set(), Напр: vim.keymap.set("n", "m", ":Sex<CR>", { noremap = true, silent = true }) для бинда :Sex на m
Для установки плагин менеджера Lazy надо добавить в свою конфигурацию
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" -- Lazy autoinstall if not vim.loop.fs_stat(lazypath) then vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", -- latest stable release lazypath }) end vim.opt.rtp:prepend(lazypath)
Для настройки его надо использовать require("lazy").setup({}), напр:
Привет, пикабушники, сегодня будет мини гайд по модальному текстовому редактору helix.
Helix модальный, быстрый редактор на rust с поддержкой lsp.
В данном гайде мы рассмотрим основные функции и кейбинды.
Helix в отличие от своих собратьев vim/kakoune имеет встроенный lsp.
Первый запуск, просто введите в терминале helix, откроется пустой файл, вы можете указать, какой файл открыть просто helix путь к файлу, или через command mode :e (нажатием :). Основные кейбинды:
hjkl перемещение, esc выход из любого режима. Рассмотрим основные режимы i режим вставки (для печати текста), также активируется a, но тогда печать начнется после курсора. v - визуальный режим для выделения, x выделяет всю строку, а hjkl работают и тут. Примечание, shift часто инвертирует действие, u для отмены.
Все команды в helix можно комбинировать, а указание цифр тоже работает, например 3l скачок курсором на 3 слова, w на одно слово, b на одно слово назад. d ВЫРЕЗАТЬ выделение/символ. Работа с буферами:
Для копирования y, для вставки p. По умолчанию копируется в дефолтный буфер, но через "x y вы скопируете в регистр x, + системный регистр, _ это нулевой буфер. чтобы именно удалить что-то нужно "_d написать. Вы можете применять буферы ко всем командам вставки. Ещё пару полезных команд - o на строку ниже, m match mode для обертывания текста, очень удобно кстати например напишите текст - test. Выделите его, нажмите ms" и слово обернется в кавычки, mi" удалит кавычки. f перейти к символу, shift f в обратном направлении. Пробел без режима space mode, в нем попробуйте нажать f, будет поиск файлов. c для удаления выделенного текста и перех в insert mode, r для замены конкретного символа на курсоре
Мульти курсоры и выделение: Для создания курсора нажмите shift c для создания курсора снизу, для колапсирования курсоров.
Выделение и мультикурсоры
Выделение происходит в областях, через v можете задать свой диапазон, либо % весь текст. После выделения области нажмите s, наберите слово и helix подсветит, выделит их, поставит мульти курсоры. Смотрите ниже. Для поиска используется / вот небольшой showcase от меня. Полный кеймап здесь
Я только что запустил BobaVim — браузерную игру, которая помогает освоить и практиковать движения в Vim через увлекательные задания и соревнования.
Можно играть в одиночку для тренировки или соревноваться с другими игроками в режиме 1 на 1 в реальном времени. В игре есть:
Учебник и справочник
Таблица лидеров для отслеживания прогресса
Уровни, сфокусированные на реальных Vim-командах
Этот проект — моя небольшая дань уважения Браму Муленаару, создателю Vim. Его труд и философия вдохновили меня на создание этого инструмента для сообщества.
Я разработал игру на HTML, CSS, JavaScript и Go, и заодно многому научился — от клиентского предсказания до обработки конкуренции и многопользовательской синхронизации в реальном времени.
Расскажу о том, почему я использую Neovim как основной текстовый редактор, а также о том, как я им пользуюсь.
Почему Neovim?
По сравнению с VS Code и другими IDE, Neovim очень минималистичный и простой. Единственное, что нужно знать – это то, какие клавиши за что отвечают.
После того как вы привыкаете к способу управления, появляется второе преимущество – удобство. После этого вам будет не хватать vim-раскладки в обычных редакторах.
Вопрос не в скорости
Хоть vim-раскладка увеличивает скорость печати, это не главное, так как при 10 часах дебага она вам не поможет. Дело тут именно в удобстве.
Читщит для ленивых
Команда Действие
Esc – перейти в NORMAL режим
hjkl – перемещение
Ctrl-d/u – пол страницы вверх/вниз
gg/G – вверх/низ файла
yy/p – скопировать/вставить строчку
o/O – вставить пустую строчку снизу/сверху
I/A – переход в начало/конец строки
:w(q) – сохранить (и выйти)
:q! – выйти без сохранения
Настройка
По настройке Neovim очень много статей, инструкций и т.д. Я опишу только свою конфигурацию.
Как я уже сказал, я люблю минимализм.
Из плагинов использую Telescope для навигации по проекту, Treesitter для подсветки синтаксиса и LSP для автодополнения и аннотаций. В качестве темы использую Gruvbox.