Я не сталкивался с режимом emacs, который предлагал бы предложения по завершению кода, основанные на «знании» API (ов), которые предлагает пользовательская среда. Для многих людей это проблема, которая не позволяет им пытаться использовать Emacs или VIM при работе с богатыми / большими / громоздкими (удаляются в зависимости от обстоятельств) API.
Однако мне интересно, сколько проблем это может представлять во время повседневной работы. Я использую Emacs с C # -режимом , чтобы запустить довольно много кода на C #. Я также склонен запускать режим dabbrev-mode или pabbrev-mode, который заботится о более общих функциях и именах переменных, которые я склонен использовать. К своему вечному стыду, я должен признать, что у меня есть склонность открывать браузер на веб-сайте MSDN для поиска остальных - тех API, которые я не использую достаточно часто, чтобы помнить. Еще один потенциальный помощник, на которого ваш коллега может захотеть взглянуть, - сосульки , что также может быть шагом в правильном направлении. Однако ни одна из этих библиотек не обеспечит полную поддержку завершения, которую может предложить нечто подобное Visual Studio IDE. Я бы увидел это как часть компромисса при использовании более эффективного редактора.
Кроме того, если ваш коллега работает в команде, а другие участники, работающие в том же проекте, используют Visual Studio, MSBuild может предложить лучшее решение для построения вне VS, чем Nant, поскольку MSBuild читает то же самое решение и файлы проекта. который использует VS (на самом деле большая часть работы по сборке в VS2008 выполняется MSBuild). Синтаксис не слишком далеко от Nant и с добавленными задачами сообщества (что дает вам интеграцию с NUnit и т. Д.), И это гарантирует, что все используют очень похожие механизмы для создания исполняемых файлов.