Вашему вниманию конфигурационный файл с плагинами для комфортной разработки под Ruby on Rails и не только.

Более года собирался данный конфигурационный файл, удалялись или устанавливались разные плагины и проходили обкатку. в результате теперь комфортно работать в "самом" быстром редакторе.

Как его использовать

  • установить neovim -> NeoVim Install

  • установить менеджер плагинов Plug (Download plug.vim скачать файл и положить в директорию "autoload".)

  • скопировать файл настроек из моего репозитория init.vim

  • для использования, скопировать init.vim в ~/.config/nvim , или же скорпировать содержимое из файла в ~/.config/nvim/init.vim

  • запустить nvim и в нем запустить команду PlugInstall

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

Перечень использованных плагинов и короткое описание к ним с быстрыми клавишами.

  • Keithbsmiley/rspec.vim

    Подсветка синтаксиса для файлов rspec.

  • Shougo/deoplete.nvim

    Deoplete аббревиатура "dark powered neo-completion". Расширяемая асинхронная библиотека для автоподстановки для neovim/Vim8.

  • Shougo/neosnippet.vim

    плагин добавляет поддержку snippet (сниплетов) в Vim

  • SirVer/ultisnips

    Очень мощное решения для сниплетов в Vim

  • Yggdroot/indentLine

    Плагин используется для отображения вертикальных линий для идентификаци уровня вложенности кода с отступами. Повышает качество чтения кода и эстетику

  • airblade/vim-gitgutter

    Плагин показывает изменения в гит репозитории относящиеся к каждой строке файла

  • ajh17/VimCompletesMe

    Супер простой и минималистичный, а так же легкий таб-автоподстановщик

  • alvan/vim-closetag

    Плагин для авто завершения тэгов, к примеру: <table| нажимая >, он подставит закрывающий тэг автоматом: <table>|</table>

  • ap/vim-css-color

    Быстрый и удобный плагин для отображения цвета в коде, при использовании HEX

  • bfredl/nvim-miniyank

    Плагин для копирования между разными экземплярами vim

  • cespare/vim-toml

    Vim подсветка синтаксиса для TOML

  • dense-analysis/ale

    ALE (Asynchronous Lint Engine) плагин линтер(корректировщик) (проверяет синтаксические ошибки в коде) в NeoVim 0.2.0+ и Vim 8 в момент редактирования текстовых файлов, и используется как a Vim Language Server Protocol client.

  • dzeban/vim-log-syntax

    Vim подсветка синтаксиса log файлов

  • easymotion/vim-easymotion

    EasyMotion используется для более удобного перемещения по файлу в Vim

  • editorconfig/editorconfig-vim

    EditorConfig плагин для Vim

  • ekalinin/dockerfile.vim

    Vim подсветка синтаксиса для dockerfile

  • etordera/deoplete-rails

    авто-подстановка в Vim/Neovim для Ruby on Rails проектов.

  • freeo/vim-kalisi

    Vim цветовая схема: kalisi

  • hashivim/vim-terraform

    Vim подсветка синтаксиса для terraform

  • honza/vim-snippets

    snippets файлы для некоторых языков программирования

  • int3/vim-extradite

    Git commit просмотр / git log wrapper расширение fugitive.vim.

  • jgdavey/vim-blockle

    Плагин позволяет переключаться между разными стилями написания блоков в ruby, используя do/end и {}

  • jiangmiao/auto-pairs

    Добавление и удаление парных ковычек, скобок и тп.

  • juliosueiras/vim-terraform-completion

    плагин Vim Terraform Completion с линтером

  • kana/vim-textobj-user

    vim-textobj-user это Vim плагин для создания собственных текстовых объектов без боли.

  • kchmck/vim-coffee-script

    Vim подсветка синтаксиса для CoffeeScript

  • kien/ctrlp.vim

    Мощный поиск по проекту исползует для поиска имя файла, таги и т.п. (вызывается через Ctrl + p)

  • majutsushi/tagbar

    Tagbar это Vim плагин который использует простой способ навигации по открытому файлу представляя в колонке древовидную структуру (вызывается F8)

  • mfussenegger/nvim-lint

    Асинхронный линтер плагин для Neovim (>= 0.6.0) используется для Language Server Protocol support.

  • morhetz/gruvbox

    Разработана более яркая тема с пастельно-ретро цветами, переключение между яраким и темным дизайном.

  • mustache/vim-mustache-handlebars

    mustache и handlebars режимы для vim

  • mxw/vim-jsx

    Vim подсветка синтаксиса JSX

  • nelstrom/vim-textobj-rubyblock

    Пользовательский текстовый объект для выбора ruby blocks.

  • othree/eregex.vim

    Perl/Ruby стили для regex

  • othree/html5.vim

    Vim подсветка синтаксиса html5

  • othree/javascript-libraries-syntax.vim

    Синтаксический фал для библиотек JavaScript. Поддержка JavaScript библиотек. SyntaxComplete так же работает.

  • othree/jspc.vim

    JavaScript Parameter Complete(JSPC) автоподстановка функция для функциональных параметров таких как , event names, crypto algorithms, и common locales.

  • pseewald/vim-anyfold

    Простой механизм свертывания кода определяет структуру по блокам. Быстрая навигация по блокам

  • rhysd/vim-grammarous

    vim-grammarous мощная проверка грамматики для Vim. Для использования введите :GrammarousCheck для запуска проверки.

  • rking/ag.vim

    Плагин фронт для ag, A.K.A. the_silver_searcher.

  • roxma/nvim-yarp

    remote plugin framework без :UpdateRemotePlugins

  • roxma/vim-hug-neovim-rpc

    клиент слой для rpc client работает в vim8.

  • scrooloose/nerdtree

    файловый менеджер для Vim (запускается с помощью ctrl + n)

  • slim-template/vim-slim

    slim подсветка кода для vim

  • stephpy/vim-yaml

    Vim подсветка кода для YAML

  • thinca/vim-localrc

    Vim плагин для включения возможности конфигурационного файла для каждой директории.

  • thoughtbot/vim-rspec

    Vim подсветка для файлов Rspec

  • tpope/vim-commentary

    Используется для комментирования выделенных строк и отмены комментирования. Использовать набрав команду gcc

  • tpope/vim-endwise

    Простой плагин помогает выстраивать структуру блоков автоматическим выравниванием при вводе

  • tpope/vim-fugitive

    Fugitive хороший плагин Vim для Git.

  • tpope/vim-rails

    Vim плагин для Ruby on Rails приложений

  • tpope/vim-surround

    Помогает изменять и удалять окружающие (парные) символы (выбрать внутренний текст в ковычках и набрать cs"' для смены "Hello world!" на 'Hello world!')

  • vim-airline/vim-airline

    Статус линия в редакторе легкая и информативная.

  • vim-ruby/vim-ruby

    Хороший плагин для написания кода на Ruby, включает в себя подсветку синтаксиса, структурирование, автоподстановку и др полезные функции.

  • vim-syntastic/syntastic

    Syntastic это плагин для проверки синтаксиса для Vim создан Martin Grenfell. Проверяет файлы через внешние обработчики и выдает результат проверки пользователю.

  • xolox/vim-misc

    Расширение для автозагрузки скриптов Vim

  • xolox/vim-notestpope/vim-commentary

    Добавление комментариев

  • iamcco/markdown-preview.nvim

    Позволяет отображать редактирование фалов в виде предпросмотра и автообновления в браузере markdown файлов с синхронизацией прокрутки и гибкими настройками. Для активации: :MarkdownPreview для отключения disable: :MarkdownPreviewStop

Используемые горячие клавиши и темы

цветовая схема gruvbox

g:mapleader='\'

<C-n> :NERDTreeToggle

<C-h> :call WinMove('h')

<C-j> :call WinMove('j')

<C-k> :call WinMove('k')

<C-l> :call WinMove('l')

<F8> :TagbarToggle

Репозиторий: https://github.com/apilot/vim

Комментарии (2)


  1. Akavvi
    01.11.2022 21:53

    Автор поставил NEOvim(использующий lua в основе) и использует с ним плагины на VimScript, когда у neovim есть поддержка луа плагинов...
    и mapleader бэкслэш не удобна(мизинцем нужно доставать, и то, только с правой руки), пробел куда быстрее(можно большими пальцами обеих рук нажать)


    1. aboyarinov Автор
      01.11.2022 21:55

      Часть скриптов использовал на lua, часть на вим скрипте, местами они быстрее работают. Это не конечный вариант и готов что то изменять если будет удобным.