LINUX.ORG.RU

VIM: настройка автодополнения

 


0

3

Как в этом говне дополнять аргументы?

Мои настройки

https://gist.github.com/tz4678/8d4d15b1b4755ddffbbd85598bd33884

Начинаешь что-то печатать, он дополняет названия методов, функций.

Так вот как вызвать эту справку каким сочетанием? Я про выпадающий список с названием функций/методов. Как автдополнятьдобавлять аргументы? И самое элементарное: как в этой хрени правильно что-то выбирать из выпадающего списка (стрелка вниз и Enter - это единственный вариант)

Ctrl-N просто текст подставляет. Справку не показывает, печатаю :map там естественно нет дефолтных сорчетаний клавиш (связок).

Вообщем я никогда не пытался осилить вим, разобраться в нем так чтобы он заменил мне VSCode.

Прямо бесит: хз как список аргументов посмотреть и тп. Есть ли какая-то нормальная статья на эту тему?

Пример:

import requests

requests.get▊

У меня тут стоит курсор в конце get (кеп). Как вызвать справку по функции?

★★

Последнее исправление: tz4678 (всего исправлений: 2)

мне за тебя погуглить «vim python setup» и «python for vim»?

Вообщем я никогда не пытался осилить вим, разобраться в нем так чтобы он заменил мне VSCode.

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

че на вскоде не сидится, хоть расскажи

мимо емаксобоярин

anonymous
()
Ответ на: комментарий от pon4ik

Да, вы правы. Хотя бы Геани нужно использовать …

Владимир

anonymous
()

чтобы он заменил мне VSCode

Текстовый редактор не может заменить IDE, это разные сущности.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Он, походу, последовал совету «зарегайсядебил»-анона и зарегался. Причём ещё восемь лет назад.

cocucka ★★★★☆
()

Недавно C++ к vim прикручивал. Понял, что все языки там сейчас принято поддерживать/автодополнять через Language Servers, юзая всякие LSP плагины типа coc.vim

Например для С++ языковым сервером явзяется clangd

igloev
()

Тупак, я за бан.

anonymous
()
Ответ на: комментарий от anonymous

TBH, Vim не очень поддерживает LSP. Очень не очень.

А вот в neovim LSP завезли уже давно и почти нативно (по крайней мере без излишнего секса с препятствиями).

mord0d ★★★★★
()
Ответ на: комментарий от igloev

поддерживать/автодополнять через Language Servers, юзая всякие LSP плагины типа coc.vim

Лангсервер да, но у меня стоит неовим с гита, там поддержка ЛСП нативная.

fernandos ★★★
()
Ответ на: комментарий от mord0d

Да, но с установкой некоторых из них требуются серьёзные пляски.

Да нет там плясок. Вот в Emacs всё с этим печально. А Vim - 2 строчки.

Retsam
()
Ответ на: комментарий от habamax

У меня хорошо работал кок, я на нём сидел некоторое время, пробовал лсп-вим, но больше на неовиме, хотя и в виме работал хорошо.

fernandos ★★★
()
Ответ на: комментарий от fernandos

Об этом и речь – vim-lsp, vim-lsc, coc.nvim – установка тривиальна, работает без доп плясок (для кока нужна нода).

Установка YouCompleteMe требует больше телодвижений, но тоже особых проблем не вызывает. Так что я ХЗ, что у него в голове.

habamax ★★★
()
Ответ на: комментарий от fernandos

Я слышал, что петь в опере тяжело, сам не пел, но слушал. Так всё супер.

Вы флудите из темы в тему. Дни напролёт. Похоже, Ваше мнение совсем обесценилось. Вы хоть где-то являетесь компетентным?

Retsam
()
Ответ на: комментарий от fernandos

Ну давайте пруфы. Где там для company mode есть LSP.

А то знаете, уже слегка раздражает некомпетентность и навязывание флуда в каждой теме.

Аноним больше подсказывает, чем регистранты. Или Вам так нужен статус звёзд, чем знания?

Retsam
()
Ответ на: комментарий от Retsam

Ну давайте пруфы. Где там для company mode есть LSP.

https://github.com/tigersoldier/company-lsp

Бекенд для компани.

А то знаете, уже слегка раздражает некомпетентность и навязывание флуда в каждой теме.

Да, вот жду, может, вы прекратите.

fernandos ★★★
()
Ответ на: комментарий от fernandos

Давно не используется. Company mode уже как год используется напрямую, что не отменяет для многих языков совсем нетривиальных настроек.

https://emacs-lsp.github.io/lsp-mode/

