TGViewer
dev notes dev notes @junsenior · 1.39K subscribers
Post #235 1.17K
Доделал конфиг по nvim - https://github.com/vpoltora/new-nvim-config, осталось докинуть туда инструкцию по сборке и настроить отладчик, и можно забыть про vs code. От Goland я давно уже отказался - чего-то особенного он не даёт, вся работа с кодом воспроизводилась и в vs code, + у меня есть старый ноут, где иногда приходится пописать на гошке, а запускать jetbrains IDE там подобно смерти.

Что касается PHP - сейчас я пишу на нём всё меньше, и в скором времени, надеюсь, перейду на go полностью. Поэтому, на настройку nvim-конфигов для PHP я забил и продолжаю с ним работать в PHPStorm с включенным vim-плагином.

В целом, пока настраивал - заметил интересную вещь. Подход к настройке nvim значительно изменился за последние пару лет, всё стало проще и понятней. Если раньше нужно было искать кучу плагинов только для нормальной поддержки языка, не особо надеяться на их быстрое обновление, в случае обновления ЯП, то теперь концепция иная.

Если коротко: есть такая штука как https://tree-sitter.github.io/tree-sitter/ - это синтаксический анализатор, строящий из открытого файла с исходным кодом полноценное синтаксическое дерево, и обновляющий его по мере редактирования самого файла. Есть его адаптер под nvim: https://github.com/nvim-treesitter/nvim-treesitter. Один только этот плагин позволяет парой команд установить поддержку ЯП (весь список поддерживаемых - https://github.com/nvim-treesitter/nvim-treesitter#supported-languages) и даёт нормальный и быстрый фолдинг (возможность сворачивать и разворачивать блоки кода).

Второй обязательный плагин - nvim-lspconfig (https://github.com/neovim/nvim-lspconfig). Мне очень нравится его идея: плагин имеет адаптеры к lsp-серверам языков, с которыми работают коммерческие редакторы и IDE, и позволяет подтягивать их к nvim. Это даёт 90% всех плюшек по работе с кодом: go-to-definition, поиск ссылок, умеет показывать, какой интерфейс реализует структура, даёт возможность массового переименования, рефакторинга, и ещё много приятных вещей.

Что lspconfig не даёт и что нужно поставить отдельно - это автокомплит. Для этого есть https://github.com/hrsh7th/nvim-cmp.
Ну и так как я привык к double-shift в jetbrains ide, то я ставлю ещё telescope (https://github.com/nvim-telescope/telescope.nvim) - по заданной комбинации он открывает модалку, где можно искать полнотекстовым поиском по названию файлов, по содержимому файлов и в целом по всему контенту, что есть в проекте. Лично я именно для этого юзал double-shift в jb ide.

В остальном - интерфейсные плюшки, вроде тем, статус-бара снизу, дерева файлов слева и подсветки в коде коммита и его автора. За подробностями - го в репу. Если будут вопросы или решишь поставить этот пак себе - смело пиши, с радостью отвечу :)
GitHub GitHub - vpoltora/go-rust-nvim-config Contribute to vpoltora/go-rust-nvim-config development by creating an account on GitHub.
  • 👍 9
More from @junsenior
  1. Sep 28, 2026Сошлись две вещи. Первая - мой проект safemap.ai, про который я уже писал выше - интеракти…
  2. Sep 17, 2026Post #356
  3. Sep 15, 2026Увидел тут в x.com статистику вакансий по PHP и статистику вакансий по hh.ru в целом. Я на…
  4. Sep 12, 2026Вдохновившись проектом, где делали интерактивную карту с тем, как работает Postgres (писал…
  5. Sep 8, 2026OpenAI выложили блогпост https://openai.com/index/navier-stokes-solution/ Мы публикуем реш…
  6. Sep 8, 2026Если кто не знал, вокруг этого сейчас разгорается очень большой скандал с OpenAI. Кратко,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →