Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase

code folding in ssms? Expand / Collapse
Author
Message
Posted Friday, May 10, 2013 1:37 PM
SSC-Enthusiastic

SSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-Enthusiastic

Group: General Forum Members
Last Login: Thursday, May 8, 2014 5:29 PM
Points: 121, Visits: 300
Hello - What are some techniques you use for code folding in SSMS? For example, in Visual Studio you can add regions like this:

#region Protected Methods

//some code here

#endregion

Then a developer can use the context menu in VS to auto-expand and auto-collapse all regions on the page.

For example, a new developer can choose to auto-collapse all regions of a class in order to understand the high-level structure of the class. I'm not aware of a similar way to do this in SSMS but I'm not a full-time SQL developer.

I've read that SSMS Tool Pack provides code folding capabilities. I used SSMS Tool Pack on a previous project and I liked it a lot. Unfortunately, it's no longer free

So do you know if code folding is available in SSMS through a free external plugin or maybe in the latest or upcoming version? I'm currently using SS2008 R2....
Post #1451729
Posted Friday, May 10, 2013 2:14 PM


SSChampion

SSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampion

Group: General Forum Members
Last Login: Today @ 8:47 AM
Points: 12,905, Visits: 32,168
http://www.ssmstoolspack.com/Download

http://www.ssmstoolspack.com/Licensing

Licensing is only applicable to SSMS 2012 and higher versions.
For previous SSMS versions the SSMS Tools Pack is still FREE.


Lowell

--There is no spoon, and there's no default ORDER BY in sql server either.
Actually, Common Sense is so rare, it should be considered a Superpower. --my son
Post #1451741
Posted Friday, May 10, 2013 4:58 PM
SSC-Enthusiastic

SSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-Enthusiastic

Group: General Forum Members
Last Login: Thursday, May 8, 2014 5:29 PM
Points: 121, Visits: 300
I downloaded SSMS Tools Pack and the region functionality seems to be a bit quirky. For example, for 2 regions on top of each other, collapsing the top region seems to collapse the bottom region as part of it. Have you noticed this behavior? Also, if I just type:

--#region test
-- some sql
--#endregion

Then the region doesn't seem to get automatically "activated" - ie it doesn't collapse and expand. There seem to be other basic quirks as well. Have you found these regions to be buggy as well - a nice thought but not ready for prime time?

Also, do you know if there is any momentum for SSMS to include built-in regions in an upcoming release? Seems like it would be really nice to have considering Visual Studio has had this functionality for over 10 years?
Post #1451783
Posted Saturday, May 11, 2013 5:09 PM


SSCommitted

SSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommitted

Group: General Forum Members
Last Login: Yesterday @ 5:32 PM
Points: 1,796, Visits: 5,801
sqlguy-736318 (5/10/2013)
I downloaded SSMS Tools Pack and the region functionality seems to be a bit quirky. For example, for 2 regions on top of each other, collapsing the top region seems to collapse the bottom region as part of it. Have you noticed this behavior? Also, if I just type:

--#region test
-- some sql
--#endregion

Then the region doesn't seem to get automatically "activated" - ie it doesn't collapse and expand. There seem to be other basic quirks as well. Have you found these regions to be buggy as well - a nice thought but not ready for prime time?

Also, do you know if there is any momentum for SSMS to include built-in regions in an upcoming release? Seems like it would be really nice to have considering Visual Studio has had this functionality for over 10 years?


Region handling - code folding - is present in SSMS 2012, but it is awful, sorry to say.

What I would say is that if your code is long enough to warrant code folding, perhaps you should consider making it more modular - very long procedures can become a nightmare for support - just a thought


