Consulo Beta продолжится в 2015 году

22e4b04d5c1847fca1fb10e27f0f12e7.pngДля тех кто пропустил мои посты: Consulo — это форк IntelliJ IDEA Community Edition, который имеет поддержку .NET (C# на текущий момент, и на этот сектор пока идет большой акцент), Java, Javascript (NodeJS).Здравствуй Хабр. В моих предыдущих постах (тык, тык), я показал хорошие возможности плагина C#, да и сама платформа вполне стабильно работает. Можно было выйти в реализ, но — это не только написать код. Нужен как минимум сайт, что бы не отдавать Night Builds пользователям, но увы — имею ограниченные возможности.

Посмотрим что нового в C# плагине

Explicit & Implicit CastsХотя у меня давно уже была поддержка Implicit & Explicit Casts, но она имела много проблем, с операторами например. Было решено пересмотреть их работу. Также была добавлена подсветка для этих конструкций. Предполагаю что она будет полезная, когда в коде много Implicit Casts, например Unity3D (Vector2, Vector3, etc)03637052ea3b41c4a643c189d091e843.png

Override Override — недавно закрытая задача. Было исправлено много проблем. Теперь в Completion нету тучи GetHashCode и прочих методов. Также были исправлены проблемы с foreach. Были добавлены Override Methods + Implement Methods + Goto Super действия2f127d38b8644b7e9e3d477755e3ab6c.gif

Generics Пользователи которые использовали Консулу и имели опыт со статичными методами в классе с генериками, наблюдался сломаный парсинг. Как бы не казалось сначала, эта задача была довольно сложная. Я её закрывал на протяжении двух месяцев, двигаясь к цели. В итоге, я добился нужного результата и теперь все работает как надо.914b5a5f9b534e7993e68b0c0fef6b9f.png

Unsafe code Я давно игнорировал эту возможность C#. Но это часть C#. Было проделано много работы, чтобы сделать нормальную поддержку всех инструкций. Возможны баги, а куда без них :)b9dc3b7af05341c49931dc95d5b532ea.gif

C# 6.0 C# 6.0 движется и IDE должна также двигаться. Был обновлен парсинг, а также поиск.c205be9be3a74d92b5f01a52d63ada1c.png

Все? Это не все исправления за последний месяц. Я не упоминул о переделке работы labels, nullable types, улучшении code style и многое другое.Какие планы на следующий год? Сделать первый реализ, улучшить .NET поддержку, начать разрабатывать другой плагин (например Google Go? или Rust?).Что я не сделал в этом году? Не написал ничего на Хабр про другие плагины, например Lombok и его val.

Если кто-то захочет мне помочь, прошу написать либо в личные сообщения, либо на email (который можно найти в профиле GitHub)

И наконец, как же все работает для Unity:

[embedded content]

Спасибо. С Наступающим

© Habrahabr.ru