[VSC] vscodemodx - Автокомплит кода в Visual Studio Code для MODX Revo
Приветствую вас!
После того как я наткнулся на компонент gitmodx для MODX Revo я почувствовал какое-то облегчение но одновременно и огорчение. С одной стороны был дико рад относительно адекватной возможностью вести разработку с контролем версии, с другой же стороны работа исключительно в IDE была очень неудобной из-за отсутствия каких-либо подсказок со стороны среды.
Вот именно такое предисловие было для того чтобы расчехлить TypeScript и начать писать что-то свое.
Github компонента доступен по ссылке и всю последующую информацию я размещу еще и там.
Ультра бета версия уже доступна в VSCode Marketplace по ссылке
Пример работы компонента:

Что сейчас умеет компонент? Я занес в автокомплит все методы MODX Object с минимальной справкой.
Что будет уметь компонент?
Присылайте свои идеи и предложения и будем делать этот продукт все более и более удобным. Так же хотелось бы попросить сообщество прислать примеры снипетов которые вы используете 24 на 7, я рассмотрю их добавление. И самое главное — ошибки.
Донаты мне на мороженку тоже горячо приветствуются и добавляют отвественности за продукт :)
Спасибо!
После того как я наткнулся на компонент gitmodx для MODX Revo я почувствовал какое-то облегчение но одновременно и огорчение. С одной стороны был дико рад относительно адекватной возможностью вести разработку с контролем версии, с другой же стороны работа исключительно в IDE была очень неудобной из-за отсутствия каких-либо подсказок со стороны среды.
Вот именно такое предисловие было для того чтобы расчехлить TypeScript и начать писать что-то свое.
Github компонента доступен по ссылке и всю последующую информацию я размещу еще и там.
Ультра бета версия уже доступна в VSCode Marketplace по ссылке
Пример работы компонента:

Что сейчас умеет компонент? Я занес в автокомплит все методы MODX Object с минимальной справкой.
Что будет уметь компонент?
- Полноценная справка в подсказках (благо тип строки — markdown, а соотвественно можно туда занести хоть всю документацию)
- Поддержка снипетов. Создание новых элементов будет происходить по маске
- Полноценная поддержка InteliSense. Все мы с вами знает что InteliSense это не просто автокопмлит, а очень умная система подсказок. Интеграция — в планах
Присылайте свои идеи и предложения и будем делать этот продукт все более и более удобным. Так же хотелось бы попросить сообщество прислать примеры снипетов которые вы используете 24 на 7, я рассмотрю их добавление. И самое главное — ошибки.
Донаты мне на мороженку тоже горячо приветствуются и добавляют отвественности за продукт :)
Спасибо!
Комментарии: 26
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Или я чего-то не догоняю?
П.С. Количество ошибок, конечно, удручает.
На текущий момент все что умеет phpStorm так же умеет мой плагин. Но в отличии от phpstorm VSC соддержит в себе поддержку LSP. Следовательно его можно нативно интегрировать в InteliSense.
Этого PHPStorm не будет уметь никогда до перехода на LSP.
А что такое может дать LSP, чего сейчас нет в PHPStorm? Я в этой теме полный валенок. Думаю, и многим другим было бы интересно узнать поподробнее про эти технологии.
Что прямо сейчас дает LSP, давай по пунктам:
1. Автокомплит кода (с различными конфигрурациями)
2. Поддержка любого языка программирования в том числе большого кол-ва разных языков и даже в одном файле!
3. Осуществляется отслеживание и определение типов для всех переменных в проекте с использованием симуляции выполнения кода.
4. Возможность использования фишечки «Quick fix» (система определеяет род ошибки и варианты его исправления).
Это пока первое что приходит в голове если честно.
У Jetbrains своя реализация. Ну и не забываем что их продукты стоят денег.
1. Есть.
2. Есть. Причем прямо в одном файле можно вызвать миниредактор для разных языков.
3. Есть.
4. Есть.
А ещё есть миллион инспекций кода для любого языка с возможностью отключения. Правда за это приходится платить производительностью. Sublime Text в этом плане гораздо легче.
А можно в VSC перейти в исходник кликнув по имени объекта или метода?
Ну это да. Но лично я купил и не думаю о вышеописанных проблемах. А для VSC, наверно, нужная вещь.Я просто не знаком с этим продуктом.
2. Есть + опять же репозиторий
3. Есть + еще всякие специфичные штуки, типа опций VueJS
4. Есть + пакетное выполнение и анализ кода по всей директории\проекту
Только для тех разработчиков, которые не могут оформить Open Source лицензию.
Сегодня только правил вёрстку после VSCode — там банальнейшие ошибки, которые человек просто не видел, включая орфографические опечатки («desctop») и двойные указания свойств, которые PhpStorm сразу подчёркивает, из коробки.
VSCode — это типа Notepad++, с IDE его сравнивать не нужно.
Помимо прочего, лично я стараюсь минимизировать автодополнение к минимуму.
Но для тех кто использует VSC — годный компонент!
Но вручную обновлять все методы MODX после каждого его обновления — это хобби сильно на любителя и быстро надоест. А значит, и проект долго не проживёт.
Обновления MODX не раз в неделю ж происходят.
Ну а насколько долго проект будут жить — бог его знает. Пока не закину MODX или не перейду на другую тулзу.
Для них разработчику нужно методы запоминать, или в соседнем окошке на исходники поглядывать?
PhpStorm достаточно просто добавить директорию в проект и он сам всё проиндексирует, ничего руками править не нужно.
Ты не подумай, что я тебя критикую. Просто я пытался пользоваться VSCode и совершенно не понимаю, как его можно сравнивать с PhpStorm для разработчика.
Понимаю :)
Опять же, смотря как засетапить. Довести до состояния «phpstorm» его все таки можно.
На остальные вопросы отвечу тогда когда подумаю над ответом))
Это ж сколько времени и сил надо потратить? Я лучше программированием займусь =)
Там еще про плагины для работы с MySQL и SFTP не забудь, чтобы с удалённым сервером общаться и проект на production выгружать. А, и терминал встроенный, с табами — тоже не помешает. И управление Git, чтобы с rebase понятным.
Пока вроде всё, что мне нужно.
© Маугли
Человек загорелся хорошим делом, а ты его на скамейку запасных. )
LSP так (пока) не умеет. Из-за большого кол-ва поддерживаемых языков.
Тут продукт JB выиграл.
Ну да ладно, твои компоненты, как минимум, я перенесу у меня есть лицензии как раз)
Просьба добавить сие чудо для Code OSS -> https://open-vsx.org/