LINUX.ORG.RU
ФорумTalks

Кто тут пользуется IDE от JetBrains?

 , , ,


0

1

Пользовался WebStorm, переполз на IntelliJ IDEA как на «одну IDE чтоб править всеми», ну и потом, в IDEA есть инструменты для работы с БД. Ну и просто может работать со всем - от жабы до сях.

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

Если говорить конкретно про WebStorm/IntelliJ IDEA, то:

  • Не работает дополнение для имён классов из SCSS в HTML (баг, потому что в ionic стили и классы указываются внутри селектора страницы - грубо говоря, для страницы HomePage будет селектор home-page {}, внутри которого ты нужные для этой страници стили и ставишь. Прям как в каменный век вернулся.
  • Дополнение специфичных атрибутов и их распознавание сделаны коряво: 1. добавляет к каждому атрибуту ="", в итоге я получаю
    ion-button=""
    , хотя это лишние символы, и ставить их нет смысла - они просто будут перегружать визуально код. Да и траффик лишний. 2. IDE меня упорно убеждает, что для button атрибут clear использоваться не может, хотя он самый что ни на есть реальный из ionic.
  • Периодические проблемы с поиском деклараций функций - внутри одного ts ищет без проблем, на другие классы - с переменным успехом. А уж декларации стилей - вечная проблема.

И это лучшее, из всех редакторов - всё-таки нормально работает линт, подсказки и прочие прелести.

Багрепорты есть, висят для WebStorm от 23 мая, движений никаких. В связи с этим вопрос - где и как пройтись напильником, чтоб подправить поддержку фреймворка? Я так понял, судя по количеству багов в трекере и их фиксам, что я вряд ли дождусь фикса от них.

С другой стороны, для любого другого редактора либо придётся пилить изрядно больше, либо придётся смириться с отсутствием функциональности (поиск применений, деклараций и т.д.).

Помню, что тут широко обсуждались некоторые новости про JetBrains, вот и подумал, что вдруг кто-то сможет подсказать по делу. А может есть кто-то, кто у них работает и сможет подсказать пути решения проблем.

P.S. На LOR - потому что работаю на macOS и Linux.

P.P.S. В толксы - потому что ну куда ещё?

★★★★

IDEA - это текстовый редактор с подсветкой синтаксиса.

IDE это NetBeans и Eclipse.

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

1. Ты куда дел свою Beastie-girl?

2. NetBeans разве ещё шевелится (в смысле, чтоб прям активное сообщество, плагины, вот это всё)? А Eclipse вроде был люто наркоманский, если я правильно помню.

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

NetBeans: http://netbeans.apache.org/

Переделывается под модульную архитектуру последних Яв - это процесс не сильно быстрый, так как в IDE NetBeans и Eclipse используются OSGi-движки динамической модульности Apache Felix и Equinox, соответственно, которые сильно конфликтуют со статической модульностью Java9/10.

iZEN ★★★★★ ()

А ты звездочки в баги поставил? В комментариях написал, как это офигенно тебя аффектит?

Именно на это разрабы в первую очередь и смотрят. Ты реально своими действиями можешь поспособствовать правильному решению проблемы.

Если плагин, который ты хочешь, не выложен в OpenSource, а является частью WebStorm, то никак это тебе не поправить.

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

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

Не смотрят на это разработчики. У них баги, помеченныекак мажорные годами висят.

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

Мажорные баги могут хоть вечно висеть, если непонятно, как их починить.

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

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

Мажорные баги могут хоть вечно висеть, если непонятно, как их починить.

Угу. Висел такой баг связанный с поиском использования/рефакторингом 3 года, а потом после нытья в твиттере за неделю починили. Чудеса.

А вообще в их продукции печально сделущее: берешь какую-либо функциональность, которую они рекламируют. Начинаешь использовать и очень высока вероятность, что в части граничных условий она не работает. И самое забавное, что и сообщения об этих багах успешно висят в трекере. И никто их не фиксит.

Но при этом постоянно выходят новые версии, с новой функциональностью.

Уж лучше свалить на vscode + lsp, там хоть самому как-то можно повлиять на исправление ошибок.

aiive ()

Никогда такого не было и вот опять

несовершенство текстового редактора не позволяет гению творить нетленку :-)

всё пропало...

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

Они фиксят то, на что есть реакция сообщества.

Ной в твиттере, в фейсбуке, во вконтаче даже, ставь звезды и пиши каменты на трекере, пиши им прямые письма, короче - создавай общественный резонанс

