[О блоге] [наверх] [пред] [2019-12-18 21:35:50+03:00] [dc723a39b80458ff8c52393051ff41ff83c9d118]
Темы: [tip][vim]

Попробовал Vim 8.2 popup окна

https://git.stargrave.org/cgit.cgi/dotfiles.git/tree/vim/.vim/ftplugin/go/gogetdoc.vim
Решил я попробовать написать плагин для Vim который бы показывал доку
для функи на которой я нахожусь в коде. Задачу только чисто Vim-ом вряд
ли можно решить, ибо он не сможет понять что w.Write это на самом деле
Write метод объекта net/http.ResponseWriter. Но есть замечательная
утилита github.com/zmb3/gogetdoc, которой можно просто дать на вход путь
к файлу и смещение в байтах на слово, для которого нужно найти доку.
Работает оно не стремглав, но терпимо, сгодится.

Задача плагина теперь очень проста: просто запустить эту внешнюю
программу, вычислив положение в файле и показав её stdout вывод. Vim уже
имеет асинхронные job-ы в фоне запускать и по каналу гонять данные. Но
вот теперь можно попробовать показывать popup. Оказалось очень легко с
ним. У него тьма опция для окон и прочего, но можно ничего не трогать и
по умолчанию он отлично размещает, resize-ит окна, закрывает когда надо,
программисту вообще не о чем парится: просто говоришь что я хочу
показать вот этот текст рядом с курсором.

    [оставить комментарий]