Быстрый способ свернуть к определениям, за исключением регионов

StackOverflow https://stackoverflow.com/questions/225413

Вопрос

В vs2008, как я могу (возможно, с помощью макроса) назначить комбинацию клавиш для свертывания определениям, но оставить регионы расширенными (они должны расширяться, если свернуты)?

Редактировать: Я ненавижу регионы, но мои коллеги - нет (:Поэтому я хочу, чтобы это позволило избежать регионов, используемых ими.

Я прочитал сообщение Джеффа.Ctrl M + O - это то, что я действительно хотел бы сделать, если бы не было регионов.

Это было полезно?

Решение

Я верю, что у меня есть наконец-то получил ответ, который я так долго искал, и я думаю, что он мог бы помочь и тебе, @Serhat.Ты сказал:

Я прочитал сообщение Джеффа.Ctrl M + O - это то, что я действительно хотел бы сделать, если бы не было регионов.

Это было именно так то, о чем я думал про себя.Я продолжил эту мысль и работал над способом (временно) избавиться от #regions.

Это не полное решение, но я так рад, что у меня есть что - то что я нахожусь на грани того, чтобы прыгать вверх-вниз.Я постараюсь сделать эти указания как можно более простыми, хотя осмелюсь предположить, что, возможно, будет просто проще опубликовать фактическое содержимое созданных мной макросов.(смотрите ссылку внизу)

Я создал два макроса:

  1. Прокомментируйте все директивы #region и #endregion.
  2. Раскомментируйте все вхождения //#region и //#endregion.

Создайте первый макрос:

  • Начните запись макроса с помощью Ctrl+Shift+R, и выполните следующие действия:
  • Ctrl+H, Найти что: #region, Заменить на: //#region
  • Alt+A для Замены Всех
  • Ctrl+H, Найти что: #endregion, Заменить на: //#endregion
  • Alt+A для Замены Всех
  • Завершите запись макроса с помощью Ctrl+Shift+R
  • Откройте проводник макросов с помощью Alt+F8 или Инструменты | Макросы > Обозреватель макросов
  • Переименуйте TemporaryMacro в CommentRegionDirectives

Затем создайте второй макрос:

  • Начните запись макроса с помощью Ctrl+Shift+R, и выполните следующие действия:
  • Ctrl+H, Найти что: //#region, Заменить на: #region
  • Alt+A для Замены Всех
  • Ctrl+H, Найти что: //#endregion, Заменить на: #endregion
  • Alt+A для Замены Всех
  • Завершите запись макроса с помощью Ctrl+Shift+R
  • Откройте проводник макросов с помощью Alt+F8 или Инструменты | Макросы > Обозреватель макросов
  • Переименуйте (этот новый) TemporaryMacro в UncommentRegionDirectives

Теперь сохраните ваши макросы в обозревателе макросов с помощью Ctrl + S.

Наконец, назначьте сочетания клавиш для двух макросов:

  • Открыть Инструменты | Параметры | Окружение + Клавиатура
  • В поле "Показать команды, содержащие:" введите Directives.Это должно показать вам два ваших макроса с именами "Macros.MyMacros.RecordingModule.CommentRegionDirectives" и "...UncommentRegionDirectives".
  • Выделите запись CommentRegionDirectives и в поле "Нажимать сочетания клавиш:" введите Alt+/ затем нажмите кнопку Assign кнопка
  • Выделите запись UncommentRegionDirectives и в поле "Нажимать сочетания клавиш:" введите Alt+Shift+/ затем нажмите кнопку Assign кнопка (по умолчанию эти две комбинации сочетаний клавиш ничему не назначены)
  • Нажмите кнопку ОК, чтобы сохранить назначенные ярлыки.

Теперь, когда вы столкнулись с автоматически сворачиваемыми #регионами, нажмите Alt+/ чтобы закомментировать директивы #region и перейти к стандарту Ctrl+M+O для сворачивания в Определения (если вы того пожелаете).Затем позже, перед фиксацией этого блока с закомментированными #регионами, просто нажмите Alt+Shift+/ раскомментируйте #regions, и они будут повторно активированы.

И, наконец, @Serhat, еще раз спасибо тебе за твой оригинальный комментарий, который в первую очередь навел меня на мысль об этом треке.

На практике есть одна небольшая загвоздка, с которой я вполне готов смириться. //#region за которым следует #//endregion считается непрерывным комментарием, и комментарии по-прежнему свернуты, но, по крайней мере, там нет скрытого кода.

Вот обещанный текст макроса, который я извлек из обозревателя макросов: http://pastebin.ca/1688618, хотя это и не должно требоваться, если вы вручную выполните шаги, которые я описал выше.

Другие советы

Я считаю, что Ctrl + M , Ctrl + O действительно полезен, чтобы свернуть все.

Читали ли вы сообщение Джеффа о регионах ? Есть еще несколько полезных ярлыков, которые он перечисляет.

Почему вы хотите, чтобы они были расширены, вам действительно нужен регион, если вы не хотите, чтобы он был свернут?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top