LINUX.ORG.RU
решено ФорумTalks

Редактор/IDE

 , ,


0

3

Вот допустим:

Я студент-неумека(быдлокодю в маленькой конторе за еду) решил помочь открытому ПО. Решил починить библиотеку в wine(на работе сталкивался с похожей задачей). Почитал Developer FAQ, слил репозиторий, сблидил, написал тестовую программу(на оффтопике). Вроде, уже готов чинить, но...

В чём писать код? На работе сталкивался с Qt Creator - всё просто и понятно. Но он не может подхватить проект из Makefile.

По жизни(оборот то какой!) использую vim для редактирование конфигов и прочего. Пробовал vim для больших проектов - неудобно, хоть и пытался навесить всякие плагины(ctags, nerd tree и тд). Посмотрел в сторону emacs: тратить мильон лет жизни, чтобы освоить редактор(пусть и очень крутой)?! И как-то грустно стало мне.

В какую сторону всё-таки стоит копать?

Из Makefile может Anjuta, если не ошибаюсь.

AntonK ()

Eclipse CDT (если ты не гипернищеброд с ОП < 1G).

На работе сталкивался с Qt Creator - всё просто и понятно. Но он не может подхватить проект из Makefile.

Наверняка он это может. Скажу по секрету - у любого сложного инструмента есть entry barrier (для линуксовых IDE - это как раз настройка проекта).

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

Скажу по секрету - у любого сложного инструмента есть entry barrier

Это понятно. Просто, иногда, хочется не сразу вникать в сложности, а делать это в процессе разработки.

hired777 ()

Пробовал vim для больших проектов - неудобно

почему?

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

Очень тяжко с автодополнением(особенно стандартных библиотек). Нужно вручную генерировать ctags. Отсутствие вменяемого дебагера(я, в отличии от большинства, часто пишу говнокод)

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

иногда, хочется не сразу вникать в сложности, а делать это в процессе разработки.

Этот барьер потому и называется barrier of _entry_, что его нужно преодолеть в самом начале.

Отсутствие вменяемого дебагера(я, в отличии от большинства, часто пишу говнокод)

Ты же студент, откуда этот мусор в мозгах? Отладчик - полезный инструмент, пригоден для любого кода (как говно- так и доброкода). Более того, приличный код отлаживать легче %)

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

Отладчик - полезный инструмент, пригоден для любого кода

Когда я в прошлый раз попылся заговорить об отладчике для vim`а мне ЛОРовские аналитики авторитетно заявили, что ТОЛЬКО ДЕБАГОВАЯ ПЕЧАТЬ, ТОЛЬКО ХАРДКОР.

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

ТОЛЬКО ДЕБАГОВАЯ ПЕЧАТЬ, ТОЛЬКО ХАРДКОР.

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

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

Отладочная печать рулит, когда нет возможности пустить прогу под отладчиком

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

dimon555 ★★★★★ ()

В какую сторону всё-таки стоит копать?

Вдоль?

theNamelessOne ★★★★★ ()

Не будь тряпкой, осиль в этой жизни хоть одну стоящую вещь.

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

Когда очень-очень0очень много говнокода, без нормального IDE не выжить, инфа 100%. Всякие эрлангисты живут на емаксе (да и на эрланге) только за счет того, что у них код очень правильный, аккуратный и компактный. А когда ты за один коммит херачишь по десять тысяч строк говнокода...

stevejobs ★★★★☆ ()

Посмотрел в сторону emacs: тратить мильон лет жизни, чтобы освоить редактор(пусть и очень крутой)?!

Мне хватило недели, хотя по началу после всяких mcedit/fte/pico плющило.

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

Очень тяжко с автодополнением(особенно стандартных библиотек).

^B не помогает? ^X... тоже лечит иногда.

Нужно вручную генерировать ctags.

ЕМНИП оно вроде вешается в Makefile.

Отсутствие вменяемого дебагера(я, в отличии от большинства, часто пишу говнокод)

ну там был плагинчег путный. Я его когда-то допилил до уровня MSVC. Но не слишком оно и нужно на самом деле.

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

Когда я в прошлый раз попылся заговорить об отладчике для vim`а мне ЛОРовские аналитики авторитетно заявили, что ТОЛЬКО ДЕБАГОВАЯ ПЕЧАТЬ, ТОЛЬКО ХАРДКОР.

в проектах чуть больше хэлловолда структуры настолько сложные, что лично у меня не получается их отслеживать отладчиком. Приходится писать костыли, причём иногда даже с привлечением SQL.

drBatty ★★ ()

Последний раз, когда мне нужна была среда, не привязанная к Qt и прочей конкретике, я пользовался Code::Blocks. Она не очень активно развивается, но там и так уже всё работает.

Если надо писать на чистом C или C++, на мой взгляд - самое оно.

hobbit ★★★★★ ()

Посмотрел в сторону emacs

что конкретно вызвало затруднение? Вообще в плане кастомизируемости и всяких плюшек равных емаксу нет.

ну и man emacs starter kit для начала.

ymn ★★★★★ ()

В Sublime Text 2, после прикручивания SublimeClang, автокомплит вполне ок.

Norgat ★★★★★ ()

vim умеет хорошее дополнение с clang_completion. Но с дебагом сложнее. Есть clewn, но он не очень удобен, мне проще сам gdb использовать.

Еще можно попробовать codelite. Его можно заставить подхватить уже готовый Makefile. Автодополнение есть свое, есть на основе clang (у меня не завелось).

Но если вам подходит Qt Сreator не проще ли написать .pro и пользоваться им?

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

ЛОРовские аналитики авторитетно заявили, что ТОЛЬКО ДЕБАГОВАЯ ПЕЧАТЬ, ТОЛЬКО ХАРДКОР.

