LINUX.ORG.RU

Codimension Python IDE 2.1.1

 ,


1

3

Экспериментальная среда разработки для языка Python обновилась до версии 2.1.1.

Основные изменения по сравнению с предыдущими версиями:

  • Добавлен интерфейс расширений (plugins).
  • Добавлено расширение для сборки мусора.
  • Подготовлено руководство разработчика расширений.
  • Обновлена утилита pyflakes до версии 0.7.3.
  • Исправлены несколько ошибок.
  • Улучшена работа автоматической справки по аргументам функций (calltips).
  • Улучшена поддержка подсказки для импортируемых имен для относительных import и многое другое.

Полный список изменений

Сайт проекта

Проект на google code

Руководство разработчика расширений

Пакеты для Ubuntu на launchpad



Проверено: tazhate ()
Последнее исправление: CYB3R (всего исправлений: 3)
Ответ на: комментарий от Makc

Интересно, как вы тогда пришли к мысли, что надо разработать собственный IDE, изначально не опробовав, так сказать, всех потенциальных конкурентов?

Было примерно так. Когда я разрабатываю ПО, то часто рисую фрагменты алгоритмов от руки на бумаге в виде блок схем. Не все и не всегда, но часто. Этот же прием я использую при анализе чужого кода, особенно когда надо вносить нетривиальные изменения. Мне всегда хотелось иметь под рукой инструмент, который помог бы мне в таком подходе - иногда код-текст, иногда код-блок схема. Попытки сделать такие инструменты были. Самый близкий известный мне вариант - это язык дракон российского производства. Но там есть очень существенный недостаток. У дракона нет кода, там только диаграммы. И я согласен далеко не со всеми их решениями.

Для языков C/C++ сделать такой инструмент в одиночку я не в состоянии, а вот познакомившись с питоном мне пришла в голову идея как можно поддержать такой способ работы. То есть дать возможность редактировать код и как текст и как блок схемы одновременно, генерировать блок схемы для произвольного питон кода, дать возможность дополнительной группировки и разметки блок схем прямо в исходном питон коде не нарушая его работоспособности.

Дальше я стал смотреть, в какую IDE можно было бы добавить такую возможность как plugin. Результат анализа был - ни в какую. По крайней мере на тот момент. Поэтому я взял за основу eric4 и стал готовить обвязку для своего варианта, параллельно исправляя то, что меня не устраивает в eric. Потом коллеги попросили добавить кое-что, постепенно костяк оброс функциональностью, которую уже можно использовать и как традиционную IDE. Это, однако, сильно затормозило приближение к конечной цели, но и бенефит есть. Скрипты на питоне я теперь делаю в миксе codimension и vim, с сильным перевесом в сторону codimension. Трудно отказаться от интеграции с pyflakes, pylint, удобной профилировкой и отладкой.

На другие IDE я тоже смотрю время от времени, но не пользуюсь ими. Поэтому детальные отличия знаю только по сравнению с eric.

И последний момент - подобная разработка, это fun. И способ лучше познакомиться с языком питон.

SergeySatskiy
() автор топика
Ответ на: комментарий от der_looser

Codimension для Windows

Под винду есть?

Нет, сборки под Windows нет. Есть только индивидуальный опыт. Парсер был успешно пересобран. IDE запускается и работает все, за исключением связанной с запуском функциональности, т.е. нет отладки, нет профилировки, нет запуска. Построение диаграммы зависимостей работает, интеграция с pylint, pyflakes, pymetrics тоже работает.

SergeySatskiy
() автор топика
Ответ на: комментарий от Akamanah

А когда она выйдет?

Когда выйдет ubuntu 13.10? Скорее, это вопрос к canonical. Вероятно в октябре 2013.

Если вы спрашиваете про пакет для 13.10, то никаких гарантий я дать не могу. Илья собирает пакеты исключительно в свободное от основной работы время исключительно на добровольных началах. Когда у Ильи будет время, тогда и соберет.

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

Спасибо за развертывающий ответ!

Могу только пожелать удачи в разработке, ну и чтобы fun всегда имел место быть :)

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

