LINUX.ORG.RU

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

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

если к этому добавляется еще и
- показ списка методов объекта
- варианты параметров функции
- вызов хэлпа на метод, на котором стоит курсор
- возможность компиляции и отладки с минимальными телодвижениями
- возможность делать букмарки (и чтобы они сохранялись при закрытии файла и повторном его открытии через неделю)

то получается что-то нормальное и удобное для работы

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

Беда чайников в том, что они не читали даже Кернигана и Пайка "Unix - универсальная среда программирования". Вот и не понимают, что такое на самом деле IDE.

Да, да, это любимая фраза на ru.linux, но не мог бы ты дать ссылку на русский pdf этой книги?

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

А ключик они уже высылают для линух версий?

anonymous
()

гсдпа, поклонники вс++...

а как вы собираетесь реализовывать проект у которого 20% на сях и 80 на лиспе (я упрощаю)?

Куда засунуть угрёбищный интерфейс у БД?

Что делать, если хочется использовать внутри вашей, так называемой "IDE" (хи-хи) мой любимый редактор? Где тут "интеграция"?

Как вести многоплотформенный проект?

Неужели полдюжины тупых визардов да список файлов-классов, вам хватает для нормалной работы?

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

Все виндовые языки интегрируються без проблем, у нас например числадробилки написаны на Visual Fortran - так туда даже дебагером зайти можно если что и порулить. Редактор? VIM интегрируеться в MSVC - причем эта интеграция - небольшой файл на VBScript, напиши этот скрипт для _твоего_ любимого редактора.

Еще лично мне больше всего не хватает такого же мощного *очень* удобного дебаггера как в MSVC

anonymous
()

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

Про дебаггеры - это ещё одно ба-альшое зло. Зачем они нужны - не совсем понятно. Как инструмент паталогоанатома (вроде gdb -c core) - то, что есть в MSVS не канает. В других случаях деблохатор приносит один лишь вред, никакой пользы от него, как бы "удобен" он не был.

P.S. естественно, в emacs прекрасно можно вводить русский и без мульки. Мулька - вообще извращение.

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

Помню твой тред о дебаггерах в ру.линукс - даже спорить не буду :-)))

anonymous
()

>Все виндовые языки интегрируються без проблем все микрософтовские языки ты хотел сказать? :) vim внуть нифига не интегрируется -- попробуй.

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

на муль увы сильно завязан gnus, инкрементный поиск, viper...

dsa
()

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

gvim интегрируется в MSVC6. только не VBScript'ом вроде, а в виде отдельного плагина. емакс, как мне сказали, тоже интегрируется. Visual Assist - это тоже другой редактор. все ок :)

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

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

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

Antichrist, насчет навигации по дереву проекта ты мне так и не ответил... или это тоже зло?

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

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

ov
()

опс, посмотрел на скриншот. заинтересовало...
это чем и как делается? я попробовал вышеупомянутые etags - что то не понял рульности <Alt>-<.>

ov
()

to ov: За емакс не скажу, а vim'e у меня это делается так:

- показ списка методов объекта - у меня на скриншоте видно. нажать 2 кнопки.

- варианты параметров функции - wtf

- вызов хэлпа на метод, на котором стоит курсор - shift-K.

- возможность компиляции и отладки с минимальными телодвижениями - у меня на <F9> забинден запуск make

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

А вся навигация делается по Ctrl-] через cscope/ctags.

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

По поводу фичи со скриншота:

ECB is source code browser for Emacs. It is a global minor-mode which displays a couple of windows that can be used to browse directories, files and methods. It supports method parsing for Java, C, C++, Elisp etc.

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

http://home.swipnet.se/mayhem/ecb.html

anonymous
()

Ну вот..пришел на работу - запустил MSVC повисла при открытии проекта - причем намертво))) что-то опять с VSS :) Радуйтесь любители пингвина - вим не виснет - это точно))))

все тот-же анонимус)

anonymous
()

