В MonoDevelop 1.0, похоже, нет средства форматирования кода, как в Eclipse для Java. Есть ли предпочтительный сценарий оболочки (или надстройка MonoDevelop?), Который, по вашему мнению, работает хорошо?





На данный момент форматирование исходного кода в MonoDevelop отмечено как будущее улучшение: https://bugzilla.novell.com/show_bug.cgi?id=321946
А пока вы можете попробовать Художественный стиль для форматирования C#: http://astyle.sourceforge.net/
Я планирую посмотреть, как это можно подключить как внешний инструмент в MonoDevelop. Если я доберусь до этого, я отредактирую свой ответ с информацией. ОБНОВЛЕНИЕ: у меня недостаточно репутации, чтобы оставить комментарий, поэтому я сделаю его здесь: Хорошая работа, Дастин и патч для MonoDevelop тоже :-) Интересно, насколько свежа версия, которая включена в Ubuntu ... В любом случае, я рад, что вы нашли то, что вам подходит.
Потрясающе - я только что понял, что AStyle доступен в Ubuntu в виде пакета.
Я могу добавить "astyle" в качестве внешнего инструмента в MonoDevelop, но он не работает при попытке использовать замену переменных. Похоже, что MonoDevelop не расширяет $ {itemPath}, как предполагалось - возможно, он цитирует его? Я собираюсь взглянуть на источник сейчас, чтобы увидеть.
Что ж, я смог пропатчить MonoDevelop, чтобы правильно использовать astyle как внешний инструмент. Я поищу существующие отчеты об ошибках и при необходимости отправлю новую ошибку вместе с патчем. Спасибо за идею!
Спасибо, Брэндон. Я отправил патч в MonoDevelop. Проблема с надстройками MonoDevelop заключается в том, что существует ошибка монокомпилятора, которая неправильно обрабатывает анонимные делегаты. (отчет об ошибке: https://bugzilla.novell.com/show_bug.cgi?id=394347)
Патч / обходной путь - просто привести анонимный делегат к соответствующему типу делегата. (отчет об ошибке и патч: https://bugzilla.novell.com/show_bug.cgi?id=369538)
Сейчас я работаю с исправленной версией и могу выполнить AStyle для редактируемого в данный момент документа, просто создав новый параметр External Tool со следующими параметрами:
НАЗВАНИЕ: A_Style (вставьте подчеркивание _, чтобы включить горячие клавиши)
КОМАНДА: astyle
АРГУМЕНТЫ: $ {ItemPath}
Затем просто выполните его с помощью Tools-> AStyle (или ALT-T, S).
25.09.08 Редактировать - Я только что разместил в блоге сообщение о том, как исправить MonoDevelop 1.0 и заставить его работать с AStyle: http://dustinbreese.blogspot.com/2008/09/auto-formatting-code-in-monodevelop-10.html
Написание собственного средства форматирования - хорошее упражнение по программированию. Я написал один для C++, и это была хорошая задача. Написав это, можно было бы многому научиться :)