А планируются ли пакеты для других дистрибутивов?

Сейчас собираются пакеты rpm для федоры и deb для убунты. Другого пока не планируется. Спроса нет, да и некому делать. Даже rpm пакеты под вопросом. Основная аудитория - пользователи убунты.

Обходной вариант - собрать самостоятельно. Вчера пользователь actionless собрал для debian wheezy. Если вы заинтересованы в сборке под вашу систему и готовы проделать это самостоятельно, напишите мне я вам помогу.

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

А, я не так понял. Вопрос снимается. Илье отдельный привет.

Akamanah ★★★★★
()
Ответ на: Ссылка для sudo add-apt-repository от SergeySatskiy

В общем, я склоняюсь к тому, чтобы не добавлять инструкцию по установке в новость.

Её можно было добавить в первом комментарии... А то вот уже кто полез ставить уже на грабли назел и засоряет логами новость... Без обид, без претензий, просто мысль :)

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Её можно было добавить в первом комментарии

Интересная идея. Если не забуду к следующему разу, скорее всего так и сделаю. Если, конечно, следующий раз будет. С другой стороны, а как же правило «прочитай инструкцию»? Вопрос риторический, отвечать не надо.

SergeySatskiy
() автор топика
Ответ на: комментарий от anonymous

В Пичарме есть поддержка диаграм, и рефакторинг можно делать прямо на них.

На страничке со снимками экрана PyCharm я не нашел ни одного, где был бы редактор блок схем. В тоже время я уверен, что у них сделано хорошо. Там наверняка трудится коллектив профессиональных разработчиков, коль скоро PyCharm коммерческий продукт.

В проекте codimension мне интересно опробовать свои идеи. Неизвестно, правда, когда я дойду до реализации первоначальной идеи. Времени уже прошло много, а работы впереди еще больше. Может быть, и никогда не дойду.

SergeySatskiy
() автор топика
Ответ на: комментарий от generator

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

а по поводу удаленной отладки — в виме можно придумать какой-нибудь биндинг, который будет коннектится по ссх и там запускать скрипт. и дебажить можно будет в пудб или каком другом другом консольном отладчике прямо «на месте»

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

Короткое описание в картинках

Диаграмма классов это не блоксхема, тупое анонимное животное.

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

Диаграмма классов у них нарисована очень красиво, ничего не скажешь. Я так не смогу сделать. Я планировал добавить подобную диаграмму в будущем, но моя версия явно будет уступать PyCharm версии.

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

SergeySatskiy
() автор топика
Ответ на: комментарий от generator

на всю линейку их продуктов была распродажа.
тогда побочные продукты были дешевые[pycharm,rubymine,resharper,etc], а вот на основной продукт - InelliJ IDEA скидка была, но не такая большая.

etwrq ★★★★★
()
Ответ на: Ubuntu 12.04 от SergeySatskiy

спасибо, буду пробывать когда появится

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

Да вот так и получается, vim наше всё :)

Был бы IDE+ssh. А так не хочется ставить непонятные скрипты и клиенты даже на тестовые сервера.

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

Например то, о чём писал SergeySatskiy:

используется не ssh, а TCP/IP соединение
на удаленной машине запускается отлаживаямая программа через специальный скрипт, поставляемый с eric4

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

ясно, а то я подумал, что это ко второй части моего сообщения относилось

actionless ★★★★★
()

А как оно в сравнении с Pycharm?

Если он будет по функциональности схож с Pycharm, но пошустрее - перейду не задумываясь. Потому как, на мой взгляд, Pycharm на сегодня - лучшая среда для питона, но слишком уж мееееедлееееенннннннаааааааааааяяяяяяяяяяяя...

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

точно требуется >=1.10 ?

Честно, говоря, я не знаю, подойдет ли 1.9.2. Я начал делать интерфейс подключаемых модулей, когда в ходу была 1.10.

За прошедшие несколько дней Илья добавил в наш репозиторий пересобранную 1.10, так что должно уже гладко работать.

SergeySatskiy
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.