Tabs Studio Blog (organizing Visual Studio document tabs)

August 27, 2013

Solution settings directory

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 11:02 am

Saver and Marker add-ins need to save tabs order and highlighted tabs when you exit Visual Studio to restore them when you open the solution next time. This per-solution information is stored in .tss and .marker.tss files in directories along with your solution .sln files:

Marker and Saver per-solution files

Marker and Saver per-solution files

I’ve added an option to store all per-solution files in the one common directory. You need to create this directory and create the HKEY_CURRENT_USER\Software\Sergey Vlasov\Tabs Studio\SolutionSettingsDir registry value defining the directory for Tabs Studio add-ins:

SolutionSettingsDir registry setting

SolutionSettingsDir registry setting

New per-solution settings will be stored in this directory with different file names for different solutions:

Saver and Marker files in the common solution settings directory

Saver and Marker files in the common solution settings directory

June 30, 2013

Tabs Studio v3.1.0 released

Filed under: Releases — Sergey Vlasov @ 3:00 pm

Tabs Studio v3.1.0 released:

  • Added support for Visual Studio 2013 Preview.
  • Added sorting rules to the Sorter add-in.
  • Fixed missing executing and debugging images in SSMS 2012.
  • Fixed VS 2012 service registration when AlwaysInstallElevated is set to 1.
  • Fixed the rare measure infinity exception.

Download link: Tabs Studio v3.1.0.

June 27, 2013

Visual Studio 2013 Preview

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 3:13 pm

Visual Studio 2013 Preview was released yesterday (see also a video):

Visual Studio 2013 Preview splash

Visual Studio 2013 Preview splash

The only new documents navigation related feature I can see is Peek Definition:

Peek Definition in Visual Studio 2013 Preview

Peek Definition in Visual Studio 2013 Preview

It is similar to the older Code Definition tool window, but opens inside the code editor. Only one Peek Definition sub-window can be opened at once and it is read-only.

Sorting rules

Filed under: Uncategorized — Sergey Vlasov @ 8:05 am

The new version of the Sorter add-in lets you create multiple sorting rules:

Sorter Options

Sorter Options

For example, from the picture above the sorter rules are: tabs highlighted with the Marker add-in go to beginning, tabs with Test in the name go to end, and then tabs are sorted by project and by name.

The Rule type TabNameWithPath can be used in Web projects where tab names contain the parent folder name. The rule type Path uses the Paths property (document paths separated by ‘$’).

Match regex by default captures all text of the property selected by the rule type. You can match e.g. tabs from the project Core with (?<M>^Core$) and move these tabs to the beginning or to the end. Or you can group tabs by category, listing prefixes and suffixes in tab names around category words:
^(I|Test)?(?<M>.+?)(Manager|Repository)?\..+$

Inverse order when unchecked sorts tabs in alphabetical order or places matched tabs to beginning. When checked – sorts from Z to A or places matched tabs to end.

Download link: Sorter v1.0.10

June 26, 2013

Prefix tab grouping with ITransform

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 2:37 pm

It is common to have concepts like User and Admin with multiple classes around them like UserManager, UserRepository and AdminManager, AdminRepository. With prefixes I, Test and suffixes Manager, Repository we end up with the following tabs:

Multiple tabs in Visual Studio 2012

Multiple tabs in Visual Studio 2012

Normally tabs are not nicely sorted by concept like on the picture above and you may want to automatically group related tabs in a larger tab. It is easy to group by suffix – just add common suffix names to the extension part in the Title grouping regex:

Suffix grouping options

Suffix grouping options


Tabs with suffix grouping

Tabs with suffix grouping

Grouping by prefix is also easy – add common prefix names to the front of the Title grouping regex:
(?<Prefix>I|Test)?(?<Name>.+?)(?<Ext>(Manager|Repository)?\..+)
Unfortunately, prefix names are now not displayed (because only Name and Ext groups are displayed by default):

Prefix grouping with truncated names

Prefix grouping with truncated names

This is when the ITransform add-in helps. It renames truncated names back to normal. In the latest v1.0.3 you can even customize how prefix information should be displayed:

ITransform Options

ITransform Options


Prefix grouping with ITransform

Prefix grouping with ITransform

Note that the Interface regex should match only tabs with our prefixes – the Prefix group is not optional comparing to the Title grouping regex. The Replacement regex can be for example only ${Prefix} or include your custom text.

Download link: ITransform v1.0.3

November 20, 2012

Tabs Studio v3.0.3 released

Filed under: Releases — Sergey Vlasov @ 1:38 pm

Tabs Studio v3.0.3 released:

  • Added detection for Custom Document Well installed in Visual Studio 2012.
  • Reduced brightness of the About icon on the toolbar for Visual Studio 2012 dark theme.

Download link: Tabs Studio v3.0.3.

September 17, 2012

