Любой способ свернуть определения значения / функции (F #) в Visual Studio 2008? - PullRequest
4 голосов
/ 03 сентября 2010

Есть ли способ «свернуть» функции и значения в VS2008, как можно было бы сделать для объектов на языках, таких как C #? Невероятно трудоемко и сложно разбираться с сотнями строк определений вложенных функций.

Ответы [ 3 ]

9 голосов
/ 03 сентября 2010

Итак, официальный ответ - это не поддерживается. Однако, когда я проходил стажировку в команде F #, я написал прототип реализации этой функции. Поскольку у команды F # были другие более важные дела, это никогда не проверялось должным образом и не было включено в окончательную версию.

Код для функции все еще присутствует в F #, и эту функцию можно включить, добавив в файл devenv.exe.config следующее:

<appSettings>
    <add key="fsharp-regions-enabled" value="true" />
</appSettings>

Очевидно, это не совсем то, что вы хотели, потому что вы можете свернуть только модули и определения типов, но это все еще может быть полезно - сложно решить, что сделать в F # разборным, потому что F # имеет так много вложенных объявлений .. .

Кстати: я упоминал, что это не проверено и может привести к сбою Visual Studio или даже разрушить вселенную?

1 голос
/ 03 сентября 2010

Нет, нет в Visual Studio 2008, потому что языковая служба не поддерживает выделение. Это также не поддерживается в Visual Studio 2010. Однако редактор поддерживает понятие adhoc / custom outlining.

  • Выберите регион в редакторе
  • Щелкните правой кнопкой мыши и перейдите к Outlining -> Hide Selection

К сожалению, это полностью ручной процесс.

0 голосов
/ 04 сентября 2010

Я пришел с чем-то, что работает для меня и, возможно, заинтересует вас.У меня VS2008 + RockScroll ( Работает на моей машине ).

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

// Start of bigFunctionWithLoadsOfNestedFunctions

При двойном щелчке по нему, он одновременно выделяет красным определение привязки и реальное начало функциив виде эскизов.Смотри: http://img338.imageshack.us/img338/1060/40105807.png

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...