LINUX.ORG.RU

Почему neovim до сих пор использует vimscript?

 , , , ,


0

2

Почему люди до сих пор пишут плагины на vimscript? В чем подвох? Мне например больше нравится последовательность. Раз уж переписали vim на -> neovim, то будьте добры люди. Давайте все писать на чистом lua. Что вам мешает?

Deleted

Ответ на: комментарий от t184256

Какой багрепорт? Neo юзает msgpack, Производительность заметно будет отсасывать особенно при отправке большого количества вызовов с помощью RPC, так как neo будет перерисовываться на каждом вызове. Компы с мощными процами может быть не заметят хз.

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

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

По той же причине примерно, что мелкие скрипты пишут на баше, а крупные вообще не скрипты. Соотв. баш никуда не исчезает, т.к. переучиваться писать на полноценном языке в консоли всех ломает. Заставить fs.rm([glob(“*.tmp”)], {recursive:true, confirm:false}) это та еще затея, хоть и решило бы дохерищу проблем.

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

Что не так с Lua и здравым смыслом?

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

Всё что угодно лучше, чем VimL.

Всё лучше, чем VimL. На чем угодно и пишут, в том числе на ECMAScript через remote. Куда более популярные Python/Ruby/Perl интегрированы уже и не упомню сколько. Вопрос ТСа воспринимаю как «почему кто-то ещё пишет скрипты под линуксы на перле, давайте все писать на чистом TypeScript».

t184256 ★★★★★ ()

Я думаю причина в совместимости с vim, от которой пока не готовы отойти.

Но вообще в планах следующие вещи:

  • Lua remote plugin host
  • Lua user-config: init.lua

https://neovim.io/roadmap/

Не знаю что будет делать первый, а второе – vimrc на чистом луа.

Im_not_a_robot ★★★★★ ()
Последнее исправление: Im_not_a_robot (всего исправлений: 2)
Ответ на: комментарий от t184256

Всё лучше, чем VimL.

Можешь обосновать? Или это заученная мантра как обычно?

На чем угодно и пишут, в том числе на ECMAScript через remote. Куда более популярные Python/Ruby/Perl интегрированы уже и не упомню сколько.

Такие плагины моветон. Их обычно пишут в крайнем случае, когда нужно взаимодействовать с кодом на пистоне и т.п.. Лучшие плагины написаны на viml, факт. И юзеры вима предпочитают реализации на viml при прочих равных.

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

Что не так с Lua

То, что уже есть viml, который как луа, но специализирован для вима. Все аргументы сторонника универсальной резинки: «она мне лучше знакома, давайте все натягивайте её на всё». А то что она хреново натягивается и имеет множество врожденных уродств, это вас не волнует. Не вам же писать плагины.

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

Ну естественно. Я же лалка анскилльная, вимскрипта божественного и не видел никогда. Авторы плагинов на питоне со вставками C просто пыль запартная, не могущая в вимскрипт, ну. А то, что у меня половина плагинов вообще на node.js, говорит о том, что скиллов у меня ноль на ноль помноженный, раз при выборе плагинов я смотрю на какую-то там функциональность.

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

Все аргументы сторонника универсальной резинки: «она мне лучше знакома, давайте все натягивайте её на всё».

Почему бы и нет? Отличный аргумент. Только не «мне», а «подавляющему большинству».

Im_not_a_robot ★★★★★ ()

Давайте все писать на чистом lua

Так восторженно говорить про lua может только тот, кто никогда толком не писал на lua. Богомерский питхон подошел бы лучше (и он подошел, учитывая количество рлугинов на нем). Но я бы предложил не мелочиться, а встроить vala или angelScript или gluon

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

Потому что обратная совместимость с vim. Есть vis, который во многих аспектах удобнее. Пользуюсь ежедневно, никаких неудобств. Правда, у меня и требования небольшие – уверен, любители сделать из vim visual studio будут ощущать острую нехватку плагинов. Жаль, не особо взлетел проект.

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

У чистого луа есть одно громадное и необоримое преимущество относительно питона: его легко встроить. Луа очень легко парсить и исполнять, для этого есть кучи библиотек, сам интерпретатор крайне маленький и легковесный. Можно даже прикрутить jit, но редакторы наподобие vim часто используются для редактирования файлов на лету, потому jit себя не окупает.

Как здоровые психически люди пишут на vala я не понимаю, и, мне кажется, не пойму; angelScript вообще для игрушек, gluon тянет за собой Rust и тем самым сужает круг платформ, на которые его можно поставлять. Кроме того, там растоподобный синтаксис, который многим не нравится.

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

Богомерский питхон подошел бы лучше

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

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

У чистого луа есть одно громадное и необоримое преимущество..

Методичку я знаю. Сам таким был. Ты писал на нем что-нибудь практическое? А интеграцию с сями писал? Попробуй и мнение о языке изменится на противопложное