Разрабы все это читают и смотрят

Есть резонанс - баг чинится

Нет резонанса - баг чинится в порядке общей очереди

А общая очередь может быть длиной в годы, ибо там впереди в очереди стоят более резонансные баги

Уж лучше свалить на vscode + lsp, там хоть самому как-то можно повлиять на исправление ошибок.

Ну вали, никто не держит =)

Лично мне проще заниматься моей работой, пока разрабы IDE занимаются своей

stevejobs ★★★☆☆ ()
Последнее исправление: stevejobs (всего исправлений: 1)
Ответ на: комментарий от stevejobs

Ну вали, никто не держит =)

Ну так и свалил. Ибо у меня в трекере у них больше 40 багов, а за последний год был исправлен только один. Я уже веру и потерял.

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

если непонятно, как их починить.

Знаешь, если в ПО что-то не понятно, то этому ПО как и его разработчикам уже пора самозакапываться.

subwoofer ★★★★★ ()
Последнее исправление: subwoofer (всего исправлений: 1)
Ответ на: комментарий от stevejobs

Ну и да, я не понимаю позиции «фиксить то, на что есть реакция сообщества». Такой подход применим к реализации новой функциональности, а баги должны фикситься в любом случае.

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

Все баги не будут пофиксены никогда - их бесконечно. Можно только тасовать бесконечную очередь в порядке приоритета. А приоритет в коммерческой организации, очевидно, отдается тому, за что можно получить наибольшее бабло. Наибольшее бабло приходит от наибольшего количества юзеров, либо от VIP юзеров. Поэтому править баги нужно только тогда, когда к тебе прибегает тыща пользователей и начинает завывать, что ничего не работает. Это очень простое рассуждение, еще 37signals (https://basecamp.com/books) об этом писали на заре времен

stevejobs ★★★☆☆ ()
Ответ на: комментарий от subwoofer

а к опенсорсу это все еще сильней относится. Ибо еще сильней стеснены в средствах, чем коммерческие. Вот у тебя вечером есть 30 минут, чтобы пофиксить какой-нибудь баг - что ты пофиксишь, то что прямо сейчас нужно тыще человек, или то с чем какой-то одинокий сыч как-то живет пять лет? Только в опенсорсе можно сразу закрывать все такие «одинокие баги», потому что они пойдут в мусорку с вероятностью 100%. (Точней, не закрывать, апереводить в статус «когда-нибудь» или минимальный приоритет, потому что данные из этих багов могут понадобиться другим свежим тикетам)

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

если непонятно, как их починить.

а к опенсорсу это все еще сильней относится.

Стиви, читай на что отвечаешь 8) Поясняю: если в приложении непонятно как чинить баги, то всё плохо.

subwoofer ★★★★★ ()
Последнее исправление: subwoofer (всего исправлений: 1)
Ответ на: комментарий от stevejobs

Какие «звёздочки»? Я комментарий написал, что меня аффектит. Проголосовал. Если могу ещё чем-то поспособствовать - подскажи, пожалуйста.

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

Уж лучше свалить на vscode + lsp

Можно. Собственно, если говорить именно по части редактора кода - то vs code лучше. Ну и vim, разумеется. Но быстрая навигация по проекту и подсказки заруливают всё, как мне кажется.

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

Так IDE - это не про твое приложение, а про еще миллион разных приложений, которое оно связывает. Если приложение одно - это текстовый редактор без подсветки типа notepad.exe. Как только ты притащил подсветку и автодополнение - ты сразу притащил баги в них, связанные например с неоднозначностью парсинга языка (см. Scala). Теперь ты наворачиваешь туда фреймворки, другие языки (проект пишется на нескольких сразу), внешние утилиты, и получается бесконечная матрица совместимости всего со всем, настоящий контроль имеется ну процентов над пятью твоей матрицы. Но ты можешь впиливать хитрые костыли! Но иногда чтобы впилить хитрый костыль, нужно очень-очень много думать.

Я ведь тоже немножко вписался в написательство плагинов. Моя типичная проблема - разные window managers в Linux, и свое-особое-скрепное (с) отображение в MacOS. Поменяй WM на какой-нибудь Xmonad, (и если ты специально не костылил переменные окружения), то в Идее исчезнет рамка. Но этого не хватит, потому что некоторые окна начнут вести себя странно, например модальные окна иногда будут деактивироваться, хотя казалось бы - как? А еще выпадающие менюшки (которые выпадают при хождении по главному меню) в тайловых менеджерах могут превратиться в отдельные окна. А в Макоси вообще треш и ад. Виноваты ли в этом разрабы Идеи? Да ничуть! Это сложная комбинация багов фреймворка AWT, Swing (который написан с использованием AWT), конкретного window manager, операционной системы, композитора(!), и еще всякой фигни.

