В последний месяц произошло нечто прекрасное, но это мало кто понял 🙂
Дмитрий @xepozz Дерепко запилил плагин для PHP Storm, опубликовал про него две статьи на хабре:
Как мне кажется, обе нифига не понятные. Что-ж, тоже постараюсь построить мост между миром Meta Storm и реальностью.
Meta Storm - это плагин для PHP Storm, позволяющий сконфигурировать правила автокомплита. Причём так, как JetBrains не смогли! То, что от них ждали 20 лет (или сколько там они пилят IDE), один чувак запилил буквально за месяц, просто потому что “доколе можно это терпеть”.
Я не буду угнетать вас примерами конфигов, просто покажу, что мне (и вам) это даёт.
Самый приземлённый пример.
Сущности в Cycle могут быть размечены атрибутами:
#[Entity('user')]
class User
{
#[Column(type: 'primary')]
public ?int $id;
#[Column(type: 'string')]
public string $name;
#[HasMany(Post::class)]
public iterable $posts;
}
Закидываем пачку метаданных в репозиторий атрибутов Cycle и вуаля: у всех пользователей с плагином работает автокомплит! Плагин находит сущности по атрибутам и предлагает в нужных местах подставить класс или имя роли.
И самое главное — он их связывает! Кликаем по роли и попадаем на класс.