<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>ReSharper on Marko Apfel</title><link>http://blog.marko-apfel.de/tags/resharper/</link><description>Recent content in ReSharper on Marko Apfel</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Sun, 05 Jun 2011 23:55:00 +0200</lastBuildDate><atom:link href="http://blog.marko-apfel.de/tags/resharper/index.xml" rel="self" type="application/rss+xml"/><item><title>Let ReSharper and Code Contracts work together</title><link>http://blog.marko-apfel.de/posts/let-resharper-and-code-contracts-work-together/</link><pubDate>Sun, 05 Jun 2011 23:55:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/let-resharper-and-code-contracts-work-together/</guid><description>&lt;p&gt;&lt;em&gt;ReSharper&lt;/em&gt; by default does not recognize &lt;code&gt;Contract.Requires&lt;/code&gt; as an annotation hint, that the proofed condition furthermore is &lt;code&gt;true&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;So it comes to the effect, that using the following contract definition causes ReSharper to squiggle the next access and output a wrong hint:&lt;/p&gt;</description></item><item><title>Let ReSharper and xUnit work together</title><link>http://blog.marko-apfel.de/posts/let-resharper-and-xunit-work-together/</link><pubDate>Sun, 05 Jun 2011 13:41:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/let-resharper-and-xunit-work-together/</guid><description>&lt;h2 id="getting-the-ressources"&gt;Getting the ressources&lt;/h2&gt;
&lt;p&gt;First at all download&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://xunit.codeplex.com/releases/"&gt;xUnit&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://xunitcontrib.codeplex.com/releases/"&gt;xUnit Contrib ReSharper&lt;/a&gt;&lt;br&gt;
This gives you a bridge between ReSharper functionality and your XUnit coding.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="installation-und-configuration"&gt;Installation und Configuration&lt;/h2&gt;
&lt;p&gt;Unzip both archives.&lt;/p&gt;
&lt;h3 id="xunit-part"&gt;xUnit part&lt;/h3&gt;
&lt;h4 id="configure-the-code-to-use-xunit"&gt;Configure the code to use xUnit&lt;/h4&gt;
&lt;p&gt;Normally I prefer a single checkout point for my developing solution – this whole bundle I name DevTree. One of the top folders in the hierarchy of this DevTree is a lib-Folder. Beneath this folder all of the 3rd party libs which I use in my solution are located – all of them in an own folder. So I copy &lt;code&gt;xunit.dll&lt;/code&gt; to a folder &lt;code&gt;&amp;lt;DevTree-Root&amp;gt;\lib\xUnit&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Get Keymaps for ReSharper running</title><link>http://blog.marko-apfel.de/posts/get-keymaps-for-resharper-running/</link><pubDate>Thu, 12 May 2011 06:27:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/get-keymaps-for-resharper-running/</guid><description>&lt;p&gt;&lt;em&gt;Keymaps for ReSharper&lt;/em&gt; is a nice tool and allows the user easily to learn short cuts of ReSharper.&lt;/p&gt;
&lt;p&gt;Unfortunately, the last update is from january 2010. So the installation folder of the installing script (&lt;code&gt;Install.Keymaps.for.ReSharper.cmd&lt;/code&gt;) is not up to date. If you run it no expected new menu item “Show Keymap” under the ReSharper-menu is listed.&lt;/p&gt;</description></item><item><title>Diverse Shortcuts</title><link>http://blog.marko-apfel.de/posts/diverse-shortcuts/</link><pubDate>Fri, 27 Aug 2010 10:45:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/diverse-shortcuts/</guid><description>&lt;h2 id="visual-studio--resharper"&gt;Visual Studio / ReSharper&lt;/h2&gt;
&lt;h3 id="new-to-learn-or-learn"&gt;New to learn or learn&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;SHIFT + ALT + PgDown/PgUp&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
Find next/previous error&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + PgDown/PgUp&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
Find next/previous suggestion/hint&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="editing"&gt;Editing&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ALT + ENTER&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.QickFix__&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Show quick fixes and content actions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + D&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.DuplicateText&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Duplicate line or selection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K, S&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.SurroundWith&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Code Snippet Picker (wrap around)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ALT + RightArrow/LeftArrow&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.ExtendSelection&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Extends/shrinks selection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K, X&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.InsertSnippet&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Code Snippet Picker (insert)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + ALT + UpArrow/DownArrow&lt;/code&gt; — &lt;strong&gt;R#, Move Method (up/down)&lt;/strong&gt;&lt;br&gt;
Moves method above or down to the previous or next method&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + M, O&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.CollapseToDefinitions&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Collapses existing regions and types&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + M, L&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.ToggleAllOutlining&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Fully collapses and expands regions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + M, M&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.Toggle-OutliningExpansion&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Collapses and expands actual region&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + M, P&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.StopOutlining&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Expands regions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + V&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.CycleClipboardRing&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Pastes from the Clipboard ring&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + H&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.ReplaceInFiles&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Replace in files&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="window-handling"&gt;Window Handling&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;SHIFT + ALT + ENTER&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;View.FullScreen&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Full screen mode&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ALT + DownArrow&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Window.ShowEzMDIFileList&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Lists all open documents&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + ENTER&lt;/code&gt; — &lt;strong&gt;VS&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Properties&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + TAB&lt;/code&gt; — &lt;strong&gt;?&lt;/strong&gt;&lt;br&gt;
Navigates through recent files&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="intellisense"&gt;IntelliSense&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + SPACE&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.CompleteWord&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Completes current word&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + SPACE&lt;/code&gt; — &lt;strong&gt;?, &lt;code&gt;Edit.ParameterInfo&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Displays method parameter infos&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + J&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.ListMembers&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Invokes completion list&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K, I&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.QuickInfo&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Displays complete declaration&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="refactor"&gt;Refactor&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, R&lt;/code&gt; or &lt;code&gt;F2&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.Rename&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Rename&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, M&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.ExtractMethod&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Extract Method&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, E&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.EncapsulateField&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Encapsulate Field&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, F&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.IntroduceField&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Introduce Field&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, I&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.ExtractInterface&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Extract Interface&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + DEL&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.SafeDelete&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Safe Delete&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, P&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.PromoteLocalVariabletoParameter&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + R, V&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Refactor.RemoveParameters&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="debugging"&gt;Debugging&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + F10&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.RunToCursor&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Run to Cursor&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + F11&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.StepOut&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + F5&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.StopDebugging&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F9&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.ToggleBreakpoint&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Set/remove breakpoint&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + F9&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Debug.EnableBreakpoint&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Disable/enable breakpoint&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL&lt;/code&gt; — &lt;strong&gt;VS&lt;/strong&gt;&lt;br&gt;
Make Datatip Transparent&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="build"&gt;Build&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;F6&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Build.BuildSolution&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Builds all the projects&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + F6&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Build.BuildSelection&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Builds the selected project&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="navigation"&gt;Navigation&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;SHIFT + ALT + L&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.LocateInSolutionExplorer&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Locate in Solution Explorer&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + F12&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.FindAllReferences&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
List of all references for symbol&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F12&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.GoToDefinition&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;CTRL + LMB&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
Navigates to declaration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + ,&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;ReSharper.GotoRecentEdits&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
View recent edits&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F8&lt;/code&gt; — &lt;strong&gt;?, &lt;code&gt;Edit.GoToNextLocation&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Next item (Task List, Find Results)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + I&lt;/code&gt; — &lt;strong&gt;?, &lt;code&gt;Edit.IncrementalSearch&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Activates incremental search&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + -&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;View.NavigateBackward&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Previously edited code&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F7&lt;/code&gt; — &lt;strong&gt;R#, &lt;code&gt;View.ViewCode/ViewDesigner&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Switch to code or design view&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + G&lt;/code&gt; — &lt;strong&gt;?, &lt;code&gt;Edit.GoTo&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Opens &amp;ldquo;Go To Line&amp;rdquo; dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + ALT + L&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
Locate in Solution Explorer&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="important"&gt;Important&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + C&lt;/code&gt; — &lt;strong&gt;VS/R#, &lt;code&gt;Edit.Copy&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Copy line or selection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + X&lt;/code&gt; — &lt;strong&gt;VS/R#, &lt;code&gt;Edit.Cut&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Cut line or selection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ALT + /&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;CTRL + K, C&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.CommentSelection&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Inserts &lt;code&gt;//&lt;/code&gt; at the beginning&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ALT + /&lt;/code&gt; — &lt;strong&gt;R#&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;CTRL + K, U&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.UncommentSelection&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Removes the &lt;code&gt;//&lt;/code&gt; at the beginning&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + /&lt;/code&gt; — &lt;strong&gt;?, Block comment&lt;/strong&gt;&lt;br&gt;
Inserts &lt;code&gt;/*&lt;/code&gt; at the beginning and &lt;code&gt;*/&lt;/code&gt; at the end&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K, D&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.FormatDocument&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Formats indentation&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + .&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;View.ShowSmartTag&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Open smart tag menu&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + F&lt;/code&gt; — &lt;strong&gt;VS, &lt;code&gt;Edit.FindInFiles&lt;/code&gt;&lt;/strong&gt;&lt;br&gt;
Find in files&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + 8&lt;/code&gt; — &lt;strong&gt;R#, Code analysis on/off&lt;/strong&gt;&lt;br&gt;
Enable/disable code analysis&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="word"&gt;Word&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ALT + V, U&lt;/code&gt;&lt;br&gt;
Full screen&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="outlook"&gt;Outlook&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + R&lt;/code&gt;&lt;br&gt;
Reply message&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + F&lt;/code&gt;&lt;br&gt;
Forward message&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + M&lt;/code&gt;&lt;br&gt;
New message&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + K&lt;/code&gt;&lt;br&gt;
Check names&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + Backspace&lt;/code&gt;&lt;br&gt;
Delete the previous word&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + ENTER&lt;/code&gt;&lt;br&gt;
Send message&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + J&lt;/code&gt;&lt;br&gt;
Move to the Subject field&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + 1&lt;/code&gt;&lt;br&gt;
Go to mail&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + 2&lt;/code&gt;&lt;br&gt;
Go to calendar&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + F4&lt;/code&gt;&lt;br&gt;
Close current window&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="windows"&gt;Windows&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;WIN + Anfangsbuchstabe&lt;/code&gt; or &lt;code&gt;CTRL + ESC + Anfangsbuchstabe&lt;/code&gt;&lt;br&gt;
Rotiert im expandierten Startmenü zwischen den entsprechenden Treffern&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + 1 .. 9&lt;/code&gt;&lt;br&gt;
Startet das jeweilige Programm aus der Taskleiste unten – beziehungsweise minimiert es oder stellt es wieder her&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + UpArrow&lt;/code&gt; / &lt;code&gt;WIN + DownArrow&lt;/code&gt;&lt;br&gt;
Maximize current window / Restore down or minimize current window&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + LeftArrow&lt;/code&gt; / &lt;code&gt;WIN + RightArrow&lt;/code&gt;&lt;br&gt;
Dock the current window to the left or right half of the screen&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + SHIFT + LeftArrow/RightArrow&lt;/code&gt;&lt;br&gt;
Verschiebt das Bild auf den linken bzw. rechten Bildschirm&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + HOME&lt;/code&gt;&lt;br&gt;
Minimize all but the current window&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + SPACE&lt;/code&gt;&lt;br&gt;
Makes all windows transparent so you can see through to the desktop&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + SHIFT + UpArrow/DownArrow&lt;/code&gt;&lt;br&gt;
Maximize vertical size / Restore vertical size&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + P&lt;/code&gt;&lt;br&gt;
Presentation mode&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + X&lt;/code&gt;&lt;br&gt;
Mobility centre with enhanced options&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + BREAK&lt;/code&gt;&lt;br&gt;
Displays system properties&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WIN + #&lt;/code&gt;&lt;br&gt;
Quicklaunch&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WINDOWS + R&lt;/code&gt;&lt;br&gt;
Open Run dialog&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + N&lt;/code&gt;&lt;br&gt;
Opens a new Explorer window&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + N&lt;/code&gt;&lt;br&gt;
Creates a new folder&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SHIFT + CTRL + Click at application&lt;/code&gt;&lt;br&gt;
Start program in admin mode&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="chrome--srware-iron"&gt;Chrome / SRWare Iron&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CTRL + PgDown&lt;/code&gt; / &lt;code&gt;CTRL + PgUp&lt;/code&gt;&lt;br&gt;
Rotiert durch die Reiter&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + 1&lt;/code&gt; to &lt;code&gt;CTRL + 8&lt;/code&gt;&lt;br&gt;
Switches to the tab at the specified position number on the tab strip&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + LMB-Click&lt;/code&gt;&lt;br&gt;
Open link in new tab and switches to new tab&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALT + HOME&lt;/code&gt;&lt;br&gt;
Open homepage in current window&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F6&lt;/code&gt;&lt;br&gt;
Activate and highlight address bar for typing new stuff&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SPACE&lt;/code&gt;&lt;br&gt;
Scrolls down&lt;/li&gt;
&lt;li&gt;&lt;code&gt;F11&lt;/code&gt;&lt;br&gt;
Fullscreen&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + SHIFT + T&lt;/code&gt;&lt;br&gt;
Reopens last closed tab&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + W&lt;/code&gt; or &lt;code&gt;CTRL + F4&lt;/code&gt;&lt;br&gt;
Closes the current tab&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CTRL + J&lt;/code&gt;&lt;br&gt;
Open download page&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Verwenden von partiellen Klassen für COM-Belange</title><link>http://blog.marko-apfel.de/posts/verwenden-von-partiellen-klassen-fur-com-belange/</link><pubDate>Mon, 12 Jul 2010 15:16:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/verwenden-von-partiellen-klassen-fur-com-belange/</guid><description>&lt;h2 id="motivation"&gt;Motivation&lt;/h2&gt;
&lt;p&gt;Schon im Whitepaper „Auszeichnung von COM-Kategorien an .NET-Klassen mittels Attributen und deren Verwendung für Setup-Builds“ [1] habe ich deutlich gemacht warum das Verwenden von COM-Registrierungsfunktionen ein suboptimales Programmierpattern ist. Knackpunkt sind die Verstöße gegen SOC (separation of concerns) [2] und SRP (single responsibility principle) [3].&lt;/p&gt;</description></item><item><title>Global SVN Ignore Patterns und Zeitstempel-Optionen</title><link>http://blog.marko-apfel.de/posts/global-svn-ignore-patterns-und-zeitstempel-optionen/</link><pubDate>Mon, 31 May 2010 09:13:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/global-svn-ignore-patterns-und-zeitstempel-optionen/</guid><description>&lt;h2 id="globale-konfiguration"&gt;Globale Konfiguration&lt;/h2&gt;
&lt;p&gt;Die setzt man unter den globalen SVN-Einstellungen.&lt;/p&gt;
&lt;p&gt;Diese öffnet man per kontextsensitiven Menü im Explorer:&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
 &lt;img src="http://blog.marko-apfel.de/posts/global-svn-ignore-patterns-und-zeitstempel-optionen/tortoisesvn-configuration-01b.png" alt="Screenshot for Global SVN Ignore Patterns und Zeitstempel-Optionen" loading="lazy" decoding="async"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;h3 id="global-ignores"&gt;Global Ignores&lt;/h3&gt;
