What’s Missing in PowerShell 3 ISE
On my quest for a decent PowerShell development tool I first tried out PowerGUI, but was not very happy with it. When the RTM version of PowerShell 3.0 along with a revamped ISE was released a few days ago, I decided to give it a try. Here is what I found.
Editor
- Tab size is fixed at four. This absolutely needs to be configurable. While they are at it, they should also add the option to not convert tabs to spaces. (Vote for the implementation of this at Connect).
- No bookmarks: code lines cannot be bookmarked and later jumped to. Usually this is possible by pressing CTRL+F2 and F2, respectively.
- If a PS1 script file that is opened in the ISE is changed by another program the ISE does not detect the modification and continues to display the old file content.
- Intellisense has problems with variable scope. It sometimes displays variables that are out of scope and sometimes does not display global variables.
- You cannot jump from breakpoint to breakpoint in the editor.
Searching and Replacing
- When selecting replace all it does not display how many instances it found and replaced. The user is left in the dark as to what actually happened.
- When searching, it is not possible to wrap around, i.e. starting the search in the midst and have it continue at the beginning after it reaches the end.
- The keyboard shortcut for “replace all” should be ALT+A instead of ALT+T (this applies to German).
Running and Debugging
- It is
not possibledifficult to run scripts with parameters in the debugger. To do that, set breakpoints in the editor window (CTRL+I). Then switch to the console window (CTRL+D) and start the script there. Switch back to the editor window to debug.
Conclusion
These are just the bigger issues. I did not include many smaller things I found while using PowerShell ISE. Sadly, it did not take me long to find these issues, which makes it likely that with more time more problems can be found.
Given the number and severity of the issues I cannot like PowerShell ISE. I cannot even recommend it wholeheartedly. But, hey, it is free, so what am I complaining about. If it is not enough for you, either go for one of the commercial products or do what I am doing: use Notepad++.
3 Comments
Those are great points. How about the fact that a variable declaration lasts forever in ISE? Until you open a new tab or close and reopen the ISE. Very irritating.
I agree, very irritating!
“the ISE does not detect the modification”
/sigh Yep. Been using PowerGUI, but just stumbled over that ISE 3 *does* do debugging (didn’t think to check if F9 created a breakpoint; you can’t click in the gutter, Visual Studio-style, so I thought I was out of luck), but that I can’t hack in Sublime Text and come back is pretty much a dealbreaker.
PowerGUI acts a little wacky sometimes (as in it’ll get into strange states that require you restart it), has some silly path completion bugs of its own (eg, http://en.community.dell.com/techcenter/powergui/f/4833/t/19603445), and usually goes on a slow but continual RAM eating meal plan, but at least it yells at me if a file is changed elsewhere.
Was hoping I’d google up a fix, but I guess I’m back to the `GUI for debugging. Thanks.