Как здоровые психически люди пишут на vala я не понимаю

Что с ним не так?

angelScript вообще для игрушек

почему?

gluon тянет за собой Rust

Тебе не пофиг что там у разрабов будет тянуться? В конечном продукте будет интерпретатор ине будет руста

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

Да я не спорю. Я скорей про то, что lua это самое дно языков. Даже питон лучше при всех его недостатках. С утилитарной точки зрения я тебя понимаю: чем меньше зависимостей у плагина, тем приятней

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

Еще один ваннаби-царь. Здравствуйте.

Что с ним не так

Даже не знаю. GObject и в целом GNOME stack? Reference counting вместо полноценного GC? Конпеляция в сишку?

почему

AngelScript is a game-oriented interpreted compiled scripting language

ине будет руста

Rust там будет. Чтобы слинковать редактор с бинарниками gluon’а, тебе надо будет скомпилировать gluon под ту платформу, под которую ты компилируешь свой редактор. Rust поддерживает далеко не все платформы, а некоторые платформы идеологически отказываются его использовать. Кроме того, ты автоматически отсекаешь тех, кто хочет компилировать самостоятельно из исходников, но не хочет себе cargo.

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

Я скорей про то, что lua это самое дно языков.

Да. Кстати, там тоже любят ломать все на ровном месте (переименования маши в дашу любимое развлечение писателей таких поделий). Сейчас в дебиане уже 4 версии луа болтаются. В результате этой жизнедеятельности у меня в ионе большинство плагинов отвалилось. Их надо сидеть портировать на новые луи. Кто этим будет заниматься? Не надо вот этого вот в виме совершенно. В неовиме пожалуйстса, упарывайтесь (и то не стали).

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

GObject и в целом GNOME stack?

GObject прекрасная основа для проекта, который в 2020 зачем-то на Сях. От гнома не зависит

Reference counting вместо полноценного GC?

Смеялись всем классом

Конпеляция в сишку?

AoT-компиляция. Прям как в андройде. Сейчас на хайпе

AngelScript is a game-oriented interpreted compiled scripting language

И в чем его game-ориентированность конкретно, википедист? На сайте разработчика этой фразы нет

Чтобы слинковать редактор с бинарниками gluon’а, тебе надо будет скомпилировать gluon под ту платформу, под которую ты компилируешь свой редактор

Я и говорю, девелоперам

Rust поддерживает далеко не все платформы, а некоторые платформы идеологически отказываются его использовать

Туда ли ты зашел? Тьяго де Арруда специально собрал баблишко на кикстартере, чтобы очистить авгиевы конюшни Vim-а от левых платформ и заменить всю ФС и сеть на libuv. В результате вылупился neovim. У libuv очень скромная поддержка платформ. У раста больше

Кроме того, ты автоматически отсекаешь тех, кто хочет компилировать самостоятельно

И потому до скончания веков оставаться на C/С++? Если все линуксоиды будут мыслить в таких категориях, то линукс тихо скончается в момент релиза продакшн-версии фуксии. Благо ты не все

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

Методичку я знаю. Сам таким был. Ты писал на нем что-нибудь практическое? А интеграцию с сями писал? Попробуй и мнение о языке изменится на противопложное

Я писал практическое и использовал интеграцию с сями (в обе стороны) - lua отличный язык для своей ниши встраиваемого языка.

Vovka-Korovka ★★★★★ ()
Последнее исправление: Vovka-Korovka (всего исправлений: 2)
Ответ на: комментарий от anonymous

Оочень бедный язык. И по синтаксическим фичам и по стандартной либе, по всему. Встройка в си — сухо***чка со стеком на объекте L. Луа-интерфейс на Си у меня по объему вышел больше чем, собственно, полезный код на Си. Не говоря уже о том, что выглядит оно крайне непрезентабельно и неумозрительно. Ошибиться как нефиг делать. Всё это, помноженное на 2 слаботипизированных языка, кроме неприязни ничего не вызывает. Не представляю как это может понравиться

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

Чтобы пользоваться луа без жопоболи, нужно чтобы кто-то шибко грамотный уже сделал всю обвязку, объектную модель и нормальную стдлибу. То есть это фантастика. А в питонах все это сразу есть, да даже какой-нибудь mruby в сто раз удобнее. Да даже и вимл. Но нет, будем задрачивать убогонький недоязычок для игроделов. Мы же лоровцы, у нас все через жо тернии.

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

А самое смешное, почему тут так наяривают на луа? Потому что увидели протухший luajit в топах бенчмарков, и теперь у лоровца стойкая ассоциация: луа хороший патамушта быстрый. Лол.

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

В точку. И еще влажное слово _компактный_. Для мозга очень приятное, синоним «ничего не надо учить». В действительности «компактный» означает что в реальных задачах соснут все

Deleted ()