Хардкор - это как раз отладчик. А отладочная печать и логирование как раз намного проще.

cab ★★★★ ()

Как выше сказали, QtCreator действительно может. Нужный шаблон - «импорт проекта»->«импорт существующего проекта». После чего можно открыть 5-й режим (Ctrl+5) и добавить вызов ./configure, при необходимости.

Вот только добавления файлов сразу в Makefile ждать не стоит.

quiet_readonly ★★★★ ()

Посмотрел в сторону emacs: тратить мильон лет жизни, чтобы освоить редактор(пусть и очень крутой)?!

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

В чём писать код? На работе сталкивался с Qt Creator - всё просто и понятно. Но он не может подхватить проект из Makefile.

KDevelop может.

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

только за счет того, что у них код очень правильный, аккуратный и компактный

Только за счёт того, что у них IDE одна, проприетарная и та на джаве.

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

Эрланг на жаве? Ты про эклипсовский плагин что ли? Он не работает, посему им никто не пользуется.

stevejobs ★★★★☆ ()

Книжка The Land Of LISP + emacs. Для начала можешь cua-mode юзнуть. Осваивается за пару часов, допиливается в процессе работы.

AiFiLTr0 ★★★★★ ()

обновляй Qt Creator - по крайней мере в 2.5 точно можно было импортировать проект с make

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

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

Мне действительно трудно поверить, что оно стало удобнее KDevelop.

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

Мне действительно трудно поверить, что оно стало удобнее KDevelop.

KDevelop мне никогда особо не нравился. Он то падал, то тупил на сишных макросах, то тормозил, то сходил с ума и раскрашивал весь код в ошибки, то портил qmake-файлы... Такое поведение я застал на конечных версиях ветки из kde3 и замечал уже изредка поглядывая на него в версиях из kde4. Поэтому на С++ я писал с помощью своего глобального и надежного Makefile и Kate.

Потом я начал изучать и применять в разработке Common Lisp, спустя некоторое время использовать для этого Kate стало неудобно, я собрался с силами и осилил емакс. Потом подумал, что глупо использовать несколько редакторов, особенно в одном проекте, и для редактирования С++ стал использовать его же.

staseg ★★★★★ ()

Чую, что всё-таки надо осваивать emacs. Всем спасибо, все свободны!

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

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

Конечно, я не так давно его использую. Но на текущий момент у меня нет нареканий. Раз в неделю пересобираю его и питон модуль из гитов =)В случае чего плачусь и ругаюсь на #kdevelop ^__^

У меня вот был опыт общения в emacs с gdb и Alex Ott с фразой «Debugger is for noobs» заставили сильно задуматься о целесообразности отказа от IDE в пользу emacs.

nCdy ()

emacs

мильон лет

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

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

Мне действительно трудно поверить, что оно стало удобнее KDevelop.

зависит от того, что понимать под удобством

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

зависит от того, что понимать под удобством

Ну это может многое объяснить ;)

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

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

lazyklimm ★★★★★ ()

только емакс. Остальное убогое.

gensym ★★ ()

Всем посоветовавшим эклипс - в ответ шлю лучи ненависти. Для C++ проектов это то еще г.

По поводу QtCreator. В последних версиях он научился работать с CMake-файлами конфигурации. Остается только найти на просторах интернета скрипт, который перегонит Makefile в CMake-формат и наслаждаться разработкой. Правда некоторые плюшки QtCreatora пока что не работают для CMake-файлов (я столкнулся с тем, что он не может создать для него новый класс и решил с переходом на CMake повременить), но это должны исправить в ближайших обновлениях.

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

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

гипернищеброд с ОП < 1G

Оно и на 2х гигах тормозит.

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

за один коммит херачишь по десять тысяч строк говнокода

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

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

Оно и на 2х гигах тормозит.

У меня не тормозило. Правда, я не пытался засунуть в него Wine.

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

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

ну вот не надо.

а можно на ходу всё делать самому

Делать-то можно, но я очень сомневаюсь в своих (да и не только в своих) способностях довести его до состояния kdev. А использовать готовый cedet - не тоже самое? Он мне, кстати, совсем не понравился.

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

Это как сказать «каждому своё, крузак - это привычки и зависимости, вот к велосипеду легко приделать звоночек и поставить нужные переключатели скоростей и не нужно будет в сервис ездить»

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

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

P.S. В точно такой же ситуации у меня до 4-х креаторов над разными проектами (один из них - сорцы кутей) работает без тормозов.

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

Я тоже не над вайном работал, а над своим небольшим проектом.

Тогда я тебе просто не верю.

В точно такой же ситуации у меня до 4-х креаторов над разными проектами (один из них - сорцы кутей) работает без тормозов.

Это мало о чем говорит.

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

я очень сомневаюсь в своих (да и не только в своих) способностях довести его до состояния kdev.

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

А использовать готовый cedet - не тоже самое?

не использую, он мне не понравился, куча лишней информации

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

gud чем не нравится? Хотя хз, я дебаггером пользуюсь очень редко.

Тут ещё понимаешь какая фигня: кому нужен дебаггер - ещё не в состоянии его написать, а тот, кто в состоянии написать - тому он уже нафиг не нужен. И так много где.

крузак - это привычки и зависимости, вот к велосипеду легко приделать звоночек и поставить нужные переключатели скоростей и не нужно будет в сервис ездить"

это ты так емакс унизила?

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

Очень тяжко с автодополнением

омфг, ну кто вам привил эти дурные привычки?

Нужно вручную генерировать ctags

лучше уж вручную, чем когда при автогенерации IDE начинает тормозить

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