MM


  • MMGrid Addin
  • MMNose Addin


  • Forum Etiquette: How to post Reporting Services problems
  • Forum Etiquette: How to post data/code on a forum to get the best help - by Jeff Moden
  • How to Post Performance Problems - by Gail Shaw

  • Post #1451871
    Posted Saturday, May 11, 2013 5:13 PM
    SSC-Enthusiastic

    SSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-Enthusiastic

    Group: General Forum Members
    Last Login: Thursday, May 8, 2014 5:29 PM
    Points: 121, Visits: 300
    How is region handling awful in SSMS 2012?

    Is it quirky and inconsistent or does it have a poor overall design?
    Post #1451872
    Posted Saturday, May 11, 2013 5:27 PM


    SSCommitted

    SSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommitted

    Group: General Forum Members
    Last Login: Yesterday @ 5:32 PM
    Points: 1,796, Visits: 5,801
    sqlguy-736318 (5/11/2013)
    How is region handling awful in SSMS 2012?

    Is it quirky and inconsistent or does it have a poor overall design?


    Both.

    It is single level and automatic, so you can't define your own regions, it tries to guess based on parsing the query window, which also leads to poor performance when editing, and it gets it's guesses badly wrong a lot of the time.

    Here is a simple example of how it gets it wrong:



    Thankfully SSMS 2012 is built on VS2010, so you can write your own addins quite easily, including a region handler. I had a go myself a while back using a sample on MSDN and it worked ok (similar to VS, using #region flags with titles and previews) but in the end I don't use it because I just don't need it/like it.


    MM


  • MMGrid Addin
  • MMNose Addin


  • Forum Etiquette: How to post Reporting Services problems
  • Forum Etiquette: How to post data/code on a forum to get the best help - by Jeff Moden
  • How to Post Performance Problems - by Gail Shaw



  •   Post Attachments 
    Regions.PNG (225 views, 4.92 KB)
    Post #1451874
    Posted Wednesday, May 15, 2013 4:04 PM
    SSC-Enthusiastic

    SSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-Enthusiastic

    Group: General Forum Members
    Last Login: Thursday, May 8, 2014 5:29 PM
    Points: 121, Visits: 300
    yes - the code folding in that screenshot appears to do more harm than good.

    However, you mentioned a plugin could be written to use regions in a way that's more similar to the ones implemented in VS2010.

    You also mentioned that there was some existing code floating around for this implementation.

    Is there some kind of codeproject page, etc, with a working plugin and code that I can download and tweak for my own use?
    Post #1453286
    Posted Wednesday, May 15, 2013 5:19 PM


    SSCommitted

    SSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommitted

    Group: General Forum Members
    Last Login: Yesterday @ 5:32 PM
    Points: 1,796, Visits: 5,801
    sqlguy-736318 (5/15/2013)
    yes - the code folding in that screenshot appears to do more harm than good.

    However, you mentioned a plugin could be written to use regions in a way that's more similar to the ones implemented in VS2010.

    You also mentioned that there was some existing code floating around for this implementation.

    Is there some kind of codeproject page, etc, with a working plugin and code that I can download and tweak for my own use?


    I don't know about a full project you could use, but this is the page I followed when I tried it - however I am pretty sure this will only work with SSMS 2012 because it is based on VS2010, whereas SSMS 2008 is based on VS 2008 and I don't think that had MEF...

    http://msdn.microsoft.com/en-us/library/vstudio/ee197665(v=vs.100).aspx

    If you do try it yourself, make sure you put the region handling code in a separate thread and be prepared to handle that code being called a lot when editing...you may want to delay activation of your code and/or kill an "in progress" parsing run in order to start again.


    MM


  • MMGrid Addin
  • MMNose Addin


  • Forum Etiquette: How to post Reporting Services problems
  • Forum Etiquette: How to post data/code on a forum to get the best help - by Jeff Moden
  • How to Post Performance Problems - by Gail Shaw

  • Post #1453291
    Posted Tuesday, March 25, 2014 5:49 AM
    Grasshopper

    GrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopper

    Group: General Forum Members
    Last Login: Tuesday, May 13, 2014 8:38 AM
    Points: 18, Visits: 59
    SSMSBoost is another free add-in for SSMS and we have recently added support for Regions syntax:

    --#region [Optional Name]
    --#endregion

    It has also an option to automatically "recognize" regions when opening scripts.
    Add-in works with SSMS 2008/R2/2012. 2014 support is coming with next version.
    Post #1554394
    « Prev Topic | Next Topic »

    Add to briefcase

    Permissions Expand / Collapse