&lt;h4 id="standard"&gt;Standard&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="sinnvoll-sind-für-net-entwicklungen-und-visual-studio-und-resharper-folgende-ergänzungen"&gt;sinnvoll sind für .NET-Entwicklungen und Visual Studio und ReSharper folgende Ergänzungen&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;*.suo *.csproj.user */_ReSharper.* *.ReSharper.user */bin */obj *.cache *.gpState&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Der oft genannte Vorschlag &lt;code&gt;*bin&lt;/code&gt; und &lt;code&gt;*obj&lt;/code&gt; ist keine gute Idee da auch Dateien die mit &lt;code&gt;bin&lt;/code&gt; enden unterdrückt werden (&lt;code&gt;Something.bin&lt;/code&gt; oder &lt;code&gt;Taschendiebin&lt;/code&gt;).&lt;/p&gt;</description></item><item><title>Gefahren des “cleanup code refactoring” im Zusammenhang mit P/Invoke und übergebenen Strukturen</title><link>http://blog.marko-apfel.de/posts/gefahren-des-cleanup-code-refactoring-im-zusammenhang-mit-p-invoke-und-ubergebenen-strukturen/</link><pubDate>Wed, 28 Apr 2010 09:40:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/gefahren-des-cleanup-code-refactoring-im-zusammenhang-mit-p-invoke-und-ubergebenen-strukturen/</guid><description>&lt;h2 id="problemkontext"&gt;Problemkontext&lt;/h2&gt;
&lt;p&gt;So schön auch das automatische “cleanup code refactoring” von ReSharper ist, im Zusammenhang mit Strukturdefinitionen, die als Übergabe-Parameter für unmanaged Code Aufrufe benötigt werden, lauert eine große Gefahr.&lt;/p&gt;
&lt;p&gt;Standardmäßig ist im Profil “Full Cleanup” die Option “Reorder type members” auf “Yes” gestellt.&lt;/p&gt;</description></item><item><title>Installing StyleCop for ReSharper</title><link>http://blog.marko-apfel.de/posts/installing-stylecop-for-resharper/</link><pubDate>Thu, 12 Nov 2009 05:58:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/installing-stylecop-for-resharper/</guid><description>&lt;p&gt;Installing StyleCop for ReSharper under an administrative account does not activate this ReSharper plugin under my developer account.&lt;/p&gt;
&lt;p&gt;A system analysis show, that this plugin is installed under&lt;/p&gt;
&lt;p&gt;&lt;code&gt;%userprofile%\Local Settings\Application Data\JetBrains\ReSharper\v4.5\vs9.0\Plugins\Microsoft StyleCop for ReSharper&lt;/code&gt;&lt;/p&gt;</description></item><item><title>ReSharper is not available</title><link>http://blog.marko-apfel.de/posts/resharper-is-not-available/</link><pubDate>Mon, 09 Nov 2009 07:23:00 +0100</pubDate><guid>http://blog.marko-apfel.de/posts/resharper-is-not-available/</guid><description>&lt;p&gt;Today a colleague ask me to help.&lt;/p&gt;
&lt;p&gt;On his system all ReSharper menus are grayed out. Also the Visual Studio Add-In Manager does not show this add-in.&lt;/p&gt;
&lt;p&gt;He tried:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a new installation: without success,&lt;/li&gt;
&lt;li&gt;running with administrative privileges: without success,&lt;/li&gt;
&lt;li&gt;looking in event- and application-logs: no entries.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After searching a little bit with old buddy google we found this message: &lt;a href="http://resharper.blogspot.com/2008/10/wild-world-of-visual-studio-mysterious.html"&gt;Wild World of Visual Studio &amp;ndash; Mysterious Component&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Visual Studio 2005 and 2008 compatibility with ReSharper</title><link>http://blog.marko-apfel.de/posts/visual-studio-2005-and-2008-compatibility-with-resharper/</link><pubDate>Wed, 21 Oct 2009 08:57:00 +0200</pubDate><guid>http://blog.marko-apfel.de/posts/visual-studio-2005-and-2008-compatibility-with-resharper/</guid><description>&lt;p&gt;In our team we have developers with Visual Studio 2005 and 2008. Often we have projects which must be coded by a mixed team.&lt;/p&gt;
&lt;h2 id="visual-studio-2005-and-2008-compatibility-for-project-files"&gt;Visual Studio 2005 and 2008 compatibility for project-files&lt;/h2&gt;
&lt;p&gt;Normally this is no problem because adding projects in Visual Studio 2005 and manually introducing the ToolsVersion=&amp;ldquo;2.0&amp;rdquo; attribute in the new csproj-file allows an coexisting working when using two sln-files for Visual Studio 2005 and 2008.&lt;/p&gt;</description></item></channel></rss>