Vim в качестве ide для mql - страница 12

 

Кстати, сегодня обнаружил возможность вкрутить семантическую подсветку (т.е. раскрашивать будет не вим, который ничего не знает о типах, а LSP сервер), в принципе прикольно. Если кому интересно, то делать по инструкции здесь https://github.com/clangd/coc-clangd. А coc-settings.json выродился у меня в результате в это:

{
    "signature.maxWindowHeight": 20,
    "clangd.semanticHighlighting": true
}

все настройки сервера удалил, coc-clangd (который является расширением coc'а) сам настраивает coc клиента.

clangd/coc-clangd
clangd/coc-clangd
  • clangd
  • github.com
install Node.js. and run on Node.js. install . Instructions using (check out coc.nvim Wiki other options): in vim, run will try to find from your , if not found, you can run to install the latest release from GitHub follow Project setup to generate for your project Note: If you've configured as a languageServer in , you should remove it to...
 
Maxim Kuznetsov:

вообще логично делать language server (https://langserver.org/) для mql. Тогда он одинаково подхватится и vim и emacs. И визуал-студией и eclipse. Но это объём существенный и на 90% сделанный разработчиками MQ, то есть это переделка чужой работы с новыми багами и заблуждениями.

Мне кажется, лучше пойти другим путём:  сделать преобразователь C++ кода в MQL.  Чтобы можно было кодить непосредственно на плюсах (с некоторыми ограничениями), а MQL использовался бы лишь как промежуточная прокладка для генерации исполняемого .ex5 кода.  Т.е. фактически тогда сам MQL можно будет забыть как страшный сон )

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

 
Alexey Navoykov:

Мне кажется, лучше пойти другим путём:  сделать преобразователь C++ кода в MQL.  Чтобы можно было кодить непосредственно на плюсах (с некоторыми ограничениями), а MQL использовался бы лишь как промежуточная прокладка для генерации исполняемого .ex5 кода.  Т.е. фактически тогда сам MQL можно будет забыть как страшный сон )

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

Странный Вы. Молодой совсем, наверное. Хотите поучаствовать в том, что готовы разрушить. 

 

Ребят, вас на героизм тянет, боже упаси в такое ввязываться ради проприетарщины. Чтобы дождаться когда какой-нибудь шибко умный менеджер решит срубить бабла больше сделать нашу жизнь проще и выпустить NewRevolutionarySoft-1.limited.edition и совершенно случайно отломать обратную совместимость, под разговоры о том, что дальше так жить нельзя, мир движется вперёд, хватаем мешки и бежим. Набор не сильно обременяющих костылей - потолок. Пусть эти менеджеры сами пилят LSP сервер, у них же опыт, статистика и всё такое.

 
блеск и нищета
 
Alexey Navoykov:

Мне кажется, лучше пойти другим путём:  сделать преобразователь C++ кода в MQL.  Чтобы можно было кодить непосредственно на плюсах (с некоторыми ограничениями), а MQL использовался бы лишь как промежуточная прокладка для генерации исполняемого .ex5 кода.  Т.е. фактически тогда сам MQL можно будет забыть как страшный сон )

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

Может вы тогда уж и не будете здесь быть? Зачем вам сон страшный наяву? Может в других местах не так страшно? Вы подумайте над смыслом своей деятельности - может не ваше оно. Может ваше в других местах? Там, где не страшно. Там, где полёт...

 
Artyom Trishkin:

Может вы тогда уж и не будете здесь быть? Зачем вам сон страшный наяву? Может в других местах не так страшно? Вы подумайте над смыслом своей деятельности - может не ваше оно. Может ваше в других местах? Там, где не страшно. Там, где полёт...

Деятельность она всегда идёт по разным местам и по разным направлениям, не беспокойтесь.  Равно как и смысл вашей жизни ведь тоже не ограничен сидением на форуме и модерированием чьих-то постов, я полагаю.

 
Vict:

Набор не сильно обременяющих костылей - потолок

Ну как видим, набор этот у вас постоянно растёт и множится.  Поэтому тут вопрос чисто рационализаторский.  Либо ты постоянно тратишь время на создание очередных костылей и возню с ними, либо решаешь проблему на корню и больше не паришься.  Я, честно говоря, не очень понял, про какую обратную совместимость шла речь.  Совместимость с чем?
 

Alexey Navoykov:
1. Ну как видим, набор этот у вас постоянно растёт и множится.  Поэтому тут вопрос чисто рационализаторский.  Либо ты постоянно тратишь время на создание очередных костылей и возню с ними, либо решаешь проблему на корню и больше не паришься. 

2. Я, честно говоря, не очень понял, про какую обратную совместимость шла речь.  Совместимость с чем?

1. Вам показалось, вся суть этого "проекта" - 150 строк шелл скрипта, который забыл когда правил. Остальное - настройка одного плагина, которую каждый пользователь должен уметь сам, решил помочь потенциальным новичкам.

2. Помните как поступили со старым МКЛ диалектом? А могли ведь сделать флажок для выбора, например. В общем примерно там они вертели эту совместимость. Думаю так себе удовольствие смотреть, как твой 100500 строк проект превращается в тыкву.

 
Vict:

2. Помните как поступили со старым МКЛ диалектом? А могли ведь сделать флажок для выбора, например. В общем примерно там они вертели эту совместимость. Думаю так себе удовольствие смотреть, как твой 100500 строк проект превращается в тыкву.

Возможно вы не совсем поняли, о чём я говорил.  Всё же как раз наоборот.  Сейчас, пока вы кодите на MQL, то рискуете попасть на описанную вами ситуацию, и вам придётся переписывать все ваши проекты.  Я же говорю о написании конвертера/переходника, чтобы кодить непосредственно на C++.  И при возникновении проблемы с совместимостью, потребуется подправить лишь этот переходник, а не сами проекты.