Tabs Studio v3.0.1 released

Filed under: Releases — Sergey Vlasov @ 7:00 pm

Tabs Studio v3.0.1 released:

  • Added smart suggestions to the Tab Coloring Rule dialog.
  • Added the ability to customize tab foreground from the Tab Coloring Rule dialog.
  • Added the Drag rules to reorder label to the Presentation options page.
  • Simplified foreground customization from styles.
  • Created top level tab context menu selection for Marker highlighting colors.

Download link: Tabs Studio v3.0.1.

Marker menu palette

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 6:34 pm

Instead of a submenu, I’ve created a top level tab context menu selection for Marker highlighting colors:

Marker menu palette

Marker menu palette

It will be easier to mark tabs with different colors, but I’m a little worried that this menu item is now too eye catching. Please, let me know what do you think.

Tab text color customization

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 6:11 pm

There are 4 text elements in a tab: name, extension, name modification marker and extension modification marker. These elements are normally having the same color. Plus, in Visual Studio 2012, close tab button and open preview tab button are drawings also normally having the same color with the text elements. It is much easier to customize colors for all these elements in the new Tabs Studio version.

All elements now by default bind to the tab foreground color. Just set tab foreground color in a style and you are done:

<Style TargetType="TabsStudio:Tab" BasedOn="{StaticResource DefaultTabStyle}">
      <Setter Property="Foreground" Value="Red"/>
</Style>

As always, you can change the color for a specific element too. Plus in VS 2012 you can now change it for the close tab button and the open preview tab button:

<Style TargetType="TabsStudio:CloseTabButton" BasedOn="{StaticResource DefaultCloseTabButtonStyle}">
      <Setter Property="Foreground" Value="Blue"/>
</Style>

And now you can set tab foreground colors simply in the Tab Coloring Rule dialog depending on tab properties state:

Tab background and foreground rule setup

Tab background and foreground rule setup

You can set only background, only foreground or both colors. In the tab coloring rules list, the visible color will be background, foreground and both colors correspondingly:

Visible colors in the tab coloring rules list

Visible colors in the tab coloring rules list

Smart suggestions for tab coloring

Filed under: Uncategorized — Tags: — Sergey Vlasov @ 4:20 pm

I’ve added suggestions to the Tab Coloring Rule dialog. Each field in the dialog now has a corresponding samples button that lets you quickly define tab coloring rules:

Tab Coloring Rule dialog with suggestion buttons

Tab Coloring Rule dialog with suggestion buttons

Let me remind you, that you can start adding a tab coloring rule from two places. From the tab context menu Set color… command and from the Tabs Studio Presentation options page. In the first case the suggestions will be tailored for the tab you selected to color and in the second case all open tabs appear in the suggestions.

For example, Project name regex suggestions for the selected tab contain tab’s project:

Project name regex suggestions for the selected tab

Project name regex suggestions for the selected tab

Selecting the exact match sets the regex to ^WpfApplication1$ and selecting the Contains option sets the regex to WpfApplication1. While you rarely have other projects containing selected project name, it shows how easily you can set the regex for example to Wpf and have a distinct color for all your WPF projects.

If you opened the dialog from Tabs Studio options, all project names from all open tabs appear in the suggestions. The names are alphabetically sorted and the first name has the prebuild regex for the exact match:

Project name regex suggestions for all tabs

Project name regex suggestions for all tabs

I should clarify that while suggestions are different for one tab and all tabs, the rule created works exactly the same. All that matter is actual text in a regex filed.

Tab extensions regex suggestions show extensions from the selected tab or from all tabs:

Tab extensions regex suggestions

Tab extensions regex suggestions

Coloring by file extension can also be done using Document paths regex, but only with the tab extensions regex you can target tabs like [Design]. Selecting an extension suggestion creates a regex like \.vb \[Design]\$. All special regex characters are automatically escaped (it works for all regex fields). \$ forces exact match on extension end.

Tab name regex suggestions work like Project name regex suggestions and Document paths regex suggestions work like Tab extensions regex suggestions.

Custom conditions suggestions show most common currently available tab properties (with current values in one tab mode):

Custom conditions suggestions

Custom conditions suggestions

The list of suggestions is filtered depending on what version of Visual Studio you are running, active Tabs Studio add-ins and whether you have one or more tab groups open. Selecting a suggestion adds a condition like <ConditionX IsTabSelected=”True”/>. It is a shortened form that I use only for this text edit control. The normal form of a WPF MultiDataTrigger condition (that I restore on dialog save) is this:

<Condition Binding="{Binding Path=IsTabSelected, RelativeSource={RelativeSource Self}}" Value="True"/>

Finally, Background suggestions let you select a template for a gradient or solid color brush:

Background suggestions

Background suggestions

« Newer PostsOlder Posts »

Blog at WordPress.com.