Здравствуйте, Abulafia, Вы писали:
A>Здравствуйте!
A> Я уже задавал вопрос здесь,
A> http://www.rsdn.ru/Forum/Message.aspx?mid=1006380&only=1Автор: Abulafia
Дата: 27.01.05
A> и по той теме решил изучить (x)emacs, в связи с чем есть ряд вопросов,
A> на которые я не могу получить конкретных ответов -- Да/Нет
A> На сайтах как-то расплывчато об этом сказано...
A> Можно ли в emacs/xemacs (и в версиях для Windows особенно) следующее:
A>
A> лёгкая настраиваемость на разные языки, шаблоны для распространенных языков (C++, Delphi, Python, PHP, ...)
+ (не видел только Delphi)
A> синтаксическая подсветка
+ (font-lock-mode)
A> контекстная подсказка: т.е. автокомплит, подсказка по параметрам функций
+ (ecb/cedet или xrefactory)
A> навигация по файлам: инкрементальный поиск, букмарки, открытие файлов (a la Ctrl+F12 в Delphi) проекта, открытие файлов из #include "..."
+/- Не в курсе... пользуюсь grep.
A> навигация по структуре: переход к классам/переменным/полям/<что там есть в языке>.
+ (ecb/cedet или xref)
A> Шаблоны кода: т.е. разворот if --> if (...) { ... }
+
A> Визуализация структур. Типа Object Inspector'а в Delphi
+ (ecb/cedet или xref)
A> Поддержка отладки. Это вобще отдельная песня...
+ (gdb но не знаю как это под win32)
A> Поддержка Version Control System
+ (cvs на 5+, svn на 4-, arch 5)
A> Хоть какая-то поддержка рефакторинга
+ (xref.)
A>
XRefactory:
http://www.xref-tech.com/xrefactory/main.html
CEdet:
http://cedet.sourceforge.net/
A> Насколько я понял по обзорам сайтов, всё это есть... Но почему-то об этом мало говорят, и вобще, вроде бы emacs мало используют, что заставляет сомневаться...
Тут сложно сказать. Новые прогрммеры сидять во всяких KDeveloper или Eclipse. Те кто более 5-7 лет программит, попадаются на (X)emacs
A>И вопросы по поводу отладки в C++
A>
A> пошаговое выполнение программы, breakpoint'ы, заходы в процедуры и т.п.
+ (gbd)
A> просмотр значения переменных/объектов.
+ (gdb)
A> умный просмотр значения переменных/объектов
-- массивов std::vector<>, строк std::string и т.п. Не просто как объектов со структурой, а именно содержательно
Не очень опнял что имеется ввиду под "содержательно"

.
(gdb) n
17 map<std::string, Data *> dataMap;
(gdb) n
19 dataMap["hello"] = new Data(10);
(gdb) p dataMap
$1 = {
_M_t = {<_Rb_tree_base<pair<const basic_string<char,string_char_traits<char>,
__default_alloc_template<false,0> >,Data *>,
allocator<Data *> >> = {<_Rb_tree_alloc_base<pair<const basic_string<char,string_char_traits<char>,
__default_alloc_template<false,0> >,Data *>,allocator<Data *>,>> = {_M_header = 0x804f000}, <No data fields>},
_M_node_count = 0,
_M_key_compare = {<binary_function<basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >,
basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >,bool>> = {<No data fields>}, <No data fields>}}}
Так?
A> возможность выполннения куска кода. Например, вычисление значения на лету []func(a + func2(b)).
+ (gdb)
A>
A> Я не против потратить много времени, чтобы изучить и настроить, запрограммировать редактор, "зато потом за пять минут долететь".
A> Возможно ли всё это в (x)emacs, нужны ли какие-то плагины?
Емакс — это большой конструктор.

. Там все- плгины

. Точнее это lisp.