<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Get-PowerShell &#187; ISE</title>
	<atom:link href="http://get-powershell.com/category/ise/feed/" rel="self" type="application/rss+xml" />
	<link>http://get-powershell.com</link>
	<description></description>
	<lastBuildDate>Sat, 10 Jul 2010 15:44:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Enable-BlackISE</title>
		<link>http://get-powershell.com/2010/05/04/enable-blackise/</link>
		<comments>http://get-powershell.com/2010/05/04/enable-blackise/#comments</comments>
		<pubDate>Tue, 04 May 2010 18:30:14 +0000</pubDate>
		<dc:creator>Andy Schneider</dc:creator>
				<category><![CDATA[ISE]]></category>
		<category><![CDATA[VIM]]></category>

		<guid isPermaLink="false">http://get-powershell.com/2010/05/04/enable-blackise/</guid>
		<description><![CDATA[I have been asked a few times about the color scheme I use in PowerShell ISE. I can’t take credit for designing it. The work was done by David Mohundro. You can find his post at http://www.mohundro.com/blog/2008/12/31/PowerShellISEThemes.aspx.&#160; Here is my version of the function. It simply uses the $psISE variable to mess with the token [...]]]></description>
			<content:encoded><![CDATA[<p>I have been asked a few times about the color scheme I use in PowerShell ISE. I can’t take credit for designing it. The work was done by David Mohundro. You can find his post at <a title="http://www.mohundro.com/blog/2008/12/31/PowerShellISEThemes.aspx" href="http://www.mohundro.com/blog/2008/12/31/PowerShellISEThemes.aspx">http://www.mohundro.com/blog/2008/12/31/PowerShellISEThemes.aspx</a>.&#160; Here is my version of the function. It simply uses the $psISE variable to mess with the token colors. </p>
<div style="border-bottom: black 1px solid; border-left: black 1px solid; padding-bottom: 5px; padding-left: 5px; width: 750px; padding-right: 5px; font-family: consolas,lucida console; font-size: 10pt; overflow: auto; border-top: black 1px solid; border-right: black 1px solid; padding-top: 5px">
<table border="0" cellspacing="0" cellpadding="5">
<tbody>
<tr>
<td valign="top">
<div style="padding-bottom: 5px; padding-left: 5px; padding-right: 5px; font-family: consolas,lucida console; background: #cecece; font-size: 10pt; padding-top: 5px">001             <br />002              <br />003              <br />004              <br />005              <br />006              <br />007              <br />008              <br />009              <br />010              <br />011              <br />012              <br />013              <br />014              <br />015              <br />016              <br />017              <br />018              <br />019              <br />020              <br />021              <br />022              <br />023              <br />024              <br />025              <br />026              <br />027              </div>
</td>
<td valign="top" nowrap="nowrap">
<div style="padding-bottom: 5px; padding-left: 5px; padding-right: 5px; font-family: consolas,lucida console; background: black; font-size: 10pt; padding-top: 5px"><span style="color: #ffde00">Function</span><span style="color: #ffffff">&#160;</span><span style="color: #ffffff">Enable-BlackISE</span><span style="color: #ffffff">&#160;</span><span style="color: #ffffff">{</span><span style="color: #ffffff">&#160;&#160;&#160; </span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">FontName</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;Consolas&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">FontSize</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #98fe1e">14</span><span style="color: #ffffff">&#160;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">OutputPaneBackgroundColor</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF000000&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">OutputPaneTextBackgroundColor</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF000000&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">OutputPaneForegroundColor</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">CommandPaneBackgroundColor</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF000000&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">ScriptPaneBackgroundColor</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF000000&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Command'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFF60&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Unknown'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Member'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Position'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'GroupEnd'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'GroupStart'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'LineContinuation'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'NewLine'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'StatementSeparator'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Comment'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFAEAEAE&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'String'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF00D42D&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Keyword'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFDE00&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Attribute'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF84A7C1&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Type'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF84A7C1&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Variable'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF00D42D&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'CommandParameter'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFDE00&#8242;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'CommandArgument'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FFFFFFFF&#8217;</span>              <br /><span style="color: #ffffff">&#160;&#160;&#160; </span><span style="color: #00d42d">$psISE</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">Options</span><span style="color: #a9a9a9">.</span><span style="color: #ffffff">TokenColors</span><span style="color: #a9a9a9">[</span><span style="color: #00d42d">'Number'</span><span style="color: #a9a9a9">]</span><span style="color: #ffffff">&#160;</span><span style="color: #a9a9a9">=</span><span style="color: #ffffff">&#160;</span><span style="color: #00d42d">&#8216;#FF98FE1E&#8217;</span>              <br /><span style="color: #ffffff">}</span> </div>
</td>
</tr>
</tbody>
</table></div>
<p>Have fun. It would be great to see what other kinds of themes people can come up with.</p>
]]></content:encoded>
			<wfw:commentRss>http://get-powershell.com/2010/05/04/enable-blackise/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Debugging Modules with the PowerShell ISE (Integrated Scripting Environment)</title>
		<link>http://get-powershell.com/2009/09/08/debugging-modules-with-the-powershell-ise-integrated-scripting-environment/</link>
		<comments>http://get-powershell.com/2009/09/08/debugging-modules-with-the-powershell-ise-integrated-scripting-environment/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 03:08:39 +0000</pubDate>
		<dc:creator>Andy Schneider</dc:creator>
				<category><![CDATA[Debugging]]></category>
		<category><![CDATA[ISE]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://get-powershell.com/?p=279</guid>
		<description><![CDATA[I have written a few posts on debugging using the PowerShell ISE lately. If you care to have a look, here are the links to ISE Debugging 101 and ISE Debugging 102. Those blog posts got newcomers to the ISE slightly more comfortable with the idea of debugging and the the specific tools offered in [...]]]></description>
			<content:encoded><![CDATA[<p>I have written a few posts on debugging using the PowerShell ISE lately. If you care to have a look, here are the links to <a href="http://get-powershell.com/2009/08/14/debugging-using-powershell-ise-101/">ISE Debugging 101</a> and <a href="http://get-powershell.com/2009/08/18/debugging-using-the-ise-102/">ISE Debugging 102</a>. Those blog posts got newcomers to the ISE slightly more comfortable with the idea of debugging and the the specific tools offered in the ISE. I had a few questions and responses to these posts and I thought the best way to encapsulate this information was with a screen cast. I have taken what I covered and expanded it a bit to the realm of modules and how you can use the ISE debugging tools to work with Modules as easily as you can work with scripts and functions.</p>
<p>I hope you find this video helpful. I would love to hear any kind of feedback on the video, positive or negative. All I can say is that it is a bit easier to talk to yourself in front of a computer after a glass of wine <img src='http://get-powershell.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> &#160; Seriously, feedback is greatly appreciated.</p>
<p>Andy</p>
<p><iframe style="width: 800px; height: 600px" src="http://silverlight.services.live.com/invoke/82115/Debugging%20PowerShell%20Modules%20in%20the%20ISE/iframe.html" frameborder="0" scrolling="no"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://get-powershell.com/2009/09/08/debugging-modules-with-the-powershell-ise-integrated-scripting-environment/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Debugging using PowerShell ISE102</title>
		<link>http://get-powershell.com/2009/08/18/debugging-using-the-ise-102/</link>
		<comments>http://get-powershell.com/2009/08/18/debugging-using-the-ise-102/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 03:44:06 +0000</pubDate>
		<dc:creator>Andy Schneider</dc:creator>
				<category><![CDATA[Debugging]]></category>
		<category><![CDATA[ISE]]></category>
		<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">http://get-powershell.com/2009/08/18/debugging-using-the-ise-102/</guid>
		<description><![CDATA[In my last post I gave a high level overview of how to get started with debugging in PowerShell 2.0, using the new Integrated Scripting Environment. In this installment, we are going to explore some of cmdlets that can be used to manipulate breakpoints. First,&#160; lets do some discovery. Whenever I am looking for cmdlets [...]]]></description>
			<content:encoded><![CDATA[<p>In my last post I gave a high level overview of <a href="http://get-powershell.com/2009/08/14/debugging-using-powershell-ise-101/">how to get started with debugging in PowerShell 2.0, using the new Integrated Scripting Environment</a>. In this installment, we are going to explore some of cmdlets that can be used to manipulate breakpoints. </p>
<p>First,&#160; lets do some discovery. Whenever I am looking for cmdlets to work with something in particular, i use the get-command cmdlet with wildcards to help my search.</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/08/image6.png"><img style="border-right-width: 0px; width: 700px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/08/image_thumb6.png" width="633" height="201" /></a> </p>
<p>So from this it looks like we can get, set, enable, disable, and remove breakpoints. When we are setting breakpoints, you can specify the line and column you want to break on, but that can get really tedious. This is what the ISE does for you automatically when you toggle breakpoints. However, I find it much more useful to break when ever a variable is accessed. </p>
<p>Let’s use a basic function to demonstrate this.We’ll create a function foo and then set a breakpoint for the $c variable.</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/08/image7.png"><img style="border-right-width: 0px; width: 765px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/08/image_thumb7.png" width="631" height="167" /></a> </p>
</p>
<p>When we execute this code and call function foo, we get the output below. Notice that $a and $b is set, and that we break when we hit $c. One thing to note, when we specify the variable, we do not use the $ in front of the variable. This is the same as specifying the –outvariable common parameter for other cmdlets. </p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/08/image8.png"><img style="border-right-width: 0px; width: 639px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/08/image_thumb8.png" width="636" height="369" /></a> </p>
<p>Last but not least, let’s take a look at how to navigate this “nested” prompt. If you type “?” or “h”, you will get the following information It is interesting that the “nested&gt;” prompt displays this when you hit “?.” Under normal circumstances, the “?” is an alias for where-object, as we can see when we type ? at a normal prompt.</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/08/image10.png"><img style="border-right-width: 0px; width: 646px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/08/image_thumb9.png" width="637" height="367" /></a> </p>
</p>
<p>I hope this helps you with debugging your scripts.</p>
]]></content:encoded>
			<wfw:commentRss>http://get-powershell.com/2009/08/18/debugging-using-the-ise-102/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Debugging using PowerShell ISE 101</title>
		<link>http://get-powershell.com/2009/08/14/debugging-using-powershell-ise-101/</link>
		<comments>http://get-powershell.com/2009/08/14/debugging-using-powershell-ise-101/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 22:28:05 +0000</pubDate>
		<dc:creator>Andy Schneider</dc:creator>
				<category><![CDATA[Debugging]]></category>
		<category><![CDATA[ISE]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://get-powershell.com/?p=240</guid>
		<description><![CDATA[I have always found the origin of words to be fascinating.&#160; Apparently, the terms bug and debugging in regards to computers are attributed to Admiral Grace Hopper in the 1940’s. While she was working on a Mark II Computer at Harvard University, her associates discovered a moth stuck in a relay and thereby impeding operation, [...]]]></description>
			<content:encoded><![CDATA[<p>I have always found the origin of words to be fascinating.&#160; Apparently, the terms <a href="http://en.wikipedia.org/wiki/Debug">bug and debugging in regards to computers are attributed to Admiral Grace Hopper</a> in the 1940’s.</p>
<blockquote><p>While she was working on a Mark II Computer at Harvard University, her associates discovered a moth stuck in a relay and thereby impeding operation, whereupon she remarked that they were &quot;debugging&quot; the system.</p>
</blockquote>
<p>When I first started scripting and writing a little code, the concept of debugging something seemed really hard. However, I have found that with a few simple steps I can debug most of my scripts pretty quickly. </p>
<p>Ninety nine percent of the time, debugging scripts requires being able to watch a variable at some point in a script or a function. Have you ever written a function and thought, “If only I knew what x was before y started messing with it?”</p>
<p>The <a href="http://technet.microsoft.com/en-us/library/dd315244.aspx">PowerShell Integrated Scripting Environment</a> makes this pretty easy. You can set a breakpoint on any line in the ISE using the Debug Menu and choosing “Toggle Breakpoint.” or by using the F9 shortcut key. </p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/08/image5.png"><img style="border-bottom: 0px; border-left: 0px; width: 643px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/08/image_thumb5.png" width="644" height="392" /></a></p>
<p>When you toggle a breakpoint on and then run the script, the script will stop at that point. You should note that at this point, the highlighted line has not been executed yet.</p>
<p>Here’s what it looks like when you hit a breakpoint. You get thrown into a nested prompt where you can poke around and look at any variables you want to. Notice the &gt;&gt;&gt; prompt and notice $b has not yet been set, but $a has.</p>
<p>&#160;<a href="http://get-powershell.com/wp-content/uploads/2009/08/image11.png"><img style="border-bottom: 0px; border-left: 0px; width: 637px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/08/image1_thumb.png" width="643" height="407" /></a> </p>
<p>Now that you are paused right around the line of code you want to check out, you can use the “Step Into” Feature. </p>
<p>This will execute the next line of code in the script (the highlighted line) and then stop. </p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/08/image51.png"><img style="border-bottom: 0px; border-left: 0px; width: 660px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/08/image5_thumb.png" width="643" height="407" /></a> </p>
<p>Now you can see that $b has been set but $c doesn’t have a value yet.</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/08/image9.png"><img style="border-bottom: 0px; border-left: 0px; width: 645px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/08/image9_thumb.png" width="643" height="441" /></a> </p>
<p>You can continue to step through as much as many lines as you need to until you see something that is not quite right.</p>
<p>This is just the beginning of what we can do in regards to debugging scripts and functions. In the next couple weeks I plan to share more as I learn about debugging and the ISE. Just to whet your appetite, you can run the command <font face="Consolas">get-command –noun psbreakpoint </font>to see what kinds of goodies await!</p>
]]></content:encoded>
			<wfw:commentRss>http://get-powershell.com/2009/08/14/debugging-using-powershell-ise-101/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Using a Color Dialog to choose colors for ISE</title>
		<link>http://get-powershell.com/2009/01/29/using-a-color-dialog-to-choose-colors-for-ise/</link>
		<comments>http://get-powershell.com/2009/01/29/using-a-color-dialog-to-choose-colors-for-ise/#comments</comments>
		<pubDate>Thu, 29 Jan 2009 04:35:13 +0000</pubDate>
		<dc:creator>Andy Schneider</dc:creator>
				<category><![CDATA[CTP 3]]></category>
		<category><![CDATA[ISE]]></category>
		<category><![CDATA[Integrated Scripting Environment]]></category>
		<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">http://get-powershell.com/2009/01/29/using-a-color-dialog-to-choose-colors-for-ise/</guid>
		<description><![CDATA[Currently, there are no default UI options to set the color for the Script Pane, the Command Pane, or the Output Pane. However, these can all be changed using $psISE. I wrote a few functions to help with this. function Set-CommandBackPaneColor { param ( [parameter(Mandatory=$true,ValueFromPipeline=$true)] $color ) $psise.Options.CommandPaneBackground = $color } function Set-OutputPaneColor { param [...]]]></description>
			<content:encoded><![CDATA[<p align="left"><a href="http://get-powershell.com/wp-content/uploads/2009/01/image1.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/01/image-thumb1.png" width="475" height="287" /></a> </p>
<p align="left">Currently, there are no default UI options to set the color for the Script Pane, the Command Pane, or the Output Pane. However, these can all be changed using $psISE.</p>
<p align="left">I wrote a few functions to help with this.</p>
<div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" class="CodeByDougFinke">function Set-CommandBackPaneColor {
param
(
    [parameter(Mandatory=$true,ValueFromPipeline=$true)]
    $color
)
    $psise.Options.CommandPaneBackground = $color
}

function Set-OutputPaneColor {
param
(
    [parameter(Mandatory=$true,ValueFromPipeline=$true)]
    $color
)
    $psise.Options.OutputPaneBackground = $color
    $psise.Options.OutputPaneTextBackground = $color
}

function Set-ScriptPaneColor {
param
(
    [parameter(Mandatory=$true,ValueFromPipeline=$true)]
    $color
)
    $psise.Options.ScriptPaneBackground = $color
}
</pre>
</div>
<p style="font-size: xx-small">Automatically generated with a <i>custom version</i> of <a href="http://blogs.msdn.com/powershell/archive/tags/Write-CommandBlogPost/default.aspx">Write-CommandBlogPost</a></p>
<p align="left">Set-OutputPaneColor sets two options, OutputPaneBackground and OutputPaneTextBackground. I have found that I like to have these the same, but you can easily separate them out if you like.</p>
<p align="left">The last little tidbit is figuring out how to get a color picker rather than typing in the name of the color. We can accomplish this with a little Winforms action.</p>
<div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" class="CodeByDougFinke">function Get-Color {
    $colorDialog = new-object System.Windows.Forms.ColorDialog
    $colorDialog.AllowFullOpen = $false
    [void]$colorDialog.ShowDialog()
    $colorDialog.Color.Name
}
</pre>
</div>
<p style="font-size: xx-small">Automatically generated with a <i>custom version</i> of <a href="http://blogs.msdn.com/powershell/archive/tags/Write-CommandBlogPost/default.aspx">Write-CommandBlogPost</a></p>
</p>
<p>This will return the name of the color that was picked</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/01/image1.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/01/image-thumb1.png" width="475" height="287" /></a> </p>
<p>After clicking on Red, I get the following output</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/01/image2.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/01/image-thumb2.png" width="320" height="117" /></a></p>
<p>So now we can tie this all together with one final line to add a custom menu to ISE</p>
<p>[void]$psISE.CustomMenu.Submenus.Add(&quot;Output Pane Color&quot;, {Get-Color | Set-OutputPaneColor},$null)</p>
<p>I just passed in Null because I didn’t want a keyboard shortcut, but you can use one pretty easily.</p>
<p>So now I get the following:</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2009/01/image3.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2009/01/image-thumb3.png" width="480" height="280" /></a> </p>
<p>I could set up Menus to set other color options for the script and command panes as well, but I figure that is enough screenshots to make the point.</p>
<p>The <a href="http://karlprosser.com/coder/2009/01/03/powershell-analayzer-like-execution-hotkeys-for-ps-ctp3-ise/">other custom commands</a> are from <a href="http://karlprosser.com/coder/about/">Karl Prosser</a>. I highly recommend you take a look at them as well. Very useful.</p>
<p>So there is one (not so subtle) flaw in the get-color function. It does not always place the color dialog on the top, so sometimes I have to Alt-Tab over to it. There is probably some nifty way with winforms to make it show up on top all the time, but I figured I would get this out there and then work on that little part.</p>
<p>Secondly, not all the colors work right now.</p>
]]></content:encoded>
			<wfw:commentRss>http://get-powershell.com/2009/01/29/using-a-color-dialog-to-choose-colors-for-ise/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Code Snippets in PowerShell ISE</title>
		<link>http://get-powershell.com/2008/12/29/code-snippets-in-powershell-ise/</link>
		<comments>http://get-powershell.com/2008/12/29/code-snippets-in-powershell-ise/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 00:31:22 +0000</pubDate>
		<dc:creator>Andy Schneider</dc:creator>
				<category><![CDATA[CTP 3]]></category>
		<category><![CDATA[ISE]]></category>
		<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">http://get-powershell.com/2008/12/29/code-snippets-in-powershell-ise/</guid>
		<description><![CDATA[Granted, PowerShell doesn’t always come with all the features you need right out of the box. However, because we have the power of .NET and an awesome scripting language, we can pretty much do whatever we need to do and we don’t have to wait for the PS team to ship V-Next. The PowerShell team [...]]]></description>
			<content:encoded><![CDATA[<p>Granted, PowerShell doesn’t always come with all the features you need right out of the box. However, because we have the power of .NET and an awesome scripting language, we can pretty much do whatever we need to do and we don’t have to wait for the PS team to ship V-Next. </p>
<p>The PowerShell team has taken this philosophy into the development of the ISE as well. In a couple previous posts <a href="http://get-powershell.com/2008/12/28/more-integrated-scripting-environment-customization/">here</a> and <a href="http://get-powershell.com/2008/12/18/customizing-graphical-powershellise/">here</a>, I have talked about some very basic customizations using the $PSISE variable that comes with the Scripting Integrated Environment.</p>
<p>One thing I love about PS V2 is Advanced Functions. The only bummer is there is a lot of boilerplate text for each one. This sounds like a perfect opportunity for a code snippet. We can add some functions to our $PROFILE in the PowerShell ISE to make this happen.</p>
<p>First of all, we need to open our $profile script. It probably doesn’t exist so you can do the following. Note that the ISE is a PS host and it has its own profile, different than the one for PowerShell.exe that you use in Console.Exe.</p>
<div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px">
<div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">new-item -type file -force $profile</pre>
</p></div>
</div>
<p>Now we can open it in the ISE with the following line</p>
<div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px">
<div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">$psise.CurrentOpenedRunspace.OpenedFiles.Add($profile) </pre>
</p></div>
</div>
<p>Now that we have the $profile open, we can create a function that will insert some text into the file that is currently being edited.</p>
<div>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #0000ff">function</span> Insert-Text
{
<span style="color: #0000ff">param</span>(
    [parameter(Mandatory=$true, ValueFromPipeline=$true]
    [string]
    $text
    )
$currentFilePath = $psise.CurrentOpenedFile.FullPath
$currentFile = $psIse.CurrentOpenedRunspace.OpenedFiles |
               where {$_.FullPath <span style="color: #cc6633">-eq</span> $currentFilePath}
$currentFile.editor.InsertText($text)
}</pre>
</div>
<p>This function will insert text into the current script at the cursor’s location.</p>
<p>Now we need to write the actual snippet, which can also be a function</p>
<div>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #0000ff">function</span> New-FunctionTemplate
{
$f = <span style="color: #006080">@&quot;
function Verb-Noun {
param (
    [parameter(Mandatory=$true, ValueFromPipeline=$true)
    [string]
    $p1
)
begin {}
process {}
end {}
}
&quot;</span>@
Insert-Text -text $f
}</pre>
</div>
<p>The last line uses the Insert-Text function that we just created and inserts the snippet that is stored in the HereString $f. </p>
<p>Now we need to put it together and create a shortcut key and a new custom menu to insert this text.</p>
<div>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">$psIse.CustomMenu.Submenus.Add(<span style="color: #006080">&quot;_Function Template&quot;</span>, {New-FunctionTemplate}, <span style="color: #006080">&quot;Alt+F&quot;</span>)</pre>
</div>
<p>For this particular instance, I chose the name New FunctionTemplate and used Alt F for the keyboard shortcut.</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2008/12/functiontemplate.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="FunctionTemplate" border="0" alt="FunctionTemplate" src="http://get-powershell.com/wp-content/uploads/2008/12/functiontemplate-thumb.jpg" width="489" height="255" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://get-powershell.com/2008/12/29/code-snippets-in-powershell-ise/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>More Integrated Scripting Environment Customization</title>
		<link>http://get-powershell.com/2008/12/28/more-integrated-scripting-environment-customization/</link>
		<comments>http://get-powershell.com/2008/12/28/more-integrated-scripting-environment-customization/#comments</comments>
		<pubDate>Sun, 28 Dec 2008 22:26:57 +0000</pubDate>
		<dc:creator>Andy Schneider</dc:creator>
				<category><![CDATA[CTP 3]]></category>
		<category><![CDATA[ISE]]></category>
		<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">http://get-powershell.com/2008/12/28/more-integrated-scripting-environment-customization/</guid>
		<description><![CDATA[You can add custom menus using $PSISE in the PowerShell Integrated Scripting Environment. Quite simply, you create a custom menu, assign it a scriptblock, and a keyboard shortcut. For example, lets say you wanted Ctrl-D to always run the dir (get-childitem) command. You can use the CustomMenu class like so. 1: $psIse.CustomMenu.Submenus.Add(&#34;_Dir&#34;, {dir}, &#34;Ctrl+D&#34;) In [...]]]></description>
			<content:encoded><![CDATA[<p>You can add custom menus using $PSISE in the PowerShell Integrated Scripting Environment. Quite simply, you create a custom menu, assign it a scriptblock, and a keyboard shortcut. For example, lets say you wanted Ctrl-D to always run the dir (get-childitem) command. </p>
<p>You can use the CustomMenu class like so.</p>
<div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px">
<div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   1:</span> $psIse.CustomMenu.Submenus.Add(<span style="color: #006080">&quot;_Dir&quot;</span>, {dir}, <span style="color: #006080">&quot;Ctrl+D&quot;</span>)</pre>
</p></div>
</div>
<p>In addition to the keyboard shortcut, you also get a menu as well.</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2008/12/custommenu.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="CustomMenu" border="0" alt="CustomMenu" src="http://get-powershell.com/wp-content/uploads/2008/12/custommenu-thumb.jpg" width="477" height="132" /></a> </p>
<p>Now when you hit Ctrl-D, it will run the dir command. All kinds of cool things are available within the editor with the new object model. </p>
]]></content:encoded>
			<wfw:commentRss>http://get-powershell.com/2008/12/28/more-integrated-scripting-environment-customization/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Customizing Graphical PowerShell/ISE</title>
		<link>http://get-powershell.com/2008/12/18/customizing-graphical-powershellise/</link>
		<comments>http://get-powershell.com/2008/12/18/customizing-graphical-powershellise/#comments</comments>
		<pubDate>Thu, 18 Dec 2008 20:34:00 +0000</pubDate>
		<dc:creator>Andy Schneider</dc:creator>
				<category><![CDATA[ISE]]></category>
		<category><![CDATA[Integrated Scripting Environment]]></category>
		<category><![CDATA[Power]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://get-powershell.com/?p=127</guid>
		<description><![CDATA[Graphical PowerShell, also known as the PowerShell Scripting Environment (ISE) can be customized using an object model. There is a variable called $psISE in the ISE. 1: PS &#62;$psise &#124; gm &#124; select Name 2:&#160; 3: Name 4: ---- 5: Equals 6: GetHashCode 7: GetType 8: ToString 9: CurrentOpenedFile 10: CurrentOpenedRunspace 11: CustomMenu 12: OpenedRunspaces [...]]]></description>
			<content:encoded><![CDATA[<p>Graphical PowerShell, also known as the PowerShell Scripting Environment (ISE) can be customized using an object model. </p>
<p>There is a variable called $psISE in the ISE.</p>
<div>
<div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px">
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   1:</span> PS &gt;$psise | gm | select Name</pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   2:</span>&#160; </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   3:</span> Name                                                                           </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   4:</span> ----                                                                           </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   5:</span> Equals                                                                         </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   6:</span> GetHashCode                                                                    </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   7:</span> GetType                                                                        </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   8:</span> ToString                                                                       </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">   9:</span> CurrentOpenedFile                                                              </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">  10:</span> CurrentOpenedRunspace                                                          </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">  11:</span> CustomMenu                                                                     </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">  12:</span> OpenedRunspaces                                                                </pre>
<pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &#39;Courier New&#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"><span style="color: #606060">  13:</span> Options              </pre>
</p></div>
</div>
<p>In there we have options, customMenus, and a number of other cool things. Here we can change the Scripting Pane color to “black”</p>
<p><a href="http://get-powershell.com/wp-content/uploads/2008/12/image3.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://get-powershell.com/wp-content/uploads/2008/12/image-thumb3.png" width="465" height="432" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://get-powershell.com/2008/12/18/customizing-graphical-powershellise/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
