LINUX.ORG.RU

Вызов функции в Виме

 , ,


0

1

Доброе время суток, коллеги! Решил немного углубиться в вим и сразу же набил шишку на простом вызове функции. Система - Ubuntu 20.04.1 LTS (Focal Fossa), глюков до сих пор не обнаружено, стоят 2 вима (терминальный и графический), реакция одинаковая. Вместо обработки ф-ии выдаёт E117. Неизвестная функция.

function! Hi( name ) echo «Hello» a:name endfunc

:call Hi( «Richard» )

Должно быть: Hello Richard, но увы..E117

Не пойму, где накосячено. Буду признателен за помощь.

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

Ибо вот это работает:

:function! Hi(name)
:echo "Hello" a:name
:endfunc
:call Hi("Richard")
Hello Richard
Kroz ★★★★★
()
Ответ на: комментарий от Kroz

А потом окажется, что он в конфиг пишет. А перезапустить гораздо проще, нежели объяснять, как перезагрузить конфиг.

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

Даже если так, это в Винде 90% проблем решается перезагрузкой. А в Линукс нужно сразу правильным подходам учить. Например :e $MYVIRC. Это если гипотеза верна, и он правда пишет конфиг.

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

А в Линукс нужно сразу правильным подходам учить. Например :e $MYVIRC.

MYVIRC

нужно сразу правильным подходам учить

у вас 6 ошибок в .emacs

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

А перезапустить гораздо проще

so % при открытом конфиге и всё, перезапускатор.

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

это в Винде 90% проблем решается перезагрузкой. А в Линукс нужно сразу правильным подходам учить

И как же добавить новый PATH без перезагрузки? Для графических приложений по умолчанию без плясок с терминалом (aka export PATH), без перелогина. А меж тем в винде это можно сделать без перезагрузки. Ставил meson, cmake, nasm, python - тут же доступно из терминала. В Линуксе мы имеем: «перезагрузите ваш ПК» https://flatpak.org/setup/Ubuntu/

To complete setup, restart your system

Или добавить юзера в новую группу.

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

Уже и не вспомню, когда в винде проблема решалась перезагрузкой. Скорее переустановкой, при чём большинство проблем решаются именно заменой на нормальную ос.

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

Я попросил бы отредактировать пост, перейти в режим Markdown, прочитать подсказку по Markdown если нужно, и нормально оформить вопрос, чтобы было понятно что и как вводилось. Ибо вот это работает…

Извиняюсь за неправильно оформленный запрос, с Markdown разберусь. При таком вводе всё работает, правда, у меня только в терминальном варианте, но это уже не суть. Я вводил в конфигураторе (.vimrc), и при вызове ф-ии возникала ошибка неизвестной ф-ии. Может, действительно, дело в системной переменной.

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

Уважаемые маэстро! Так как же всё-таки правильно:

  • Запустить скрипт из какого-нибудь вимовского файла;
  • Сделать конфиг работающим (или проверить, читается ли он Вимом)

Буду благодарен за идею в правильном направлении.

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

Я вводил в конфигураторе (.vimrc), и при вызове ф-ии возникала ошибка неизвестной ф-ии. Может, действительно, дело в системной переменной.

Конфиг файл - это скрипт, который выполняется при запуске vim. Получается, что если ты его модифицируешь, нужно его еще раз запустить чтобы изменения вступили в силу. Это можно сделать либо перезапустив vim, либо, что более правильно, c помощью команды so $MYVIMRC (so - сокращенно от source - см :h so).

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

Спасибо, Kroz и всем, кто помогал разобраться! Kroz

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