Про сворачивание кусков исходного текста программы (code folding, да?) есть такая безумная мысль.

Текст имеет геометрические параметры, например - длина. При написании текста, я чисто моторно ощущаю, где в моём исходнике что находится. То есть, я сопоставляю содержательные характеристики программы с геометрией исходника.

Если использовать сворачивание, то геометрия нарушается. И в набор содержательных атрибутов исходника начинает входить параметр "свёрнутость\развёрнутость", который портит моё внутреннее представление текста. На это тратится бесценный мозговой ресурс.

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

P.S. А сворачивание текста в Ящике есть. Приспособить фолды для разворачивания перед компиляцией несложно. Вам надо - вы и сделайте. Мне оно нафик не надо