Code completion - company-capf / completion-at-point (note that company-lsp is no longer supported).

Видно, что Вы совершенно не разбираетесь в вопросе. Жаль. Удачи Вам на форуме, когда будет набрано 4-5 звёзд.

Retsam
()
Последнее исправление: Retsam (всего исправлений: 1)
Ответ на: комментарий от Retsam

Давно не используется

Год или полтора назад работал хорошо (силангд), никаких новостей о кардинальных переменах с тех пор не было, для какой-то маргинальщины, конечно, будет сложнее.

fernandos ★★★
()
Ответ на: комментарий от fernandos

Сейчас достаточно global company mode, всё. Я же говорю о LSP. Под C/C++ вообще проблем нет. https://emacs-lsp.github.io/lsp-mode/tutorials/CPP-guide/

Ну Вы же всё остальное отводите под «маргинальный».
И перемены кардинальны.

Прямо приятно Вас читать: «- имею мнение по любому вопросу! А если я что-то не знаю/не пробовал - это маргиналы!».

Retsam
()
Ответ на: комментарий от Retsam

Ну Вы же всё остальное отводите под «маргинальный».

Нет, не всё, что-то типа нима или кристалла.

fernandos ★★★
()
Ответ на: комментарий от mord0d

Я в Vim новичок: vim в 21 веке с эмулятором терминала

https://github.com/neoclide/coc.nvim https://www.youtube.com/watch?v=gnupOrSEikQ

а строчки:

Plug 'neoclide/coc.nvim', {'branch': 'release'}

nmap <silent> gd <Plug>(coc-definition)
nmap <silent> gy <Plug>(coc-type-definition)
nmap <silent> gi <Plug>(coc-implementation)
nmap <silent> gr <Plug>(coc-references)

Retsam
()
Ответ на: комментарий от mord0d

vim-lsp и vim-lsc ничего не требуют, это не YCM и не coc. Для vim-lsp есть хелперы, которые устанавливают серверы, но это может пригодиться разве что удивительным полиглотам 🤷🏻

anonymous
()
Ответ на: комментарий от Retsam

nvim

Для плагинов от neovim надо ставить два плагина для совместимости (не помню названия), которые в FreeBSD мне завести не удалось.

mord0d ★★★★★
()
Ответ на: комментарий от anonymous

не YCM и не coc

Установка последнего это просто 3.14-здец (коммент выше)! Первый никогда не щупал, он слишком комбайн для меня.

vim-lsp

Этот требует Vim собранный с +lua (не проблема, но всё же дополнительное требование).

vim-lsc

А этот вообще написан на Dart.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Этот требует Vim собранный с +lua (не проблема, но всё же дополнительное требование).

Certain bottlenecks in Vim script have been implemented in lua. If you would like to take advantage of these performance gains use vim compiled with lua or neovim v0.4.0+

would like

А этот вообще написан на Dart.

Што.

anonymous
()
Ответ на: комментарий от mord0d

Установка последнего это просто 3.14-здец (коммент выше)!

А в чём беда? Всё то же, что и на линуксе:

https://github.com/ycm-core/YouCompleteMe#freebsdopenbsd.

Этот требует Vim собранный с +lua (не проблема, но всё же дополнительное требование).

Они говорят

Certain bottlenecks in Vim script have been implemented in lua. If you would like to take advantage of these performance gains use vim compiled with lua or neovim v0.4.0+

. Там стоит если, думаю, можно и без луи.

fernandos ★★★
()
Ответ на: комментарий от mord0d

А тебе не приходило в голову что у меня немного другая ОС?

vim-lsp, vim-lsc работают для всех осей аналогично безпроблемно.

Если в твоей другой ОС есть нода, то coc будет работать так же безпроблемно.

YouCompleteMe я без особых проблем установил на debian, вин, мак. Как собственно и многие пользователи YCM.

Так что твое утверждение

Vim не очень поддерживает LSP. Очень не очень.

не выдерживает никакой критики, даже с учетом немного другой ОС.

Так и написал бы, что в моей ДрагонФриБСД (и то не факт, что там не будет работать vim-lsp) я не смог в вим.

habamax ★★★
()
Последнее исправление: habamax (всего исправлений: 1)
Ответ на: комментарий от anonymous

nvim поставляется одним файлом, не нужно его собирать.

Если хочешь пощупать встроенный лсп, надо собирать, т.к. релиза 0.5 еще не было.

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

habamax ★★★
()
Ответ на: комментарий от fernandos

Я был уверен в этом на 99% :)

На дебиане я его собирал, благо не сложно.

habamax ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.