БОЖЕСТВЕННЫЙ nvim как IDE для Python, Rust и всех-всех-всех — встречаем LSP!

preview_player
Показать описание


Никто не мог и надеяться. Но звёзды сошлись. Оно произошло. Microsoft разработал стандарт LSP, а Neovim научился с ним работать. Эта божественная связка позволяет быстро и эффективно прикручивать любые языки программирования к вашему vim / nvim. Простая подсветка синтаксиса? Убогие проверки в коде? Глупые автодополнения на основе ctags? Вчерашний день.

LSP — это Language Server Protocol, то есть протокол, при помощи которого редактор кода может общаться со специализированным сервером, глубоко понимающим свой язык программирования. Редактору больше не нужно знать о том, как найти в коде определение функции, какие типы аргументов она принимает, как получить документацию, как сделать умное автодополнение и тд. LSP сервер знает это и знает хорошо, на глубоком уровне. А редактор кода просто запрашивает и получает всю необходимую информацию из этого LSP сервера. Ну это ли не песня?

Давайте настроим!

0:00 Что мы сделаем
0:32 Vi, Vim, Neovim (nvim)
1:13 LSP
3:04 Установка Neovim (nvim)
3:41 Установка Pyright — LSP сервера для Python
4:04 Установка rust-analyzer — LSP сервера для Rust
4:21 Настройка nvim
12:17 Демонстрация работы с Python кодом
18:40 Демонстрация работы с Rust кодом
21:07 О прекрасном nvim:)

/****************** about ******************/

Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:

Рекомендации по теме
Комментарии
Автор

Подкидываю тему: дебаг через вим (ну или просто про дебаг, вроде на канале еще не было)

peskovdev
Автор

"если вы работаете на линуксе, то вы сами разберётесь"
как обычно :)

lcphjgk
Автор

Самый лучший канал, много страшного для новичка, но в тоже время в книгах такого контента не найдешь. Всегда лайк?

denmatvienko
Автор

Леха, ты лучший! Подключил лсп для языки си. Все работает просто супер.

salmanchik
Автор

перешёл полностью на tmux и vim именно с твоей подаче. и чёт теперь мне понравился nvim ))

cyberloh
Автор

Умеете вы уютненько так всё преподнести :)

MrTaramka
Автор

Очень интересно. Хотелось бы увидеть работу nvim с docker-compose.

alexanderpavlovets
Автор

Ух ты, как раз хотел узнать что такое nvim. Спасибо за видос!

hexchap
Автор

Спасибо за крутое видео. Алексей, есть возможность записать видео с настройкой терминала как у тебя + более глубокую настройку VIM: дерево проектов, рефакторинг, дебаггинг, переключение между фалами (как в текстовых редакторах делается)?

MrAntLans
Автор

Виде в это время актуально как никогда) Пять раз пересматривал да шестой заставила ситуация) Главное теперь распечатать плакат как из вима выходить и повесить возле монитора

Kotoffey
Автор

большое спасибо за Вашу работу и видео

vasopython
Автор

Да, ЛСП - реальная тема. Очень качественная музыка, особенно до релизов 2020 года

materussia
Автор

Было бы классно в небольшом видео показать live разработку в vim`е.
Без объяснений, чисто показать как оно работается в vim в реальных условиях, с несколькоми файлами.

bv
Автор

Спасибо! Давно этот видос ждал
А как выйти из Вима - я помню по прошлому видео)

VerSus
Автор

Буквально неделю назад начал переезжать с вима на неовим (ради нативного LSP вместо CoC), и в процессе натолкнулся на видео про LunarVIM. Это тако слой IDE для неовима написаный на Lua. Я всегда скептически относился к сборкам вима и поначалу тоже скептически отнёсся к этому. Но досмотрев видео в голове прозвучало "продано!"))) Там уже подтянуты и настроены все фишки и плагины нового поколения для неовима (LSP, Treesitter, Telescope...), всё сопровождается вспомогательными окошками/менюшками при нажатии leader или g. И самое главное что этот конфиг не затормаживает загрузку неовима, так как написан на Lua, а плагины грузятся лениво. Так что рекомендую ознакомиться с LunarVIM.

Geolimber
Автор

Круто, спасибо Алексей! Нужно больше
P.S. следовал за вашими указаниями по установки nvim, а также плагинов для него, почему-то темы не накатились, тупо серый экран(
Буду разбираться...

Keriokutori
Автор

Канал достойный! Можно сказать, что на данный момент лучшей! Благодарствую!

dramaturgpodolsk
Автор

Благодаря этому видео я узнал ещё и о существовании nvm (потому что pyright глобально не устанавливался). Алексею очередной респект, офигенное видео. Что забавно, буквально на днях наткнулся на эту тему (LSP) и поставил себе в напоминалку разобраться. И тут на тебе - на блюдечке с голубой каёмочкой. Кстати, если кто будет ставить neovim и подключать к нему имеющийся вимовский конфиг тремя строчками из документации - не надо, скопируйте старый конфиг в новый, у меня это вызвало странные глюки в плагинах, на которые пришлось потратить время. Видимо ему надо чтоб была одна секция с плагинами, а не две.

AlexeyFyodorov
Автор

Алексей, спасибо за vim. Смотришь на пайчарм - вроде классный, но открываешь его только потому, что необходимо, а vim - с каким-то удовольствием, объяснить причину которого затруднительно. Нравится и всё тут)

robroi
Автор

видео очень полезное, спасибо! Было бы круто, если бы в продолжение к нему вы бы сделали видео про настройку pyright для интерперетатора в docker контейнере, а не в локальном вирутальном окружении, потому что толковых материалов в сети лично я не нашел, может, плохо искал, конечно...

yquxpnq