Вот сейчас меня волнует баг, что иногда на 4k Ultra HD мониторе Идея начинает тормозить. На домашней винде не тормозит, на одном из маков тормозит, на другом - нет. Шанс попасть под ошибку очень маленький, несколько процентов. Теоретически, каждый может поправить этот баг, тк он проявляется и в IntelliJ IDEA Community Edition, и в Eclipse. Скорей всего, это баг сочетания конкрентного режима рендеринга шрифта, сглаживания шрифта, композитора, и реализации этой связки в Java, и проявляется только на Очень Больших Файлах. И править нужно сразу во всех этих местах, начиная собственно c JRE/JDK. [Кое-что правят](https://youtrack.jetbrains.com/issue/JRE-584), но это не помогает на 100%.

stevejobs ★★★☆☆ ()
Ответ на: комментарий от ekzotech

Выйди на человека, который решил править твой баг (если такой есть, смотри в багтрекере), и поговори с ним лично, например.

Письмо напиши приватно, может быть он не хочет выносить сор наружу и объяснять всему миру, почему баг прямо сейчас не поправить. А вот тебе, как самому пострадавшему, что-нибудь объяснит.

Ну и конечно, напиши о баге во всех своих соцсетях. Создай общественный резонанс. Пусть друзяшки его порепостят и пообсуждают. Заменшени туда ответственного за баг, если у него есть аккаунт в этой соцсеточке (в Твиттере обычно у всех есть акк, но читают с переменным успехом). Напиши на ЛОР и Хабру посты с исследованием бага, если про него есть что интересного рассказать.

Пока что я вижу, что ты даже в этом треде не дал ни одной ссылки на свой баг :)

stevejobs ★★★☆☆ ()

я, когда на JPoint 2018 был, пристал со своим багом к команде JetBrains, стенд которой был в фойе. и мне дали твиттер разраба, который занимается разработкой в области моего бага. я ему написал, он поспособствовал работе по мему тикету в багтеркере, который тоже висел долго. и пока в 2018.1.4 его не пофиксили.

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

Тут все так. Не нужно поддерживать фреймворк целиком, только самые часто используемые функции.

Вот Spring мне близок. Уже сколько ему, 16 лет от роду? Фичи появляются и исчезают каждый квартал, предлагаешь весь этот зоопарк поддерживать? xD

Более того, в спринге есть такие фичи, которые и невозможно корректно поддержать, потому что они сами по себе некорректные.

Например, если у тебя в classpath разные версии Спринга, то джава будет ресолвить фичи в том порядке, в котором файловая система отдает листинг директории (а он разный между ОС, и даже между разными настройками одной и той же ОС). Угадать, как это будет работать можно, но совершенно неразумно. Хочешь поддержать эту фичу? Да пожалуйста, в дурдоме для этого даже отдельную палату выдадут через некоторое время :)

stevejobs ★★★☆☆ ()
Ответ на: комментарий от ekzotech

NetBeans няшка. А eclipse да, норкоманское поделие.

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

Так IDE - это не про твое приложение

Стиви, повторяю последний раз:

если непонятно, как их починить.

Если непонятно как чинить баги, то нехрен делать в профессии. А ты пишешь про то, что баги трудно воспроизвести. Это разные вещи.

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

А что это должно дать? Этот плагин и так установлен в IntelliJ IDEA и WebStorm.

ekzotech ★★★★ ()

Я использую aptana (да, эклипс не свежий, зато много плюшек типа хорошего scss редактора) + nodeclipse (расширения на базе какого-то tern) + бесплатные плагины для angular и Typescript. Вроде удобно.

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

Поддержу. Чем больше воняешь - тем больше чинят.

У меня баги простенькие зарепорчены были: починили за недельку, достаточно было заскриншотить все и описать подробно.

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

Если описание говно, то баг действительно «непонятно как чинить».

Deleted ()

Могу сказать по scala-плагину - работу ведут и ведёт себя он все лучше и лучше.

Не считая, правда, скалы жс - там на макросах и Юнион тайпах идея ломается местами.

nihirash ★★★ ()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)