Все, достало. Четыре дня убил на настройку Emacs'а, а конца ей не видно.
Начну сначала:
Во-первых, есть два Emacs'а — XEmacs и GNU Emacs, с достаточным
количеством различий. Поставил XEmacs, скачал из EDonkey книжку об
использовании Emacs'а. Половину книжки рассказывается о том, какой же
крутой Emacs и как в нем можно делать все, что угодно. По этой книжке
изучил базовые методы редактирования (причем особой крутости по
сравнению со Студией не обнаружил).
Потом скачал XRefactory — эта штука мне крайне понравилась, она даже
смогла распарсить boost и мой проект. При этом рефакторинг работает
вообще почти идеально. Это, наверное, из-за того, что сама xref написана
на С, а не на elisp...
Затем я попробовал поставить CEdet — мой XEmacs стал падать по Access
Violation. Ну ладно, я скачал emacs-22.0.50.1 — он стал просто
зацикливаться при ede-new-project. Скачал emacs-21.3 — он наконец-то
заработал.
Затем я попробовал поискать VisualStudio mode — агащаз, нет такого.
Умные люди используют нормальный VS, а не Emacs.
Попробовал создать проект — сразу наткнулся на "замечательную"
документированость EDE, чтобы выяснить как мне прописать путь к
include'ам. Что характерно, готовых примеров C++ных проектов в EDE в
Сети я не нашел. Вообще, создается впечатление, что emacs'оиды делают
все, что возможно, чтобы отпугнуть пользователей.
Потом тут сказали про ECB, я попробовал его установить. Минут 40
потратил на поиск того, как изменить размер ECBшного фрейма.
Оказывается, надо было очень точно попасть мышкой в границу окна. Причем
как изменять размер окна с клавиатуры — я так и не нашел. Иконки в
списке каталогов не заработали (скриншоты типа этого
http://ecb.sourceforge.net/screenshots/1.png они явно в Photoshop'е
рисуют), а сам список каталогов через некоторое время перестал подавать
признаки жизни.
Ладно, интегрирую speedbar вместо дерева каталогов. Естественно, оно не
работает нормально, да и еще откуда-то появилась "замечательная" фича —
курсор автоматически после двух секунд неактивности клавиатуры
перемешается в окно редактирования. Добавление файлов в проект из
менюшки speedbar'а, естественно, не работает — жалуется на отсутствующую
функцию ecb-speedbar-project-add-file.
Стал зверски раздражать "Tip of the day", который вылазил при каждом
запуске Emacs'а (галочки "больше не показывать" в это tip of the day не
было). Полез в исходники ecb — как тултип отключить я нашел быстро,
теперь нужно было отключить показ "ECB First Steps" при каждом запуске.
Почти сразу нашел такой код:
(when (null ecb-source-path)
(let ((ecb-show-help-format 'info))
(ecb-show-help)
(Info-goto-node "First steps"))))
Сразу возник вопрос: а как же конфигугировать ecb-source-path для разных
проектов. Ответ нашел в списке рассылки: "Добавьте хук, который при
загрузке проекта будет устанавливать нужное значение". Как будто я
ожидал чего-то другого...
Я уж не говорю про совершенно неинтуитивные и неоптимальные клавиатурные
сокращения: для того, чтобы попасть в speedbar мне нужно набрать "C-c .
g d", в Студии мне просто надо нажать ctrl-alt-l. Автоматического
скрытия панели ECB я тоже не нашел — надо самому писать.
В общем диагноз такой: emacs — совершенно неюзабельная вещь, если не
знать в соверешенстве elsip и внутреннюю структуру используемых модулей.
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9