Entrian Solutions
 

Archive for August, 2015

Entrian Inline Watch 0.8.6: More object formatting power!

Friday, August 14th, 2015 by Richie Hindle

I’ve just published Inline Watch 0.8.6, which includes this new feature:

  • You can now control the maximum length of the displayed values

and a bunch of features related to custom formatting of object instances:

  • Integer arithmetic in object formats, eg. {right-left} to display the width of a rectangle
  • Pointer arithmetic, eg. {m_str+4} where your string actually starts at an offset
  • Array indexing, eg. {m_arr[N]} where you want to display the N’th member of an array, where N can be a literal, {m_arr[4]} or another member, {m_arr[m_index]}
  • Specifying the length of a string (when your string is long, or not null-terminated), again with a literal, {m_str,8}, or another member {m_str,{m_len}}
  • Displaying braces now requires them to be backslash escaped – see the next example:
  • Force hex or decimal display in object formats, so if you always want your Point instances to be displayed in decimal like this: {50, 100} even if the Visual Studio debugger is set to hex display, you can say \{{m_x,d}, {m_y,d}\}. Use an x to get hex display.

Here’s an example that demonstrates some of these features.  (It’s based on a customer example – they have a C++ string class whose string buffer includes a leading reference count, and is not NUL-terminated but instead has a length member.)

struct Formatting
{
  const char *s;     // 4-byte refcount then an unterminated string.
  int len;           // Number of chars in the string, counting from s+4.
  const char *a[3];  // An array of three C-style strings.
  int current;       // Which of the three strings is the 'current' one?

  Formatting()
  {
    s = "\x1\x2\x3\x4TextGARBAGEGARBAGE...";
    len = 4;
    a[0] = "Zero";
    a[1] = "One";
    a[2] = "Two";
    current = 1; // "One" is the string to display.
  }
};

With an object formatting rule like this:

\{{s + 4,{len}}, {a[current]}\}

a Formatting instance displays like this: {“Text”, “One”}

You can download the new release from the download page or the gallery.

Entrian Source Search 1.5.3: VS2015, Preview Tab, High-Contrast Theme, Bugfixes

Tuesday, August 11th, 2015 by Richie Hindle

I’m pleased to announce Entrian Source Search 1.5.3:

  • Support for Visual Studio 2015 is now out of Beta status – many thanks to those that tried it out during its Beta period.
  • All the Source Search commands now have toolbar icons in the “Customize” dialog of Visual Studio 2015, where previously some of them had blank icons.  Also note that the Source Search commands are under the “Tools” category in VS2015 rather than “Addins”. (Thanks, Hans-Peter).
  • Preview Tab support: If you’ve enabled “Allow new files to be opened in the preview tab” then Source Search will now respect that (thanks, Martin and Mike).
  • Indexing performance: The initial scan of your solution when you open it in Visual Studio is now more efficient, and has less impact on your PC’s performance (thanks, Frederic).
  • High contrast theme support: Source Search now works properly with the Windows High Contrast theme (thanks, Martin).
  • The Autosuggest dropdown no longer stops working after you reload a solution without closing Visual Studio (thanks, Daniel).
  • Bugfix to shared indexes: when you have two instances of Visual Studio open, each with a different solution open but sharing the same Source Search index, changing the options in one instance now also applies your changes to the second (thanks, Chris).
  • When you restart Visual Studio, the Source Search tool window reappears correctly (thanks, Huy).
  • It’s no longer possible to accidentally remove all inclusion patterns from your index settings, and therefore have an index with no files in it (thanks, Mark).

Entrian Source Search is a free upgrade to all licensed users, and a 30-individual-day trial for everyone else.  You can download it from the download page.

 

PS. Have you seen Entrian’s new product, Inline Watch? It displays the values of variables inline in your source code, updated live as you step through your code.  If you’ve ever used the Visual Studio debugger, I think you’ll like it:

You can read all about in on the Inline Watch homepage.  I’d love to hear your opinion!

New: Entrian Inline Watch displays live variable values inline in your code as you debug

Saturday, August 8th, 2015 by Richie Hindle

I’m really excited to announce a new product from Entrian Solutions: Entrian Inline Watch.

It displays the values of variables inline in your source code, updated live as you step through your code:

Animation of Entrian Inline Watch in action

You can see the live values right there in the source, rather than having to hover over them with the mouse, or find them in the Watch windows.

As soon as you land in a function, or at a breakpoint, you can see the values of your function parameters and variables instantly.

It makes debugging almost pleasant.  You and your team need it.  :-)

Entrian Inline Watch works with Visual Studio 2010, 2012, 2013 or 2015; any edition except Express.

It works with both Managed and Native debugging; in C++, C#, and VB.

It’s free during the Beta period, with builds timing out after a few weeks.  Once it’s out of Beta it will cost $29 per developer, or $24 with a volume discount.

Download it from the download page, read the fine manual and the FAQ, and let me know what you think!  (And bear in mind it’s in Beta, and therefore does not carry a no-weirdness guarantee.)