Correctly inserting a new line in a VSIX
To split a line in an ITextBuffer
the developer simply needs to insert a recognized new line text into the existing line. Many VSIX extensions just default to Environment.NewLine
for this task
To split a line in an ITextBuffer
the developer simply needs to insert a recognized new line text into the existing line. Many VSIX extensions just default to Environment.NewLine
for this task
The .Net enumeration story based on IEnumerable<T>
is a very succesful pattern. It’s the backbone of many different language and framework features including foreach
, LINQ, iterators, etc … And yet when switching between C++ and C# and I’m often frustrated by its inefficiencs and quirks:
A common bug in VSIX projects is to hold onto an ITextView
instance long after it has been closed. This is problematic because it ends up preventing a large number of resources from being collected including the ITextBuffer
, language service elements, WPF items, other extension objects, etc … In short it is a substantial memory leak.
As usual Scott Hanselman wrote a blog post that got me super excited about a new piece of software: AppVeyor. A continuous integration system which had built in integration with github. I couldn’t wait to try it out on a few projects.
There few are phrases in programming that make me shudder more than