Свернуть все функции PHP в TextMate - PullRequest
0 голосов
/ 07 октября 2011

Я немного разбираюсь в том, как складывать и организовывать свой код в TextMate, и одна проблема, которая постоянно беспокоит меня о поведении свертывания кода в TextMate, заключается в том, что с PHP, если у меня есть файл с кучей функций, и Я просто хочу сложить все функции (но не их содержимое), я должен нажать на каждую функцию и нажать F1 (или нажать маленькую кнопку сворачивания в индикаторе линии).

Я нашел Свернуть все в TextMate , что нормально, но не идеально, поскольку сворачивание всех уровней кода означает, что каждый оператор if, else, while и т. Д. Внутри каждой функции также будет свернут Это означает, что я должен продолжать нажимать или нажимать клавишу F1, пока работаю с функцией.

Есть ли способ заставить TextMate распознавать все функции внутри файла PHP как «уровень 1», поэтому, когда я выбираю «Переключить сворачивание на уровне: 1», функции сворачиваются (но ничего внутри)?

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

Вот мои маркеры запуска и остановки (значения по умолчанию), как они определены в редакторе пакетов:

foldingStartMarker = '(/\*|\{\s*$|<<<HTML)';
foldingStopMarker = '(\*/|^\s*\}|^HTML;)';

1 Ответ

0 голосов
/ 15 ноября 2011

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

Это не так круто, как простое сворачивание всего сразу, но теперь, когда я открываю огромный файл с сотнями функций, я могу нажать комбинацию клавиш несколько раз, и все функции сворачиваются :)

[ Edit: Я немного больше поработал над исправлением этого (для себя), и так как я не хочу сворачивать блоки комментариев, но do Я хочу свернуть функции (для файлов модулей Drupal и т. д.). Я изменил следующие две строки в пакете синтаксиса языка PHP (в редакторе пакетов Textmate):

foldingStartMarker = '(/\*|\{\s*$|<<<HTML)';
foldingStopMarker = '(\*/|^\s*\}|^HTML;)';

на:

foldingStartMarker = '(\{\s*$|<<<HTML)';
foldingStopMarker = '(^\s*\}|^HTML;)';

Итак, сейчас у меня все работает очень хорошо.Woot!]

...