про Vim я понял, что это TagExplorer
я про тот скриншот, на котором емакс показан.

ov
()

vim

А как vim настроить для редактирования русскоязычных текстов, чтобы понимал "ролд" вместо "hjkl"?

Заранее спасибо

anonymous
()

в любом факе по русификации линукс есть
например на www.linux.ru

две строчки в .vimrc


emacs у меня вчера в корку свалился один раз с этим ecb (в консоли был запущен) - я удивлен :)

нет, все-таки emacs мне не по душе. буду и дальше использовать vim.

2Bacek: два вопроса к тебе
что и как у тебя вызывается по wtf? у меня ничего не происходит
как у тебя сохраняется сессия? может ли быть несколько сессий типа проектов? как это делается?

ov
()

to ov: wtf - это wtf :) Я просто не понял фразы "Варианты параметров функции"

А сессия сохраняется так: в ~/.vimrc дописываешь

autocmd VimLeave *.cpp,*.h,*.idl mksession! .vimsession
au BufWinLeave *.cpp,*.h,*.idl mkview
au BufWinEnter *.cpp,*.h,*.idl silent loadview

и делаешь адиас на vim -S .vimsession

Тогда при загрузке будет восстановлена старая сессия.

Ещё до кучи можно вписать в ~/.vimrc следующее

autocmd BufReadPost *.cpp syn region myFold start="{" end="}" transparent fold

syn sync fromstart
set foldmethod=syntax

Что бы фолдить cpp исходники по парным {}.

Ну и ещё set cst, для использования cscope вместе с ctags.


to anonymous:
в ~/.vimrc написать
set langmap=йq,цw,уe,кr,еt,нy,гu,шi,щo,зp,х[,ъ],фa,ыs,вd,аf,пg,рh,оj,лk,дl,э',яz
,чx,сc,мv,иb,тn,ьm,б\,,ю.,йQ,ЦW,УE,КR,ЕT,НY,ГU,ШI,ЩO,ЗP,Х{,Ъ},ФA,ЫS,ВD,АF,ПG,РH,
ОJ,ЛK,ДL,Ж\",ЯZ,ЧX,СC,МV,ИB,ТN,ЬM,Б<,Ю>,


Bacek
() автор топика

варианты параметров функции это вот чего:

class A
{
public:
void a(int x);
void a(char *str);
};

и потом я пишу:

A t;
t.a(

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

1. int x
2. char *str

ov
()

>Так кто же у нас без стрелок живет?

При использоавнии двуручной клавиатуры пользоваться стрелками не так удобно, как hjkl - они лежат как раз на правой руке, что мне очень нравиться. Понадобилось немного времени, чтобы приучить себя без усилий дотягиваться левым мизинцем до Esc, но это дело наживное.

Еще у меня есть чувство, что пару лет использую как максимум 2-5% прелестей vim'a, может кто подскажет ресурс повкуснее :))).

P.S.
Еще есть такой прикол: F6 на такой клаве приходится на обычное место F5, имейте в виду :)). Мне тогда было не очень смешно...

Alter ★★
()

Товарищи профессиналы! Ваш хваленый VBA как средство автоматизации работает только для C++?

А то есть задача -- автоматизировать сборку зависимых VB-проектов. Как это можно сделать в Visual Studio? И как назначить короткую комбинацию клавиш на компиляцию?

А то пыжиться все горазды, а как до дела дойдет, так VS таким отстоем оказывается...

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

> Tools->Customize - будешь удивлен)

И правда, удивлен! Нет такого пункта меню. Есть

Add Procedure...
Procedure Attributes...
Menu Editor...
Options...
Publish (подменю)
Source Safe (подменю)

Ну и, где здесь крутые возможности кустомизации с использованием VBA и пакетной компиляции? Или у меня не тот VB6 установлен?

eugine_kosenko ★★★
()

vb6?? у него своя оболочка, также как и у VC++6. Общая IDE тока в VS7.

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