Я хотел бы включить свертывание кода для уценки в textmate.
В частности, я хотел бы, чтобы любые заголовки (текст, которому предшествует один или несколько символов '#') были строкой, которая переключала бы блоки между ним и следующим заголовком и / или горизонтальным правилом. Пример:
# Level 1 Heading - I'd like the block below to fold
The text I'd like to fold away
## Level 2 Heading
More text...
BBEdit, похоже, отлично справляется с уценкой. TextMate прекрасно поддерживает свертывание кода для языков, которые обозначают блоки с парными (и одинаково с отступом) фигурными скобками.
Я знаю, что TextMate предлагает две переменные, которые вы можете установить в файле языковой грамматики, но мне нужно больше таланта с регулярными выражениями, чем у меня есть, чтобы понять это. Вот то, что в настоящее время находится в грамматике языка уценки для настроек свертывания кода:
foldingStartMarker = '(?x)
(<(?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|form|dl)\b.*?>
|<!--(?!.*-->)
|\{\s*($|\?>\s*$|//|/\*(.*\*/\s*$|(?!.*?\*/)))
)';
foldingStopMarker = '(?x)
(</(?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|form|dl)>
|^\s*-->
|(^|\s)\}
)';
Любая помощь с благодарностью!