Pull to refresh

Comments 30

Спасибо!
А так-то троли молодцы! Может быть скоро креатор заслужит моё почтение, а пока увы еще рано об этом говорить.
Он и сейчас достоит уважения. Нативная поддержка CMake, и отлично работающий code completion (точно лучше, чем в том же Eclipse). А ещё работает очень быстро, и занимает мало оперативной памяти.
Мне отладка там не нравится
С хелпером более-менее можно жить. Плюс QtCreator в том, что можно скачать SDK, установить, и сразу программировать. С полной средой именно для Qt.
А что сейчас не устраивает? Просто, сейчас, как мне кажется у креатора есть два конкурента: MSVS под windows и KDevelop под Linux. MSVS бьет тем что, что у него отличный дебаггер, KDevelop же очень гибок.
KDevelop кладет креатора на лопатки своим продвинутым code completion, можно классы шлепать просто как семечки грызть.
Да, но новый KDevelop пока все-еще нестабилен. А Creator и Eclipse позволяют работать в одном окружении под Win и Linux. Я сейчас делю рабоче время примерно 85/15 между крейтором и эклипсом (последний использую из-за интеграции со средствами анализа кода / рефакторинга и т.п.).
Про себя скажу, что не устраивает:
  1. Неудобное, маленькое, недокируемое окно переменных
  2. Кривое отображение русского текста в результатах поиска
  3. Навигация по проекту / файлу. Очень не хватает эклипсовского «Outline»
  4. Слабый анализ кода (даже начал прикручивать cppcheck, но сейчас катастрофически не хватает времени)
ОО, молодец, прикольно. Я даже и не заметил что в креаторе нет такой фичи :-)
А не пробовал это заулить в ветку основную?
Нет не пробовал, это накидано было за пару вечеров на даче, сырое все, может, если до ума довести, можно и попробовать будет.
А чёй-то у меня критор на Рысе только через минут пять открывается, в выходной поставил, думал что он вообще не открылся.Может кто подскажет, что не так?
Первый запуск отнимает обычно отнимает много времени. И некоторое время после первого запуска QtCreator будет порядочно грузить процессор. Это объясняется тем, что происходит индексация справочной информации. Просто подождите немного, последующий запуск происходит мгновенно.
Очень радует развитие этой замечательной среды. Очень радует что люди интересуются и
пишут плагины. Мне кажется что сейчас слишком сложен сам процесс распространения плагинов,
ведь чтобы мне например воспользоваться данным плагином, мне необходимо либо собрать
qt creator из исходников, либо дождаться попадания его в основную ветку. Ни тот ни другой
вариант не радует. Мне кажется что для приобретения популярности эту систему необходимо упростить. Именно по этой причине не решаюсь пока начать писать свои плагины. Надеюсь в ближайшее время
все станет проще. Поправьте пожалуйста если не прав.
Вообще, если версия креатора и заявленная в плагине совпадают, то можно использовать уже скомпилированный кем-то бинарник, Но, учитывая, огромную скорость развития Qt и QtCreator, бинарные сборки будут очень быстро терять актуальность.
Забавно, что в каждом из «TODO, FIXME и т. д. комментариев» у вас как минимум по одной ошибке.
Английский — моя слабая сторона.
Просьба. Кто-нибудь может выложить плагин в скомпилированном виде?
Есть только для Linux для версии 2.0.0
Попытаюсь завтра с утра скомпилировать под Win, плагин must have однозначно.
Отлично, будут вопросы, пишите в личку или на почту/jabber контакты мои легко ищутся.
вот тут можно взять бинарник для винды (работает с qt sdk, qt creator 2.0), плагин собран с учётом багфиксов/импрувов, описанных мной ниже.
кто-либо под винду собирал? у меня mingw выдаёт «cannot find -lAggregationd»
вот что не указано в статье: чтобы собрать плагин надо сначала собрать qt creator (либо взять уже готовый из бинарных пакетов), иначе нужные либы не подцепятся
собрал, запустил. баг есть: при клике на тудушку не переходит на нужную строку.
под виндой баг в том, что двоеточие в хинте присутствует 2 раза. я бы предложил не использовать такой метод. для этих целей лучше подходят функции QListWidgetItem::data()/QListWidgetItem::setData(), их можно юзать для хранения пути к файлу и номера строки.

тогда в функции TodoOutputPane::addItem() добавим две строки:

  1. newItem->setData(Qt::UserRole + 1, file);
  2. newItem->setData(Qt::UserRole + 2, rowNumber);
* This source code was highlighted with Source Code Highlighter.


а функция TodoPlugin::gotoToRowInFile() будет выглядеть теперь так:

  1. void TodoPlugin::gotoToRowInFile(QListWidgetItem *item)
  2. {
  3.   int row = item->data(Qt::UserRole + 2).toInt();
  4.   QString file = item->data(Qt::UserRole + 1).toString();
  5.  
  6.   if (QFileInfo(file).exists())
  7.   {
  8.     TextEditor::BaseTextEditor::openEditorAt(file, row);
  9.     Core::EditorManager::instance()->ensureEditorManagerVisible();
  10.   }
  11. }
* This source code was highlighted with Source Code Highlighter.


кроме того, предлагаю использовать сигнал itemClicked(QListWidgetItem*) вместо itemActivated(QListWidgetItem*), чтобы одинарный клик на итеме работал.

для себя сделал указанные изменения и теперь спокойно юзаю, автору респект и спасибо за плагин =)

идея на будущее: хорошо бы сделать поиск тудушек и прочего во всём проекте.
UPD: сигналы itemClicked и itemActivated лучше использовать совместно, чтобы и клик мышью и нажатие Enter на клаве при навигации с её помощью работали.
кстати, ещё совет: в todo.pro надо бы написать вместо «DESTDIR = $$IDE_PLUGIN_PATH/Nokia» что-то вроде «DESTDIR = $$IDE_PLUGIN_PATH/VSorokin» или даже просто «DESTDIR = $$IDE_PLUGIN_PATH» (что тоже хорошо работает)
Спасибо, мне так и не удалось ничего скомпилировать. Думаю, компиляция плагинов для QtCreatora под Windows тема для отдельного поста на Хабре.
угу, причём стоит уже тут отметить, что собирать надо с помощью Qt 4.7 beta2 для msvs2008 (если есть желание чтобы плагин заработал с криейтором из SDK)
Only those users with full accounts are able to leave comments. Log in, please.